SSH-agent-forwarding teenoor 'n sleutel kopieer: wat werklik uitlek
Aanmelding met 'n publieke sleutel stuur 'n handtekening, nie die private sleutel nie. Agent-forwarding gee steeds aan 'n ander gasheer die vermoe om te onderteken, en dit is 'n afsonderlike blootstelling.
Twee verskillende gebeure word 'n uitgelekte SSH-sleutel genoem, en hulle verg verskillende reaksies. Publieke-sleutel-verifikasie stuur 'n publieke sleutel en 'n handtekening wat met die private sleutel gemaak is, so die private sleutel is nooit 'n veld in die versoek nie. Agent-forwarding stel iets anders bloot, want 'n afgeleee gasheer wat jou geforwarde agent kan bereik, kan dit vra om te onderteken sonder om ooit die sleutel te hou. Om dit as een gebeurtenis te behandel, lei of tot 'n nuttelose rotering of tot 'n delegasie wat bly loop.
Publieke-sleutel-aanmelding stuur 'n handtekening, nie die sleutel nie
Die verifikasie-uitruiling dra die gebruiker se publieke sleutel en 'n handtekening oor sessiedata. Die bediener kontroleer daardie handtekening teen die sleutel wat dit reeds vertrou, en daarom kan die private helfte op die kliënt bly oor 'n onbetroubare netwerk. 'n VPN-operateur wat die tonnel dophou, sien in elk geval 'n geënkripteerde SSH-sessie.
Dit beskryf die protokol, nie die betroubaarheid van elke eindpunt op die pad nie. Hou gasheer-identiteitsverifikasie ongeskonde, want 'n kliënt wat enige gasheersleutel aanvaar, het 'n ander beheer prysgegee as die een wat hier bespreek word. 'n Vasgevange sessie en 'n vasgevange sleutel is aparte bevindings, en net een daarvan is 'n verlies aan geloofsbriewe. Hou die twee ook in aparte sinne van die verslag.
ssh-keygen -lf ~/.ssh/id_ed25519.pub ssh -o StrictHostKeyChecking=yes [email protected]
Die eerste opdrag druk die publieke vingerafdruk sodat jy dit met die bediener se lys kan vergelyk. Die tweede maak die gasheersleutel-kontrole eksplisiet in plaas daarvan om op 'n verstek te vertrou wat niemand gelees het nie. Voer albei uit voordat jy enigiets aan sleutels verander, sodat die basislyn gedokumenteer is.
Om 'n agent te forward, delegeer die vermoe om te onderteken
Met forwarding geaktiveer, verskyn 'n sok op die afgeleee gasheer en die plaaslike agent beantwoord versoeke wat daardeur aankom. Enigiemand wat daardie sok tydens die sessie kan gebruik, kan as jy verifieer by gashere wat die gelaalde identiteite aanvaar. Geen private sleutel beweeg oor die netwerk om dit te laat werk nie.
Die vermoe is die blootstelling, nie die lêer nie. Daarom hoort forwarding by 'n genoemde taak en 'n genoemde gasheer, nie by elke verbinding wat 'n skootrekenaar maak nie. 'n Springgasheer wat die verbinding deurgee sonder 'n geforwarde agent, verwyder gewoonlik heeltemal die behoefte.
ssh-add -l ssh -o ForwardAgent=no [email protected] ssh -J [email protected] [email protected]
Die eerste lys watter identiteite die agent tans hou, wat die moeite werd is om te weet voordat jy sy sok aan 'n ander masjien gee. Die tweede verbind sonder delegasie. Die derde wys die springgasheer-patroon wat dikwels forwarding heeltemal vervang.
Kies die reaksie op grond van die bewyse wat jy het
'n Ondertekeningsidentiteit wat vermoedelik blootgestel is, vereis die vervangings- en herroepingsproses, en die verwydering van sy aanvaarding by die dienste wat dit vertrou het. Om die kopie op jou skootrekenaar te skrap, laat elke ander kopie onaangeraak. Begin by die dienste, maak dan die kliënte skoon.
'n Tydelike delegasieprobleem is smaller. Beëindig die forwarding wat nie nodig was nie, en hersien saam met die eienaar van die voorval watter sessies en identiteite dit gedek het. Sleutelvervanging kan steeds volg, maar bewyse besluit dit eerder as bekommernis.
Geen waargeneemde uitvoer bewys net dat die meganisme wat jy gevrees het nie verskyn het nie. Dit sê niks oor wat anders 'n gasheer aan die ander kant van daardie sok kon gedoen het nie.
Hou die beheermaatreëls apart in die verslag
Beskerm die private materiaal, beperk wie dit kan vra om te onderteken, hou die geverifieerde eweknie-identiteit. Dit is drie beheermaatreëls wat mekaar versterk, en nie een van hulle vervang 'n ander wanneer jy verduidelik wat gebeur het nie.
'n Gekompromitteerde skootrekenaar of 'n bevoorregte toepassing daarop is 'n derde geval met 'n veel wyer impak. Om die VPN-roete te verander, los dit nie op nie, en dit herstel nie die vertroue in 'n sleutel wat dalk van die skyf gelees is nie.
Skryf neer watter komponent vertrou is, of forwarding aan was, en wat werklik waargeneem is. Daardie rekord is wat die volgende besluit verdedigbaar maak in plaas van 'n raaiskoot oor wat 'n lek beteken.