
PowerSploit — платформа для пост-эксплуатации на PowerShell
Выполнение кода на целевой машине.
Invoke-DllInjectionВнедряет DLL в идентификатор процесса по вашему выбору.
Invoke-ReflectivePEInjectionРефлексивно загружает Windows PE-файл (DLL/EXE) в процесс PowerShell или рефлексивно внедряет DLL в удаленный процесс.
Invoke-ShellcodeВнедряет шелл-код в идентификатор процесса по вашему выбору или локально в PowerShell.
Invoke-WmiCommandВыполняет блок скрипта PowerShell на целевом компьютере и возвращает его форматированный вывод, используя WMI в качестве канала C2.
Изменение и/или подготовка скриптов к выполнению на скомпрометированной машине.
Out-EncodedCommandСжимает, кодирует в Base-64 и генерирует вывод командной строки для полезной нагрузки скрипта PowerShell.
Out-CompressedDllСжимает, кодирует в Base-64 и выводит сгенерированный код для загрузки управляемой DLL в память.
Out-EncryptedScriptШифрует текстовые файлы/скрипты.
Remove-CommentУдаляет комментарии и лишние пробелы из скрипта.
Добавление возможностей персистентности в скрипт PowerShell
New-UserPersistenceOptionНастройка параметров персистентности на уровне пользователя для функции Add-Persistence.
New-ElevatedPersistenceOptionНастройка параметров персистентности с повышенными привилегиями для функции Add-Persistence.
Add-PersistenceДобавление возможностей персистентности в скрипт.
Install-SSPУстановка DLL поставщика поддержки безопасности (SSP).
Get-SecurityPackagesПеречисление всех загруженных пакетов безопасности (SSP).
Антивирус бессилен против PowerShell!
Find-AVSignatureПоиск одно-байтовых сигнатур антивируса тем же методом, что и DSplit из "class101".
Все ваши данные принадлежат мне!
Invoke-TokenManipulationВыводит список доступных токенов входа. Создает процессы с токенами входа других пользователей и имитирует токены входа в текущем потоке.
Invoke-CredentialInjectionСоздание сеансов входа с использованием учетных данных в открытом виде без генерации подозрительного события 4648 (явный вход с учетными данными).
Invoke-NinjaCopyКопирует файл с раздела NTFS путем чтения необработанного тома и разбора структур NTFS.
Invoke-MimikatzРефлексивно загружает Mimikatz 2.0 в память с помощью PowerShell. Может использоваться для дампа учетных данных без записи чего-либо на диск. Может использоваться для любой функциональности, предоставляемой Mimikatz.
Get-KeystrokesЗаписывает нажатые клавиши, время и активное окно.
Get-GPPPasswordИзвлекает пароль в открытом виде и другую информацию для учетных записей, распространяемых через групповые политики.
Get-GPPAutologonИзвлекает имя пользователя и пароль для автоматического входа из registry.xml, если они распространяются через групповые политики.
Get-TimedScreenshotФункция, которая делает снимки экрана через регулярные промежутки времени и сохраняет их в папку.
New-VolumeShadowCopyСоздает новую теневую копию тома.
Get-VolumeShadowCopyВыводит пути устройств всех локальных теневых копий томов.
Mount-VolumeShadowCopyМонтирует теневую копию тома.
Remove-VolumeShadowCopyУдаляет теневую копию тома.
Get-VaultCredentialОтображает объекты учетных данных хранилища Windows, включая веб-учетные данные в открытом виде.
Out-MinidumpГенерирует полный дамп памяти процесса в формате minidump.
Get-MicrophoneAudioЗаписывает аудио с системного микрофона и сохраняет на диск.
Вызов общего хаоса с помощью PowerShell.
Set-MasterBootRecordДоказательство концепции, которое перезаписывает главную загрузочную запись сообщением по вашему выбору.
Set-CriticalProcessВызывает синий экран на вашей машине при выходе из PowerShell.
Инструменты для помощи в повышении привилегий на целевой системе.
PowerUpОбширный набор общих проверок на повышение привилегий, а также некоторые векторы атак.
Инструменты для помощи на этапе разведки при тестировании на проникновение.
Invoke-PortscanВыполняет простой сканер портов с использованием обычных сокетов, основанный (довольно) свободно на nmap.
Get-HttpStatusВозвращает HTTP-статусы и полный URL для указанных путей при предоставлении словаря.
Invoke-ReverseDnsLookupСканирует диапазон IP-адресов на наличие DNS-записей PTR.
PowerViewPowerView — это набор функций для перечисления и эксплуатации сети и домена Windows.
Коллекция словарей, используемых для помощи на этапе разведки при тестировании на проникновение. Словари взяты из следующих источников.
Проект PowerSploit и все отдельные скрипты распространяются по лицензии BSD 3-Clause, если не указано иное.
Для получения подробной информации об использовании обратитесь к встроенной справке в каждом отдельном скрипте.
Чтобы установить этот модуль, поместите всю папку PowerSploit в один из каталогов модулей. Пути к модулям 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 и хотите убрать назойливое предупреждение «Вы действительно хотите запускать скрипты, загруженные из Интернета?», после того как поместили PowerSploit в путь модуля, выполните следующую однострочную команду:
$Env:PSModulePath.Split(';') | % { if ( Test-Path (Join-Path $_ PowerSploit) ) {Get-ChildItem $_ -Recurse | Unblock-File} }
Для справки по каждой отдельной команде используйте Get-Help.
Примечание: Инструменты, содержащиеся в этом модуле, были разработаны таким образом, чтобы их можно было запускать по отдельности. Включение их в модуль просто повышает их портативность.
Нам нужны вклады! Если у вас есть отличная идея для PowerSploit, мы будем рады добавить её. Новые дополнения потребуют следующего:
Для всех текущих и будущих участников PowerSploit: прошу вас следовать этому руководству по стилю при написании скриптов/модулей.