HTTPS

Izvor: Wikipedija
Skoči na: orijentacija, traži
IP Model
Sloj Protokol
Aplikacijski DNS, DHCP, TLS/SSL, TFTP, FTP, HTTP, IMAP, IRC, NNTP, POP3, SIP, SMTP, SNMP, SSH, Telnet, BitTorrent, RTP, rlogin, …
Transportni TCP, UDP, DCCP, SCTP, IL, RUDP,
Mrežni IP (IPv4, IPv6), ICMP, IGMP, ARP, RARP, …
Podatkovni Ethernet, Wi-Fi, Token ring, PPP, SLIP, FDDI, ATM, DTM, Frame Relay, SMDS, …

HyperText Transfer Protocol Secure (HTTPS) je internetski protokol nastao kombinacijom protokola HTTP s protokolom SSL/TLS.

Svojstva HTTPS-a[uredi VE | uredi]

Ovaj protokol omogućava kriptiranu komunikaciju i sigurnu identifikaciju web poslužitelja mreže. HTTPS veze često se koriste za novčane transakcije na World Wide Webu i ostale povjerljive transakcije u korporativnim informacijskim sustavima.

HTTPS je URI shema koja ima identičnu sintaksu poput standardnog HTTP programa, osim svoje znakovne sheme. Međutim, HTTPS signalizira pregledniku za korištenje dodatnog zaštitnog SSL/TLS protokola kako bi zaštito promet. SSL je posebno pogodan za HTTP jer može pružiti određenu zaštitu čak i ako je samo jedna strana komunikacije ovjerena (autentična). To je slučaj HTTP transakcije preko Interneta, gdje je obično samo poslužitelj ovjeren.

Osnovna ideja HTTPS je stvoriti siguran kanal preko nesigurne mreže. To osigurava razumnu zaštitu od prisluškivanja i napada Man-in-the-middle, pod uvjetom da je korištena odgovarajuća enkripcija i da je poslužiteljev certifikat provjeravan i pouzdan.

Web preglednici znaju kako vjerovati HTTPS web stranicama na temelju certifikata koji dolaze pre-instalirani u njihovom softveru. Izdaju ih posebne tvrtke (engl. Certificate authorities) (npr. VeriSign / Thawte / itd.) kojima proizvođači Internet preglednika (Mozilla, Google, Microsoft) vjeruju. Logično, slijedi da korisnik mora imati povjerenja u HTTPS povezivanje na web stranicu onda i samo onda ako je sljedeće navedeno istinito:

1. Korisnik vjeruje da je internet preglednik ispravno implementirao podršku za HTTPS s ispravnim predinstaliranim certfikatom izdanim od ovlaštenih CA (certificirani autoritet).

2. Korisnik vjeruje certificiranom autoritetu CA da jamči samo za legitimne web stranice.

3. Internetska stranica daje valjani certifikat, što znači da je potpisan od strane pouzdanog certificiranog autoriteta.

4. Potvrda ispravno identificira web stranice (npr. kad preglednik posjeti "https://example.com", dobiveni certifikat je ispravan za "Example Inc", a ne neki drugi subjekt).      5. ili da je Internet mreža vjerodostojan, ili korisnik vjeruje da je sloj kriptiranog protokola (TLS/SSL) dovoljna zaštita protiv prisluškivanja.

Integracija u pregledniku[uredi VE | uredi]

Većina web-preglednika prikazuje upozorenje ako prime pogrešnu potvrdu. Stariji preglednici, prilikom spajanja na stranicu s nevažećim certifikatom, postaviti će korisniku pitanje u dijaloškom okviru (dialog box) žele li nastaviti. Noviji preglednici prikazuju upozorenje preko cijelog prozora. Noviji preglednici također istaknu prikazane informacije o sigurnosti stranice u adresnoj traci. Proširena provjera valjanosti potvrde u novijim preglednicima mijenja boju adresne trake u zeleno. Većina preglednika također prikazuje upozorenje korisniku prilikom posjeta web lokaciji koja sadrži mješavinu šifriranih i nekodiranih sadržaja.

Electronic Frontier Foundation nudi dodatak pod nazivom HTTPS Everywhere ("HTTPS svuda") za Mozilla Firefox koji omogućava automatsko korištenje HTTPS-a za stotine često korištenih web stranice.

Razlika od HTTP-a[uredi VE | uredi]

HTTPS standardno rabi TCP/IP-port 443 a njegovi URL-ovi počinju s "https://". S druge strane, HTTP standardno rabi TCP/IP-port 80 a njegovi URL-ovi počinju s "http://".

HTTP je nezaštićen i predmet je napada čovjek-u-sredini i prisluškivanje, što može dopustiti napadačima pristup web računima i osjetljivim informacijama. HTTPS je dizajniran da izdrži takve napade i smatra se sigurnim protiv takvih napada (uz iznimku izvan upotrebe starije verzije SSL).

HTTP djeluje na najvišem sloju OSI modela, aplikacijski sloj, ali sigurnosni protokol radi na nižim podrazinama, kodirajući HTTP poruku prije prijenosa i dekriptirajući poruku pri dolasku. Strogo govoreći, HTTPS nije zasebni protokol, ali se odnosi na korištenje običnog HTTP preko kriptirane SSL / TLS veze.

Sve u HTTPS porukama je kodirano, uključujući i zaglavlja. S iznimkom mogućeg kriptografskog napada, napadač može znati činjenicu da se veza odvija između dviju stranaka, naziv domene i IP adrese ali kriptografski algoritmi korišteni za kodiranje su toliko sigurni da ih je u realnim uvjetima nemoguće probiti.

