🇰🇷 한글 설명
Linux 커널의 Bluetooth L2CAP 프로토콜에서 l2cap_ecred_reconf_rsp 함수가 채널 잠금(lock)을 획득하지 않은 채 l2cap_chan_del()을 호출하는 취약점이 발견되었습니다. 원격의 BLE 장치가 조작된 L2CAP ECRED 재설정 응답을 보낼 경우, 다른 스레드가 채널 목록을 순회하는 동안 목록이 손상될 수 있습니다.
💡 쉬운 설명
블루투스 연결을 관리하는 과정에서 데이터가 엉키는 문제가 발생할 수 있는 보안 약점입니다. 해커가 특수한 블루투스 신호를 보내면 기기의 연결 목록을 망가뜨려 시스템 오류를 일으킬 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
Bluetooth: l2cap: Add missing chan lock in l2cap_ecred_reconf_rsp
l2cap_ecred_reconf_rsp() calls l2cap_chan_del() without holding
l2cap_chan_lock(). Every other l2cap_chan_del() caller in the file
acquires the lock first. A remote BLE device can send a crafted
L2CAP ECRED reconfiguration response to corrupt the channel list
while another thread is iterating it.
Add l2cap_chan_hold() and l2cap_chan_lock() before l2cap_chan_del(),
and l2cap_chan_unlock() and l2cap_chan_put() after, matching the
pattern used in l2cap_ecred_conn_rsp() and l2cap_conn_del().
📍 영향받는 시스템
Linux Kernel (Bluetooth L2CAP component)
⚔️ 공격 벡터
원격의 조작된 BLE(Bluetooth Low Energy) 장치를 통한 L2CAP ECRED 재설정 응답 전송
🛡️ 대응 방법
Linux 커널을 최신 보안 패치가 적용된 버전으로 업데이트하여 l2cap_chan_lock()이 적용된 패치를 적용해야 합니다.
🔧 검증 코드
현재 실행 중인 커널 버전을 확인하여 취약점이 해결된 최신 패치 버전인지 확인합니다.