Мимикатз Издвоји Виндовс лозинке из меморије у јасном тексту

У овом чланку, који је написан као део низа чланака посвећених сигурности Виндовс система (у последњем чланку смо говорили о безбедности лозинки сачуваних у ГПП-у), упознаћемо се са прилично једноставном техником добијања јасних лозинки свих корисника који раде на Виндовс систему Коришћење услужног програма Мимикатз Опен Соурце.

Изјава о одрицању одговорности.  Информације и технологије описане у овом чланку требају се користити само у сврхе информисања и упознавања, и ни у којем случају не би се требале користити за приступ рачунима, информацијама и системима трећих страна.

Садржај:

  • Чувајте лозинке и хешеве у Виндовс меморији
  • Ми користимо Мимикатз за вађење корисничких лозинки из лсасс.еке на мрежи
  • Добијање корисничке лозинке са депонија Виндовс меморије
  • Дохваћање корисничких лозинки из датотека виртуалне машине и датотека хибернације
  • Коришћење Мимикатз-а у нападима пас-хеш
  • Како заштитити Виндовс од вађења лозинки из меморије преко мимикатз-а?

Чувајте лозинке и хешеве у Виндовс меморији

Већина администратора система уверена је да Виндовс не чува корисничке лозинке у јасном тексту, већ само у облику хасх-а. Иако данас постоји велики број услужних програма који могу извући хешеве корисничких лозинки из система, могуће је са сигурношћу рећи да када користи прилично сложену лозинку не „из речника“, нападач практично нема шансе да је покупи директном грубом силом или на основу већ израчунатих хешева.

То је у принципу тачно, али постоје различите нијансе у вези с корисницима који су пријављени у одређени Виндовс систем. Чињеница је да неки системски процеси у службене сврхе и даље користе лозинке корисника у отвореном (или шифрованом) облику, а не у њиховим хешевима.

На пример, механизам провјеравање аутентичности (ХТТП Дигест Аутентификација), користи се за подршку ССО (Сингле Сигн Он), за свој рад захтева познавање унесене корисничке лозинке, а не само њен хасх (можете само нагађати зашто су програмери ово имплементирали на овај начин). Лозинке (наиме, лозинке, а не њихове шифре) корисника у шифрованом облику се чувају у ОС меморији и да будемо прецизнији у процесној меморији ЛСАСС.Еке. Проблем је што се шифрирање лозинке имплементира помоћу стандардних Вин32 функција ЛсаПротецтМемори и ЛсаУнпротецтМемори, које су дизајниране за шифрирање / дешифровање одређеног дијела меморије. Утилити Френцх Девелоперс мимикатз омогућава вам да примите шифриране податке из меморије и дешифрујете их помоћу функције ЛсаУнпротецтМемори, омогућавајући вам да прикажете све корисничке налоге овлашћене у систему и њихове лозинке (у отвореном, већ дешифрованом облику!). Да би искористио рањивост, нападач мора бити у могућности да прикључи посебну библиотеку у процес лсасс.еке.

Преузмите услужни програм мимикатз можете бити овде: хттп://блог.гентилкиви.цом/мимикатз

Инфо. Мимикатз услужни програм открива већина антивируса и претраживача као потенцијално опасан софтвер (хакерски програм).

Услужни програм мимикатз омогућава вам да извадите корисничке лозинке директно из меморије (убризгавањем библиотеке секурлса.длл у лсасс.еке), са спремљеног смећа рачунарске меморије или чак из датотеке за хибернацију..

Ми користимо Мимикатз за вађење корисничких лозинки из лсасс.еке на мрежи

  • Преузмите и покрените Мимикатз.еке са привилегијама администратора (постоје к86 и к64 верзије услужног програма за одговарајуће системе)
  • У контексту услужног програма, покрените наредбе

мимикатз # привилеге :: дебуг
мимикатз # секурлса :: логонПассвордс фулл

(последња наредба за све активне кориснике у систему ће приказати имена налога и њихове лозинке).

