Kaj so varnostne glave HTTP in kako jih uporabljate?

Kaj so varnostne glave HTTP in kako jih uporabljate?
Bralci, kot ste vi, pomagajo podpirati MUO. Ko opravite nakup prek povezav na našem spletnem mestu, lahko zaslužimo partnersko provizijo.

Ko želite obiskati spletno mesto, internetni brskalnik, ki ga uporabljate, prejme nekaj podatkov s tega mesta. Posledično pride do dialoga med vašo napravo in spletnim mestom. To se zgodi s protokolom, imenovanim HTTP. S posredovanjem v tem dialogu je mogoče sprejeti nekatere dodatne varnostne ukrepe.





MAKEUSEOF VIDEO DNEVA

Če upravljate spletno stran ali si prizadevate za kariero spletnega razvijalca, so varnostne glave HTTP za vas neprecenljive, saj igrajo aktivno vlogo pri varnosti tako uporabnika kot spletnega mesta.





Kaj je HTTP Strict-Transport-Security (HSTS)?

HTTP Strict Transport Security (HSTS) sili uporabnike v uporabo HTTPS za vsako zahtevo, ki jo naredijo v svojem brskalniku. To je dober način za boj proti kibernetskim napadom, kot je znižanje različice, in za zagotavljanje varnosti celotnega prometa.





Aktivacija HSTS je precej enostavna. Razmislite o dialogu med odjemalcem in strežnikom. Ko poskušate dostopati do spletnega mesta prek brskalnika, ste odjemalec. Spletno mesto, ki ga želite odpreti, je odvisno od strežnika. Vaš cilj je strežniku povedati: 'Želim odpreti to spletno mesto'. To je operacija zahteve. Strežnik pa vas usmeri na stran, če izpolnjujete želene pogoje.

Upoštevajte to v zvezi s to vzorčno zastavico glave HTTP:



Strict-Transport-Security: max-age=16070200; 

Ko dodate to zastavico informacijam o glavi odgovora HTTP, bodo vse uporabniško ustvarjene zahteve postale HTTPS. Karkoli uporabnik tukaj napiše, bo brskalnik samodejno ovrednotil protokol kot HTTPS in vzpostavil varno povezavo.

Kako uporabljati HSTS

Namesto dodajanja vseh teh informacij glave HTTP v sloj kode, lahko to storite v aplikacijah Apache, IIS, Nginx, Tomcat in drugih spletnih strežnikih.





Če želite omogočiti HSTS v Apache:

LoadModule headers_module modules/mod_headers.so 
<VirtualHost *:443>
Header always set Strict-Transport-Security "max-age=2592000; includeSubDomains"
</VirtualHost>

Če želite omogočiti HSTS v Nginxu:





add_header Strict-Transport-Security max-age=2592000; includeSubdomains 

Če želite omogočiti HSTS z IIS web.config:

pretočno predvajajte igre iz računalnika na televizijo
<system.webServer> 
<httpProtocol>
<customHeaders>
<add name="Strict-Transport-Security" value="max-age=63072000"/>
</customHeaders>
</httpProtocol>
</system.webServer>

Za uporabnike Cloudflare

Cloudflare ponuja brezplačno storitev HTTPS za vse s svojo storitvijo Keyless SSL; preden se prijavite za prednalaganje HSTS, morate vedeti, da vaše potrdilo ne pripada vam. Veliko spletnih mest uporablja SSL certifikate ker so preprost način za varovanje podatkov.

Vendar Cloudflare zdaj podpira funkcijo HSTS . Vse funkcije HSTS, vključno s prednalaganjem, lahko aktivirate prek spletnega vmesnika Cloudflare, ne da bi se mučili s konfiguracijami na spletnem strežniku.

Kaj je X-Frame-Options?

  Povečanje varnosti spletne strani s HTTP glavami

