Jak zabezpieczyć swój serwer i przeglądarkę przed atakiem POODLE/SSLv3?
  1. Czym jest certyfikat SSL i czym jest protokół SSL?

    Certyfikat SSL
    to najprostszy, pewny sposób zabezpieczenia transmisji danych oraz weryfikacji witryny. Dzięki niemu autentyczność strony zostaje momentalnie zweryfikowana – na stronie chronionej certyfikatem widoczny jest symbol kłódki oraz prefiks https w adresie.

    Protokół SSL (Secure Socket Layer)
    – protokół służący do bezpiecznej transmisji zaszyfrowanego strumienia danych. Protokół SSLv3 dopuszcza m.in. następujące algorytmy i protokoły: DES, 3DES, IDEA, RC2, RC4, RSA, DSS, Diffiego-Hellmana.

    Uwaga:
    protokół SSL to nie to samo co certyfikat SSL. Certyfikat SSL można utożsamiać z unikalnym „dowodem tożsamości” dla domeny, która podpięta jest pod konkretny serwer WWW, natomiast protokół SSL to „przepis” na ustanowienie bezpiecznego połączenia między przeglądarką internetową a serwerem.

    Uwaga:
    istnieją bezpieczniejsze protokoły niż SSLv3, takie jak m.in. TLS (dostępne w wersjach: TLSv1, TLSv1.1, TLSv1.2), które wykorzystują certyfikaty SSL, np. certyfikaty Certum SSL.

  2. Na czym polega atak „Poodle” na protokół SSLv3?

    Etap 1:

    Atakujący prowadzi działania, które mają umożliwić mu włączenie się w komunikację miedzy serwerem a przeglądarką, z której korzysta użytkownik.

    Etap 2:

    Atakujący wysyła do serwera (korzystającego z protokołu SSL) serię zapytań i zapisuje uzyskane odpowiedzi. Można to porównać do przeprowadzania wywiadu, podczas którego zadaje się mnóstwo z pozoru mało istotnych pytań.

    Etap 3:

    Gdy agresor posiada wiedzę o wszystkich zapytaniach i odpowiedziach, przeprowadza analizę i na podstawie uzyskanych wyników może odszyfrować plik cookie, aby otrzymać dostęp np. do tożsamości użytkownika w atakowanym systemie.

  3. Jak się przed tym zabezpieczyć/bronić?

    Po stronie serwera
    – należy wyłączyć obsługę protokołów SSLv2 lub SSLv3 oraz wymusić korzystanie z protokołów z rodziny TLS. Zmiany takiej można dokonać za pomocą dyrektyw konfiguracyjnych:

    Apache

    SSLProtocol +TLSv1 +TLSv1.1 +TLSv1.2

    Nignx

    ssl_protocols TLSv1 TLSv1.1 TLSv1.2

    Po stronie użytkownika
    należy wyłączyć obsługę protokołu SSLv2 lub SSLv3 w używanych przeglądarkach internetowych (jak również programach pocztowych, komunikatorach itp.) i wymusić korzystanie z protokołów z rodziny TLS. Od przeglądarki internetowej zależy, w jaki sposób można dokonać tych zmian:

    Przeglądarka Mozilla Firefox:

    Krok 1) w pasku adresowym wpisujemy:
    about:config

    Krok 2) szukamy wpisu:
    security.tls.version.min

    Krok 3) zmieniamy wartość na „1”

    Przeglądarka Google Chrome:

    Należy uruchamiać przeglądarkę z parametrem startu:
    –ssl-version-min=tls1:

    Krok 1) odnajdujemy plik uruchamiający przeglądarkę Google Chrome

    Krok 2) klikamy prawym przyciskiem myszy i wybieramy
    „Właściwości”

    Krok 3) w polu
    „Element docelowy”
    dopisujemy:
    –ssl-version-min=tls1

    Krok 4) klikamy
    „zastosuj”

    Przykład wpisu:

    C:\Program Files (x86)\Google\Chrome\Application\chrome.exe” –ssl-version-min=tls1

    Przeglądarka Internet Explorer

    Krok 1) uruchamiamy Internet Explorer

    Krok 2) otwieramy okno „Opcje internetowe” -> zaawansowane -> ustawienia (i szukamy SSLv3.0/2.0)

    Krok 3) wyłączamy Użycie SSL 3.0/2.0

    Krok 4) klikamy
    „zastosuj”

  4. Rekomendowane czynności:
    1. Wyłączenie obsługi protokołów SSL zarówno na serwerze, jak i w przeglądarkach internetowych.
    2. Wymuszenie korzystania z bezpieczniejszych protokołów, np. TLS.
    3. Zabezpieczenie transmisji danych w kanałach TLS, które zapewnią certyfikaty Certum SSL:

Więcej informacji w wyżej omawianym temacie:

Wielkość czcionki