Special HTTP headers
Liste reči i alati
Zaglavlja za promenu lokacije
Preusmeravanje IP adrese izvora:
X-Originating-IP: 127.0.0.1
X-Forwarded-For: 127.0.0.1
X-Forwarded: 127.0.0.1
Forwarded-For: 127.0.0.1
X-Forwarded-Host: 127.0.0.1
X-Remote-IP: 127.0.0.1
X-Remote-Addr: 127.0.0.1
X-ProxyUser-Ip: 127.0.0.1
X-Original-URL: 127.0.0.1
Client-IP: 127.0.0.1
X-Client-IP: 127.0.0.1
X-Host: 127.0.0.1
True-Client-IP: 127.0.0.1
Cluster-Client-IP: 127.0.0.1
Via: 1.0 fred, 1.1 127.0.0.1
Connection: close, X-Forwarded-For
(Proverite zaglavlja hop-by-hop)
Preusmeravanje lokacije:
X-Original-URL: /admin/console
X-Rewrite-URL: /admin/console
Hop-by-Hop zaglavlja
Hop-by-Hop zaglavlje je zaglavlje koje je dizajnirano da bude obrađeno i korišćeno od strane proksi servera koji trenutno obrađuje zahtev, za razliku od end-to-end zaglavlja.
Connection: close, X-Forwarded-For
Hakersko Smućkarenje HTTP zahteva
Content-Length: 30
Transfer-Encoding: chunked
Zaglavlja Keširanja
Zaglavlja keša servera:
X-Cache
u odgovoru može imati vrednostmiss
kada zahtev nije bio keširan i vrednosthit
kada jeste keširanSlično ponašanje u zaglavlju
Cf-Cache-Status
Cache-Control
ukazuje da li se resurs kešira i kada će sledeći put resurs ponovo biti keširan:Cache-Control: public, max-age=1800
Vary
se često koristi u odgovoru da ukazuje na dodatna zaglavlja koja se tretiraju kao deo ključa keša čak i ako obično nisu ključna.Age
definiše vreme u sekundama koliko je objekat bio u kešu proksija.Server-Timing: cdn-cache; desc=HIT
takođe ukazuje da je resurs bio keširan
Lokalna zaglavlja keša:
Clear-Site-Data
: Zaglavlje koje ukazuje na keš koji treba ukloniti:Clear-Site-Data: "cache", "cookies"
Expires
: Sadrži datum/vreme kada bi odgovor trebalo da istekne:Expires: Wed, 21 Oct 2015 07:28:00 GMT
Pragma: no-cache
isto kaoCache-Control: no-cache
Warning
: Opšte HTTP zaglavljeWarning
sadrži informacije o mogućim problemima sa statusom poruke. Više od jednogWarning
zaglavlja može se pojaviti u odgovoru.Warning: 110 anderson/1.3.37 "Response is stale"
Uslovi
Zahtevi koji koriste ova zaglavlja:
If-Modified-Since
iIf-Unmodified-Since
će dobiti odgovor samo ako zaglavlje odgovora**Last-Modified
** sadrži drugačije vreme.Uslovni zahtevi koji koriste
If-Match
iIf-None-Match
koriste vrednost Etag tako da će veb server poslati sadržaj odgovora ako su podaci (Etag) promenjeni.Etag
se uzima iz HTTP odgovora.Vrednost Etag se obično računa na osnovu sadržaja odgovora. Na primer,
ETag: W/"37-eL2g8DEyqntYlaLp5XLInBWsjWI"
ukazuje da jeEtag
Sha1 od 37 bajtova.
Zahtevi opsega
Accept-Ranges
: Ukazuje da li server podržava zahteve opsega, i ako podržava, u kojoj jedinici se opseg može izraziti.Accept-Ranges: <range-unit>
Range
: Ukazuje deo dokumenta koji server treba da vrati.If-Range
: Kreira uslovni zahtev opsega koji se ispunjava samo ako dati etag ili datum odgovara udaljenom resursu. Koristi se da spreči preuzimanje dva opsega sa nekompatibilne verzije resursa.Content-Range
: Ukazuje gde u celom telu poruke delimična poruka pripada.
Informacije o telu poruke
Content-Length
: Veličina resursa, u decimalnom broju bajtova.Content-Type
: Ukazuje medijum tip resursaContent-Encoding
: Koristi se za specificiranje algoritma kompresije.Content-Language
: Opisuje ljudski jezik(e) namenjen publici, tako da korisnik može da razlikuje prema sopstvenom preferiranom jeziku.Content-Location
: Ukazuje alternativnu lokaciju za vraćene podatke.
Sa tačke gledišta pentesta, ove informacije su obično "beskorisne", ali ako je resurs zaštićen sa 401 ili 403 i možete pronaći neki način da dobijete ove informacije, to bi moglo biti interesantno.
Na primer, kombinacija Range
i Etag
u HEAD zahtevu može otkriti sadržaj stranice putem HEAD zahteva:
Zahtev sa zaglavljem
Range: bytes=20-20
i sa odgovorom koji sadržiETag: W/"1-eoGvPlkaxxP4HqHv6T3PNhV9g3Y"
otkriva da je SHA1 bajta 20ETag: eoGvPlkaxxP4HqHv6T3PNhV9g3Y
Informacije o serveru
Server: Apache/2.4.1 (Unix)
X-Powered-By: PHP/5.3.3
Kontrole
Allow
: Ovaj zaglavlje se koristi za komunikaciju HTTP metoda koje resurs može obraditi. Na primer, može biti navedeno kaoAllow: GET, POST, HEAD
, što ukazuje da resurs podržava ove metode.Expect
: Koristi se od strane klijenta da prenese očekivanja koja server treba da ispuni da bi zahtev bio uspešno obrađen. Čest slučaj upotrebe uključuje zaglavljeExpect: 100-continue
, što signalizira da klijent namerava da pošalje veliki podatkovni paket. Klijent traži odgovor100 (Continue)
pre nastavka prenosa. Ovaj mehanizam pomaže u optimizaciji upotrebe mreže čekajući potvrdu servera.
Preuzimanja
Zaglavlje
Content-Disposition
u HTTP odgovorima usmerava da li bi datoteka trebalo da bude prikazana inline (unutar veb stranice) ili tretirana kao attachment (preuzeta). Na primer:
Ovo znači da je datoteka pod nazivom "filename.jpg" namenjena za preuzimanje i čuvanje.
Bezbednosni zaglavlja
Politika bezbednosti sadržaja (CSP)
Povereni tipovi
Primjenom Poverenih tipova putem CSP-a, aplikacije mogu biti zaštićene od DOM XSS napada. Povereni tipovi osiguravaju da samo specifično oblikovani objekti, u skladu sa uspostavljenim bezbednosnim politikama, mogu biti korišćeni u opasnim pozivima web API-ja, čime se podrazumevano obezbeđuje JavaScript kod.
X-Content-Type-Options
Ovaj zaglavlje sprečava MIME tip sniffing, praksu koja može dovesti do XSS ranjivosti. Osigurava da pretraživači poštuju MIME tipove navedene od strane servera.
X-Frame-Options
Da bi se borili protiv clickjacking-a, ovaj zaglavlje ograničava način na koji se dokumenti mogu ugraditi u <frame>
, <iframe>
, <embed>
, ili <object>
oznake, preporučujući da svi dokumenti eksplicitno specificiraju svoja dozvola za ugradnju.
Cross-Origin Resource Policy (CORP) i Cross-Origin Resource Sharing (CORS)
CORP je ključan za specificiranje koje resurse mogu biti učitani od strane veb sajtova, čime se umanjuju prekogranični propusti. CORS, s druge strane, omogućava fleksibilniji mehanizam deljenja resursa preko različitih porekla, opuštajući politiku istog porekla pod određenim uslovima.
Cross-Origin Embedder Policy (COEP) i Cross-Origin Opener Policy (COOP)
COEP i COOP su ključni za omogućavanje izolacije preko različitih izvora, značajno smanjujući rizik od napada sličnih Spectre-u. Oni kontrolišu učitavanje resursa sa različitih izvora i interakciju sa prozorima sa različitih izvora, redom.
HTTP Strict Transport Security (HSTS)
Na kraju, HSTS je sigurnosna funkcija koja prisiljava pretraživače da komuniciraju sa serverima samo preko sigurnih HTTPS veza, čime se poboljšava privatnost i sigurnost.
Reference
Last updated