Утоены ўзлом пароляў з дапамогай Smbexec

Утоены ўзлом пароляў з дапамогай Smbexec

Мы рэгулярна пішам пра тое, як хакеры часта абапіраюцца на выкарыстанне метадаў узлому без шкоднаснага кода, Каб пазбегнуць выяўлення. Яны літаральна "выжываюць на падножным карму", выкарыстоўваючы стандартныя сродкі Windows, тым самым абыходзячы антывірусы і іншыя ўтыліты выяўлення шкоднаснай актыўнасці. Мы, як абаронцы, зараз змушаныя мець справу з сумнымі наступствамі такіх хітрых тэхнік узлому: удала размешчаны супрацоўнік можа выкарыстаць той жа падыход для ўтоенага крадзяжу дадзеных (інтэлектуальная ўласнасць кампаніі, нумары крэдытак). І калі ён не будзе спяшацца, а працаваць павольна і незаўважна, будзе надзвычай складана - але ўсё ж магчыма, калі прымяняць правільны падыход і адпаведныя інструменты, - Выявіць такую ​​актыўнасць.

З іншага боку, мне б не жадалася дэманізаваць супрацоўнікаў, бо ніхто не жадае працаваць у бізнэс-асяроддзі наўпрост з «1984» Оруэла. На шчасце, існуюць шэраг практычных крокаў і лайфхакаў, якія могуць значна ўскладніць жыццё інсайдэрам. Мы разгледзім скрытыя метады атакі, якія выкарыстоўваюцца хакерамі супрацоўнікамі з некаторым тэхнічным бэкграўндам. А крыху далей мы абмяркуем варыянты скарачэння такіх рызык - вывучым як тэхнічны, так і арганізацыйны варыянт дзеянняў.

Што дрэннага ў PsExec?

Эдвард Сноўдэн, справядліва ці не, стаў сінонімам інсайдэрскага крадзяжу дадзеных. Дарэчы кажучы, не забудзьцеся зірнуць на гэтую нататку аб іншых інсайдэра, таксама годных некаторага статуту вядомасці. Варта падкрэсліць адзін важны момант аб метадах, якія выкарыстоўваў Сноўдэн, - наколькі нам вядома, ён не ўсталёўваў ніякага знешняга шкоднаснага софту!

Наадварот, Сноўдэн ужыў крыху сацыяльнай інжынерыі і скарыстаўся сваім службовым становішчам сістэмнага адміністратара для збору пароляў і стварэння ўліковых дадзеных. Нічога складанага - ніякіх mimikatz, нападаў чалавек-у-сярэдзіне або metasploit.

Супрацоўнікі арганізацый не заўсёды знаходзяцца ва ўнікальнай пазіцыі Сноўдэна, але з канцэпцыі "выжывання на падножным карму" можна атрымаць шэраг урокаў, пра якія варта ведаць - не рабіць ніякіх шкоднасных дзеянняў, якія можна выявіць, і асабліва акуратна выкарыстоўваць уліковыя дадзеныя. Запомніце гэтую думку.

Psexec і яго стрыечны брат crackmapexec зрабілі ўражанне на незлічонае мноства пентэстэраў, хакераў і блогераў па інфармацыйнай бяспецы. А ў камбінацыі з mimikatz, psexec дазваляе атакавалым перамяшчацца ўнутры сеткі без неабходнасці ведаць пароль у адкрытым выглядзе.

Mimikatz перахапляе NTLM-хэш у працэсу LSASS, а затым перадае токен або ўліковыя дадзеныя - т.зв. «pass the hash» атака – у psexec, дазваляючы зламысніку ўвайсці на іншы сервер ад асобы іншага карыстальніка. І з кожным наступным перасоўваннем на новы сервер, атакавалы збірае дадатковыя ўліковыя дадзеныя, пашыраючы спектр сваіх магчымасцяў у пошуку даступнага кантэнту.

Калі я ўпершыню пачаў працаваць з psexec, ён здаўся мне проста магічным - дзякуй Марку Руссіновічу, геніяльнаму распрацоўніку psexec, — але я таксама ведаю і пра яго шумных кампанентах. Ён ні разу не ўтойлівы!

Першы цікавы факт аб psexec заключаецца ў тым, што ён выкарыстоўвае надзвычай складаны сеткавы файлавы пратакол SMB ад Microsoft. З дапамогай SMB psexec перадае невялікія бінарныя файлы на мэтавую сістэму, змяшчаючы іх у тэчку C:Windows.

Далей psexec стварае Windows-службу з дапамогай скапіяванага бінарніка і запускае яе пад вельмі "нечаканым" імем PSEXECSVC. Пры гэтым вы можаце рэальна ўбачыць усё гэта, як і я, назіраючы за выдаленай машынай (гл. ніжэй).

Утоены ўзлом пароляў з дапамогай Smbexec

Візітная картка Psexec: служба "PSEXECSVC". Яна запускае бінарны файл, які быў змешчаны па SMB у тэчку C:Windows.

У якасці фінальнай стадыі, скапіяваны бінарны файл адкрывае RPC-падлучэнне да мэтавага сервера і затым прымае кіраўнікі каманды (па змаўчанні праз cmd-шел Windows), запускаючы іх і перанакіроўваючы ўвод і выснова на хатнюю машыну атакавалага. Пры гэтым зламыснік бачыць базавы камандны радок - такі ж, як калі б ён быў падлучаны напрамую.

Мноства кампанентаў і вельмі шумны працэс!

Складаны механізм унутраных працэсаў psexec тлумачыць паведамленне, якое збянтэжыла мяне падчас маіх першых тэстаў некалькі гадоў таму: "Starting PSEXECSVC..." і наступную паўзу перад з'яўленнем каманднага радка.

Утоены ўзлом пароляў з дапамогай Smbexec

Psexec ад Impacket у рэчаіснасці паказвае, што адбываецца пад капотам .

Не дзіўна: psexec прарабляў велізарную колькасць працы пад капотам . Калі вас цікавіць больш падрабязнае тлумачэнне, азнаёмцеся вось з гэтым выдатным апісаннем.

Відавочна, што пры выкарыстанні ў якасці прылады сістэмнага адміністравання, што і з'яўлялася першапачатковым прызначэннем psexec, нічога страшнага ў "гудзенні" усіх гэтых механізмаў Windows няма. Для атакавалага, аднак, psexec створыць ускладненні, і для асцярожнага і хітрага інсайдэра, такога як Сноўдэн, psexec або падобная ўтыліта будзе занадта вялікай рызыкай.

І тут прыходзіць Smbexec

SMB - гэта майстэрскі і ўтойлівы спосаб перадачы файлаў паміж серверамі, і хакеры ўкараняліся напроста ў SMB яшчэ спрадвеку. Мяркую, што ўсе ўжо ведаюць, што ня варта адкрываць SMB парты 445 і 139 у інтэрнэт, ці не так?

У 2013 годзе на Defcon Эрык Мілман (brav0hax) прадставіў у свет smbexec, каб пентэстары маглі апрабаваць ўтойлівы ўзлом SMB. Я не ведаю ўсёй гісторыі, але затым Impacket дадаткова вывастрыў smbexec. Насамрэч, для свайго тэставання я запампаваў менавіта скрыпты ад Impacket на пітоне з Github.

У адрозненне ад psexec, smbexec пазбягае перадачы патэнцыйна дэтэктаванага бінарнага файла на мэтавую машыну. Замест гэтага ўтыліта цалкам жыве з "падножнага корму" праз запуск лакальнай каманднага радка Windows.

Вось што яна робіць: перадае каманду ад атакавалай машыны праз SMB у адмысловы ўваходны файл, а затым стварае і запускае складаны камандны радок (як служба Windows), якая здасца знаёмай лінуксоідам. Сцісла: яна запускае натыўны Windows-шелл cmd, перанакіроўвае выснову ў іншы файл і затым адпраўляе яго па SMB зваротна на машыну зламысніка.

Лепшым спосабам зразумець гэта будзе вывучэнне каманднага радка, які я змог займець з часопіса падзей (гл. ніжэй).

Утоены ўзлом пароляў з дапамогай Smbexec

Ці не гэта найвялікшы спосаб перанакіравання ўводу/высновы? Дарэчы, стварэнне службы мае ідэнтыфікатар падзеі 7045.

Як і psexec, яна таксама стварае службу, якая выконвае ўсю працу, але служба пасля гэтага выдаляецца - яна выкарыстоўваецца толькі адзін раз для запуску каманды і потым знікае! Супрацоўнік інфармацыйнай бяспекі, які назірае за машынай ахвяры, не зможа выявіць відавочных індыкатараў нападу: няма ніякага шкоднаснага які запускаецца файла, ніякай сталай службы не ўсталёўваецца, і няма доказу выкарыстання RPC, бо SMB з'яўляецца адзіным сродкам перадачы дадзеных. Геніяльна!

З боку атакавалага пры гэтым даступны "псеўда-шэл" з затрымкамі паміж адпраўкай каманды і атрыманнем адказу. Але гэтага цалкам дастаткова для працы зламысніка - або інсайдэра, або знешняга хакера, у якога ўжо ёсць плацдарм, - каб пачаць шукаць цікавы кантэнт.

Утоены ўзлом пароляў з дапамогай Smbexec

Для вываду дадзеных назад з мэтавай машыны на машыну зламысніка, выкарыстоўваецца smbclient. Так, гэта тая ж самая Samba ўтыліта, але толькі пераробленая пад Python-скрыпт Impacket'ам. Фактычна, smbclient дазваляе вам утойліва арганізаваць перадачу FTP па-над SMB.

Давайце зробім крок назад і падумаем над тым, што гэта можа даць супрацоўніку. У маім выдуманым сцэнары, скажам, блогеру, фінансаваму аналітыку або высокааплатнаму кансультанту па бяспецы дазволена выкарыстоўваць асабісты наўтбук для працы. У выніку нейкага магічнага працэсу, яна крыўдзіцца на кампанію і "пускаецца ва ўсе цяжкія". У залежнасці ад аперацыйнай сістэмы наўтбука, яна альбо выкарыстоўвае Python версію ад Impact, альбо Windows версію smbexec ці smbclient у выглядзе .exe файла.

Як і Сноўдэн, яна даведаецца пароль іншага карыстальніка альбо падгледзеўшы яго праз плячо, альбо ёй вязе, і яна наторкаецца на тэкставы файл з паролем. І з дапамогай гэтых уліковых дадзеных яна пачынае капацца вакол сістэмы на новым узроўні прывілеяў.

Узлом DCC: нам не патрэбен ніякі «дурны» Mimikatz

У маіх папярэдніх пастах, прысвечаных пентэсту, я вельмі часта выкарыстоўваў mimikatz. Гэта выдатная прылада для перахопу ўліковых дадзеных – NTLM-хэшаў і нават пароляў у адчыненым выглядзе, якія стаіліся ўсярэдзіне наўтбукаў і так і якія чакаюць, каб імі скарысталіся.
Часы змяніліся. Інструменты маніторынгу сталі лепш у дэтэктаванні і блакіроўцы mimikatz. Адміністратары інфармацыйнай бяспекі таксама сталі валодаць вялікай колькасцю опцый па скарачэнні рызык, звязаных з нападамі "pass the hash"-тыпу (далей – PtH).
Дык што ж павінен зрабіць разумны супрацоўнік, каб сабраць дадатковыя ўліковыя дадзеныя без выкарыстання mimikatz?

У набор ад Impacket уваходзіць утыліта пад назовам secretsdump, якая здабывае уліковыя дадзеныя з кэша Domain Credential Cache, або коратка DCC. Наколькі я разумею, калі даменны карыстач уваходзіць на сервер, але кантролер дамена пры гэтым недаступны, DCC дазваляе серверу аўтэнтыфікаваць карыстача. Так ці інакш, secretsdump дазваляе вам здампаваць усе гэтыя хэшы, калі яны даступныя.

DCC-хэшы - гэта ня NTML-хэшы і іх нельга выкарыстоўваць для PtH-напады.

Ну, вы можаце паспрабаваць узламаць іх, каб атрымаць зыходны пароль. Аднак Microsoft стала разумнейшыя пры працы з DCC і ўзламаць DCC-хэшы стала надзвычай складана. Да ёсць хашмат, "самы хуткі ў свеце падборшчык пароляў", але ён патрабуе наяўнасці GPU для эфектыўнай працы.

Замест гэтага давайце паспрабуем разважаць як Сноўдэн. Супрацоўнік можа правесці вочную сацыяльную інжынерыю і, магчыма, пазнаць якую-небудзь інфармацыю аб чалавеку, пароль якога яна жадае ўзламаць. Напрыклад, даведацца, ці ўзламваўся калі-небудзь анлайн-акаўнт гэтага чалавека і вывучыць яго пароль у адкрытым выглядзе на наяўнасць якіх-небудзь падказак.

І гэта той сцэнар, па якім я вырашыў пайсьці. Давайце выкажам здагадку, што інсайдэр даведаўся, што яго кіраўнік, Круэла, некалькі разоў была ўзламана на розных вэб-рэсурсах. Пасля аналізу некалькіх з гэтых пароляў, ён усведамляе, што Круэла аддае перавагу выкарыстоўваць фармат назвы бейсбольнай каманды "Yankees" і ідучым за ім бягучым годам - ​​"Yankees2015".

Калі вы зараз спрабуеце прайграць гэта ў сябе ў хатніх умовах, то вы можаце спампаваць невялікі, «C» код, Які рэалізуе алгарытм хэшавання DCC, і скампіляваць яго. Джон патрашыцель, дарэчы кажучы, дадаў падтрымку DCC, таму яго таксама можна выкарыстоўваць. Давайце выкажам здагадку, што інсайдэр не жадае звязвацца з вывучэннем John the Ripper і кахае запускаць gcc на састарэлым C-кодзе.

Малюючы ролю інсайдэра, я запусціў некалькі розных камбінацый і ў рэшце рэшт змог выявіць, што пароль Круэлы - "Yankees2019" (гл. ніжэй). Місія выканана!

Утоены ўзлом пароляў з дапамогай Smbexec

Трохі сацыяльнай інжынерыі, крыху варажбы і дробку Maltego - і вы ўжо на шляху ўзлому хэша DCC.

Прапаную на гэтым скончыць. Мы яшчэ вернемся да гэтага пытання ў іншых публікацыях і разгледзім яшчэ больш павольных і ўтойлівых метадаў нападу, працягваючы абапірацца на пышны набор утыліт ад Impacket.

Крыніца: habr.com

Дадаць каментар