Као што видите, услужни програм нам је у јасном тексту показао супер-сложене лозинке корисника! Све је то због чињенице да је на овом рачунару допуштено кориштење режима за уклањање погрешака постављањем заставе СеДебугПривилеге за жељени поступак. У овом режиму, програми могу да добију приступ на нижем нивоу меморији процеса који се изводе у име система.

Замислите да се ради о терминалном серверу на којем многи корисници раде истовремено, а на којем постоји, између осталог, и сесија пословног администратора. И.е. ако имате администраторска права на једном серверу, чак можете пресрести лозинку администратора домена.

Напомена. У јуну 2017. године, многе велике компаније у Русији, Украјини и другим земљама заражене су вирусом не-петиа рансомваре, који је интегрисани мимикатз модул користио за прикупљање лозинки корисника и домена.Напомена. Ова техника неће радити ако на систему постоји модеран антивирус који блокира ињекцију. У овом случају прво ћете морати да креирате меморијску депонију машине и већ на другој машини „извлачите“ лозинке са ње за сесије свих корисника.

Добијање корисничке лозинке са депонија Виндовс меморије

Депонирање меморије за ЛСАСС процес може се добити помоћу функције ПоверСхелл Оут-Минидумп.пс1. Увези Оут-Минидумп функцију у ПоСх и избаци меморију ЛСАСС процеса:

Гет-Процесс лсасс | Изванредна претпоставка

Резултат депоније меморије у нашем примеру је лсасс_592.дмп (подразумевано је спремљено у директоријум% виндир \ систем32%), морате је копирати на други рачунар који има услужни програм мимикатз и покренути наредбу:

Мимикатз „секурлса :: минидумп лсасс_592.дмп“

Следећом командом добијамо са спремљене меморијске смети листу корисника који раде у систему и њихове лозинке:

мимикатз # секурлса :: логонПассвордс

Као што видите, ништа компликовано.

На овај начин можете да добијете депонију меморије са удаљеног рачунара помоћу псекец-а или путем ВинРМ-а (ако имате администраторска права) и из њега извучете корисничку лозинку.

Дохваћање корисничких лозинки из датотека виртуалне машине и датотека хибернације

Само напред. Помоћу једноставних манипулација, нападач може лако извући корисничке лозинке из датотека смештаја у меморији, датотеку системске хибернације (хиберфил.сис) и. вмем датотеке виртуалних машина (свап датотеке виртуалних машина и њихове снимке).

Да бисте то учинили, потребан вам је пакет Отклањање грешака Алат за Виндовс (ВинДбг), ја мимикатз и алат за конверзију .вмем у думп датотеку за меморију (за Хипер-В то може бити вм2дмп.еке или МоонСолс Виндовс Мемори Тоолкит за вмем ВМВаре датотеке).

На пример, ако је потребно, претворите заменски фајл вмем ВМВаре виртуелне машине у смеће, извршите наредбу:

бин2дмп.еке "винрв2008р2.вмем" вмваре.дмп

Учитавамо резултирајући думп у ВинДбг (Датотека -> Опен Црасх Думп), учитавамо библиотеку мимикатз са именом мимилиб.длл (одаберите верзију у зависности од дубине бита система):

.лоад мимилиб.длл

Тражимо поступак лсасс.еке на депонији:

!процес 0 0 лсасс.еке

И на крају упишемо:

.процес / р / п фффффа800е0б3б30
!мимикатз

и добити листу Виндовс корисника и њихове лозинке у чистом тексту.

Добијање лозинки Виндовс корисника у отвореном облику помоћу услужног програма Мимикатз ради на следећим системима, укључујући и оне који раде на различитим верзијама Хипер-В 2008/2012 и ВМВаре:

  • Виндовс Сервер 2008/2008 Р2
  • Виндовс Сервер 2012 / Р2
  • Виндовс 7
  • Виндовс 8
Напомена. Успут, функционалност мимикатз-а је већ имплементирана у Метасплоит Фрамеворк.

Коришћење Мимикатз-а у нападима пас-хеш

