Sprawdzanie online luki Shellshock
Opublikowany: Artem Prysyazhnuk 2014-06-12 wszystkie artykułyJak to działa?
Opracowany jest dla serwera Linux z zainstalowanym na nim serwerem WWW. Algorytm działania jest bardzo prosty. Konsekwentnie generujemy 4 żądania http:
- 1. Zwykłe żądanie
- 2. Żądanie próbuje, wykorzystując podatność, umieścić "szkodliwe" ciasteczko, które powoduje 2-sekundowe opóźnienie w odpowiedzi na nasze specjalne żądanie http.
- 3. Żądanie próbuje, wykorzystując podatność, umieścić "szkodliwy" plik cookie, który powoduje 4-sekundowe opóźnienie w odpowiedzi na nasze specjalne żądanie http. .
- 4. to samo co #3 .
Jak zrozumieć wynik?
Porównujemy czas odpowiedzi dla wszystkich 4 żądań. Możliwe są trzy sytuacje:
- 1. Znaleziona podatność. Możemy stwierdzić, że jeśli różnica w odpowiedziach wynosi około 2 sekund dla żądań bez cookie i z cookie o opóźnieniu 2 sekund, a także dla żądań z cookie o opóźnieniu 2 i 4 sekund. Oznacza to, że nasze żądanie było w stanie wykorzystać podatność i ustawić te ciasteczka.
- 2. Podatność nie została znaleziona. Wszystkie żądania mają mniej więcej taki sam czas odpowiedzi. Ciasteczka, prawdopodobnie, nie zostały zainstalowane, ponieważ nie ma żadnej luki.
- 3. Sytuacja niepewna. Jeśli czas odpowiedzi różni się znacznie, bez zbieżności z opóźnieniem ustawionym przez ciasteczka, nie możemy powiedzieć na pewno. Może to być spowodowane tym, że serwer jest pod dużym obciążeniem. Aby to sprawdzić, używamy dwóch żądań z tymi samymi ciasteczkami (#3 i #4). Jeśli czas odpowiedzi dla dwóch takich samych sprawdzeń jest różny, wyciągamy wniosek, że na czas odpowiedzi nie mają wpływu ciasteczka. Przynajmniej nie tylko przez nie. Tak więc w tym przypadku nasza metoda nie może wykryć podatności .
Bezpieczeństwo testów
Nasz test nie może uszkodzić Twojego serwera. Ryzyko polega na pojawieniu się jednego extra-cookie, który jest wykorzystywany tylko do naszych zapytań i nie może wpłynąć na normalną pracę Twojej strony.
Tagi:
usecase
CEO i założyciel HostTracker LTD. Jest zapalonym przedsiębiorcą z silnym zapleczem technicznym w języku F#. Artem pracuje w branży programistycznej od ponad 20 lat.