GCNet - это программа для взаимодействия с LDAP сервером, выполняющая различные запросы для получения информации об атрибутах и пользователях, а также отслеживающая изменения на сервере. Программа использует библиотеку System.DirectoryServices.Protocols
для выполнения LDAP-запросов и обработки ответов.
- Инициализация соединения с LDAP сервером: Создает и настраивает соединение с LDAP сервером, используя текущий домен пользователя.
- Получение контекста именования схемы: Выполняет запрос к RootDSE для получения DN схемы.
- Получение всех атрибутов: Выполняет пагинированный запрос для получения всех атрибутов схемы и их синтаксиса, сохраняя их в словаре.
- Получение OU текущего пользователя: Возвращает DN организационной единицы (OU) текущего пользователя.
- Получение уведомлений об изменениях: Настраивает и выполняет запрос на получение уведомлений об изменениях на LDAP сервере.
- Обработка ответов на изменения: Обрабатывает частичные результаты изменений, преобразует их в человекочитаемый формат и сохраняет в файл JSON.
Отслеживание изменений может дать картину того, что используется в домене сейчас и помочь произвести разведку в домене. Формат вывода совместим с BloodHound.
GetSchemaNamingContext(LdapConnection ldapConnection)
GetAllAttributes(LdapConnection ldapConnection)
GetUserOU()
InitializeConnection()
GetChangeNotifications(string searchBaseDN, LdapConnection connection)
SearchResponseCallback(IAsyncResult ar)
Main(string[] args)
Для запуска программы используйте:
GCNet.exe