
TOTOLINK a720r 버퍼 오버플로우 취약점에 대한 보안 권고
제조사: TOTOLINK
제조사 웹사이트: TOTOLINK
모델: A720R
펌웨어 버전: V4.1.5cu.630_B20250509
펌웨어 다운로드 주소: TOTOLINK
CVSS v4.0 기본 점수: 8.7 (높음)
벡터: CVSS:4.0/AV:N/AC:L/AT:N/PR:H/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
cstecgi.cgi 펌웨어 바이너리에 스택 기반 버퍼 오버플로우가 존재하며, 인증된 관리자가 프로세스의 제어 흐름을 탈취하여 바이너리 내의 기존 코드 경로를 실행할 수 있습니다. 이 취약점은 setMacFilterRules 핸들러에 desc 매개변수의 과도하게 긴 값을 포함한 조작된 요청을 전송하여 트리거할 수 있으며, 해당 값은 strcpy()를 통해 경계 검사 없이 고정 크기 스택 버퍼에 복사되어 저장된 반환 주소를 덮어씁니다.

취약한 코드는 cstecgi.cgi 바이너리 내에 있으며, 제공된 desc 값이 길이 검증 없이 스택 버퍼에 복사되어 저장된 반환 주소를 덮어쓰고 프로그램의 제어 흐름을 리디렉션할 수 있습니다. 바이너리가 스택 카나리(Stack Canary) 및 PIE 없이 컴파일되었기 때문에 오버플로우가 감지되지 않으며, 바이너리 내 고정 주소에 있는 코드로 실행을 안정적으로 리디렉션할 수 있습니다.


저장된 반환 주소를 덮어씀으로써 제어 흐름이 바이너리 내 기존 함수로 리디렉션되었습니다. 이는 sleep(2) 호출(장치 응답의 측정 가능한 지연을 통해 명령 포인터의 안정적인 제어를 확인), 시스템 재부팅 루틴, 세션 로그아웃 함수, 로그 삭제 루틴을 호출하여 입증되었습니다.


제어 흐름은 Telnet 서비스 시작을 담당하는 루틴으로 추가 리디렉션되어 장치에서 Telnet을 활성화했습니다.

결과적으로, 대상 장치에 네트워크 접근 권한이 있는 인증된 공격자는 cstecgi.cgi 프로세스의 실행 흐름을 탈취하고 바이너리 내의 임의 코드 경로를 실행하여 장치의 기밀성, 무결성 및 가용성을 손상시킬 수 있습니다.