X-Frame-Options je varnostna glava, ki jo podpirajo vsi sodobni brskalniki. Namen X-Frame-Options je zaščititi pred krajo klikov, kot je Clickjacking. Kot že ime pove, gre za delovanje ranljivega inline okvirja, znanega tudi kot iframe. To so elementi na spletnem mestu, ki vdelajo drugo stran HTML v 'nadrejeno' spletno mesto, tako da lahko na svojem spletnem mestu uporabljate vsebino iz drugih virov. Toda napadalci uporabljajo iframe pod lastnim nadzorom, da uporabnike prisilijo k dejanjem, ki jih ne želijo.

Iz tega razloga morate napadalcem preprečiti, da bi našli iframe na spletnem mestu.

Kje in kako uporabljati X-Frame-Options?

Kar počne X-Frame-Options, poskušajo nekateri razvijalci narediti z jeziki, kot je JavaScript. To ni povsem napačno. Vendar pa še vedno obstaja tveganje, ker kode, zapisane v mnogih pogledih, niso dovolj. Zato bi bilo pametno to nalogo prepustiti spletnemu brskalniku, ki ga uporabljate.

Vendar pa morate kot razvijalec vedeti o možnostih X-Frame-Options tri parametre:

  • Zanikati : Popolnoma preprečite, da bi bila stran priklicana v katerem koli okviru iframe.
  • SAMEORIGIN : preprečite, da bi katera koli druga domena razen vaše lastne klicala znotraj okvira iframe.
  • DOVOLI-OD uri : Sprejmi klice iframe URI-ja, podanega kot parameter. Blokiraj druge.

Tukaj, SAMEORIGIN funkcija bolj izstopa. Kajti medtem ko lahko kličete aplikacije v svojih različnih poddomenah z okvirji iframe drug v drugem, lahko preprečite njihov klic prek domene pod nadzorom napadalca.

Tukaj so primeri, kako lahko uporabite SAMEORIGIN in X-Frame-Options z NGINX, Apache in IIS:

Uporaba X-Frame-Options SAMEORIGIN za Nginx:

add_header X-Frame-Options SAMEORIGIN; 

Uporaba X-Frame-Options SAMEORIGIN za Apache:

Header always append X-Frame-Options SAMEORIGIN 

Uporaba X-Frame-Options SAMEORIGIN za IIS:

<httpProtocol> 
<customHeaders>
<add name="X-Frame-Options" value="SAMEORIGIN" />
</customHeaders>
</httpProtocol>

Preprosto dodajanje glave SAMEORIGIN bo zagotovilo večjo varnost za vaše obiskovalce.

Kaj je zaščita X-XSS?

Uporaba informacij o glavi X-XSS-Protection lahko zaščiti uporabnike pred napadi XSS. Najprej morate odpraviti XSS ranljivosti na strani aplikacije. Po zagotavljanju varnosti na osnovi kode so potrebni dodatni ukrepi, tj. glave X-XSS-Protection, proti ranljivostim XSS v brskalnikih.

Kako uporabljati zaščito X-XSS

Sodobni brskalniki lahko zaznajo potencialno koristno obremenitev XSS s filtriranjem vsebine, ki jo ustvari aplikacija. To funkcijo je mogoče aktivirati z informacijami o glavi X-XSS-Protection.

kako narediti računalnik hitrejši za igralne okne 10

Če želite omogočiti glavo X-XSS-Protection v Nginxu:

add_header X-Frame-X-XSS-Protection 1; 

Če želite omogočiti glavo X-XSS-Protection v Apache:

Header always append X-XSS-Protection 1 

Če želite omogočiti glavo X-XSS-Protection v IIS:

<httpProtocol> 
<customHeaders>
<add name="X-XSS-Protection" value="1" />
</customHeaders>
</httpProtocol>

Če želite preprečiti zagon kodnega bloka s privzetim napadom XSS, lahko uporabite nekaj takega:

X-XSS-Protection: 1; mode=block 

To manjšo spremembo je treba narediti, če obstaja potencialno nevarna situacija in želite preprečiti upodobitev vse vsebine.

kaj lahko storim z bluetoothom na prenosnem računalniku in telefonu?

Kaj je X-Content-Type-Options?

