ActiveDirectory/Join/Capturing traffic

Материал из ALT Linux Wiki
< ActiveDirectory‎ | Join
Версия от 12:36, 10 декабря 2024; Olga kmv (обсуждение | вклад) (Новая страница: «==Захват трафика при вводе компьютера в домен== Захват трафика во время ввода компьютера в домен является важной процедурой для последующего анализа сетевых взаимодействий. Это позволяет: *Детально изучить процесс присоединения устройства к домену. *О...»)
(разн.) ← Предыдущая версия | Текущая версия (разн.) | Следующая версия → (разн.)

Захват трафика при вводе компьютера в домен

Захват трафика во время ввода компьютера в домен является важной процедурой для последующего анализа сетевых взаимодействий. Это позволяет:

  • Детально изучить процесс присоединения устройства к домену.
  • Определить выполняемые условия и шаги.
  • Проанализировать используемые сетевые протоколы (например, Kerberos, LDAP, SMB).
  • Исследовать запросы и ответы между рабочей станцией и контроллером домена.
  • Выявить возможные проблемы или ошибки конфигурации в процессе ввода в домен.

Подготовка машин для захвата трафика

Процесс захвата трафика может выполняться, как на стороне контроллера домена, так и на клиентской машине, которая вводится в домен. Методика одинакова для различных операционных систем (например, Windows и Linux).

Для выполнения захвата трафика необходимы:

  1. Контроллер домена - сервер, на котором работает Active Directory.
  2. Рабочая станция - машина, которая будет вводиться в домен.
  3. Программное обеспечение для захвата трафика - Wireshark.

Процесс захвата трафика

  1. Установка программы Wireshark
    На ALT Linux установите программу Wireshark, используя следующую команду:
     # apt-get install wireshark
    
  2. Запуск Wireshark
    Откройте Wireshark на рабочей станции. Альтернативно, можно выполнить захват трафика на контроллере домена, в зависимости от задач.
  3. Настройка фильтров для захвата трафика
    Для анализа, исключительно взаимодействия между контроллером домена и рабочей станцией, настройте фильтр в Wireshark:
    (ip.src == 192.168.1.1 && ip.dst == 192.168.1.2) || (ip.src == 192.168.1.2 && ip.dst == 192.168.1.1)
    
    Где:
    • 192.168.1.1 — IP-адрес контроллера домена
    • 192.168.1.2 — IP-адрес рабочей станции
  4. Выбор сетевого интерфейса
    В Wireshark выберите сетевой интерфейс, который будет использоваться для захвата трафика. На рабочей станции с ALT Linux это, например, интерфейс eth0. Для выбора интерфейса выполните двойной щелчок по нему.
  5. Ввод рабочей станции в домен
    Выполните ввод рабочей станции в домен, используя учетные данные с правами администратора домена или учетной записи, имеющей соответствующие права.
  6. Завершение захвата трафика
    После успешного ввода рабочей станции в домен, остановите процесс захвата трафика в Wireshark, нажав на кнопку Stop (красный квадрат) в верхней панели управления.
  7. Сохранение захваченных данных
    Сохраните файл с захваченным трафиком для последующего анализа. Используйте формат pcapng, который предлагается по умолчанию:
    • В меню Wireshark выберите File → Save As
    • Укажите имя файла и директорию для сохранения
    • Убедитесь, что формат файла установлен как pcapng

Создание keytab файла

Для дальнейшего анализа захваченного трафика и расшифровки аутентификационных пакетов (например, Kerberos), необходимо создать keytab файл. Этот файл содержит криптографические ключи, которые используются для аутентификации пользователей и машин в домене. Keytab файл позволит расшифровать пакеты, связанные с процессом ввода машины в домен, и анализировать их.

Создание keytab файла на машине ALT Linux, введённой в домен

После того как машина ALT Linux была успешно введена в домен Samba AD или MS AD, создание keytab файла удобно выполнить непосредственно на этой машине. Следующие шаги помогут вам создать и проверить содержимое keytab файла:

  1. Перезагрузка машины и вход с правами доменного пользователя
    После ввода машины в домен, необходимо перезагрузить рабочую станцию. Затем войдите в систему с учетной записью доменного пользователя. Это обеспечит доступ к ресурсам домена и позволит создать keytab файл, который будет содержать необходимые ключи для аутентификации в домене.
  2. Создание keytab файла с содержимым всех учетных записей в домене
    Для создания keytab файла с содержимым всех учетных записей в домене выполните следующую команду:
    net rpc vampire keytab /path/to/combined.keytab -I <ip_domain_controller> -U User@DOMAIN.EXAMPLE
    
    Например:
    net rpc vampire keytab /home/DOMAIN.TEST/admin/combined.keytab -I 192.168.1.1 -U Admin@DOMAIN.TEST
    
    Описание параметров:
    • /home/DOMAIN.TEST/admin/combined.keytab - путь, где будет сохранен созданный keytab файл.
    • 192.168.1.1 - IP-адрес контроллера домена.
    • Admin @DOMAIN.TEST - учетная запись администратора домена, которая будет использоваться для выполнения команды. Убедитесь, что у вас есть соответствующие права.
    Команда net rpc vampire keytab создаст keytab файл, который будет содержать все ключи аутентификации для всех учетных записей, доступных в домене.
  3. Установка пакета krb5-kadmin и утилиты ktutil
    Для работы с keytab файлами необходимо установить утилиту ktutil, которая является частью пакета krb5-kadmin. Для установки выполните команду:
    # apt-get install krb5-kadmin
    
  4. Проверка содержимого keytab файла
    После того как keytab файл был создан, вы можете проверить его содержимое с помощью утилиты ktutil. Для этого выполните следующие шаги:
    • Запустите ktutil:
      ktutil
      
    • Загрузите созданный keytab файл:
      ktutil:  read_kt /home/DOMAIN.TEST/admin/combined.keytab
      
    • Просмотрите содержимое файла:
      ktutil:  list
      
    • Завершите работу с утилитой:
      ktutil:  quit
      
    Это позволит вам убедиться, что ключи для нужных учетных записей корректно добавлены в файл.
  5. Просмотр информации о keytab файле и его шифрах
    Для просмотра содержимого keytab файла с дополнительной информацией о используемых шифрах, выполните команду:
    # klist -kte /home/DOMAIN.TEST/admin/combined.keytab
    
    Эта команда отобразит подробную информацию о содержимом файла, включая типы используемых шифров (например, AES256, RC4) и другие параметры.
    После выполнения вышеуказанных шагов вы получите keytab файл, который можно использовать для аутентификации в процессе анализа Kerberos-трафика или для дальнейших операций с учетными записями в домене. Этот файл будет содержать ключи для аутентификации машин и пользователей, что позволит расшифровывать данные, связанные с их действиями в сети.

Создание keytab файла на контроллере домена ALT Server

Если было выполнено присоединение Windows-машины к домену Samba AD, то целесообразно создать keytab файл на контроллере домена ALT Server. Это позволяет эффективно работать с ключами для аутентификации без необходимости генерации keytab файла на клиентской машине Windows. Можно использовать способ, описанный в предыдущей главе. В данном разделе рассмотрим процесс создания и объединения keytab файлов, для учетных записей, по отдельности. С помощью команд samba-tool и ktutil можно легко создать и объединить keytab файлы для различных учетных записей. После этого вы сможете использовать объединённый файл для аутентификации в процессе анализа Kerberos-трафика или других операций в домене.

  1. Создание keytab файла для учетной записи компьютера
    Для создания keytab файла для компьютера в домене выполните команду:
    # samba-tool domain exportkeytab --principal=PC@DOMAIN.TEST /srv/shared/test1_samba.keytab
    
    Описание параметров:
    • PC@DOMAIN.TEST - имя учетной записи компьютера в домене. Убедитесь, что указали правильное имя хоста, которое соответствует учетной записи машины в домене.
    • /srv/shared/test1_samba.keytab — путь, где будет сохранен созданный keytab файл для компьютера. Вы можете изменить этот путь на подходящий для вашего окружения.
  2. Создание keytab файла для учетной записи администратора
    Для создания keytab файла для учетной записи администратора домена выполните команду:
    # samba-tool domain exportkeytab --principal=Admin@DOMAIN.TEST /srv/shared/Admin_samba.keytab
    
    Описание параметров:
    • Admin@DOMAIN.TEST — имя учетной записи администратора в домене.
    • /srv/shared/Admin_samba.keytab — путь для сохранения keytab файла для администратора.
  3. Объединение keytab файлов с помощью утилиты ktutil
    После того как keytab файлы для различных учетных записей были созданы, их можно объединить в один файл. Для этого используйте утилиту ktutil:
    • Запустите ktutil:
      ktutil
      
    • Загрузите созданные keytab файлы:
      ktutil: rkt /srv/shared/test1_samba.keytab
      ktutil: rkt /srv/shared/Admin_samba.keytab
      
    • Сохраните объединенный keytab файл:
      ktutil: wkt /srv/shared/combined.keytab
      
    • Завершите работу с ktutil:
      ktutil: quit
      
    Теперь у вас есть объединённый keytab файл, который содержит ключи как для компьютера, так и для администратора.
  4. Проверка содержимого keytab файла
    Чтобы проверить содержимое созданного объединённого keytab файла, выполните команду с использованием ktutil:
    • Запустите ktutil:
      ktutil
      
    • Загрузите объединённый keytab файл:
      ktutil: read_kt /srv/shared/combined.keytab
      
    • Просмотрите содержимое файла:
      ktutil: list
      
    • Завершите работу с ktutil:
      ktutil: quit
      
    Это позволит вам убедиться, что объединённый файл содержит все необходимые ключи для аутентификации.

Создание keytab файла на контроллере домена Windows Server 2019

Если машина Windows была введена в домен MS AD, создание keytab файла целесообразно провести на контроллере домена. В отличие от Linux, в Windows для создания keytab файлов необходимо знать пароль учетной записи пользователя. В случае с учетными записями машин, пароль генерируется автоматически при создании учетной записи и не отображается, что затрудняет его использование. Однако, для создания keytab файла можно использовать ключ Kerberos для учетной записи машины, который можно извлечь с помощью программы Mimikatz. В этом разделе описан процесс создания keytab файла с использованием Kerberos-ключа для учетных записей машины и пользователя.

  1. Использование Mimikatz для извлечения Kerberos-ключа
    • Установите программу Mimikatz
      Для скачивания программы Mimikatz перейдите по следующей ссылке на GitHub. Выберите версию, соответствующую вашей архитектуре системы.
    • Запустите программу Mimikatz
      После скачивания и распаковки Mimikatz, выполните запуск:
      mimikatz.exe
      
    • Получение прав администратора
      В Mimikatz выполните команду для получения привилегий:
      # privilege::debug
      
      Эта команда обеспечит необходимые привилегии для извлечения Kerberos-ключей.
    • Извлечение Kerberos-ключа с помощью команды
      Для извлечения Kerberos-ключа учетной записи машины используйте команду:
      # lsadump::dcsync /user:PC$
      
      Замените PC$ на имя вашей машины, если оно отличается.
    • Найти необходимые строки в выводе
      В выводе команды найдите строку с заголовком Supplemental Credentials, которая будет содержать информацию о Kerberos-ключах, например:
      Supplemental Credentials:
      * Primary:Kerberos-Newer-Keys *
          Default Salt : DOMAIN.COPYhostpc.domain.copy
          Default Iterations : 4096
          Credentials
            aes256_hmac       (4096) : fb43b1fdcff70138044573e921d96fb5b1047d5863acc3144ff182f4f2241243
      
    • Извлечь Kerberos-ключ
      Из полученной информации скопируйте ключ пароля (например, fb43b1fdcff70138044573e921d96fb5b1047d5863acc3144ff182f4f2241243) и сохраните его для дальнейшего использования.