Mis on HPKP?

click fraud protection

HPKP on aegunud veebiturbe vastuse päis, akronüüm tähistab HTTP avaliku võtme viipeid. Selle eesmärk oli takistada ohustatud või petturlikul sertifitseerimisasutusel veebisaidile avalikult usaldusväärse, kuid häkkerite kontrollitud HTTPS-i sertifikaati väljastamast. Selle stsenaariumi korral saaksid häkkerid dekrüpteerida kõik pealtkuulatud HTTPS-i liiklused mõjutatud veebisaidile.

Näpunäide. Veebivastuse päised on metaandmete osad, mida server päringutele vastates kaasab. Väikest alamhulka neist nimetatakse turvapäisteks, kuna need võimaldavad ja konfigureerivad erinevaid turvafunktsioone.

HTTPS-i sertifikaadi infrastruktuur

Sertifikaadi infrastruktuur, millele HTTPS on üles ehitatud, põhineb usaldusvõrgul. Paljud ettevõtted tegutsevad sertifitseerimisasutustena (CA), mis avaldavad ühe või mitu juursertifikaati. Juursertifikaatide komplekt sisaldub kõigis usaldussalve seadmetes. Kui veebisait taotleb CA-lt oma HTTPS-i sertifikaati, allkirjastatakse sertifikaat juursertifikaadiga. Kui teie arvuti näeb HTTPS-i sertifikaati, kontrollib see allkirja. Kui sertifikaat on allkirjastatud juursertifikaadiga, mida see usaldab, usaldab teie arvuti ka HTTPS-sertifikaati.

Näpunäide. CA-l võib olla ka juursertifikaadiga allkirjastatud vahesertifikaate. Neid vahepealseid sertifikaate saab kasutada ka veebisaitide HTTPS-sertifikaatide allkirjastamiseks.

Sertifikaadi asutuse ülesanne on väljastada sertifikaat alles siis, kui ta on kontrollinud, et seda taotlev isik on veebisaidi tõeline omanik. Selle struktuuri idee seisneb selles, et kui häkker loob veebisaidi jaoks oma sertifikaadi, ei allkirjastata seda CA, mida teie arvuti usaldab, ja seega näete hoiatust.

Mida HPKP tegi?

Kogu sertifikaadisüsteem tugineb sertifitseerimisasutuste usaldusväärsusele. Algselt ei olnud aga kaitset selle eest, et häkkerid saaksid CA-d ohtu seada või petturid ja sertifikaate valesti väljastada.

HPKP loodi kaitseks selle võimaluse eest. See võimaldab veebisaitidel määrata kindlaks eksklusiivse sertifikaatide loendi, mida saab veebisaidi jaoks kinnitamise protsessis usaldada. Juur- või vahesertifikaati oli võimalik kinnitada, võimaldades sisuliselt ühel CA-l veebisaidi jaoks sertifikaate väljastada. Samuti oli võimalik kinnitada veebisaidi enda sertifikaat, mis takistas isegi õigel CA-l teist kehtivat sertifikaati väljastada.

Tehniliselt pole kinnitatud mitte sertifikaat ise, vaid sertifikaadi võtme räsi. Räsi on ühesuunaline krüptograafiline funktsioon. See tähendab, et on võimalik kontrollida, kas veebisaidi poolt brauserile esitatud sertifikaat ühtib kinnitatud sertifikaadiga, kuid kehtiva sertifikaadi tegemiseks ei ole võimalik kasutada räsi.

HPKP nõudis vähemalt kahe võtme kinnitamist, millest vähemalt üks peab olema varukoopia ja mitte praeguses sertifikaadiahelas. See varukoopia võimaldab teil konfigureerida sujuva üleandmise uuele sertifikaadile, mis ei takista kasutajatel ühenduse loomist.

Kui veebisaidi poolt brauserile esitatud HTTPS-sertifikaat ei vasta ühele kinnitatud sertifikaate, siis peab brauser selle tagasi lükkama ja takistama kasutajal serdist mööda hiilimast veateade.

HPKP struktuur