Brskalniki izvedejo analizo, imenovano MIME Type Sniffing, na vsebini, ki jim jo predstavi spletna aplikacija. Na primer, če obstaja zahteva za dostop do datoteke PDF ali PNG, brskalniki, ki analizirajo odziv HTTP, sklepajo o vrsti datoteke.

Razmislite o datoteki s pripono jpeg, ki pa dejansko vsebuje vsebino Text/HTML. Po uporabi razširitev in posredovanju zaščit v modulu za nalaganje je datoteka uspešno naložena. Naložena datoteka se prikliče prek URL-ja in vohanje vrste MIME kot rezultat vrne besedilo/HTML. Vsebino upodablja kot HTML. Takrat se pojavi ranljivost XSS.

Zato morate preprečiti, da bi brskalniki odločali o vsebini z vohanjem vrste MIME. Če želite to narediti, lahko uporabite nosniff.

Glava X-Content-Type-Options za Nginx:

add_header X-Content-Type-Options nosniff; 

Glava X-Content-Type-Options za Apache:

Header always X-Content-Type-Options nosniff 

Glava X-Content-Type-Options za IIS:

<httpProtocol> 
<customHeaders>
<add name="X-Content-Type-Options" value="nosniff" />
</customHeaders>
</httpProtocol>

Spletne aplikacije sledijo sejam uporabnikov prek ID-ja seje. Brskalniki bodo to shranili in samodejno dodali vsaki zahtevi HTTP v obsegu piškotka.

Je mogoče za uporabo piškotkov za namene razen prenosa sejnega ključa. Hekerji lahko odkrijejo uporabniške podatke z uporabo zgoraj omenjene ranljivosti XSS ali z napadom CSRF (Cross-Site Request Forgery). Kateri piškotki so torej najpomembnejši z vidika varnosti?

Podatke, ki jih vsebuje zadnja slika, ki ste jo kliknili v galeriji slik, lahko upoštevate kot primer. Na ta način je promet HTTP manjši in del obremenitve lahko razreši uporabnikov spletni brskalnik s skriptiranjem na strani odjemalca.

  Uporaba glav HTTP za zaščito zaupnih informacij na spletnem mestu

To je kje HttpOnly Spodaj je primer, kako mora biti dodeljen piškotek:

Set-Cookie: user=t=cdabe8a1c2153d726; path=/; HttpOnly 

Upoštevajte vrednost HttpOnly, poslano v Set-Piškotek delovanje. Brskalnik bo to videl in ne bo obdelal vrednosti z zastavico HttpOnly, ko se do piškotka dostopa prek dokument.piškotek spremenljivka. Druga zastavica, ki se uporablja v procesu Set-Cookie, je zastavica Secure. To pomeni, da bo vrednost piškotka dodana v glavo samo za zahteve HTTPS. Spletna mesta za e-trgovino ga običajno uporabljajo, ker želijo zmanjšati omrežni promet in povečati zmogljivost.

S to metodo lahko skrijete kritične podatke uporabnikov, kot so uporabniška imena, gesla in podatki o kreditni kartici. Vendar obstaja problem. Uporabnikom, ki dokončajo postopek prijave, se dodeli vrednost piškotka brez zastavice Secure. Uporabnik ima lahko ključ seje, ko naredi zahtevo HTTP za povezave, ki niso HTTPS. Dodajanje varne zastavice je enostavno:

Set-Cookie: user=t=cdabe8a1c2153d726; path=/; Secure 

Kdaj ne bi smeli uporabljati HttpOnly? Če se zanašate na Javascript, bodite previdni, saj lahko zaradi tega postane vaše spletno mesto manj varno.

Majhni koraki delujejo za širšo spletno varnost

Za povečanje varnosti spletnih aplikacij ne potrebujete naprednega znanja programske opreme in strežnika. Če spremenite le nekaj vrstic, lahko preprečite nekaj resnih napadov. Seveda to ni dovolj. Vendar je to majhen, a učinkovit korak za varnost spletnega mesta. Znanje je najboljša preventiva, zato je koristno poznati tudi subtilne nianse, kako HTTPS ščiti podatke med prenosom.