HTTPS stranica koja učitava skripte preko HTTP-a upućuje dva zahtjeva s dvije različite razine zaštite, a katanac opisuje samo prvi. Tunel to ne mijenja jer štiti nosač, a ne vlastitu shemu resursa. Preglednik vam već govori koji je zahtjev neuspješan, ako čitate konzolu umjesto adresne trake. Tri provjere vode vas od djelomično ispravne stranice do stvarnog popravka.

Čitajte zahtjev, a ne adresnu traku

Dokument dohvaćen preko HTTPS-a može referencirati skriptu, stilsku tablicu, font ili okvir preko običnog HTTP-a. Ta referenca je zaseban zahtjev i upravo se na njega preglednik žali. Zaštita glavnog dokumenta ne prenosi se natrag u njega, a tunel koji nosi oba toka ne mijenja nijednu shemu. Stranica stoga može istovremeno biti istinski sigurna i istinski slomljena.

Nazvati resurs samo uključenom datotekom ne čini njegovu zamjenu bezopasnom.

Ako se nesiguran sadržaj skripte može promijeniti na putu i zatim izvršiti, može promijeniti ponašanje stranice, što je veći problem od kozmetičkog kvara. Slike nose manji, ali stvaran rizik kada se mijenjaju na putu. Katanac ne laže ni o čemu. Odgovara na uže pitanje od onoga koje ste postavili.

Znajte koji se resursi blokiraju, a koji nadograđuju

Preglednici ne tretiraju svaku vrstu resursa jednako. smjernice za miješani sadržaj razdvajaju zahtjeve koji se nadograđuju na HTTPS od zahtjeva koji se potpuno blokiraju, pri čemu su skripte, stilske tablice i programski zahtjevi na blokiranoj strani, dok se slike i mediji mogu umjesto toga nadograditi ili označiti.

Ta razlika objašnjava zbunjujuća izvješća. Stranica s blokiranom skriptom potpuno gubi funkciju, dok stranica s nadograđenom slikom izgleda dobro i tiho je promijenila svoj zahtjev. Dokumentirane kategorije također imaju iznimke, pa nemojte pretpostaviti da će se svaki URL određene vrste uspješno nadograditi. Čitajte što konzola kaže o konkretnom zahtjevu umjesto da zaključujete iz nastavka datoteke.

Blokirani widget nije dokaz da je tunel zakazao. To je dokaz da je preglednik obavio svoj posao.

Popravite referencu na njezinu izvoru

Za vlasnika stranice popravak pripada mjestu gdje je nesigurni URL zapisan: predložak, stilska tablica, skripta koja sastavlja URL-ove ili komponenta treće strane. Promjena vidljive adrese stranice sve to ostavlja netaknutim. Pretražite izvor za hostom i popravite svaku referencu, a ne samo onu koju je konzola slučajno navela.

Zatim potvrdite da se resurs doista poslužuje preko HTTPS-a s valjanim identitetom, jer zamjena sheme ne može prizvati uslugu koja nikada nije bila objavljena na tom mjestu.

grep -rn "http://assets.example" ./templates
curl -sSI https://assets.example/widget.js | head -n 1

Slijedite i preusmjeravanja, jer referenca koja počinje s HTTPS-om ipak može završiti na putu isporuke otvorenim tekstom. Kada neka ovisnost jednostavno nema dostupnu sigurnu isporuku, uklonite je ili zamijenite kroz uobičajeni proces promjene umjesto da šaljete zaobilazno rješenje. Za korisnika ostavite zaštite preglednika uključene i prijavite vlasniku stranice URL resursa, njegovu vrstu i poruku konzole. Nikada ne širite upute koje osoblju kažu da dopusti nesiguran sadržaj za jednu stranicu, jer ta iznimka nadživljava incident koji ju je potaknuo.

Ponovno testirajte stranicu onako kako je korisnici dotiču

Vježbajte radnje koje učitavaju resurse na zahtjev, a ne samo prvi dokument. Stranice dohvaćaju dodatni kod, podatke i preuzimanja nakon pritiska na gumb, a ti su zahtjevi često nesigurni. Potvrdite konkretne zahtjeve i vidljivo ponašanje dok je zaštita još uključena. Test koji počinje s opuštenim profilom preglednika ne može vam pokazati što vidi uobičajeni korisnik.

Tunel i dalje ima svoj posao, a taj je posao mrežni pristup, a ne cjelovitost stranice.

Nakon što promet napusti završnu točku tunela, svaki preostali HTTP zahtjev nije dobio ništa od nosača. Popravite putanju resursa i zadržite provedbu u pregledniku. Tretirati još jedan transportni sloj popravkom nesigurne ovisnosti jest način na koji tim završi sa skriptom za pomoćnu službu koja isključuje kontrolu koja je ispravno radila.

Povezani članci