/ Forside / Teknologi / Operativsystemer / Linux / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Linux
#NavnPoint
o.v.n. 11177
peque 7911
dk 4814
e.c 2359
Uranus 1334
emesen 1334
stone47 1307
linuxrules 1214
Octon 1100
10  BjarneD 875
vejledning om sikkker og nem ssh
Fra : Keld Jørn Simonsen


Dato : 24-06-04 13:43

Jeg har begået en lille vejledning om ssh, ligger på
http://www.dkuug.dk/keld/easy-ssh.txt

Sikker og nem terminaladgang med ssh

Hvis du vil have en sikker og nem terminaladgang med ssh,
kan du gøre følgende:

1. Installér ssh - måske er den installeret allerede

2. Generér nøgler:

ssh-keygen -t dsa

Din passphrase bør være 25 til 80 tegn lang og indeholde
bogstaver, tal og specialtegn. Nøglerne bliver lagt i kataloget ~/.ssh

3. Tilføj nøglen (hele linjen) fra filen ~/.ssh/id_dsa.pub til en fil
~/.ssh/authorized_keys på de maskiner du vil kunne logge ind på.

4. Tilføj følgende linjer i filen ~/.ssh/config, som du vil køre ssh fra:

Protocol 2
ForwardAgent yes
ForwardX11 yes
Compression yes
CompressionLevel 9

5. Udfør følgende linjer på maskinen du logger ind fra:

eval `ssh-agent -s`
ssh-add < /dev/null

Her skal du opgive din passphrase. I en del distributioner startes X automatisk
op med ssh-agent, så det er ikke nødvendigt at gøre dette igen i disse tilfælde.
Du kan se med en 'ps auxl ' om dette allerede er tilfældet.

Hermed kan du køre på en rimeligt sikker måde med ssh og sftp mv. mellem
forskellige maskiner. Og du skal kun opgive passphrase én gang!
Nemlig når du laver add-ssh kommandoen. De andre gange skal du ikke opgive koderne.

Og dette er sikrere end hvis du angiver adgangskoder hver gang. Adgangskoder kan
nemlig sniffes hvis der har været indbrud på den maskine du er inde på og
et rootkit er installeret. Så jo færre gange du indtaster koderne, og jo færre
maskiner du gør dette på, des mindre mulighed er der for indtrængere at sniffe
koderne. Hvis du ssh-er videre fra en maskine til en anden og
derfra til en tredje, og en af de mellemliggende maskiner er blevet cracket
kan de ikke ssh-e videre, fordi der er lavet en ForwardAgent, hvilket betyder at
ssh går tilbage til den oprindelige maskine du er logget ind på og tjekker
koderne med denne.

Omkring ForwardX11 giver dette mulighed for at køre X11 over en sikker krypteret
forbindelse over port 6010, i stedet for den ukrypterede port 6000, som derfor kan lukkes.
Dette er meget sikrere, men noget langsommere.

Vær sikker på at også bruge sftp, hvis du logger ind, idet ftp og afskygninger
deraf udsender ukrypterede adgangskoder. Dette er en anbefaling lige så vigtig som
at undgå at køre telnet (men i stedet bruge ssh).

Man kan mange andre ting med ssh, se manualerne for ssh, sftp, ssh-keygen, ssh-agent
og ssh-add. Der er nyttig information bla. på http://quark.phy.bnl.gov/www/sshsetup.html

Siden vedligeholdt af
Keld Simonsen


 
 
Michael Knudsen (24-06-2004)
Kommentar
Fra : Michael Knudsen


Dato : 24-06-04 16:37

Keld Jørn Simonsen wrote:
> 5. Udfør følgende linjer på maskinen du logger ind fra:
>
> eval `ssh-agent -s` ssh-add < /dev/null
>
> Her skal du opgive din passphrase. I en del distributioner startes X
> automatisk op med ssh-agent, så det er ikke nødvendigt at gøre dette
> igen i disse tilfælde. Du kan se med en 'ps auxl ' om dette allerede
> er tilfældet.

Man skal huske at fjerne (stoppe) sin agent igen, da den ellers kan
misbruges, hvis maskinen senere bliver kompromitteret.

