SSH ključ kopiran ili agent proslijeđen? Dva različita rizika
Potpis nije datoteka ključa, a delegirani agent nije otkrivanje. Odvojite činjenicu o protokolu od pitanja povjerenja u krajnju točku, pa odgovorite.
Prijava koja koristi SSH ključ putem VPN-a ne znači da je privatni ključ predan mrežnom operateru, i to uvjeravanje je uže nego što ljudi čuju. Autentifikacija javnim ključem šalje javni ključ i potpis koji klijent stvara lokalno. Prosljeđivanje agenta je drugačiji raspored s drugačijom izloženošću i može ostaviti upotrebljivu mogućnost autentifikacije na računalu koje ne kontrolirate. Odgovor koji dugujete ovisi o tome što se od toga dvoje stvarno dogodilo.
Što šalje autentifikacija javnim ključem
U standardnoj metodi javnog ključa klijent nudi javni ključ, poslužitelj odlučuje prihvaća li taj ključ, a klijent potpisuje izazov privatnim ključem koji ostaje u njegovoj datoteci ili njegovom agentu. Preko mreže prelaze javni ključ i rezultirajući potpis. Ništa u toj razmjeni ne zahtijeva da poslužitelj, tunel ili bilo tko na putu drži privatni materijal.
Specifikacija autentifikacije definira taj dokaz, a privatni ključ nije polje u zahtjevu.
To je tvrdnja o protokolu, a ne karakteristika svake uključene krajnje točke. Provjera identiteta hosta i dalje mora biti netaknuta, jer poslužitelj koji ne može dokazati tko je može prikupljati potpise za svrhu koju niste namjeravali. Iznajmljeni VM, naslijeđeni bastion i prijenosnik koji pokreće nepoznato proširenje tri su odvojena pitanja povjerenja. Držite ih odvojeno od kriptografskog, koje je doista riješeno.
Što prosljeđivanje agenta delegira
Prosljeđivanje agenta otvara kanal od udaljenog hosta natrag do agenta na vašem računalu, pa procesi na tom hostu mogu tražiti od agenta da potpiše, a da nikad ne drže privatni ključ. Ključ ostaje gdje jest, a sposobnost ne. Sve što može doći do tog proslijeđenog socketa na udaljenom hostu, za vrijeme trajanja sesije, može zahtijevati autentifikacijske radnje kao jedan od učitanih identiteta. To je delegirana ovlast, zato prosljeđivanje zaslužuje užu politiku od predaje javnog ključa.
Kopirana datoteka ključa je otkrivanje. Proslijeđeni agent je dozvola, i to dvoje traži različite odgovore.
Omogućite prosljeđivanje za imenovanu potrebu i imenovane hostove i provjerite što klijent stvarno radi, a ne što se čini da konfiguracija govori. Bitne su efektivne postavke, jer blok hosta tiho nadjačava globalni zadani izbor. Ista logika vrijedi na strani poslužitelja, koji može potpuno odbiti prosljeđivanje kada ga implementacija nikad ne treba.
Pročitajte dokaze prije nego što odaberete odgovor
Ako se vjeruje da je datoteka privatnog ključa ili ekvivalentni identitet za potpisivanje izložen, odgovor je zamjena i opoziv kroz proces vaše organizacije, uz uklanjanje njegova prihvaćanja iz svake usluge koja mu je vjerovala. Brisanje jedne lokalne kopije ne poništava kopije koje ne vidite.
Ako je zabrinutost privremeni pristup agenta, odgovor je uži: zaustavite nepotrebno delegiranje, pregledajte uključene sesije i identitete i prepustite vlasniku incidenta da odluči je li zamjena opravdana. Dokazi su ovdje važni, jer odsutnost uočenog izvoza ne dokazuje da autentifikacija nije zloupotrijebljena, a sama promjena putanje nije dijagnoza ukradenog ključa. Zapišite koja je komponenta bila povjerena, je li prosljeđivanje bilo omogućeno i što je stvarno uočeno. Zatim odaberite odgovor koji odgovara tom zapisu, umjesto najdramatičnijeg dostupnog.
ssh-add -l
ssh -G host.example | grep -i forwardagent
Pokrenite ih prije i nakon promjene da usporedba nešto znači. Sesija uspostavljena ranije zadržava delegiranje koje je dobila, što god postavke sada govorile.
Dvije kontrole koje nisu zamjenjive
Zaštita privatnog materijala, ograničavanje tko može tražiti potpis i provjera identiteta druge strane tri su povezane kontrole i nijedna ne zamjenjuje drugu. Tim koji ukloni prosljeđivanje bez provjere ključeva hostova popravio je pola problema. Tim koji rotira ključ jer se ruta promijenila nije popravio ništa.
Kompromitirana krajnja točka četvrto je pitanje, jer privilegirani softver na vašem vlastitom računalu može učiniti znatno više od promatranja paketa.
Razvrstajte incident u te kategorije prije nego što išta dotaknete i dajte svakoj vlasnika. Vodite kratak zapis o tome što je bilo povjereno, što delegirano i što provjereno, jer taj zapis čini sljedeći pregled jeftinim umjesto još jedne rasprave. Ako je bilo koja kategorija nepoznata, napišite nepoznato umjesto da pretpostavite bezopasan slučaj. Razlika je praktična, ne akademska: odlučuje zamjenjujete li vjerodajnicu, opozivate sesiju ili jednostavno prestajete prosljeđivati.