
Коллекция атакующих инструментов на C#
Это коллекция инструментов на C# и PoC, созданных мной для использования в операциях. Каждый проект спроектирован без использования внешних библиотек. Откройте .SLN файл каждого проекта в Visual Studio и скомпилируйте как "Release".
| Проект | Описание | Минимальная версия .NET |
|---|---|---|
| AbandonedCOMKeys | Перечисляет заброшенные ключи COM (особенно InprocServer32). Полезно для персистентности, так как в некоторых случаях можно записать в отсутствующую локацию и вызвать с помощью rundll32.exe -sta {CLSID}. Техника описана в этом посте от @bohops | 4.0 |
| COMHunter | Перечисляет COM-серверы, установленные в ключах LocalServer32 и InProc32 в системе с помощью WMI | 4.0 |
| CredPhisher | Запрашивает у текущего пользователя его учетные данные с помощью функции WinAPI CredUIPromptForWindowsCredentials. Поддерживает аргумент для указания текста сообщения, которое будет показано пользователю. | 3.5 |
| DriverQuery | Собирает информацию о драйверах в системе и опционально фильтрует для поиска только тех, которые не подписаны Microsoft | 3.5 |
| EncryptedZIP | Сжимает каталог или файл, а затем шифрует ZIP-файл с помощью предоставленного ключа, используя AES256 CFB. Эта сборка также очищает ключ из памяти с помощью RtlZeroMemory. Используйте включенную программу Decrypter для расшифровки архива. | 3.5 |
| ETWEventSubscription | Аналог подписки на события WMI, но использует Event Tracing for Windows. Когда происходит событие в системе (в настоящее время либо вход любого пользователя, либо запуск указанного процесса), выполняется метод DoEvil(). | 4.6 |
| GPSCoordinates | Отслеживает GPS-координаты системы (в настоящее время точность до 1 км), если включены службы определения местоположения. Работает на Windows 10, но планируется охватить все версии 7+ . | 4.0 |
| HijackHunter | Анализирует PE-заголовок целевого файла для поиска DLL, уязвимых для перехвата (hijacking). Предоставляет обоснование и методы атаки для каждой обнаруженной возможности перехвата |
| 4.0 |
| HookDetector | Обнаруживает хуки нативных API-функций в текущем процессе, указывающие на наличие EDR | 4.0 |
| ImplantSSP | Устанавливает предоставленную пользователем библиотеку Security Support Provider (SSP) DLL, которая будет загружена LSA при запуске системы. DLL должна экспортировать SpLsaModeInitialize. Вдохновлено Install-SSP от @mattifestation. | 3.5 |
| InspectAssembly | Анализирует CIL целевой .NET сборки на предмет вызовов десериализаторов и использования .NET Remoting для помощи в триаже потенциальных повышений привилегий. | 4.0 |
| JunctionFolder | Создает папку связи (junction folder) в папке автозагрузки "Стандартные" Windows (Windows Accessories Start Up), как описано в утечках Vault 7. При запуске или при просмотре каталога пользователем указанная DLL будет выполнена verclsid.exe в среднем уровне целостности. | 3.5 |
| MockDirUACBypass | Создает поддельный доверенный каталог C:\Windows \System32\ и перемещает в него автоматически повышающий привилегии исполняемый файл Windows. Предоставленная пользователем DLL, экспортирующая соответствующие функции, сбрасывается, и при запуске исполняемого файла DLL загружается и выполняется с высоким уровнем целостности. Техника обнаружена @ce2wells и описана в этом посте. | 3.5 |
| PhantomService | Ищет и удаляет не-ASCII службы, которые невозможно легко удалить стандартными средствами Windows. Ссылка | 4.0 |
| SessionSearcher | Ищет на всех подключенных дисках закрытые ключи PuTTY и файлы подключений RDP и анализирует их для получения соответствующих данных. Основано на SessionGopher от @arvanaghi. | 4.0 |
| UnquotedPath | Выводит список неэкранированных путей служб (unquoted service paths), которые не находятся в System32/SysWow64, для внедрения PE-файла. Ссылка на ATT&CK | 3.5 |