
This Python PoC script detects the Heartbleed vulnerability (CVE-2014-0160) by performing a TLS handshake with heartbeat extension and sending a crafted heartbeat request. It parses responses to identify leaked memory, helping assess server susceptibility to this critical OpenSSL flaw.
Heartbleed-PoC-Exploit-Script Этот скрипт на Python, реализующий Proof-of-Concept (PoC), обнаруживает уязвимость Heartbleed (CVE-2014-0160) путём выполнения TLS-рукопожатия с расширением heartbeat и отправки специально сформированного heartbeat-запроса. Он анализирует ответы сервера для выявления утечки памяти, помогая оценить уязвимость к этой критической ошибке в OpenSSL.
О чём это Heartbleed — это серьёзная уязвимость buffer over-read в расширении heartbeat библиотеки OpenSSL, которая позволяет злоумышленнику читать до 64 КБ памяти сервера, потенциально раскрывая закрытые ключи, пароли и другие конфиденциальные данные. Данный скрипт имитирует heartbeat-запрос, который вызывает утечку, если сервер уязвим.
Улучшения и исправления Корректный разбор заголовка TLS-записи с использованием правильной распаковки struct для типа содержимого, версии и длины полезной нагрузки.
Реализован полный разбор рукопожатия, с надёжным обнаружением сообщения ServerHelloDone внутри TLS-записей.
Использование select делает работу с сокетом отзывчивой и предотвращает зависание.
Добавлено чистое завершение цикла приёма heartbeat после обнаружения утечки, что предотвращает бесконечное ожидание и повторяющиеся записи в логе.
Параметризована версия TLS для улучшения совместимости с различными серверами.
Всесторонняя обработка исключений обеспечивает устойчивость к ошибкам сокетов, тайм-аутам и аномалиям протокола.
Использование Требования Установленный Python 3.x
Сетевой доступ к целевому TLS-серверу
Запуск скрипта Клонируйте репозиторий:
bash git clone https://github.com/indrajeetmp11/Heartbleed-PoC-Exploit-Script.git cd Heartbleed-PoC-Exploit-Script Отредактируйте целевой хост и порт в скрипте или измените вызов heartbleed_poc() в файле python3_heartbleed_poc.py.
Запустите скрипт:
bash python3 python3_heartbleed_poc.py Следите за логами для обнаружения уязвимости и утёкших данных в шестнадцатеричном формате.
Важное замечание Используйте этот инструмент только в рамках правового поля и на системах, которые вам принадлежат или на которые у вас есть явное разрешение на тестирование.
Тесты Heartbleed могут вызывать срабатывание систем безопасности в защищённых сетях.
Данный PoC предназначен для образовательных и исследовательских целей.
Лицензия Этот проект распространяется по лицензии MIT. Подробности см. в файле LICENSE.
Ссылки CVE-2014-0160 (Heartbleed)
Расширение Heartbeat OpenSSL (RFC 6520)
Официальная страница Heartbleed
Этот README обеспечивает чёткое и профессиональное представление вашего PoC, описывает его улучшения и даёт пользователям указания по его ответственному использованию. Дайте знать, если вам понадобится помощь в создании или форматировании других файлов документации!