PowerSploit
Описание PowerSploit
PowerSploit – это коллекция модулей Microsoft PowerShell, которые могут использоваться в помощь тестерам на проникновение во время фазы оценки. PowerSploit состоит из следующих модулей и скриптов:
CodeExecution (Выполнение кода)
Выполнение кода на целевой машине.
- Invoke-DllInjection. Инжект Dll в выбранный процесс с ID.
- Invoke-ReflectivePEInjection. Рефлекторно загружает файл Windows PE (DLL/EXE) в процесс powershell или рефлекторно делает инжект DLL в удалённый процесс.
- Invoke-Shellcode. Впрыскивает шеллкод в процесс ID по вашему выбору или локально внутри PowerShell.
- Invoke-WmiCommand. Выполняет PowerShell ScriptBlock на целевом компьютере и возвращает его отформатированный вывод используя WMI в качестве канала C2.
ScriptModification
Модифицирует и/или подготавливает скрипты для выполнения на взломанной машине.
- Out-EncodedCommand. Сжимает кодировки Base-64 и генерирует вывод командной строки для полезной нагрузки скрипта PowerShell.
- Out-CompressedDll. Сжимает основанные на Base-64 кодировки и выводит сгенерированный код для загрузки управляемой dll в память.
- Out-EncryptedScript. Шифрует текстовые файлы/скрипты.
- Remove-Comments. Убирает комментарии и лишние пробелы из скрипта.
Persistence
Добавление возможности сохранения состояния PowerShell скрипта
- New-UserPersistenceOption. Настройка параметров сохранения состояния пользовательского уровня для функции Add-Persistence.
- New-ElevatedPersistenceOption. Настройка опций повышенной стойкости для функции Add-Persistence.
- Add-Persistence. Добавление в скрипт сохранения состояния.
- Install-SSP. Устанавливает dll поставщика поддержки безопасности (SSP).
- Get-SecurityPackages. Перечисляет все загруженные пакеты безопасности (SSP).
AntivirusBypass (Обход антивирусов)
У антивирусов нет шансов против PowerShell!.
- Find-AVSignature. Находит один байт сигнатуры антивируса используя тот же метод, что и DSplit от "class101".
Exfiltration
Все ваши данные принадлежат мне!
- Invoke-TokenManipulation. Список доступных маркеров входа в систему. Создает процессы с другими пользовательскими маркерами войти в систему, и подражает маркеру входа в систему в текущем потоке.
- Invoke-CredentialInjection. Создание входов с открытыми учётными данными без вызова подозрения ID 4648 (Explicit Credential Logon).
- Invoke-NinjaCopy. Копирует файл из размеченного NTFS тома путём чтения сырых данных топа и разбора структуры NTFS.
- Invoke-Mimikatz. Используя PowerShell рефлекторно загружает в память Mimikatz 2.0. Может использоваться для снятия дампа учётных данных без записи чего-либо на диск. Может использоваться для любой функциональности, которую обеспечивает Mimikatz.
- Get-Keystrokes. Записывает нажатые клавиши, время и активные окна.
- Get-GPPPassword. Получает пароли в открытом тексте и другую информацию для аккаунтов пройденных через Предпочтения групповых политик (Group Policy Preferences).
- Get-TimedScreenshot. Функция, которая делает через регулярные интервалы скриншоты и сохраняет их в папке.
- New-VolumeShadowCopy. Создаёт новую теневую копию тома
- Get-VolumeShadowCopy. Составляет список путей устройств всех локальных теневых копий томов
- Mount-VolumeShadowCopy. Монтирование теневой копии тома.
- Remove-VolumeShadowCopy. Удаление теневой копии тома.
- Get-VaultCredential. Отображение объектов хранения учётных данных Windows, включая учётные данные веб в виде простого текста.
- Out-Minidump. Генерирует минидамп полной памяти процесса.
Mayhem (Причинение вреда)
Приводит к всеобщему погрому через PowerShell.
- Set-MasterBootRecord. Прототип кода, которые перезаписывает главную загрузочную запись любым сообщением по вашему выбору.
- Set-CriticalProcess. Вызывает на вашей машине голубой экран смерти при выходе PowerShell.
Privesc
Инструменты, помогающие повышать привилегии на целевой машине.
- PowerUp. Центр анализа и синтеза популярных проверок на повышение привилегий, а также некоторых векторов вооружения.
Recon (Разведка)
Инструменты для помощи на стадии разведки при тестировании на проникновение.
- Invoke-Portscan. Выполняет простое сканирование портов используя регулярные сокеты, примерно как nmap.
- Get-HttpStatus. Возвращает код статуса HTTP и полный URL для конкретных путей переданных в файле словаря.
- Invoke-ReverseDnsLookup. Сканирует диапазон IP адрес для записей DNS PTR.
- PowerView. PowerView – это серия функций, которые выполняют перечисление сетей и доменов Windows и эксплатацию
Recon\Dictionaries (Разведка\Словари)
Коллекция словарей, используемых в помощи на стадии разведки при тестировании на проникновение.
Домашняя страница: https://github.com/PowerShellMafia/PowerSploit
Автор: PowerShellMafia
Лицензия: BSD 3-Clause
Справка по PowerSploit
Описание, справка и примеры размещены в исходном коде скриптов в качестве комментариев.
Руководство по PowerSploit
Страница man отсутствует.
Для установки просто скопируйте весь каталог со скриптами. Путь PowerShell модулей по умолчанию перечислен в переменной окружения $Env:PSModulePath. Пользовательским путём модуля по умолчанию является: "$Env:HomeDrive$Env:HOMEPATH\Documents\WindowsPowerShell\Modules" Путь модулей по умолчанию уровня компьютера является: "$Env:windir\System32\WindowsPowerShell\v1.0\Modules"
Для использования этого модуля, наберите Import-Module PowerSploit
Для использования импортированных команд, наберите Get-Command -Module PowerSploit
Если вы работаете на PowerShell v3 и вы хотите удалить раздражающее предупреждение 'Do you really want to run scripts downloaded from the Internet' («вы действительно хотите запустить скрипты, загруженные из Интернета»), то после того, как вы разместили PowerSploit в ваш путь модуля, запустите следующую команду: $Env:PSModulePath.Split(';') | % { if ( Test-Path (Join-Path $_ PowerSploit) ) {Get-ChildItem $_ -Recurse | Unblock-File} }
Для справки используйте Get-Help.
Примечание: Инструменты, содержащиеся внутри этого модуля, были сделаны так, что они могут быть запущены индивидуально. Включение их в модуль просто ведёт к их портативности.
Примеры запуска PowerSploit
Получить информацию о компьютере и вывести её как объекты PowerShell:
Get-ComputerDetails
Получить информацию о компьютере и вывести её как сырой текст.
Get-ComputerDetails -ToString
Инжект 'evil.dll' в процесс ID 4274.
Invoke-DllInjection -ProcessID 4274 -Dll evil.dll
Установка PowerSploit
Программа предустановлена в Kali Linux.
Установка в BlackArch
Программа предустановлена в BlackArch.
Информация об установке в другие операционные системы будет добавлена позже.
Скриншоты PowerSploit
Это утилита командной строки.
Инструкции по PowerSploit
Ссылки на инструкции будут добавлены позже.
Comments are Closed