Saturday, 25 February 2023

Влияем на MS ATA через функцию отражения.

Всем привет.

Установка ведения журналов блоков сценариев доставляется в компьютеры Windows через настроенные в контроллере домена глобальные параметры: параметры объекта Групповой политики (GPO).

При каждом исполнении команды интерпретатором PowerShell ведение журналов блоков сценариев проверяет соответствующий объект Групповой политики в ключе реестра и принимает решение о регистрации этой команды или её игнорировании. 

Тем не менее, как обычно, дьявол кроется в деталях. Для повышения производительности соответствующая настройка ведения журналов блоков сценариев кэшируется в памяти, в частности, внутри переменной с именем cachedGroupPolicySettings.

Эта переменная, или чтобы быть более точным свойство определяется в загружаемом DLL System.Management.Automation внутреннем статическом классе Utils. 

Ведение журнала блоков сценариев включено когда cachedGroupPolicySettings установлено в определённое значение. Если оно не определено, ведение журналов блоков сценариев отключено - во всех его смыслах и проявлениях.

Можем ли мы считать это пространство памяти и обойти имеющиеся правила объектно- ориентированного программирования, которые гласят, что мы не можем получать доступ к закрытым переменным вне их классов? Да, и ещё раз: да! Более того, мы способны перекрыть это поле в памяти чтобы отключить ведение журнала для своего конкретного экземпляра PowerShell. В конце концов, любой загружаемый обычным процессом пользователя код DLL пребывает в пространстве пользователя, а переменные этой DLL обычно находятся в страницах памяти для чтения/записи. Поэтому мы можем отключать ведение журналов не обладая полномочиями администратора. Чтобы реализовать такой трюк вуду мы полагаемся на функцию, носящую название отражения (reflection).

В исполняемых файлах .NET отражение (reflection) позволяет фрагменту кода считывать код данного исполняемого кода извлекать методы и участников и изменять их во время выполнения. В основном это допустимо по причине того, что исполняемый файл .NET не содержит реального собственного машинного кода. Вместо этого он состоит из промежуточного кода с названием Microsoft Intermediate Language (MSIL, Промежуточного языка Microsoft), который компилятор транслирует из кода верхнего уровня, как правило C#. Во время исполнения код MSIL на лету компилируется в аппаратный код средой Windows Common Language Runtime (CLR, времени исполнения общего языка).

В то время как в обычном исполняемом файле все метаданные (имена функций, переменные, структуры и т. д.) заменяются абстрактными смещениями и сведениями о размере при компиляции, в формате MSIL эти метаданные сохраняются в сборке, что позволяет составить список функции любого заданного двоичного файла, вызывать их, создавать экземпляры объектов и т.д. По существу, это позволяет нам манипулировать внутренними компонентами двоичного файла во время выполнения. Именно это делает возможным отражение.

Friday, 24 February 2023

Не виключайте ваш ПК.

Привіт всім.

Можу вас запевнити що людина може дуже довго дивитися на три речі: на те як горить вогонь, на те як біжить ріка, і на те як... оновлюється Windows). Не згодні зі мною?

А ось на таке повідомлення яке висить на екрані вашого ПК вже понад двадцять хвилин зможете?


Особливо тут дратує цифра 100. До речі якщо читати повідомлення буквально то там є вимога "НЕ ВИКЛЮЧАЙТЕ ВАШ ПК", але це не значить що його не можно перезавантажувати.)) Іноді ребут йде йому на користь, але це вже ваш персональний ризик.

Щасти.

Sunday, 19 February 2023

Выполняем дамп LSASS процесса.

Всем привет.

Уверен что вы  в курсе что в действительности делает всем известный Mimikatz - он извлекает хранящиеся в отвечающем за обработку удостоверения подлинности процессе LSASS.exe секреты. Уверен, весьма опасно выполнять анализ этого процесса в реальном масштабе времени, когда Mimikatz запущен в целевой машине, но никто не запрещает нам выгружать содержимое LSASS.exe в файл, а затем передавать его в автономном режиме запущенному в нашей тестовой машине экземпляру Mimikatz.

Однако перед тем как делать дамп следует включить, к примеру, на RDP-сервере поставщика WDigest для того чтобы он сохранял все вводы паролей на перспективу в обратимом формате:

reg add HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest /v UseLogonCredential /t REG_DWORD /d 1

Далее необходимо подожать некоторое время, пока пользователи навводили каких-то паролей, которые можно будет сбросить, а затем собрать полученный дамп LSASS.exe.

А теперь внимание, у меня вам подарок - забудьте о классических инструментах дампа процесса, таких как procdump.exe и Out-Minidump PowerShellMafia, они будут обязательно обнаружены системой мониторинга. Однако имеется простой и лёгкий способ выполнения дампа процессов в Windows10 при помощи старого доброго Диспетчера задач. Просто откройте его, отыщите запись LSASS.exe, кликните правой кнопкой и нажмите по Create dump file: 