> Hermed kan du køre på en rimeligt sikker måde med ssh og sftp mv.
> mellem forskellige maskiner. Og du skal kun opgive passphrase én
> gang! Nemlig når du laver add-ssh kommandoen. De andre gange skal du
> ikke opgive koderne.

Men kun i den paagaeldende session. Man skal som sagt lukke sin agent,
naar man logger ud.

> Og dette er sikrere end hvis du angiver adgangskoder hver gang.
> Adgangskoder kan nemlig sniffes hvis der har været indbrud på den
> maskine du er inde på og et rootkit er installeret.

Igen: Hvis maskinen er kompromitteret, er ens agent ogsaa.

> Så jo færre gange du indtaster koderne, og jo færre maskiner du gør
> dette på, des mindre mulighed er der for indtrængere at sniffe
> koderne.

Det er mig meget uklart, om du snakker om det konventionelle
logon-password, eller om du snakker om det password, man dekrypterer sin
private noegle med.

> Hvis du ssh-er videre fra en maskine til en anden og derfra til en
> tredje, og en af de mellemliggende maskiner er blevet cracket kan de
> ikke ssh-e videre, fordi der er lavet en ForwardAgent, hvilket
> betyder at ssh går tilbage til den oprindelige maskine du er logget
> ind på og tjekker koderne med denne.

Det er noget vroevl. ForwardAgent goer det netop muligt for dem at ssh
videre, da de kan misbruge din agent-socket.

Man kan opnaa en vis sikkerhed ved at benytte -c flaget til ssh-add,
naar man kommer sin noegle i ssh-agent:

   -c Indicates that added identities should be subject to
   confirmation before being used for authentication. Confirmation
   is performed by the SSH_ASKPASS program mentioned below.
   Successful confirmation is signaled by a zero exit status from
   the SSH_ASKPASS program, rather than text entered into the
   requester.

Dvs. at hver gang noeglen forsoeges brugt, vil ssh-agent start
$SSH_ASKPASS og bede om tilladelse til at bruge noeglen.

> Omkring ForwardX11 giver dette mulighed for at køre X11 over en
> sikker krypteret forbindelse over port 6010, i stedet for den
> ukrypterede port 6000, som derfor kan lukkes. Dette er meget sikrere,
> men noget langsommere.

Min erfaring siger mig, at netvaerket er flaskehalsen i langt de fleste
tilfaelde, saa dette afhaenger nok ogsaa en del af hardwaren.

> Vær sikker på at også bruge sftp, hvis du logger ind, idet ftp og
> afskygninger deraf udsender ukrypterede adgangskoder. Dette er en
> anbefaling lige så vigtig som at undgå at køre telnet (men i stedet
> bruge ssh).

Generelt skal man holde sig fra ukrypterede forbindelser, for een ting
er, at ens adgangskode kan sniffes, og at man dermed reelt ikke kan
bevise identiteten af brugeren, men mindst lige saa vigtigt er det, at
data er fuldstaendigt ubeskyttede under transmission. Dvs. at henter man
e.g. kerner med ftp, kan en angriber patche indholdet under transmission
og paa denne maade kompromittere systemet. (Ja, han kan ogsaa patche den
tilhoerende fil med checksummen af filen, saa det vinder man heller ikke
noget ved.)

> Man kan mange andre ting med ssh, se manualerne for ssh, sftp,
> ssh-keygen, ssh-agent og ssh-add. Der er nyttig information bla. på
> http://quark.phy.bnl.gov/www/sshsetup.html

Jeg vil anbefale, at man tager et kig paa Alex Holsts side om OpenSSH,
da den ogsaa gaar i dybden med lidt mere avanceret kontrol af noegler:

   http://mongers.org/ssh

Mvh. Michael.
--
Rumour is information distilled so finely that it can filter through
anything.
-- (Terry Pratchett, Feet of Clay)

Keld Jørn Simonsen (24-06-2004)
Kommentar
Fra : Keld Jørn Simonsen


Dato : 24-06-04 20:20

Den Thu, 24 Jun 2004 17:37:01 +0200. skrev Michael Knudsen:

