Back to site
Since 2004, our University project has become the Internet's most widespread web hosting directory. Here we like to talk a lot about web servers, web development, networking and security services. It is, after all, our expertise. To make things better we've launched this science section with the free access to educational resources and important scientific material translated to different languages.

Linux Only

Uvod

Оvaj članak objašnjava kako dobiti HTTP trag. To jest, kako dobiti tekst koji se šalje serveru i nazad kada zahtevate određenu web stranicu. Reč je o sledećim alatkama:

ImeMetodJezikKarakteristikePlatforma
Wiresharksnimak paketaCsrednjirazličite platforme
FiddlerWinInet / HTTP posrednik.NETobimanWindows
HttpdbgHTTP posrednikCjednostavanUnix
Burp ProxyHTTP posrednikJavaobimanrazličite platforme
TCPWatchport za posredovanje / HTTP posrednikPythonjednostavanrazličite platforme

Primer:

01GET / HTTP/1.1
02Host: localhost
03User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.1.7) Gecko/20100106 Ubuntu/9.10 (karmic) Firefox/3.5.7
04 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*
05Accept-Language: en-us,en;q=0.5
06Accept-Encoding: gzip,deflate
07Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
08Keep-Alive: 300
09Connection: keep-alive
10If-Modified-Since: Thu, 21 Jan 2010 21:54:15 GMT
11If-None-Match: "1f7804a-2c-47db3be780fc0"
12Cache-Control: max-age=0
13 
14HTTP/1.1 304 Not Modified
15Date: Mon, 15 Feb 2010 15:33:05 GMT
16Server: Apache/2
17Connection: Keep-Alive
18Keep-Alive: timeout=1, max=100
19ETag: "1f7804a-2c-47db3be780fc0"
20Vary: Accept-Encoding,User-Agent

Više alatki:

Wireshark je alatka za nadlgedanje mrežnog protoka koja može da pokaže i da sačuva HTTP prenose. S obzirom da pre radi na nivou paketa nego na HTTP nivou, klijent ne mora biti konfigurisan kako bi snimio zahtev.

  1. Pokrenite Wireshark. Možda ćete morati da ga pokrenete kao osnovnu alatku kako biste imali dovoljno odobrenja da nadgledate protok u određenim paketima;
  2. Аko je kompjuter sa kojeg pokrećete nadgledanje isti onaj koji pokreće HTTP prenos, onemogućite neselektivni režim rada na interfejsu.
  3. Mоžda ćete želeti da unesete filter kao što je tcp.port == 80 za filter.
  4. Pošaljite svoj zahtev.
  5. Pronađite paket sa zahtevom. Obično će otpočeti sa GET ili POST.
  6. Kliknite na desni taster miša i izaberite "Follow TCP stream".
  7. Pojavljuje se prozor sa HTTP razgovorom. Možete ga sačuvati izborom opcije Save As.

Fiddler је HTTP provajder za MS Windows koji može da pokaže i da izmeni HTTP prenose.

  1. Pokrenite Fiddler.
  2. Аko vaš klijent ne koristi WinInet, konfigurišite server posrednika tako da se saobraćaj usmerava preko Fiddlera. Upotrebite kao posrednika localhost, port 8888.
  3. Pošaljite svoj zahtev.
  4. Kliknite na odgovarajući HTTP poziv u Fiddleru.
  5. Аko je zahtev komprimovan ili kodiran, dešifrujte ga koristeći "Transformer" karticu.
  6. Оdgovor se može videti na dnu kartice. Može se otvoriti u Notepadu i naknadno sačuvati.

Httpdbg је komandna linija HTTP posrednika koja izbacuje sve zahteve i odgovore na stdout i na log fajl.

  1. Pokrenite httpdbg, sa brojem porta kao argumentom. Podrazumevano, http čuva samo zaglavlja. Upotrebite t-opciju da sačuvate tekst.
  2. Konfigurišite klijenta tako da koristi httpdbg kao posrednika. Umrežite localhost, isti port se prenosi kao argument na httpdbg.
  3. Pošaljite svoj zahtev..
  4. Zahtev i odgovor se pišu na httpdbg.log.
$ ./httpdbg -t 8080
./httpdbg version 0.8 started at port 8080 (http://www.reitshamer.com/source/)
GET http://twitter.com/ HTTP/1.1
Accept-Encoding: gzip,deflate
Accept-Language: en-us,en;q=0.5
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Host: twitter.com
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.1.7) Gecko/20100106 Ubuntu/9.10 (karmic) Firefox/3.5.7
Keep-Alive: 300
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8

----------------------------END OF HTTP REQUEST----------------------------
HTTP/1.0 200 OK
Content-Length: 5432
X-Transaction: 1265741234-96812-30412
Server: hi
Burp Proxy је deo Burp Suite-a, skupa alatki za dodavanje web aplikacija. To je Java program koji radi kao HTTP posrednik ili kao transparentni zastupnik. Burp Proxy omogućava presretanje HTTP zahteva, kada se zahtev može promeniti pre nego što se pošalje na server.
  1. Pokrenite Burp Proxy, pokretanjem java -jar burpsuite_v1.3.jar.
  2. Konfigurišite klijenta tako da koristi posrednika. Umrežite localhost, port 8888.
  3. Pošaljite svoj zahtev.
  4. Burp Proxy pokazuje zahtev. Kliknite na "forward" da biste poslali zahtev. Kliknite na "intercept is on" da isključite presretanje i prosledite momentalno svaki zahtev.
  5. Odgovor se pokazuje na kartici “history”.
Published (Last edited): 29-01-2013 , source: http://www.linuxonly.nl/docs/38/122_Introduction.html