Архивная Пост эксплуатация скомпроментированных Windows систем. Metasploit Incognito

Актуальная версия на 2025 год: Metasploit: повышение привилегий через кражу токенов

Всем посетителям форума, доброго времени дня. Сегодня я решил осветить один из встроенных модулей в metasploit framework, о котором мало кто знает и мало кто пользуется, но на самом деле данный модуль позволяет поднять свои привилегии вплоть до администратора домена или предприятия в зависимости от того, как повезет. Для этого данный модуль использует такой тип данных как shell token. Token это своеобразный временный ключ, который позволит получить доступ к системе и сети без необходимости каждый раз вводить учётные данные. То есть при входе администратора на сервер или ПК в системе создается токен с его учетными данными и именно его мы будем пытаться эксплуатировать.

Итак начнем. Поискав в своей корпоративной сети, я для наглядности остановил свой выбор на ПК под управлением WinXP с ip адресом 10.1.134.17. Для начала скомпрометируем систему, используя всем известный ms08_netapi. В качестве атакуещего хоста Kali 2017.3.
Посмотреть вложение 14680

Получив активную сессию подгрузим модуль Incognito командой
Код:
use incognito
Давайте теперь посмотрим справку по данному модулю:
Посмотреть вложение 14681

Функционал обширен, данный модуль позволяет используя токены shell создавать пользователей локальных и глобальных групп, также позволяет управлять системой(а в некоторых случаях и доменом) от имени конкретного пользователя.
Попробуем создать пользователя
Посмотреть вложение 14684
Как вы видите пользователь добавлен, но без прав администратора. Попробуем пойти другим путем и посмотрим список всех доступных токенов
Посмотреть вложение 14685
Здесь стоит провести небольшой экскурс в теорию:
Delegation Tokens - такой тип токенов создается, при интерактивном использовании системы(подключение RDP)
Impersonation - этот тип создается при не интерактивном сценарии (например вход в домен)
Наш атакуемый не находится в домене, поэтому показать всю прелесть данного способа не получится, но не будем отчаиваться и попробуем получить shell от имени локального администратора. Используем токен пользователя ASI_Ves. На скриншоте виден синтаксис команды (не забываем указывать 2 слэша после рабочей группы). Успешно получив токен пробуем получить shell
Посмотреть вложение 14686
Далее все зависит от вашей фантазии и возможностей.


Как специалист по информационной безопасности, дам главный совет по предотвращению подобного вектора атак, на ваши системы:
Аккуратнее относитесь к чувствительным учетным записям в домене. То есть учетная запись администратора домена должна быть одна и использоваться в крайних случаях, для того чтобы выполнять свои ежедневные функции системного администратора, вам достаточно прав локального админа на каждой машине и сервере и эта учетная запись ни в коем случае не должна обладать правами ни доменного администратора, ни тех групп безопасности что выше (Администратор схемы, Администратор предприятия).
Также следует помнить что токены хранятся до перезагрузки, так что если вы где то наследили просто перезагрузите машину и все токены с повышенными привилегиями будут удалены

Спасибо за внимание.
 
Последнее редактирование модератором:
про persistence бы еще написал) а так GOOD!)
 
Пишу не по теме, и большинству будет всё равно.
Но уже не первый раз когда делаю статьи для канала и качаю картинки вижу что нумеруют их уже приятно становится что не придётся искать где-что, но мой маленький перфекцеонист негодует
Идет картинки в таком порядке 1,2,5,3,4
Может я чего-то не понимаю? :)
 
Привет! Есть несколько вопросов:

1. Данный модуль работает только под правами системы ?

2. Даже имея права системы и кучу залогиненых пользователей на сервере,я не увидел ни одного токена,кроме своего. Почему так может быть ?
 
Данный модуль для того и нужен, чтобы повысить свои права либо до nt authority/system
 
Warning: Not currently running as SYSTEM, not all tokens will be available
Call rev2self if primary process token is SYSTEM

во! подозреваю без прав системы ничего не получится (
 
Нет,не работает. Меня смущает предупреждение системы :
Not currently running as SYSTEM, not all tokens will be available
Call rev2self if primary process token is SYSTEM

Вы мигрируете в другой процесс,прежде чем запускать модуль Incognito ?
 
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab