Не успел я сконсолидировать типовые методы пост-эксплуатации на платформе Windows в предыдущем посте, как (неожиданно и в тот же день) Александр Зайцев нарыл в сети новую, куда более интересную тему. Речь идет про опубликованный на днях французским исследователем "швейцарский нож" под названием mimikatz. Инструмент, помимо аналогичного функционала, поддерживаемого Windows Credentials Editor, позволяет выдергивать креды залогиневшегося пользователя в системе открытым текстом! Атака реализуется следующей магией:
Подобное чудо связано с использованием поставщика безопасности wdigest, который с целью поддержки SSO хранит пароль в памяти открытым текстом (кто бы мог подумать!). Стоит ли говорить какой выхлоп для атакующего играет подобный недостаток :) К слову, парни уже прикручивают это чудо к MSF - http://pauldotcom.com/2012/02/dumping-cleartext-credentials.html
В качестве временного решения можно отключить поставщика безопасности wdigest через соответствующую ветвь реестра (HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa). Однако стоит понимать, что атакующий может проделать тоже самое в обратном порядке.
mimikatz # privilege::debug
mimikatz # inject::process lsass.exe sekurlsa.dll
mimikatz # @getLogonPasswords
Подобное чудо связано с использованием поставщика безопасности wdigest, который с целью поддержки SSO хранит пароль в памяти открытым текстом (кто бы мог подумать!). Стоит ли говорить какой выхлоп для атакующего играет подобный недостаток :) К слову, парни уже прикручивают это чудо к MSF - http://pauldotcom.com/2012/02/dumping-cleartext-credentials.html
В качестве временного решения можно отключить поставщика безопасности wdigest через соответствующую ветвь реестра (HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa). Однако стоит понимать, что атакующий может проделать тоже самое в обратном порядке.
В проге "Cain & Abel" LSA Secrets Dumper появился уже в 2009 году
ОтветитьУдалитьты бы хоть на картинку взглянул) речь идет про выдергивание паролей открытым текстом, тех пользователей, которые болтаются на терминале! Подобного функционала нету ни в одной другой тулзе, включая известного тебе каина.
ОтветитьУдалитьДмитрий, а почему 0day?.. Указали бы, какие привилегии нужны, чтобы "сказку сделать былью".
ОтветитьУдалитьКстати, в открытом виде пароли хранятся и для TS-провайдера (tspkg). Правда, прежде чем советовать его отключать, надо упомянуть, что его задействует "RDP-SSO" (NLA). Про digest и Chap можно не упомянать – не заслуживают. :)
ха-ха-ха, трололо!
ОтветитьУдалитьДима, 0day твоему, уже даже в реализации mimikatz скоро год будет.
to Дмитрий Пономарев:
ОтветитьУдалить0day потому как патча для подобной фичи на текущий момент нету. Касаемо провайдера tspkg, мне кажется он заслуживает меньшего внимания, чем wdigest, т.к. не задействован по умолчанию. Вы видимо придерживаетесь другого мнения, можно узнать почему?
to Анонимный:
приходи к нам в компанию работать на пентестера! нам парни, которые шарят раньше всех подобные темы ох как нужны!;)
Патча для _фичи_?
ОтветитьУдалитьЕсли пароль где-то хранится в открытом виде, то его можно выгрузить и из памяти, без пристраивания к LSA. Это тоже 0day?..
// Вы видимо придерживаетесь другого мнения <...>
CredSSP c TSSP задействованы "изкоробки" в NT 6.x.
Дмитрий,
ОтветитьУдалитькак бы... http://www.securitylab.ru/vulnerability/420418.php
Как бы что?.. CVE ID?
ОтветитьУдалитьНу, ОК, признаю: "страшная уязвимость".
Тянется ведь и из TSSP, но уязвим только Digest-package?.. :)
ммм... я не совсем понимаю, о чем мы спорим? и что Вы мне хотите доказать?
ОтветитьУдалитьможет ты к нам?
ОтветитьУдалитьк нам - это куда? :)
ОтветитьУдалитьДима, описание на Секлабе надо поправить: пользователи, _обладающий привилегией SeDebugPrivilege_ (Администраторы в общем случае).
ОтветитьУдалитьУтверждать, что SSPI-модули "хранят пароли пользователей в незашифрованном виде в памяти ОС" неверно. Во-первых хранятся пароли пользователей, локально зарегистрированных (имеется сессия) в системе (это не то же самое, что "пароли пользователей, _"авторизованных на системе"_), а во-вторых, хранятся они храняться "зашифрованными" с помощью "LsaProtectMemory".
P.S. Таки признали TSPkg виноватым. :)
с первым согласен, со вторым нет. по мне обратимое шифрование - это не шифрование вовсе.
ОтветитьУдалить>> P.S. Таки признали TSPkg виноватым. :)
а с этим никто и не спорил
>по мне обратимое шифрование - это не шифрование вовсе.
ОтветитьУдалитьНикому об этом не говори!!!!
// по мне обратимое шифрование - это не шифрование вовсе
ОтветитьУдалитьА бывает необратимое шифрование?.. :)
Дмитрий, не петросяньте.
ProtectMemory именно шифрует, блочным, кажется, DEA в ECB-режиме, пусть ключом, зашитым в lsasrv.dll (так было у NT 5.0).
Дмитрий, а долго ждать CVE ID? Я не в теме. Просвятите, пожалуйста.
Correct, crypted in memory but in reversible way (LsaProtectMemory/LsaUnprotectMemory, see : http://blog.gentilkiwi.com/mimikatz/sekurlsa/wdigest#getWDigestFunctions & http://blog.gentilkiwi.com/mimikatz/sekurlsa/tspkg#getTsPkgFunctions), msv1_0 also use subcalls too for pass the hash.
ОтветитьУдалитьUsualy, debug privilege is needed, but you can use system account too, (psexec -s or other tricks) and with it : no need of privilege :)
I disagree vulnerability, it's a weakness (but big fail ;))
Benjamin `gentilkiwi`
ps : I'm not "швейцарский нож", gentil kiwi mean "хороший киви"
to Дмитрий Пономарев:
ОтветитьУдалитьну зачем привязываться к словам ;) Вы ведь прекрасно поняли, что я имею ввиду под этим однонаправленное шифрование при хранении хеш-значений от используемых паролей. И то, что существует потребность в хранении пароля - это тоже понятно. Удивление вызывает другое. А именно, то что ОС без моего ведома и по умолчанию хранит мой пароль, когда я захожу на терминал или захожу в интерактивном режиме.
>> а долго ждать CVE ID? Я не в теме.
мну тоже не в теме)
to Gentil Kiwi:
I agree - this is a weakness. But then, NTLM Relay (MS08-068) can also be attributed to the weakness of.
Yes for MS068-068, strange categorization.
ОтветитьУдалить(by the way I'm not a swiss knife ;) ;))
Gentil Kiwi -- swiss knife is not you =) It's about your toolset.
ОтветитьУдалитьso sweet, my Russian is old (so sorry ;)
ОтветитьУдалитьЧитайте, просвящайтесь:
ОтветитьУдалитьhttp://passcape.com/index.php?section=docsys&cmd=details&id=34&setLang=6