Jak zainstalować podatną wersję OpenSSL na serwerze Linux?

9

Chciałbym skompilować i zainstalować wersję OpenSSL, która zawiera lukę w zabezpieczeniach Heartbleed, na serwerze, który przygotowuję do wyzwania bezpieczeństwa sieci zespołu (ponieważ z oczywistych powodów nie są one dostępne do zainstalowania z repozytorium Ubuntu).

Pobrałem i skompilowałem ze źródłowego OpenSSL 1.0.1f, korzystając z dostarczonych instrukcji (uruchom ./config, a następnie makei make install), i próbowałem uruchomić z komputera GitHub w otwartym programie Heartbleed POC , jednak skrypt nie informuje mnie, że nie otrzymano odpowiedzi pulsu i serwer prawdopodobnie nie jest podatny na ataki.

Uruchomienie openssl versiondaje następujące wyniki: OpenSSL 1.0.1f 6 stycznia 2014 . Zainstalowałem oczywiście certyfikat SSL i dostęp SSL działa na serwerze.

OpenSSL jest zainstalowany do pracy z Apache 2.4.7.

Czy ktoś może pomóc?

Mittelmania
źródło
3
Ogólnie dobrym sposobem na przetestowanie starszych wersji i dystrybucji Linuksa jest pobranie starszych obrazów ISO tej dystrybucji i ewentualnie zainstalowanie za jej pomocą maszyny wirtualnej. Nie wszystkie pakiety są w tym dostępne, ale z pewnością byłby to OpenSSL.
Bruno
Jeśli jesteś trochę zaznajomiony z pakietami Debiana, pobranie obecnego pakietu źródłowego openssl, usunięcie CVE-2014-0160.patch i jego przebudowanie powinno być dość łatwe.
Matt Nordhoff,

Odpowiedzi:

7

Mogą się tu dziać dwie rzeczy:

  1. Proste „./configure; make; make install” domyślnie umieści biblioteki współdzielone /usr/local/lib. Będą jednak zainstalowane biblioteki systemowe /usr/lib, które znajdują się wcześniej na ścieżce wyszukiwania bibliotek. O ile nie usuniesz zainstalowanej przez system wersji OpenSSL, nie będzie można znaleźć wersji podatnej na atak.

  2. Nawet jeśli nadpisujesz biblioteki systemowe, zmiana nie zostanie zauważona, dopóki nie uruchomisz ponownie Apache. Usunięte pliki pozostają dostępne (i zajmują miejsce na dysku), dopóki wszystkie programy, które mają otwarte uchwyty plików, zamkną te uchwyty.

znak
źródło
7

Jakie oprogramowanie serwera jest używane?

Mimo że plik binarny OpenSSL jest podatny na ataki, zainstalowany serwer WWW z pakietu systemu operacyjnego prawdopodobnie używa wersji biblioteki, która nie jest podatna na atak.

Najprostszym sposobem na uruchomienie wrażliwego odbiornika będzie openssl s_server- jeśli potrzebujesz pełnego serwera WWW, aby go narazić, prawdopodobnie będziesz musiał skompilować go z wrażliwym OpenSSL.

Shane Madden
źródło
1
Whoa, nigdy nie wiedziałem, że s_serverto coś. Używam od s_clientzawsze i wydaje mi się, że powinna istnieć opcja serwera.
EEAA
1
@ EEAA Tak, to szalone, ile różnych podkomend jest tam zatłoczonych.
Shane Madden