[하루한줄] CVE-2020-9395: Realtek's Wi-Fi module remote root access
URL
Major Vulnerabilities discovered and patched in Realtek RTL8195A Wi-Fi Module
Target
Realtek’s RTL8195A Wi-Fi module
Explain
Vdoo가 Realtek RTL8195A Wi-Fi 모듈에서 발생하는 취약점(CVE-2020-9395)의 세부 정보를 공개했습니다. RTL8195A는 임베디드 장비용 low-power Wi-Fi 모듈로 WPA2 handshake 동작에 stack overflow, out-of-bound read 취약점이 존재합니다. 해커는 취약점을 통해 원격으로 모듈의 root를 탈취할 수 있고 이 모듈이 탑재된 임베디드 장비의 모든 무선 통신을 조작할 수 있게 됩니다.
WPA2 handshake의 EAPOL-Key 교환 작업 중 Client는 ClientEAPOLKeyRecvd()
를 Server는 EAPOLKeyRecvd()
를 호출합니다. 두 함수 모두 CheckMIC()
를 호출해 EAP 패킷의 MIC에 대한 무결성 검증을 진행합니다.
rtl_memcpy(tmpbuf, EAPOLMsgRecvd.Octet, EAPOLMsgRecvd.Length);
ChckMIC()
에는 unsafe copy를 하는 코드가 존재합니다. tmpbuf의 크기는 512 bytes로 고정되어 있지만 EAPOLMsgRecvd.Octet
와 EAPOLMsgRecvd.Length
모두 해커가 아무 제약 없이 조작할 수 있습니다(attack-controlled). NX-bit, ASLR, Canary 등 보호 기법이 존재하지 않아 tmpbuf 보다 큰 사이즈의 조작된 packet을 통해 CheckMIC()
의 리턴 주소를 조작해 RCE 또는 DoS 등의 공격이 가능합니다.
본 글은 CC BY-SA 4.0 라이선스로 배포됩니다. 공유 또는 변경 시 반드시 출처를 남겨주시기 바랍니다.