
Инструмент на C# для операций red team, который извлекает контакты, метаданные почтового ящика и выполняет поиск писем через COM-объект Outlook, с встроенным обходом защиты программного доступа.
«Лучшее чувство — победить нокаутом.» — Нонито Донэр
KnockOutlook — это проект на C#, который взаимодействует с COM-объектом Outlook для выполнения ряда операций, полезных в мероприятиях красной команды.
__ __ __ ____ __ __ __
/ //_/____ ____ _____/ /__/ __ \__ __/ /_/ /___ ____ / /__
/ ,< / __ \/ __ \/ ___/ //_/ / / / / / / / __/ / __ \/ __ \/ //_/
/ /| |/ / / / /_/ / /__/ ,< / /_/ / /_/ / /_/ / /_/ / /_/ / ,<
/_/ |_/_/ /_/\____/\___/_/\_\\____/\__,_/\__/_/\____/\____/_/\_\
Parameters:
--operation : specify the operation to run
--keyword : specify a keyword for the 'search' operation
--id : specify an EntryID for the 'save' operation
--bypass : bypass the Programmatic Access Security settings (requires admin)
Operations:
check : perform a number of checks to ensure operational security
contacts : extract all contacts of every account
mails : extract mailbox metadata of every account
search : search for the provided keyword in every mailbox
save : save a specified mail by its EntryID
Examples:
KnockOutlook.exe --operation check
KnockOutlook.exe --operation contacts
KnockOutlook.exe --operation mails --bypass
KnockOutlook.exe --operation search --keyword password
KnockOutlook.exe --operation save --id {EntryID} --bypass
check
Перечисляет сведения об установке Outlook для построения правильного ключа реестра и получения настройки безопасности программного доступа.
Если это значение установлено в Предупреждать, когда антивирус неактивен или устарел, выполняется запрос WMI на наличие установленных антивирусных продуктов и анализ их текущего состояния.
contacts
Перечисляет контакты каждой настроенной учетной записи и извлекает следующую информацию:
mails
Перечисляет письма каждой настроенной учетной записи и извлекает следующие метаданные:
search
Выполняет поиск в почтовом ящике каждой настроенной учетной записи с помощью встроенного поискового движка Outlook и возвращает EntryID писем, содержащих указанное ключевое слово в теле.
save
Использует встроенный механизм Outlook «Сохранить как» для экспорта письма, на которое ссылается его EntryID.
Параметр --bypass можно использовать вместе с операциями contacts, mails, search и save при условии, что текущий процесс выполняется с высоким уровнем целостности.
Он пытается сделать снимок текущей политики безопасности Outlook, изменить её таким образом, чтобы запрос безопасности программного доступа автоматически разрешался, и в конечном итоге вернуть её в исходное состояние после завершения операции.
Все операции выводят основную информацию на экран.
Операции contacts и mails выводят результаты в формате JSON в файл, сжатый Gzip.
Операция save экспортирует запрошенное письмо в формате .MSG.
Все имена файлов генерируются случайным образом во время выполнения.
По умолчанию в качестве места назначения для всех экспортированных файлов используется защищенная временная папка Outlook.