HTTPS-leht, mis laadib skripte HTTP kaudu, teeb kaks päringut kahe erineva kaitstasemega ning lukk kirjeldab ainult esimest. Tunnel ei muuda seda, sest see kaitseb kandjat, mitte ressursi enda skeemi. Brauser ütleb sulle juba, milline päring ebaõnnestus, kui loed konsooli, mitte aadressiriba. Kolm kontrolli viivad sind osaliselt töötavalt lehelt tõelise paranduseni.

Loe päringut, mitte aadressiriba

Üle HTTPS-i hangitud dokument võib viidata skriptile, stiililehele, fondile või raamile lihtsa HTTP kaudu. See viide on eraldi päring ja just selle üle brauser kurdab. Põhidokumendi kaitse ei rända sinna tagasi ning mõlemat voogu kandev tunnel ei muuda kumbagi skeemi. Seega võib leht olla korraga tõeliselt turvaline ja tõeliselt katki.

Ressursi nimetamine lihtsalt kaasatud failiks ei muuda selle asendamist kahjutuks.

Kui ebaturvalist skriptisisu saab teel muuta ja seejärel käivitada, võib see muuta lehe käitumist, mis on suurem probleem kui kosmeetiline tõrge. Pildid kannavad väiksemat, kuid tõelist riski, kui neid teel muudetakse. Lukk ei valeta milleski. See vastab kitsamale küsimusele kui see, mille sa sellele esitasid.

Tea, milliseid ressursse blokeeritakse ja milliseid uuendatakse

Brauserid ei kohtle igat ressursitüüpi ühtemoodi. segasisu juhised eraldavad HTTPS-ile uuendatavad päringud täielikult blokeeritavatest, kusjuures skriptid, stiililehed ja programmilised päringud on blokeeritud poolel, samas kui pilte ja meediat võib hoopis uuendada või märgistada.

See erinevus selgitab segadust tekitavaid aruandeid. Blokeeritud skriptiga leht kaotab funktsiooni täielikult, samas kui uuendatud pildiga leht näeb hea välja ja on vaikselt oma päringut muutnud. Dokumenteeritud kategooriatel on ka erandeid, nii et ära eelda, et iga antud tüübi URL uuendatakse edukalt. Loe, mida konsool konkreetse päringu kohta ütleb, selle asemel et järeldada faililaiendist.

Blokeeritud vidin ei ole tõestus, et tunnel ebaõnnestus. See on tõestus, et brauser tegi oma tööd.

Paranda viide selle allikas

Saidi omaniku jaoks kuulub parandus sinna, kuhu ebaturvaline URL kirjutati: mall, stiilileht, URL-e kokku panev skript või kolmanda osapoole komponent. Nähtava leheaadressi muutmine jätab kõik selle puutumata. Otsi allikast hosti ja paranda iga viide, mitte ainult see üks, mille konsool juhuslikult nimetas.

Seejärel kinnita, et ressurssi tõesti serveeritakse üle HTTPS-i kehtiva identiteediga, sest skeemi vahetus ei saa esile manada teenust, mida seal kunagi ei avaldatud.

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

Järgi ka ümbersuunamisi, sest HTTPS-iga algav viide võib siiski maanduda avatud teksti tarnele. Kui sõltuvusel lihtsalt pole turvalist tarnet saadaval, eemalda või asenda see tavapärase muudatusprotsessi kaudu, selle asemel et tarnida möödasõit. Kasutaja jaoks jäta brauseri kaitse sisse lülitatuks ja teata saidi omanikule ressursi URL, selle tüüp ja konsooli sõnum. Ära kunagi levita juhiseid, mis ütlevad personalile, et lubada ühe lehe jaoks ebaturvalist sisu, sest see erand elab üle juhtumi, mis selle esile kutsus.

Testi lehte uuesti nii, nagu kasutajad seda puudutavad

Harjuta toiminguid, mis laadivad ressursse nõudmisel, mitte ainult esimest dokumenti. Lehed toovad nupuvajutuse järel lisakoodi, andmeid ja allalaadimisi ning need päringud on sageli ebaturvalised. Kinnita konkreetsed päringud ja nähtav käitumine, kui kaitse on endiselt sees. Test, mis algab lõdvenenud brauseriprofiiliga, ei saa sulle näidata, mida näeb tavaline kasutaja.

Tunnelil on endiselt oma töö ja see töö on võrguühendus, mitte lehe terviklikkus.

Kui liiklus on tunneli lõpp-punktist lahkunud, ei ole ükski järelejäänud HTTP-päring kandjalt midagi võitnud. Paranda ressursi tee ja jäta brauseri jõustamine paigale. Veel ühe transpordikihi käsitlemine ebaturvalise sõltuvuse parandusena on see, kuidas meeskond jõuab abilaua skriptini, mis lülitab välja õigesti töötanud kontrolli.

Seotud artiklid