[하루한줄] CVE-2020-8863/8864 D-LINK ROUTER AUTHENTICATION BYPASSES

URL

THE ANATOMY OF A BUG DOOR: DISSECTING TWO D-LINK ROUTER AUTHENTICATION BYPASSES

Target

D-LINK router

Explain

HNAP (Home Network Administration Protocol)는 Pure Networks Inc. 에서 개발 한 독점 SOAP 기반 프로토콜입니다. 현재는 이 프로토콜의 사용이 중단되었지만 여전히 업데이트되지 않은 많은 라우터들이 해당 프로토콜을 사용하고 있습니다.

HNAP에서 발견된 두 가지 취약점은 다음과 같습니다.

CVE-2020-8863은 LoginPassword 검증 과정에서 발생하는 authentication bypass 취약점입니다. strncmp() 에서 db 패스워드와 클라이언트가 입력한 LoginPasswordLoginPassword의 size 만큼 비교하는데, 이때 LoginPassword에 빈 값을 전달하면 비교할 size가 0이 되어 무조건 인증에 성공하게 됩니다.

CVE-2020-8864는 HNAP PrivateLogin 인증 알고리즘의 잘못된 구현으로 인해 발생하는 authentication bypass 취약점입니다. HNAP를 통해 인증할 때 서버는 일반적으로 Private key를 사용자의 암호를 기반으로 생성합니다. 그러나 로그인 요청 중 PrivateLogin 필드에 “Username” 값을 넣어 요청하면 “Username”값으로 Private key를 생성해 실제 관리자 암호를 몰라도 인증 챌린지 값을 알 수 있습니다.