> Keld Jørn Simonsen wrote:
>> 5. Udfør følgende linjer på maskinen du logger ind fra:
>>
>> eval `ssh-agent -s` ssh-add < /dev/null
>>
>> Her skal du opgive din passphrase. I en del distributioner startes X
>> automatisk op med ssh-agent, så det er ikke nødvendigt at gøre dette
>> igen i disse tilfælde. Du kan se med en 'ps auxl ' om dette allerede
>> er tilfældet.
>
> Man skal huske at fjerne (stoppe) sin agent igen, da den ellers kan
> misbruges, hvis maskinen senere bliver kompromitteret.

Så vidt jeg ved er dette ikke anbefalelsesværdigt. Der er ingen kendte
exploits der gør dette. Derimod er det almindeligt at rootkits kan
opsnappe indtastning af nøgler. Og stopper man ssh-agent, skal man
vel starte en ny - og indtaste nøglen igen.

>> Så jo færre gange du indtaster koderne, og jo færre maskiner du gør
>> dette på, des mindre mulighed er der for indtrængere at sniffe
>> koderne.
>
> Det er mig meget uklart, om du snakker om det konventionelle
> logon-password, eller om du snakker om det password, man dekrypterer sin
> private noegle med.

Det gælder begge dele.

>> Hvis du ssh-er videre fra en maskine til en anden og derfra til en
>> tredje, og en af de mellemliggende maskiner er blevet cracket kan de
>> ikke ssh-e videre, fordi der er lavet en ForwardAgent, hvilket betyder
>> at ssh går tilbage til den oprindelige maskine du er logget ind på og
>> tjekker koderne med denne.
>
> Det er noget vroevl. ForwardAgent goer det netop muligt for dem at ssh
> videre, da de kan misbruge din agent-socket.

Hvordan kan de gøre dette? Vel ikke umiddelbart? De skal overtage
socket-en?

> Man kan opnaa en vis sikkerhed ved at benytte -c flaget til ssh-add,
> naar man kommer sin noegle i ssh-agent:
>
>    -c Indicates that added identities should be subject to
>    confirmation before being used for authentication. Confirmation is
>    performed by the SSH_ASKPASS program mentioned below. Successful
>    confirmation is signaled by a zero exit status from the SSH_ASKPASS
>    program, rather than text entered into the requester.
>
> Dvs. at hver gang noeglen forsoeges brugt, vil ssh-agent start
> $SSH_ASKPASS og bede om tilladelse til at bruge noeglen.

Så opnår man ikke at blve fri for at opgive koder hver gang man skal
ssh-e

>> Omkring ForwardX11 giver dette mulighed for at køre X11 over en sikker
>> krypteret forbindelse over port 6010, i stedet for den ukrypterede port
>> 6000, som derfor kan lukkes. Dette er meget sikrere,
>> men noget langsommere.
>
> Min erfaring siger mig, at netvaerket er flaskehalsen i langt de fleste
> tilfaelde, saa dette afhaenger nok ogsaa en del af hardwaren.

Ja, det er nok ikke langsommere.

> Jeg vil anbefale, at man tager et kig paa Alex Holsts side om OpenSSH,
> da den ogsaa gaar i dybden med lidt mere avanceret kontrol af noegler:
>
>    http://mongers.org/ssh

Ja, det er en god side, jeg tilføjer den.

Hilsen
Keld


Peter Mogensen (25-06-2004)
Kommentar
Fra : Peter Mogensen


Dato : 25-06-04 00:51

Keld Jørn Simonsen wrote:
> Så vidt jeg ved er dette ikke anbefalelsesværdigt. Der er ingen kendte
> exploits der gør dette. Derimod er det almindeligt at rootkits kan
> opsnappe indtastning af nøgler. Og stopper man ssh-agent, skal man
> vel starte en ny - og indtaste nøglen igen.

Ehh...
Hvis min maskine er kompromiteret ville jeg heller ikke satse på at jeg
var sikker bare jeg ikke tastede passwordet ind igen.
Det er muligt at der ikke findes nogle kendte exploits, der udnytter en
kørende ssh-agent (ud over folk, der kommer forbi ens terminal og
"låner" den), men jeg vil til enhver tid foretrække den sikkerhed, der
er i at lukke den og starte den igen fremfor at tro mig sikker bare jeg
ikke taster passphrase ind igen på en kompromiteret maskine.

