Sikker filoverførselsteknik var ikke så sikker alligevel

Illustration: bonekimages/Bigstockphoto
Opdagede 36 år gamle sårbarheder i flere klientprogrammer.

Det er nok ikke den mest benyttede teknik til at overføre filer mellem computerne i et netværk, men mange computere understøtter dog SCP (Secure Copy Protocol). Den er ikke mere obskur, end at der for relativt nyligt er publiceret en test af de ti bedste SCP-servere til Windows.

SCP er baseret på Berkeley-kommandoen rcp (remote copy), men bruger derudover SSH (Secure Shell) til autentificering.

Fire sårbarheder

I udgangspunktet burde det være sikkert nok, men Harry Sintonen hos det finske it-sikkerhedsselskab F-Secure har opdaget hele fire sårbarheder, som alle kan dateres tilbage til rcp fra 1983.

Det skriver blandt andet The Register og ZDNet. Sintonens rapport er tilgængelig her.

Problemet er, at brugeren af en SCP-klient ikke kan stole på, at det, som modtages fra en SCP-server, faktisk er den fil – og kun den fil – som klientsoftwaren beder om. Det er, fordi klientsoftwaren ikke tjekker dette.

I praksis betyder det, at ondsindede SCP-servere kan lagre og i værste fald overskrive vilkårlige filer på klientsystemet, hvis brugeren selv har skriverettigheder. I Unix-lignende systemer kan dette for eksempel bruges til at lave nye aliasser af meget brugte tekstkommandoer, for eksempel at 'ls' gøres til et alias for 'rm -rf --no-preserve-root /'.

Er brugeren logget ind som root, kan dette i nogle tilfælde få virkelig alvorlige konsekvenser:

En anden af de fire sårbarheder lader serveren ændre brugerrettighederne, som er knyttet til målkataloget, mens de to sidste kan bruges til at manipulere klientens udgående data, for eksempel for at skjule, at mere end én fil bliver overført.

Sårbare klienter

Alle de fire sårbarheder findes i OpenSSH's SCP-klient, i hvert fald frem til og med version 7.9, som er den hidtil nyeste.

SCP-klienten PuTTY PSCP skal fortsat være sårbar for manipulering af data, mens version 5.14 af WinSCP skal få validering af de modtagne filers navne på plads. I skrivende stund er der kun en prototype tilgængelig.

Generelt anbefaler Sintonen, at SFTP (Secure File Transfer Protocol) bruges i stedet for SCP, hvor det er muligt. SFTP er i dag meget anvendt til sikker filoverførsel over netværk og støttes nu også officielt af Windows Server 2019.

Artiklen er fra digi.no.

Tips og korrekturforslag til denne historie sendes til tip@version2.dk
Kommentarer (7)
sortSortér kommentarer
  • Ældste først
  • Nyeste først
  • Bedste først
Magnus Jørgensen

Jeg bruger ofte SSHFS til at connecte en Virtual KVM maskine til min host maskine..
scp bruger jeg stortset kun hvis jeg skal sende en fil via terminal fra en maskine til en anden. Altså fra Client til Server. Specielt fordi at det er besværligt at copiere fra Server til Client når man ikke lige kan lave en ls eller ll på serveren fra clienten.
Jeg har dog WinSCP installeret på min Windows maskine, så det kunne da være at jeg skulle finden en anden løsning... WSL måske :)

Baldur Norddahl

I mange tilfælde er det en fordel at bruge rsync i stedet for scp og sftp.

I øvrigt lyder det ikke til at de fire sårbarheder er et reelt problem når man bruger scp mellem egne servere. Og det er nok den mest udbredte anvendelse.

Hans Nielsen

"Er brugeren logget ind som root, kan dette i nogle tilfælde få virkelig alvorlige konsekvenser"

Formode ikke mange er logget ind som root som standart ?

Men hvis man køre en fil som sudo, kan det give problemmer.

Men det erså mange ting som skal gå galt, som jeg forstår det.

1, Det skal være et ikke sikkert netværk
2. Bruger skal køre en fil, som han ikke selv har sendt
3. Bruger skal være root

Men findt at fejl fjernes og luges ud, og nogen "gidder" dette arbejde, i selv ældre og ikke så meget brugt software.

Baldur Norddahl

Det skal være et ikke sikkert netværk

Scp er også fint på usikrede net. Du kan ikke hacke scp via denne sårbarhed udefra. For at udnytte den, så skal du først hacke en server inklusiv at du skal have root adgang til den hackede server. Så kan du udskifte server delen af scp med en ondsindet server-scp. Denne kan så snyde klient-scp til at gøre noget andet, end det brugeren har bedt om.

Der er ikke tale om at krypteringen er brudt. Og derfor er det ikke muligt hverken at lytte med eller at ændre i kommunikationen på netværksniveau.

Til gengæld kan det være slemt nok selvom brugeren kører scp uden root. Hackeren kan så ændre forskellige filer i brugerens homedir, herunder .profile. Dermed kan hackeren gøre alt hvad brugeren kan. Dog kan han ikke umiddelbart roote brugerens maskine med denne sårbarhed, og dermed kan han ikke automatisk "smitte" endnu en maskine med den ondsindende server-scp.

Hans Nielsen

Men han kan bruge den til at komme ind og udnytte lokale sårbarheder til at få root adgang


Og dem er der så forhåbeligt ikke så mange af ?

Hvis de er kendt er de formodeligt lukket. Selv om de 3 bokstavet sikkert har nogle enkelte som de enten har købt, eller selv har introducere.

Men heldigvis er dette et meget gamle OS, selv om vi finder sårbareheder som denne. så er det meget mere robust end andre OS. Da der over tid simplehen er fundet flere fejl, og med den meget længere leve tid, og fære nye tiltag. Så er der ikke er så meget nyt og sårbart.

Sikkerheden også bygget ind i selve filsystem, kernen og tankegangen, og ikke et tyndt lag software, som virusscanner som i de fleste tilfælde er ikke virkende.
Hvorfor skal man stoppe et stykke "virus" og ikke i stedet fjerne grundlaget elelr fjelen til at det kan skade systemet, det sidste vil også virke selv om man ændre et komma i koden ?

Log ind eller Opret konto for at kommentere