Для справки альтернативный способ:

1) запуск интерпретатора под System: psexec64.exe -i -s cmd

2) снимаем дамп процесса с ID520: procdump64.exe -ma 520

И при этом не прозвучало ни единого писка от MDE, а Диспетчер задач сообщает, что соответствующий файл дампа был записан в C:\users\username\AppData\Local\Temp\lsass.dmp. Ну или почти ни единого, но тем не менее файл дампа все равно будет создан.

Friday, 17 February 2023

Два монітори в Windows 10.

Всім привіт.

Можливо для вас це не новина. Але не для мене). 

Працюючи за ноутом з зовнішнім монітором я спіймав себе на думці що мені набридає пам'ятати як налаштований перехід на великий екран - зліва чи справа від малого. Від цього залежить рух курсором миши. А великий монітор в мене розташований зверху ноута. 


І от на моє здивування я винайшов що Windows 10 дає змогу розташувати другий екран будь де від першого, аби вони торкалися одне одного. Та хоч кутами.) І вуаля - тепер в мене все логічно!


Щасти.

Thursday, 16 February 2023

Штатный обход AMSI защиты.


Всем привет.

AMSI (Anti-Malware Scan Interface) - это тех­нология Microsoft, которую раз­работа­ли для защиты компьютера от вирусов и другой малвари. Впер­вые была внед­рена в Windows 10. AMSI умеет в реаль­ном вре­мени перех­ватыва­ть и анализировать скрип­ты JavaScript, VBScript, VBA и коман­ды PowerShell.

Давайте рассмотрим AMSI в действии. В нашем примере Windows Defender - это приложение, которое вызывает API AMSI. Но вы можете вызывать те же API из собственного приложения. Ниже приведен пример сценария, использующего метод кодирования XOR для скрытия его намерения (является ли это намерение неопасным или нет). На рисунке ниже можно представить, что этот сценарий был скачан из Интернета:



Чтобы сделать все более интересными, мы можем ввести этот скрипт вручную в командной строке, чтобы не было фактического файла для отслеживания. Это отражает то, что называется "без файловой угрозы". Это не так просто, как сканирование файлов на диске. Угроза может быть backdoor, который живет только в памяти компьютера.

Wednesday, 15 February 2023

Конвертация HyperV в VMware.

Всем привет.

Конвертация виртуальной машины Linux (Centos/Redhat) с помощью VMware Сonverter Standalone с HyperV на VMware привносит мелкий сюрприз - первая загрузка новой машины вываливается в черный экран с приглашением dracut.

Для исправления этого надо разово выполнить три действия:

1) после конвертации следует загрузиться в режиме reсovery (обычно это последняя строка в меню загрузчика). Далее в терминале выполнить:

sudo dracut --force --regenerate-all

2) далее следует изменить настройки сетевого интерфейса по пути 

/etc/sysconfig/network-scripts/

Обычно это файлик ifcfg-eth0 где достаточно поменять значение параметра DEVICE. Если такого параметра нет, то добавьте его. Чтобы знать на что менять просто выполните команду ip ad и вы увидите ваш новый интерефейс типа ens192 (или ens160) без IP-адреса. Тогда ваша строка будет как DEVICE=ens192.

Также еcли в файле ifcfg-eth0 есть параметр HWADDR то его тоже следует обновить, это МАС нового интерфейса.

3) пускаем Linux на перезагрузку и уже в нормальном режиме выполняем:

sudo dracut --force

Готово.

Saturday, 4 February 2023

Выключение СХД.

Всем прпивет.

Устройство СХД HP P2000 FC имеет много особенностей, но сегодня я выделю только одну из них. Я про полное выключение СХД по питанию. 

Как может быть многие из вас знают, нет у этой СХД ни кнопки питания, ни опции Shutdown в меню web dashboard. И обыкновенное выдергивание шнура питания из задней панели совершенно не подходит вам как Администратору.

Однако в меню есть опция Shutdown or Restat Controller. Вот она то нам и нужна на такой случай. А там следует выполнить операцию shutdown для  обоих, нет, не контроллеров, а для Storage (выбрать в выпадающем меню). Готово.



Теперь можете "нежно" выдергивать питание. При включении СХД может понадобится обратная операция как restart тут же по меню.

Успехов.

Wednesday, 1 February 2023

Профиль пользователя в AD.

Всем привет.

Есть много способов замапить внешний диск пользователю при его входе в ПК. Например с помощью login VB-скрипта, или команды net use, или GPO. 

Но есть более изящный способ. Можно указать его в профиле пользователя в AD, как показано ниже:


Это все на сегодня.)

Версия на печать

Популярное