Peter

Keld Jørn Simonsen (25-06-2004)
Kommentar
Fra : Keld Jørn Simonsen


Dato : 25-06-04 13:39

Den Fri, 25 Jun 2004 01:51:02 +0200. skrev Peter Mogensen:

> Keld Jørn Simonsen wrote:
>> Så vidt jeg ved er dette ikke anbefalelsesværdigt. Der er ingen kendte
>> exploits der gør dette. Derimod er det almindeligt at rootkits kan
>> opsnappe indtastning af nøgler. Og stopper man ssh-agent, skal man
>> vel starte en ny - og indtaste nøglen igen.
>
> Ehh...
> Hvis min maskine er kompromiteret ville jeg heller ikke satse på at jeg
> var sikker bare jeg ikke tastede passwordet ind igen.
> Det er muligt at der ikke findes nogle kendte exploits, der udnytter en
> kørende ssh-agent (ud over folk, der kommer forbi ens terminal og
> "låner" den), men jeg vil til enhver tid foretrække den sikkerhed, der
> er i at lukke den og starte den igen fremfor at tro mig sikker bare jeg
> ikke taster passphrase ind igen på en kompromiteret maskine.

Hvis din maskine er kompromitteret, så er det vel sikrere at køre videre
med din ssh-agent? Der er ikke nogen kendte måder for indtrængeren at
udnytte dette på. Alternativet, at lukke ned og starte ssh-agent op igen
vil på en kompromitteret maskine sige at et rootkit vil opsnappe din
nøgle... Måske gentager jeg bare mig selv, men jeg er da interesseret i
at vide hvad der er det bedste råd at give.

Hilsen
keld

Peter Mogensen (25-06-2004)
Kommentar
Fra : Peter Mogensen


Dato : 25-06-04 23:23

Keld Jørn Simonsen wrote:
> Hvis din maskine er kompromitteret, så er det vel sikrere at køre videre
> med din ssh-agent?

Nej...så er det sikrere at re-installere.
Men hvis jeg skulle vælge mellem risikoen ved at lade ssh-agent køre og
mellem at starte den igen i ny og næ og min maskine evt. kunne være
kompormisteret, så ville jeg vælge det sidste.

> Der er ikke nogen kendte måder for indtrængeren at
> udnytte dette på.

Jeg kunne nu godt forestille mig et par stykker. Med root-adgang kan man
i sidste ende få adgang til hele hukommelsen.
Du er ikke sikker bare fordi processen er den samme som den var før
maskinen blev kompromiteret.

Peter

Michael Knudsen (25-06-2004)
Kommentar
Fra : Michael Knudsen


Dato : 25-06-04 14:32

Keld Jørn Simonsen wrote:
>>Man skal huske at fjerne (stoppe) sin agent igen, da den ellers kan
>>misbruges, hvis maskinen senere bliver kompromitteret.
>
>
> Så vidt jeg ved er dette ikke anbefalelsesværdigt. Der er ingen kendte
> exploits der gør dette. Derimod er det almindeligt at rootkits kan
> opsnappe indtastning af nøgler. Og stopper man ssh-agent, skal man
> vel starte en ny - og indtaste nøglen igen.

Det kraever ingen exploits. Man aabner bare brugerens agent-socket i
/tmp og kommunikerer gennem den. Alternativt (hvis det er paa samme
maskine) attacher man bare med e.g. gdb til processen eller paa anden
maade tager en kopi af processens hukommelsesomraade.

>>>Så jo færre gange du indtaster koderne, og jo færre maskiner du gør
>>>dette på, des mindre mulighed er der for indtrængere at sniffe
>>>koderne.
>>
>>Det er mig meget uklart, om du snakker om det konventionelle
>>logon-password, eller om du snakker om det password, man dekrypterer sin
>>private noegle med.
>
>
> Det gælder begge dele.

Koden til noeglen er fuldstaendig ligegyldig, hvis en angriber har
kompromitteret maskinen. Som beskrevet ovenfor kan han angribe din agent
direkte, og det kan du ikke sikre dig mod.

