ShellShock Attack, enkelt

For nylig en familie på sårbarheder relateret til en Bash BUG, den mest almindelige tolk på GNU / Linux, MAC OS og nogle Unix, og er blevet kaldt ShellShock eller Bashdoor (CVE-2014-6271). Det vigtigste og alarmerende spørgsmål i denne forbindelse har at gøre med, at den nævnte BUG har været til stede i Bash i de sidste 20 år, så det anslås, at alvoret i sagen er endnu større end Heartbleed.

Det Bash BUG eller ShellShock Det er ikke i sig selv en ondsindet kode (såsom computervirus, spyware, malware osv.), Så det kan ikke opdages og blokeres af antivirus eller lignende systemer, men skal rettes i selve softwareimplementeringen, der "lider" det.

Det anbefales at anvende denne vejledning i kontrollerede miljøer til formål i forbindelse med datalogisk forskning og undersøgelse, som forklaret her.

Hvad er Bash BUG ShellShock?


Grundlæggende ligger problemet i muligheden for, at Bash skal gemme definitionen af ​​scriptfunktioner i miljøvariabler, mere præcist i, hvordan disse funktioner indlæses af Bash.

BUG'en manifesteres, når der i en miljøvariabel efter funktionsdefinitionen tilføjes yderligere kode, som Bash vil fortsætte med at analysere og udføre efter indlæsning af funktionen.

Med den følgende kommando blev en tom funktionsdefinition, vilkårlig kode, indlæst i variablen "x", og derefter blev Bash kaldt.

Hvad der sker er, at før du ringer til Bash, er miljøvariablen blevet indlæst, og den injicerede kode er blevet eksekveret, der simpelthen viser strengen "sårbar" på konsollen (det kunne selvfølgelig have været værre!). Derefter er Bash blevet eksekveret, og ekkokommandoen er blevet kaldt som et eksempel. En enklere variant af kommandoen til at udføre testen:

 $ env x = '() {:;}; ekko sårbar 'bash 
Denne sidste kommando viser strengen "sårbar" på skærmen, hvis Bash -versionen har BUG, ​​eller den ikke viser noget, hvis det er en patched version.

Som angivet i indledningen bestemmer denne BUG en familie af sårbarheder, som en angriber kan bruge til at styre computere eksternt. Inden for disse varianter er der nogle lidt mere komplekse, andre meget enkle og nogle mere eller mindre komplekse. Der er varianter relateret til Apache- og CGI -moduler, andre til DHCP -klienten og nogle lidt mere detaljerede end andre.

En af de enkleste sager vil blive brugt til denne vejledning, shellShock -angreb på GNU / Linux DHCP -klient.

Systemer involveretOffervært:
GNU / Linux med Bash 4.3
DHCP-klient isc-dhclient-4.2.4
IP 192.168.1.88 (via DHCP)

Angribende vært:
Windows Xp
DHCP -server "tftp32" af Ph. Jounin
IP: 192.168.1.100

FORSTØRRE

Til bevis for konceptet antager vi et LAN, hvor både offeret og angriberen er forbundet.
Da DHCP -klientsoftwaren udføres med administrationstilladelser, vil angriberen forsøge at inkludere ondsindet kode i en eller anden DHCP -parameter i DHCP -konfigurationen, der er tildelt offeret.

Behandle

1) Angriberen kører DHCP -servicesoftwaren {(ftp32 ”af Ph. Jounin) blev brugt til denne vejledning}

1.1) Vælg den netværksgrænseflade, der skal bruges, og tryk på knappen "Indstillinger"

1.2) Konfigurer indstillingerne til kun at køre DHCP -tjenesten.

1.3) Gå til fanen "DHCP" og konfigurer som følger:

1.4) Bemærk i feltet "Addiotional Option", er option 114 (brugt i VOIP) blevet specificeret, og definitionen af ​​Bash -funktionen og den ondsindede kode er blevet indtastet i detaljdetaljefeltet:

 () {ignoreret;}; ekko 'KODE INJEKTERET'; / bin / cat / etc / passwd 
1.5) Tryk på "OK", DHCP -tjenesten er klar.

2) I offerets systemterminal skal du udføre følgende kommando for at afsløre systemets Syslog for, når vi udfører DHCP -anmodningen:

 # hale -f / var / log / syslog & 
3) Forudsat at eth1 er offerets netværksgrænseflade, kør DHCP -klienten:
 # dhclient eth1 
4) Kommandoen vil gøre DHCP -anmodningen og angriberen til den tilsvarende opgave:

5) I offerets terminal, takket være hale -kommandoen, der var i baggrunden, der viser systemets syslog, vil udførelsen af ​​den injicerede kode blive vist, i dette tilfælde vises strengen "INJECTED CODE" og derefter filens indhold / etc / passwd for offeret (kunne have været meget værre …):

Denne sidste del er takket være kommandoen "/ bin / cat / etc / passwd”Som er en del af den streng, der er angivet som option 114.

Angriberen kunne have udført andre kommandoer og udført enhver handling, da han har "root" -tilladelser, siden offerets DHCP -klient kører med disse privilegier.

OvervejelserFælles software er blevet brugt til denne vejledning, uden variationer på Victim -systemet. Denne sårbarhed findes i andre applikationer, der bruger Bash til at udføre parametre eller scripts på systemet.

Er bydende nødvendigt anvende de tilsvarende opdateringer til systemet for at forhindre denne type angreb.

Det er værd at præcisere, at det indhold, der præsenteres her, er nyttigt både til at forstå angrebets mekanik samt til at øge bevidstheden om dette sidste punkt. Husk, at denne dom har eksisteret i mindst 20 år, så den kan have været anvendt længe før den blev frigivet.

Kan du lide og hjælpe denne vejledning?Du kan belønne forfatteren ved at trykke på denne knap for at give ham et positivt punkt
wave wave wave wave wave