Postavke poslužitelja[uredi VE | uredi]

Za izradu web-poslužitelja koji će prihvatiti HTTPS veze, administrator mora stvoriti javni ključ certifikata za web poslužitelj. Taj certifikat mora biti ovjeren od strane CA kako bi ga Internet preglednik prihvatio bez upozorenja .CA potvrđuje da je nositelj certifikata operator na web poslužitelju koji ga predstavlja. Web preglednici su uglavnom raspoređeni s listom potpisanih certifikata glavnih davatelja usluga certificiranja, tako da oni mogu provjeriti certifikate koje su potpisali.

Stjecanje certifikata

Potpisani certifikati mogu biti besplatni ili koštaju između $8 i $1500 godišnje. Međutim, u slučaju besplatnih davatelja usluga certificiranja kao što su CACert u popularnim preglednicima (npr. Firefox, Internet Explorer) ne mora nužno biti uključivati njihov glavni (root) certifikat, što može dovesti do upozorenja prilikom posjeta stranica koje su potpisane njihovim glavnim (root) certifikatom. (CAcert.org je izdao blizu 800 000 certifikata do siječnja 2012 godine.)

Organizacije također mogu pokrenuti vlastiti autoritet za izdavanje potvrda, osobito ako su odgovorne za postavljanje preglednika za pristup svojim web stranicama (npr, web stranice na intranet mreži tvrtke, ili velikih sveučilišta).

Korištenje kao kontrola pristupa[uredi VE | uredi]

Sustav se također može koristiti za autentifikaciju klijenta kako bi ograničili pristup web servera ovlaštenim korisnicima. Da biste to učinili, administrator web-mjesta obično stvara certifikat za svakog korisnika, certifikat koji se učitava u njegov preglednik. Normalno, koji sadrži ime i e-mail adresu ovlaštenog korisnika i koji je automatski provjeran od strane poslužitelja za svako ponovno povezivanje kako bi potvrdili korisnikov identitet, potencijalno čak i bez unosa lozinke.

U slučaju kompromitirajućeg privatnog ključa

Certifikat može se opozvati prije nego što istekne, na primjer, jer je tajnost privatnog ključa ugrožena. Novije verzije popularnih pretraživača kao što su Firefox, Google Chrome, Opera, i Internet Explorer u sustavu Windows Vista provode Online Certificate Status Protocol (OCSP) za potvrdu da to nije slučaj .Preglednik šalje certifikatov serijski broj prema certificiranom autoritetu ili putem svog izaslanika OCSP i autoritet reagira, govoreći pregledniku da li je potvrda još uvijek na snazi​.

Ograničenja protokola[uredi VE | uredi]

SSL dolazi u dvije opcije, jednostavna i zajednička.

Zajednička verzija je sigurnija, ali zahtijeva od korisnika instaliranje osobnog certifikata u svom pregledniku kako bi se prepoznao.

Koja god se strategija koristi (jednostavna ili zajednička), razina zaštite uvelike ovisi o ispravnosti provedbe web preglednika i poslužiteljevog softvera i kriptografskih algoritama koje podržava.

SSL ne sprječava potpuno indeksiranje web stranica od strane pretraživača (npr. Google)

S arhitektonske točke gledišta:

1. SSL/TLS vezom upravlja prvi (frontalni) server, ako se kojim slučajem aplikacija koji se pristupa ne nalazi na tom serveru, treba postojati riješenje koje će proslijediti informacije o korisniku i certifikatu tom aplikacijskom serveru.

2. Za SSL s zajedničkom autentifikacijom, SSL/TLS sjednica (session) je upravljana od strane prvog poslužitelja koji inicira vezu. U situacijama gdje se šifriranje mora širiti povezanim serverima, upravljanje istekom sjednice postaje vrlo komplicirana zadatak za provedbu. 3. S zajedničkim SSL/TLS, sigurnost je maksimalna, ali na strani klijenta, ne postoji način da se pravilno završi SSL veza i isključi korisnika osim čekanjem da SSL sjednica istekne ili zatvori sve povezane aplikacije klijenata.     4. Zbog preformasni statički sadržaj koji nije specifičan za korisnika ili transakciju, obično se dostavlja putem ne kriptiranog prednjeg poslužitelja ili zasebnog poslužitelja bez SSL-a. Kao posljedica toga, ovaj sadržaj obično nije zaštićen. Mnogi preglednici upozoravaju korisnika kada stranica pomiješa kodirane i ne kodirane dijelove

Sofisticiran tip MITM predstavljen je na Blackhat Conference 2009. Ova vrsta napada probija sigurnost koju pruža HTTPS promjenom https: linka u http:link, uzimajući prednost činjenice da rijetki korisnci Interneta zapravo upisuju "https" u njihov preglednik. Korisnici odlaze na sigurnu stranicu putem linka misleci da koriste HTTPS dok ustvari koriste HTTP. Napadač tada komunicira jasno s klijentom.

Povijest[uredi VE | uredi]

Netscape Communications stvorio je HTTPS 1994. za svoj Netscape Navigator web preglednik. Izvorno, HTTPS se koristio sa SSL protokolom. Kao što je SSL evoluirao u Transport Layer Security (TLS), trenutna verzija HTTPS je formalno određena od strane RFC 2818 u svibnju 2000.