threats.pl > Bezpieczeństwo aplikacji internetowych > Lekcja 25: Wyzwanie V > Wskazówki - część druga

Wyzwanie V - wskazówki, część druga

W ramach drugiej części wskazówek do analizy przygotowałem plik z zapisem sesji Fiddlera. Plik został przygotowany z wykorzystaniem narzędzia intruder21 ze zmodyfikowanym w stosunku do domyślnego zestawem reguł. Zestaw reguł zawiera payloady opisane w Jak szukać SQLi - przykład oraz zmodyfikowane reguły wykorzystywane przez skipfish (patrz też: Understanding and using skipfish). Przykłady dotyczą pierwszej, podstawowej wersji zadania dostępnej pod adresem http://bootcamp.threats.pl/lesson25/.

Za podstawę do fuzzingu posłużyły dwa żądania bazowe. W sumie wykorzystane były wszystkie możliwe pola po których można prowadzić wyszukiwanie. Żądanie bazowe jest powtarzane przed każdym kolejnym parametrem poddawanym fuzzingowi. Dzięki temu łatwo można porównać rezultaty oryginalnego żądania z odpowiedzią serwera po modyfikacji parametrów.

Tekstem pogrubionym zaznaczone są żądania bazowe. W kolumnie Custom znajduje się hash SHA1 z odpowiedzi serwera. Dodatkowo sesje są pokolorowane w taki sposób, że sesje o tym samym SHA1 mają ten sam kolor.

Zadanie polega na przeanalizowaniu odpowiedzi zwracanych przez serwer dla poszczególnych parametrów, znalezieniu istotnych różnic w odpowiedziach serwera i określeniu na podstawie tych informacji, które parametry i pod jakimi warunkami są prawdopodobnie podatne na sql injection. Ćwiczenie można powtórzyć dla kolejnych dostępnych wersji przykładu.