🇰🇷 한글 설명
E2 오픈 디바이스용 OpenWebif 플러그인 1.2.4 이하 버전의 saveConfig 함수가 HTTP GET 파라미터 'key'에 대해 eval()을 실행하는 취약점입니다. 인증되지 않은 원격 공격자가 api/saveconfig 엔드포인트를 통해 임의의 Python 코드나 OS 명령을 실행할 수 있습니다.
💡 쉬운 설명
웹 설정을 저장하는 기능이 사용자 입력을 검증하지 않고 직접 실행합니다. 공격자가 특수한 요청을 보내면 서버에서 원하는 모든 명령을 실행시킬 수 있습니다.
🇺🇸 원문 (English)
An issue was discovered in the OpenWebif plugin through 1.2.4 for E2 open devices. The saveConfig function of "plugin/controllers/models/config.py" performs an eval() call on the contents of the "key" HTTP GET parameter. This allows an unauthenticated remote attacker to execute arbitrary Python code or OS commands via api/saveconfig.
📍 영향받는 시스템
OpenWebif 플러그인 1.2.4 이하 (E2 open devices)
⚔️ 공격 벡터
인증 없이 api/saveconfig?key=<악의적 코드>로 요청을 전송하여 원격 코드 실행
🛡️ 대응 방법
OpenWebif를 패치된 버전으로 업그레이드하고 eval() 함수 사용 제거 및 입력 검증 추가
🔧 검증 코드
응답이 반환되면 엔드포인트가 존재하며 취약할 가능성이 있고, 404/403은 보호되거나 없는 것입니다
curl -s http://<target>/api/saveconfig 2>&1 | grep -q 'error\|success' && echo 'Vulnerable endpoint exists'