background image

W

OJSKOWA 

A

KADEMIA 

T

ECHNICZNA

 

 
 
 
 
 

Podstawy bezpieczeństwa informacji 

 

Sprawozdanie z ćwiczeń laboratoryjnych nr 2. 

 
 

 
 
 
 
 
 
 

 
 
 
 
Prowadzący: mgr inż. Bartosz Kryński 

 
Wykonali: 
 

Jakub Łochocki 
Grupa: I9M1S1 
Nr albumu: 45303 

 

Mateusz Fruba 
Grupa: I9M1S1 
Nr albumu: 45261 

background image

Treść zadania  

Zadanie laboratoryjne nr 2 składało się z dwóch części a mianowicie: 

 

Utworzyć mapę witryny programem Burp suite. 

 

Utworzyć raport podatności witryny przy pomocy skryptu wapiti. 

Wykonanie 

Opis narzędzi 

Jako pierwsze zostało wykonane zadanie utworzenia mapy witryny. 

Burp  suite  jest  zestawem  wielu  współpracujących  narzędzi,  wspierających  wykonanie 

testów penetracyjnych aplikacji webowych. Składa się on z następujących modułów: 

  http proxy – 

umożliwia przechwycenie komunikacji oprogramowania komunikującego 

się przy pomocy protokołu HTTP 

  repeater  – 

pozwala  na  modyfikację  przechwyconych  requestów  lub  utworzenie 

nowych 

  scanner – 

skaner wykrywający podatności  aplikacji webowych   

  intruder – 

fuzzer pozwalający wykonywać półautomatyczne testy penetracyjne 

  sequencer – 

analizuje losowość generatorów identyfikatorów sesji 

  decoder – 

umożliwia konwersję pomiędzy kodowaniami typu base64, hex. 

  spider – 

umożliwia stworzenie mapy witryny oraz zasobów z jakich korzysta (obrazy, 

pliki styli)  

  comparer – 

umożliwia porównanie różnic pomiędzy zapytaniami lub odpowiedziami 

http. 

Podczas wykonywania tego zadania potrzebne były nam tylko dwa moduły tego programu: 

http proxy oraz spider. 

P

rzebieg ćwiczenia 

Jako że podczas wykonywania zadania laboratoryjnego zgrywanie zrzutów ekranu nie 

przebiegło pomyślnie i nie udało się ich odtworzyć, zadanie zostało wykonane ponownie na 
własnej stronie internetowej. 

Całość zadania schodziła się do kilku prostych czynności: 

background image

1.  Uruchomienie programu Burp Suite 

2.  Ustawienie serwera proxy w pr

zeglądarce firefox (host: 127.0.0.1 port: 8080) 

3. 

Wpisanie i wywołanie adresu witryny w przeglądarce, zezwolenie w programie Burp 
suite na wykonanie żądania. 

4. 

W zakładce Target -> Site map odnalezienie interesującej nas witryny i wybranie dla 

niej opcji „spider this host”. 

Wynik po wykonaniu powyższych kroków przedstawiony został na poniższym obrazku. 

 

 

Kolejną częścią zadania laboratoryjnego było utworzenie raportu podatności witryny 

przy pomocy skryptu wapiti. 

Wapiti jest skryptem pythonowym p

ozwalającym  nam na wykonywanie testu 

podatności  aplikacji  internetowej.  Bazuje  on  na  modułach,  co  znaczy,  że  bez  większego 
problemu  możemy  dogrywać  do  niego  moduły  podatności.  Po  uruchomieniu  skanowania, 

pierwsza 

czynność, jaka jest wykonywana jest to utworzenie mapy witryny w celu znalezienia 

background image

wszelkich  miejsc  do  wstrzyknięcia  ewentualnego  złośliwego  kodu.  Czas skanowania jest 
zależny od tego jak bardzo serwis jest rozbudowany i jak wiele posiada odnośników. 

W celu uruchomienia skanowania 

wystarczy uruchomić skrypt z następującymi parametrami: 

> python wapiti.py [adres url lub ip] –r html 

Np.: python wapiti.py http://kurosup.cba.pl –r html 

Przed  skanowaniem  możemy  sobie  określić,  jakie  moduły  penetracyjne  mają  zostać 

uruchomione jednak w naszym zadaniu laboratoryjnym 

nie  określaliśmy  tego  parametru, 

przez co 

wykonane zostały wszystkie dostępne w skrypcie testy. 

 

background image

 

Na powyższym zrzucie ekranu widzimy przykładowe uruchomienie skryptu. 

 

 

 

background image

Po dość długim skanowaniu otrzymamy raport podobny do tego poniżej 

 

 

 

 

 

 

background image

Po 

pierwszym  skanowaniu  skrypt  nie  wykrył  żadnych  podatności,  w  ramach 

ćwiczenia laboratoryjnego część zabezpieczeń witryny została wycięta na czas testu. Niestety 
jak  się  okazało  skrypt  ten  nie  jest  idealny  w  podstawowej  formie  nie  wykrył  wielu 

potencjalnych 

zagrożeń takich jak LFI, RFI. Niesprawdzone zostały także typowe błędy dla 

danego  języka  w  tym  przypadku  dla  PHP  nie  zostało  sprawdzone  podanie  jako  argumentu 
tablicy. Jak powszechnie wiadomo większość funkcji php po otrzymaniu takiego argumentu 
przy  włączonym  raportowaniu  błędów  zwraca  wiele  cennych  informacji  dla potencjalnego 
włamywacza, zaczynając od fizycznej ścieżki dostępu, pod jaką się znajduje dany moduł aż 

po skrawki kodu. 

Skrypt w raporcie nie uwzględnił także domyślnie wyrzucanych warningów 

i  błędów  na  stronie, które  także  zawierały  ścieżki  fizyczne.  Twórca  skryptu  pomijając 
wyszukiwanie tego typu rzeczy wyciął sprawdzanie błędów typu ByPass polegające na tym, 
że kluczowe pliki nie są chronione niczym, są ogólnodostępne jedynie trzeba odgadnąć adres 
dostępu  do  nich.  Do  wad  skryptu  można  także  zaliczyć  to  że  jest  bardzo  ogólny,  przy  nie 
bezpiecznym  użyciu  funkcji  include()  zgłosił  błąd  jako  File  Handling,  gdzie  należało  by 
sprawdzić rodzaj podatności: local file include, remote file include.  

Ja możemy zauważyć ten skaner nadaje się tylko do powierzchownych testów i nigdy 

nie  zastąpi  dobrze  wykonanego  audytu  bezpieczeństwa.  Pominął  on  wiele  kluczowych 

informacji, które 

osobno może nie stanowią wielkiego zagrożenia, ale połączone razem dają 

intruzowi pełny dostęp do aplikacji. 


Document Outline