>>>Hvis du ssh-er videre fra en maskine til en anden og derfra til en
>>>tredje, og en af de mellemliggende maskiner er blevet cracket kan de
>>>ikke ssh-e videre, fordi der er lavet en ForwardAgent, hvilket betyder
>>>at ssh går tilbage til den oprindelige maskine du er logget ind på og
>>>tjekker koderne med denne.
>>
>>Det er noget vroevl. ForwardAgent goer det netop muligt for dem at ssh
>>videre, da de kan misbruge din agent-socket.
>
>
> Hvordan kan de gøre dette? Vel ikke umiddelbart? De skal overtage
> socket-en?

Som ovenfor. Man bruger den bare fra filsystemet.

>>Man kan opnaa en vis sikkerhed ved at benytte -c flaget til ssh-add,
>>naar man kommer sin noegle i ssh-agent:
>>
>>   -c Indicates that added identities should be subject to
>>   confirmation before being used for authentication. Confirmation is
>>   performed by the SSH_ASKPASS program mentioned below. Successful
>>   confirmation is signaled by a zero exit status from the SSH_ASKPASS
>>   program, rather than text entered into the requester.
>>
>>Dvs. at hver gang noeglen forsoeges brugt, vil ssh-agent start
>>$SSH_ASKPASS og bede om tilladelse til at bruge noeglen.
>
>
> Så opnår man ikke at blve fri for at opgive koder hver gang man skal
> ssh-e

