Skip to content
KitploitKITPLOIT
ИнструментыЭксплойтыБлог
Log in
Отправить
ИнструментыЭксплойтыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
DumpGuard — Инструмент Proof-of-Concept для извлечения учётных данных из защищённых сессий на современных системах Windows. | Kitploit
Инструменты/GitHubGitHub/bytewreck/dumpguard
Повышение привилегийРазведкаЭксплуатацияЛатеральное перемещениеСбор информацииПост-эксплуатацияТестирование на ПроникновениеАутентификацияRed Teaming
GitHubbytewreck/dumpguard

DumpGuard

Инструмент Proof-of-Concept для извлечения учётных данных из защищённых сессий на современных системах Windows.

72669134 месяцев назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться
Репозиторий
# DumpGuard
[![BSD3 License](https://img.shields.io/badge/License-BSD%203--Clause-orange.svg?style=flat)](../LICENSE)
[![Slack](https://img.shields.io/badge/Slack-SpecterOps-02B36C)](https://slack.specterops.io)
[![Sponsored by SpecterOps](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/specterops/.github/main/config/shield.json)](https://github.com/specterops)

![Logo](https://assets.kitploit.com/production/public/readmes/11488/171e79a11a4c7e781d174349e85b628db201d99ed228dc384ad77cf10149d03f.jpg)

DumpGuard — это инструмент для кражи учётных данных и исследования протоколов для современных Windows-систем. Он злоупотребляет протоколом _Remote Credential Guard_ для восстановления материала учётных данных даже при включённом _Credential Guard_, а также включает путь пакета аутентификации Microsoft v1 для извлечения NTLM на основе сессий.

Текущий функционал включает:
- Ответы NTLMv1
- Ответы NTLMv2
- Сервисные билеты Kerberos
- Извлечение из пакета аутентификации Microsoft v1 для локальных сессий входа

Вы можете скачать предварительно собранные копии из раздела релизов этого репозитория.

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

## Обзор использования

В следующей таблице приведены реализованные на данный момент техники.

| Техника | Команда | Требуется SYSTEM | Требуется<br>Учётная запись SPN | Может извлечь<br>Credential Guard |
| -------- | ------- | :----------------: | :---------------------: | :--------------------------: |
| Извлечение NTLMv1 через Remote Credential Guard | `ntlmv1` | `self`: :x:<br>`all`: ✅ | ✅ | ✅ |
| Извлечение NTLMv2 через Remote Credential Guard | `ntlmv2` | `self`: :x:<br>`all`: ✅ | ✅ | ✅ |
| Извлечение Kerberos TGS через Remote Credential Guard | `kerbtgs` | `self`: :x:<br>`all`: ✅ | ✅ | ✅ |
| Извлечение NTLMv1 через пакет аутентификации Microsoft v1 | `msv10` | ✅ | :x: | :x: |

DumpGuard использует модель `command` и `target`.

- `command` выбирает технику извлечения.
- `target` выбирает, работать с текущей сессией или перечислять сессии.

Поддерживаемые команды:
- `/command:ntlmv1`
- `/command:ntlmv2`
- `/command:kerbtgs`
- `/command:msv10`

Поддерживаемые цели:
- `/target:self`
- `/target:all`

Общие параметры Remote Credential Guard:
- `/domain:<DOMAIN>`
- `/username:<SAMACCOUNTNAME>`
- `/password:<PASSWORD>`
- `/spn:<SPN>`

Параметры Kerberos TGS:
- `/tgsdomain:<DOMAIN>`
- `/tgsspn:<SPN>`

Если `/spn` опущен для учётной записи компьютера, DumpGuard по умолчанию использует `HOST/<computername>`.

## Извлечение собственной сессии через Remote Credential Guard

Для извлечения материала учётных данных текущего пользователя из непривилегированного контекста DumpGuard аутентифицируется на учётной записи с включённым SPN с помощью Remote Credential Guard, а затем отправляет последующие запросы через установленный контекст безопасности.

Это работает независимо от состояния Credential Guard, но требует учётных данных для учётной записи с включённым SPN.

Требуемые привилегии: **Нет**.

NTLMv1:
```text
DumpGuard.exe /command:ntlmv1 /target:self /domain:<DOMAIN> /username:<SAMACCOUNTNAME> /password:<PASSWORD> [/spn:<SPN>]
```

NTLMv2:
```text
DumpGuard.exe /command:ntlmv2 /target:self /domain:<DOMAIN> /username:<SAMACCOUNTNAME> /password:<PASSWORD> [/spn:<SPN>]
```

Kerberos TGS:
```text
DumpGuard.exe /command:kerbtgs /target:self /domain:<DOMAIN> /username:<SAMACCOUNTNAME> /password:<PASSWORD> [/spn:<SPN>] [/tgsdomain:<DOMAIN>] /tgsspn:<service/host>
```

Если `/tgsdomain` опущен, по умолчанию используется значение `/domain` из Remote Credential Guard.

## Извлечение всех сессий через Remote Credential Guard

Для извлечения материала учётных данных всех доступных в данный момент пользователей из привилегированного контекста DumpGuard олицетворяет токены из запущенных процессов, аутентифицируется на учётной записи с включённым SPN с помощью Remote Credential Guard, а затем отправляет последующие запросы через установленный контекст безопасности.

Это работает независимо от состояния Credential Guard, но требует учётных данных для учётной записи с включённым SPN.

Требуемые привилегии: **SYSTEM** или **Administrator** (требуется **SeImpersonatePrivilege**).

NTLMv1:
```text
DumpGuard.exe /command:ntlmv1 /target:all /domain:<DOMAIN> /username:<SAMACCOUNTNAME> /password:<PASSWORD> [/spn:<SPN>]
```

NTLMv2:
```text
DumpGuard.exe /command:ntlmv2 /target:all /domain:<DOMAIN> /username:<SAMACCOUNTNAME> /password:<PASSWORD> [/spn:<SPN>]
```

Kerberos TGS:
```text
DumpGuard.exe /command:kerbtgs /target:all /domain:<DOMAIN> /username:<SAMACCOUNTNAME> /password:<PASSWORD> [/spn:<SPN>] [/tgsdomain:<DOMAIN>] /tgsspn:<service/host>
```

Если `/tgsdomain` опущен, по умолчанию используется значение `/domain` из Remote Credential Guard.

## Извлечение всех сессий через пакет аутентификации Microsoft v1

Для извлечения NTLM-ответов для текущих аутентифицированных пользователей из привилегированного контекста SYSTEM DumpGuard напрямую взаимодействует с NTLM SSP и запрашивает ответы на вызовы для каждой обнаруженной сессии входа.

Это работает только при следующих условиях:
- Credential Guard отключён на локальной системе.
- Удалённые пользователи аутентифицированы на локальной системе с удалённого хоста через Remote Credential Guard.

Требуемые привилегии: **SYSTEM** (требуется **SeTcbPrivilege**).

```text
DumpGuard.exe /command:msv10
```

Эту атаку также можно выполнить с помощью [LSA Whisperer](https://github.com/EvanMcBroom/lsa-whisperer) с помощью следующей команды:

```text
lsa-whisperer.exe msv1_0 Lm20GetChallengeResponse --luid {session id} --challenge {challenge to clients} [flags...]
```

## Дополнительная информация

Я реверс-инжинирил и воссоздал интерфейсы, предоставляемые Credential Guard (`LsaIso.exe`), и включил их в этот репозиторий для всех, кто заинтересован в дальнейшем исследовании.

По состоянию на октябрь 2025 года реализованы следующие интерфейсы:
- BCryptIum
- CloudApIum
- KerberosIum
- LsaIsoMgmtIum
- NtlmIum
- ProvIum

## Благодарности

Спасибо [SpecterOps](https://specterops.io/) за поддержку этого исследования и моим коллегам, которые помогали в его разработке.
- [Elad Shamir](https://twitter.com/elad_shamir) — за вдохновение для создания этого инструмента и исследования, а также за ценные замечания и поддержку, когда я заходил в тупик.
- [Evan McBroom](https://github.com/EvanMcBroom) — за полезные сведения о внутренностях LSA и предоставление ASN.1-кодеров для большинства структур, использованных в этом проекте.

## Связанные инструменты

- [LSA Whisperer](https://github.com/EvanMcBroom/lsa-whisperer) ([Evan McBroom](https://github.com/EvanMcBroom)) — набор инструментов для взаимодействия с пакетами аутентификации.
- [Rubeus](https://github.com/GhostPack/Rubeus) ([Will Schroeder](https://github.com/HarmJ0y), [Charlie Clark](https://x.com/exploitph)) — набор инструментов на C# для взаимодействия с Kerberos и его атак.
- [Mimikatz](https://github.com/gentilkiwi/mimikatz) ([Benjamin Delpy](https://github.com/gentilkiwi)) — небольшая утилита для работы с безопасностью Windows.
- [Kekeo](https://github.com/gentilkiwi/kekeo) ([Benjamin Delpy](https://github.com/gentilkiwi/kekeo)) — небольшой набор инструментов для работы с Microsoft Kerberos на C.

## Связанные работы

- [Oliver Lyak](https://github.com/ly4k) ([2022](https://research.ifcr.dk/pass-the-challenge-defeating-windows-defender-credential-guard-31a892eee22)) — насколько мне известно, единственное публичное исследование по извлечению учётных данных, защищённых Credential Guard.
- [James Forshaw](https://x.com/tiraniddo) ([2022](https://project-zero.issues.chromium.org/issues/42451433), [2022](https://project-zero.issues.chromium.org/issues/42451435), [2022](https://project-zero.issues.chromium.org/issues/42451397), [2022](https://project-zero.issues.chromium.org/issues/42451436)) — отчёты об уязвимостях, в которых частично описываются некоторые недокументированные интерфейсы, которые мы исследовали.
Скачать инструмент