У случају да није могуће добити лозинку корисника, већ само њен хасх, Мимикатз се може користити за такозвани напад пасс-тхе-хасх (поновна употреба хасх-а). У овом случају, хасх се може користити за покретање процеса у име корисника. На пример, након што је примио НТЛМ хасх од корисника, следећа наредба ће покренути наредбену линију у име привилегованог налога:
секурлса :: птх / корисник: Администратор / домена: ЦОРП / нтлм: НТЛМ хасх / рун: цмд

Како заштитити Виндовс од вађења лозинки из меморије преко мимикатз-а?

У Виндовс 8.1 и Сервер 2012 Р2 (и новијим верзијама) могућност издвајања лозинки преко ЛСАСС-а донекле је ограничена. Према томе, ови системи подразумевано не спремају ЛМ хасх и лозинке у чист текст у меморију. Иста функционалност подржана је и у старијим верзијама оперативног система Виндовс (7/8 / 2008Р2 / 2012), у које је потребно инсталирати специјалну исправку КБ2871997 (ажурирање пружа друге могућности за јачање сигурности система) и у ХКЕИ_ЛОЦАЛ_МАЦХИНЕ \ СИСТЕМ \ ЦуррентЦонтролСет \ Цонтрол \ СецуритиПровидерс \ ВДигест грани поставите параметар ДВОРД регистра УсеЛогонЦредентиал једнак 0 (ВДигест је онемогућен).

Ако након инсталирања ажурирања и УсеЛогонЦредентиал кључа покушате да извучете лозинке из меморије, видећете да мимикатс не може извући лозинке и хешеве помоћу команде цредс_вдигест.

Међутим, ако имате права администратора, овај кључ можете лако да промените:

рег додај ХКЛМ \ СИСТЕМ \ ЦуррентЦонтролСет \ Цонтрол \ СецуритиПровидерс \ ВДигест / в УсеЛогонЦредентиал / т РЕГ_ДВОРД / д 1

Након тога поново можете приступити лозинкама у ЛСА меморији.

Пакет алата мимикатз такође има и друге алате за дохваћање лозинки и њихових хешева из меморије (ВДигест, ЛМ-хасх, НТЛМ-хасх, Керберос модул за хватање карата), па се препоручује да се следеће мере примене као препоруке:

  • Забраните чување лозинки користећи Реверзибилно шифрирање
  • Онемогућите НТЛМ
  • Забраните употребу сачуваних лозинки у Цредентиал Манагер-у
  • Заустави кеширање корисничких акредитива домена (ЦацхедЛогонсЦоунт кључ и Интерактивна пријава: Број претходних пријава за кеширање политике)
  • Ако функционални ниво домене није нижи од Виндовс Сервер 2012 Р2, можете додати административне налоге у посебну групу Заштићени корисници
Савет. Детаљан чланак о начинима заштите меморије Виндовс система од вађења лозинки и хешева - Методе заштите од мимикатз-а у Виндовс домену

Приликом тестирања мимкатз-а на Виндовс 10 Про к64 са подешавањима, мимкатз 2.0 је могао да добије шифре лозинке активног корисника (али не и лозинку у јасном тексту).

На старијим системима требате ограничити добијање привилегија за уклањање погрешака и онемогућити вдигест провајдера безбедности кроз регистар. За ово у бранши ХКЕИ_ЛОЦАЛ_МАЦХИНЕ \ СИСТЕМ \ ЦуррентЦонтролСет \ Цонтрол \ Лса пронађи кључ Сигурносни пакетс и уклоните линију са листе пакета вдигест. Међутим, морате да схватите да нападачу није тешко да врати подешавања, ако има одговарајућа права у регистру, ако он има одговарајућа права у регистру..

Закључци. Још једном се сећамо заједничких истина:

  • Не користите исте лозинке за различите услуге (посебно терминалне у власништву трећих лица).
  • Размислите о сигурности својих лозинки и података који се налазе на виртуелним машинама у облацима, јер не можете бити сигурни ко још има приступ хипервизорима и складишту на коме се налазе датотеке виртуалне машине.
  • Смањите на својим системима број налога који имају локална администраторска права (погледајте водич о обезбеђењу административних налога у Виндовс-у)
  • Никада се не пријавите помоћу налога администратора домена на сервере и рачунаре доступне другим корисницима.