Jo, for du skal ikke indtaste koden. Hvis man bruger ssh-askpass
(default i OpenSSH), skal man bare trykke `ok'.

Mvh. Michael.
--
Rumour is information distilled so finely that it can filter through
anything.
-- (Terry Pratchett, Feet of Clay)

Rasmus Bøg Hansen (25-06-2004)
Kommentar
Fra : Rasmus Bøg Hansen


Dato : 25-06-04 18:56

Due some reason Keld Jørn Simonsen <keld@dkuug.dk> happened to write:

> Hvis din maskine er kompromitteret, så er det vel sikrere at køre videre
> med din ssh-agent? Der er ikke nogen kendte måder for indtrængeren at
> udnytte dette på. Alternativet, at lukke ned og starte ssh-agent op igen
> vil på en kompromitteret maskine sige at et rootkit vil opsnappe din
> nøgle... Måske gentager jeg bare mig selv, men jeg er da interesseret i
> at vide hvad der er det bedste råd at give.

Hvis maskinen er kompromitteret, kan angriberen bare læse indholdet af
maskinens (evt. programmets) hukommelse, hvor nøglen ligger med
indtastet passphrase.

Jeg ville mene, at det eneste sikre, når maskinen er kompromitteret,
er at hive netkablet ud!

/Rasmus

--
-- [ Rasmus "Møffe" Bøg Hansen ] ---------------------------------------
[...] Note that 120 sec is defined in the protocol as the maximum
possible RTT. I guess we'll have to use something other than TCP
to talk to the University of Mars.
----------------------------------[ moffe at amagerkollegiet dot dk ] --

Keld Jørn Simonsen (25-06-2004)
Kommentar
Fra : Keld Jørn Simonsen


Dato : 25-06-04 19:29

Den Fri, 25 Jun 2004 19:56:25 +0200. skrev Rasmus Bøg Hansen:

> Due some reason Keld Jørn Simonsen <keld@dkuug.dk> happened to write:
>
>> Hvis din maskine er kompromitteret, så er det vel sikrere at køre videre
>> med din ssh-agent? Der er ikke nogen kendte måder for indtrængeren at
>> udnytte dette på. Alternativet, at lukke ned og starte ssh-agent op igen
>> vil på en kompromitteret maskine sige at et rootkit vil opsnappe din
>> nøgle... Måske gentager jeg bare mig selv, men jeg er da interesseret i
>> at vide hvad der er det bedste råd at give.
>
> Hvis maskinen er kompromitteret, kan angriberen bare læse indholdet af
> maskinens (evt. programmets) hukommelse, hvor nøglen ligger med
> indtastet passphrase.

Ligger det krypteret i programmet?

> Jeg ville mene, at det eneste sikre, når maskinen er kompromitteret,
> er at hive netkablet ud!

Ja, enig!

Men man opdager det jo som regel ikke med det samme.

Mit scenario dækkede over fra når indtrængeren faktisk bryder ind, til
man opdager det. Der tror jeg det er bedre at man har et aktivt ssh-agent
program, end at man indtaster nøglen igen

Hilsen
Keld


Michael Knudsen (27-06-2004)
Kommentar
Fra : Michael Knudsen


Dato : 27-06-04 13:20

Keld Jørn Simonsen wrote:
>>Hvis maskinen er kompromitteret, kan angriberen bare læse indholdet af
>>maskinens (evt. programmets) hukommelse, hvor nøglen ligger med
>>indtastet passphrase.
>
>
> Ligger det krypteret i programmet?

To muligheder:

   1) Nej. Angriberen kan umiddelbart laese noeglen i
   hukommelsen.
   2) Ja. For at ssh-agent kan bruge noeglen, maa ssh-agent
   noedvendigvis ogsaa have dekrypteringsnoeglen. Angriberen finder
   dekrypteringsnoeglen og faar fat i noeglen vha. denne.

>>Jeg ville mene, at det eneste sikre, når maskinen er kompromitteret,
>>er at hive netkablet ud!
>
>
> Ja, enig!
>
> Men man opdager det jo som regel ikke med det samme.

Det er jo ligemeget. Uanset hvad, saa _er_ skaden sket inden, du opdager
dette.

> Mit scenario dækkede over fra når indtrængeren faktisk bryder ind, til
> man opdager det. Der tror jeg det er bedre at man har et aktivt ssh-agent
> program, end at man indtaster nøglen igen

Nej, det er fuldstaendig ligegyldigt, om noeglen ligger i hukommelsen
med adgangskoden til at dekryptere den, eller om den ligger paa disken,
og en backdoor i ssh-add emailer noeglen til angriberen. I begge
tilfaelde _er_ noeglen kommet i haenderne paa angriberen.

Mvh. Michael.
--
Rumour is information distilled so finely that it can filter through
anything.
-- (Terry Pratchett, Feet of Clay)

Keld Jørn Simonsen (01-07-2004)
Kommentar
Fra : Keld Jørn Simonsen


Dato : 01-07-04 22:30

Den Sun, 27 Jun 2004 14:20:16 +0200. skrev Michael Knudsen:

> Keld Jørn Simonsen wrote:
>> [citeret tekst udeladt]
>
> To muligheder:
>
>    1) Nej. Angriberen kan umiddelbart laese noeglen i
>    hukommelsen.
>    2) Ja. For at ssh-agent kan bruge noeglen, maa ssh-agent
>    noedvendigvis ogsaa have dekrypteringsnoeglen. Angriberen finder
>    dekrypteringsnoeglen og faar fat i noeglen vha. denne.

Angriberen skal have fat i nøglen på den anden maskine, hvis angrebet
er på en af de mellemliggende maskiner. Det er ikke nemt, da det skal
foregå på en sokkel der er allerede åbnet.

Der findes ikke eksempler på sådanne angreb for nærværende, hvorimod
rootkits med keylogning er standard.

>> [citeret tekst udeladt]
>
> Det er jo ligemeget. Uanset hvad, saa _er_ skaden sket inden, du opdager
> dette.
>
>> [citeret tekst udeladt]
>
> Nej, det er fuldstaendig ligegyldigt, om noeglen ligger i hukommelsen
> med adgangskoden til at dekryptere den, eller om den ligger paa disken,
> og en backdoor i ssh-add emailer noeglen til angriberen. I begge
> tilfaelde _er_ noeglen kommet i haenderne paa angriberen.

Ja, det kan nok lade sig gøre, men det er ikke nær så sandsynligt som
keylogning. Derfor er åben ssh-agent en del sikrere end at lukke den ned.

Hilsen
keld

Michael Knudsen (02-07-2004)
Kommentar
Fra : Michael Knudsen


Dato : 02-07-04 14:27

Keld Jørn Simonsen wrote:
>> To muligheder:
>>
>> 1) Nej. Angriberen kan umiddelbart laese noeglen i hukommelsen.
>> 2) Ja. For at ssh-agent kan bruge noeglen, maa ssh-agent
>> noedvendigvis ogsaa have dekrypteringsnoeglen. Angriberen finder
>> dekrypteringsnoeglen og faar fat i noeglen vha. denne.
>
> Angriberen skal have fat i nøglen på den anden maskine, hvis angrebet
> er på en af de mellemliggende maskiner. Det er ikke nemt, da det
> skal foregå på en sokkel der er allerede åbnet.

Hvis det foregaar paa en anden maskine, kan man naturligvis ikke laese
noeglen i hukommelsen, men man kan stadig blot saette SSH_AUTH_SOCK til
stien til brugeren socket, som er forbindet til ssh-agenten i den anden
ende. Paa denne maade misbruger man _stadig_ brugerens koerende agent.

Det er hamrende enkelt. Som tidligere naevnt[1] kan man opnaa et hoejere
sikkerhedsniveau ved agent-forwarding ved at benytte -c, naar man
tilfoejer sin noegle, men dette aendrer _stadig_ ikke paa, at en
koerende ssh-agent paa en kompromitteret maskine giver fuldstaendig
samme sikkerhedsniveau som at have noeglen liggende ukrypteret paa disken.

> Der findes ikke eksempler på sådanne angreb for nærværende, hvorimod
> rootkits med keylogning er standard.

Jo, det goer der. Det er ganske enkelt en konsekvens af, hvordan
ssh-agenter bruges.

>> Nej, det er fuldstaendig ligegyldigt, om noeglen ligger i
>> hukommelsen med adgangskoden til at dekryptere den, eller om den
>> ligger paa disken, og en backdoor i ssh-add emailer noeglen til
>> angriberen. I begge tilfaelde _er_ noeglen kommet i haenderne paa
>> angriberen.
>
>
> Ja, det kan nok lade sig gøre, men det er ikke nær så sandsynligt som
> keylogning. Derfor er åben ssh-agent en del sikrere end at lukke den
> ned.

Nej, sikkerheden er fuldstaendig den samme -- lige lav. Er en maskine
kompromitteret, er der ingen sikkerhed at hente, uanset hvilke
krumspring man proever at lave.

[1] <40daf504$0$23877$14726298@news.sunsite.dk>
--
Rumour is information distilled so finely that it can filter through
anything.
-- (Terry Pratchett, Feet of Clay)

Rasmus Bøg Hansen (25-06-2004)
Kommentar
Fra : Rasmus Bøg Hansen


Dato : 25-06-04 20:22

Due some reason Keld Jørn Simonsen <keld@dkuug.dk> happened to write:

>> Hvis maskinen er kompromitteret, kan angriberen bare læse indholdet af
>> maskinens (evt. programmets) hukommelse, hvor nøglen ligger med
>> indtastet passphrase.
>
> Ligger det krypteret i programmet?

Uden at vide det, ville jeg ikke tro det. Den skal jo kunne finde
nøglen frem, når der spørges om den - uden kodeord. Hvis den ligger
krypteret i hukommelsen, må det nødvendigvis være svag kryptering,
hvor den kan dekryptere on-the-fly.

>> Jeg ville mene, at det eneste sikre, når maskinen er kompromitteret,
>> er at hive netkablet ud!
>
> Ja, enig!
>
> Men man opdager det jo som regel ikke med det samme.
>
> Mit scenario dækkede over fra når indtrængeren faktisk bryder ind, til
> man opdager det. Der tror jeg det er bedre at man har et aktivt ssh-agent
> program, end at man indtaster nøglen igen

Ja, der er vi enige. En keylogger er nok en af de ting, man kan regne
med at finde på sin maskine efter sådan en omgang...

/Rasmus

--
-- [ Rasmus "Møffe" Bøg Hansen ] ---------------------------------------
If you only have a hammer
everything looks like a nail
----------------------------------[ moffe at amagerkollegiet dot dk ] --

Søg
Reklame
Statistik
Spørgsmål : 177552
Tips : 31968
Nyheder : 719565
Indlæg : 6408849
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste