Как установить уязвимую версию OpenSSL на сервер Linux?

Как установить уязвимую версию OpenSSL на сервер Linux?

Я хотел бы скомпилировать и установить версию OpenSSL, уязвимую к Heartbleed, на сервере, который я настраиваю для командного соревнования по веб-безопасности (поскольку по понятным причинам они недоступны для установки из репозитория Ubuntu).

Я скачал и скомпилировал из исходного кода OpenSSL 1.0.1f, используя предоставленные инструкции (запустите ./config, затем makeи make install), и попытался запустить открыто доступный Heartbleed POCиз GitHubс моего ПК, однако скрипт уведомляет меня о том, что ответ на heartbeat не получен и сервер, скорее всего, не уязвим.

Запуск openssl versionвыдает следующий результат:OpenSSL 1.0.1f 6 января 2014 г.. Конечно, я установил SSL-сертификат, и SSL-доступ на сервере работает.

OpenSSL установлен для работы с Apache 2.4.7.

Кто-нибудь может помочь?

решение1

Здесь могут иметь место две вещи:

  1. Простой "./configure; make; make install" по умолчанию поместит общие библиотеки в /usr/local/lib. Однако библиотеки, установленные в системе, будут в /usr/lib, который находится раньше в пути поиска библиотек. Если вы не удалите установленную в системе версию OpenSSL, уязвимая версия не будет найдена.

  2. Даже если вы перезаписываете системные библиотеки, изменение не будет принято, пока вы не перезапустите Apache. Удаленные файлы остаются доступными (и занимают место на диске) до тех пор, пока все программы, имеющие открытые дескрипторы файлов для них, не закроют эти дескрипторы файлов.

решение2

Какое серверное программное обеспечение используется?

Несмотря на то, что двоичный файл OpenSSL уязвим, установленный веб-сервер из пакета ОС, скорее всего, будет использовать версию библиотеки, которая не уязвима.

Самый простой способ запустить уязвимый прослушиватель openssl s_server— если вам нужно, чтобы весь веб-сервер был уязвим, вам, скорее всего, придется скомпилировать его с использованием уязвимого OpenSSL.

Связанный контент