Доброго времени суток. Возник ряд вопросов по взлому хэша полученного в результате атаки as_rep roasting.
#Вводные:
Если я правильно понимаю то в результате атаки происходит перехват kerberos_as_rep. Сам ответ, как я понимаю, состоит из двух сообщений:
Первое сообщение зашифровано с использованием секрета клиента и содержит:
-Сессионный ключ для KDC
-Метка времени
-Срок жизни TGT
Второе сообщение (TGT) зашифровано уже с использованием секрета KDC и включает в себя те же самые данные, что и первое сообщение, но вместе с принципалом клиента.
Секрет клиента которым зашифровано первое сообщение создается с использованием хэш функции string2key. Хэш может вычисляться разными способами в зависимости от соответствующих настроек Kerberos, в частности поддерживаются следующие алгоритмы:
-RC4_HMAC_MD5
-AES128_CTS_HMAC_SHA1_96
-AES256_CTS_HMAC_SHA1_96
Если я правильно понимаю суть атаки, то на основе первого сообщения зашифрованного секретом клиента можно попробовать подобрать пароль клиента, так как секрет клиента создан на основе его пароля. Например с помощью hashcat:
hashcat -m 18200 asrep_hash.txt wordlist.txt
#Собственно сами вопросы:
Так вот как именно в данном случае работает подбор по словарю, учитывая то что перехваченное сообщение которое мы взламываем не содержит пароль клиента? А точнее как именно hashcat понимает что он подобрал корректный пароль?
Я правильно понимаю что hashcat поочередно генерирует из каждого пароля из словаря предпологаемый ключ, после чего пытается расшифровать сообщение получившимся ключом, а то подходит ли получившийся ключ определяет по какомуто шаблону которому должно соответствовать корректно расшифрованное первое сообщение kerberos_as_rep?
Если мое предположение верно то как hashcat понимает какой из трех основных алгоритмов используемых для генерации секрета клиента ему необходимо использовать?
Сори за количество текста. Буду очень благодарен если кто нибудь сможет подтвердить, или опровергнуть мое предположение, доходчиво обьяснив детали.
#Вводные:
Если я правильно понимаю то в результате атаки происходит перехват kerberos_as_rep. Сам ответ, как я понимаю, состоит из двух сообщений:
Первое сообщение зашифровано с использованием секрета клиента и содержит:
-Сессионный ключ для KDC
-Метка времени
-Срок жизни TGT
Второе сообщение (TGT) зашифровано уже с использованием секрета KDC и включает в себя те же самые данные, что и первое сообщение, но вместе с принципалом клиента.
Секрет клиента которым зашифровано первое сообщение создается с использованием хэш функции string2key. Хэш может вычисляться разными способами в зависимости от соответствующих настроек Kerberos, в частности поддерживаются следующие алгоритмы:
-RC4_HMAC_MD5
-AES128_CTS_HMAC_SHA1_96
-AES256_CTS_HMAC_SHA1_96
Если я правильно понимаю суть атаки, то на основе первого сообщения зашифрованного секретом клиента можно попробовать подобрать пароль клиента, так как секрет клиента создан на основе его пароля. Например с помощью hashcat:
hashcat -m 18200 asrep_hash.txt wordlist.txt
#Собственно сами вопросы:
Так вот как именно в данном случае работает подбор по словарю, учитывая то что перехваченное сообщение которое мы взламываем не содержит пароль клиента? А точнее как именно hashcat понимает что он подобрал корректный пароль?
Я правильно понимаю что hashcat поочередно генерирует из каждого пароля из словаря предпологаемый ключ, после чего пытается расшифровать сообщение получившимся ключом, а то подходит ли получившийся ключ определяет по какомуто шаблону которому должно соответствовать корректно расшифрованное первое сообщение kerberos_as_rep?
Если мое предположение верно то как hashcat понимает какой из трех основных алгоритмов используемых для генерации секрета клиента ему необходимо использовать?
Сори за количество текста. Буду очень благодарен если кто нибудь сможет подтвердить, или опровергнуть мое предположение, доходчиво обьяснив детали.