HPKP päises on kolm kohustuslikku osa ja kaks valikulist osa. Päis peab olema pealkirjaga „Public-Key-Pins”, järgmisel kahel või enamal sertifikaadil peab olema base64-kodeeringuga SHA256 räsi, mis on kinnitatud vormingus „pin-sha256=”.”’. Viimane kohustuslik osa on "maksimaalne vanus", mis näitab sekundites, kui kaua brauser peaks piiranguid rakendama.

Näpunäide. SHA256 on HPKP kasutatav räsimisalgoritm. Base64 on 64 märgist koosnev märgistik: 0–9, a–z, A–Z ja erimärgid “+” ja “/”. “=” kasutatakse vajaduse korral kuni kahe viimase tähemärgi sisestamiseks.

Valikulised seaded on "includeSubDomains" ja "report-uri". "includeSubDomains juhendab brauserit rakendama HPKP kaitset praeguse veebisaidi mis tahes alamdomeenile maksimaalse vanuse taimeri jooksul. "Report-uri" on funktsioon, mis võimaldab määrata veebisaidi, kuhu saab saata veaaruandeid, ning on loodud probleemide tuvastamiseks ja lahendamiseks.

Päisest on olemas ka teine ​​variant pealkirjaga "Ainult avaliku võtme-nööpnõelad". Kõik on endine, kuid tõrke leidmisel ei võeta midagi ette peale veateate tagastamise brauserisse ja „report-uri“, kui see on konfigureeritud. Ainult aruande variant oli loodud selleks, et võimaldada päise täielikku testimist enne juurutamist, kus vead kasutajatele probleeme ei tekita.

Probleemid HPKP-ga

HPKP katkestati kahel peamisel põhjusel. Päis võis seda kasutaval veebisaidil tõsiseid probleeme tekitada kahel viisil – need said nimeks HPKP Suicide ja Ransom PKP.

HPKP enesetapp on probleem, mille puhul veebisaidi seaduslikud omanikud kaotavad juurdepääsu kõigile kinnitatud võtmetele. See võib juhtuda juhusliku kustutamise, häkkimise, viiruste, andmete riknemise või paljudel muudel põhjustel. HPKP korrektse juurutamise ja eriti sertifikaatide pööramise ajal ajakohasena hoidmise keerukuse tõttu on konfiguratsiooniviga suhteliselt lihtne teha. HPKP puhul aga ei saa kõik hiljutised teie veebisaidi külastajad pääseda teie veebisaidile kuni „maksimaalse vanuse“ taimeriga, kui teil on midagi valesti. Veebisait smashingmagazine.com postitas an artiklit kirjeldades üksikasjalikult oma kogemusi täpselt selle probleemiga, mis viis saidi enamiku külastajate jaoks neli päeva enne paranduse juurutamist võrguühenduseta.

Lunaraha PKP on teoreetiline rünnak, mille käigus häkker saab juurdepääsu veebiserverile, varastab seejärel kõik usaldusväärsed sertifikaadid ja võtmed ning nõuab nende tagastamise eest lunaraha. Tavalise seadistuse korral saate lihtsalt luua uued võtmed ja sertifikaadid ning lasta veebisaidil varundada ja töötada vähem kui tunniga. Kui HPKP on lubatud, on need võtmed siiski kinnitatud. Kui te ei saa kinnitatud sertifikaati kasutajatele edastada, ei pääse nad veebisaidile ligipääsu "maksimaalse vanuse" taimeri ajal. Olenevalt konfiguratsioonist ja varukoopiate olemasolust võib seda probleemi olla võimatu lahendada.

Mõlema probleemi korral pääseksid uued kasutajad veebisaidile tavapäraselt juurde pole kunagi näinud vana HPKP päist, mis juhendaks nende brauserit usaldama ainult praegu puuduvat tunnistused. Kõik hiljutised külastajad, näiteks püsikliendid ja lugejad, peaksid aga ootama kogu “maksimaalse vanuse” taimeri kestuse.

Arvestades nende probleemide tõsidust ning konfiguratsiooni ja hoolduse keerukust, kasutati HPKP päist väga vähe. Lõpuks nõustusid suuremad brauserid selle toe täielikult loobuma ja paari aasta jooksul kaotati HPKP päis üldiselt.