You are here: Home » Поддержка доступа » PowerSploit

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

Ссылки на инструкции будут добавлены позже.

Близкие программы:

Рекомендуемые статьи: