Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
Инструменты/GitHubGitHub/netspi/powerhuntshares
Анализ уязвимостейАудит конфигурацииСбор информацииСетевая безопасностьТестирование на Проникновение
GitHubnetspi/powerhuntshares

PowerHuntShares

Аудирует общие ресурсы SMB в Active Directory для инвентаризации, анализа и сообщения о чрезмерных привилегиях. Обнаруживает доступные системы, перечисляет ACL общих ресурсов, выявляет конфигурации с высоким риском и создает отчеты в формате HTML/CSV для приоритизации устранения.

Репозиторий
1.0k11510 месяцев назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

PowerHuntShares v2

PowerHuntShares — это инструмент PowerShell, предназначенный для помощи командам кибербезопасности и специалистам по пентесту в более точном выявлении, понимании, атаке и устранении общих сетевых папок SMB в средах Active Directory, которые они защищают. У каждого хакера есть история о злоупотреблении общими папками SMB, но это поверхность атаки, которую команды кибербезопасности всё ещё с трудом защищают. Данный проект направлен на создание открытого инструмента Proof-of-Concept для построения всеобъемлющей инвентаризации общих папок, использования статистики, диаграмм, графиков и языковых моделей для контекстуализации папок, обобщения связей, оценки рисков и приоритезации устранения уязвимостей.

Он поддерживает функции для:

  • Аутентификации с использованием текущего контекста пользователя, учётных данных или открытого текста имени пользователя/пароля.
  • Обнаружения доступных систем, связанных с доменом Active Directory, автоматически. Он также фильтрует компьютеры Active Directory на основе открытых портов.
  • Нацеливания на один компьютер, список компьютеров или обнаруженные компьютеры Active Directory (по умолчанию).
  • Сбора информации об ACL общих папок SMB с целевых компьютеров с помощью PowerShell.
  • Анализа собранных данных ACL общих папок.
  • Формирования сводных отчётов и подробных данных о чрезмерных привилегиях в форматах HTML и CSV.

Дополнительные возможности:

  • Отдельные функции LLM: https://github.com/NetSPI/PowerHuntShares/blob/main/Scripts/Invoke-FingerPrintShare.ps1
  • Отдельные парсеры паролей: https://github.com/NetSPI/PowerHuntShares/tree/main/Scripts/ConfigParsers

Ресурсы PowerHuntShares v2:

  • Блог v2: https://www.netspi.com/blog/technical-blog/network-pentesting/powerhuntshares-2-0-release/

Ресурсы PowerHuntShares v1:

  • Блог v1: https://www.netspi.com/blog/technical/network-penetration-testing/network-share-permissions-powerhuntshares/
  • Видео презентации v1: https://www.youtube.com/watch?v=TtwyQchCz6E
  • Слайды презентации v1: https://github.com/NetSPI/PowerHuntShares/blob/main/Presentations/SO-CON_2025_Sutherland_Hunting_SMB_Shares_Final.pdf

Словарь

PowerHuntShares инвентаризирует ACL общих папок SMB, настроенные с «чрезмерными привилегиями», и выделяет ACL «высокого риска». Ниже описано, что под этим подразумевается в данном контексте.

Чрезмерные привилегии
Чрезмерные права на чтение и запись в общую папку определены как любой ACL сетевой папки, содержащий явную ACE (запись управления доступом) для групп «Everyone», «Authenticated Users», «BUILTIN\Users», «Domain Users» или «Domain Computers». Все они предоставляют пользователям домена доступ к затронутым общим папкам из-за проблем с наследованием прав. Обратите внимание, что существует параметр, позволяющий операторам добавлять собственные целевые группы.
Ниже приведена дополнительная информация:

  • Everyone — это прямая ссылка, применяемая как к неаутентифицированным, так и к аутентифицированным пользователям. Обычно для доступа к таким ресурсам требуется только нулевая сессия.
  • BUILTIN\Users включает Authenticated Users
  • Authenticated Users включает Domain Users на компьютерах, присоединённых к домену. Вот почему Domain Users могут получить доступ к общей папке, если разрешения на папку назначены группе «BUILTIN\Users».
  • Domain Users — это прямая ссылка
  • Domain Users также могут создавать до 10 учётных записей компьютеров по умолчанию, которые помещаются в группу Domain Computers
  • Domain Users, имеющие локальный административный доступ к компьютеру, присоединённому к домену, также могут выдавать себя за учётную запись компьютера.

Пожалуйста, обратите внимание: разрешения на общую папку могут быть переопределены разрешениями NTFS. Также имейте в виду, что тестирование исключало имена общих папок, содержащие следующие ключевые слова:

root@kitploit:~
print$, prnproc$, printer, netlogon, and sysvol

Общие папки высокого риска
В контексте этого отчёта общие папки высокого риска определены как папки, предоставляющие несанкционированный удалённый доступ к системе или приложению. По умолчанию к ним относятся папки

root@kitploit:~
 wwwroot, inetpub, c$ и admin$   
Однако могут существовать и другие точки уязвимости, которые не указаны дополнительно.

Команды настройки

Ниже приведён список команд, которые можно использовать для загрузки PowerHuntShares в текущий сеанс PowerShell. Учтите, что одну из них необходимо выполнять каждый раз при запуске PowerShell. Это не постоянно.

root@kitploit:~
# Обход ограничений политики выполнения
Set-ExecutionPolicy -Scope Process Bypass

# Импорт модуля, находящегося в текущем каталоге
Import-Module .\PowerHuntShares.psm1

или

# Понижение уровня SSL для поддержки подключения к github
[System.Net.ServicePointManager]::ServerCertificateValidationCallback = {$true}
[Net.ServicePointManager]::SecurityProtocol =[Net.SecurityProtocolType]::Tls12

# Загрузка и загрузка PowerHuntShares.psm1 в память
IEX(New-Object System.Net.WebClient).DownloadString("https://raw.githubusercontent.com/NetSPI/PowerHuntShares/main/PowerHuntShares.psm1")

Примеры команд

Важное примечание: все команды следует выполнять от имени непривилегированного пользователя домена.

root@kitploit:~
.ПРИМЕР 1: Запуск с компьютера домена. По умолчанию выполняется обнаружение компьютеров Active Directory.
PS C:\temp\test> Invoke-HuntSMBShares -Threads 100 -OutputDirectory c:\temp\test 

.ПРИМЕР 2: Запуск с компьютера домена с альтернативными учётными данными домена. По умолчанию выполняется обнаружение компьютеров Active Directory.
PS C:\temp\test> Invoke-HuntSMBShares -Threads 100 -OutputDirectory c:\temp\test -Credential domain\user

.ПРИМЕР 3: Запуск с компьютера домена как текущий пользователь. Целевые хосты указаны в файле. По одному на строку.
PS C:\temp\test> Invoke-HuntSMBShares -Threads 100 -OutputDirectory c:\temp\test  -HostFile c:\temp\hosts.txt      

.ПРИМЕР 4: Запуск с компьютера не из домена с учётными данными. По умолчанию выполняется обнаружение компьютеров Active Directory.
C:\temp\test> runas /netonly /user:domain\user PowerShell.exe
PS C:\temp\test> Import-Module PowerHuntShares.psm1
PS C:\temp\test> Invoke-HuntSMBShares -Threads 100 -RunSpaceTimeout 10 -OutputDirectory c:\folder\ -DomainController 10.1.1.1 -Credential domain\user 
root@kitploit:~
===============================================================
PowerHuntShares
===============================================================
 Эта функция автоматизирует следующие задачи:     

 o Определение текущего домена компьютера
 o Перечисление компьютеров домена        
 o Фильтрация компьютеров, отвечающих на ping-запросы          
 o Фильтрация компьютеров, у которых открыт и доступен TCP 445  
 o Перечисление общих папок SMB 
 o Перечисление разрешений общих папок SMB   
 o Выявление папок с потенциально чрезмерными привилегиями       
 o Выявление папок, предоставляющих доступ на чтение и запись           
 o Выявление папок высокого риска
 o Выявление общих владельцев, имён и списков каталогов   
 o Генерация временных шкал создания, последней записи и последнего доступа
 o Генерация отчёта в формате HTML и подробных файлов CSV         

 Примечание: В больших средах выполнение может занять часы.       
---------------------------------------------------------------
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---------------------------------------------------------------
ОБНАРУЖЕНИЕ ПАПОК      
---------------------------------------------------------------
[*][03/01/2021 09:35] Начало сканирования
[*][03/01/2021 09:35] Каталог вывода: c:\temp\smbshares\SmbShareHunt-03012021093504
[*][03/01/2021 09:35] Успешное подключение к контроллеру домена: dc1.demo.local
[*][03/01/2021 09:35] Выполнение LDAP-запроса для компьютеров, связанных с доменом demo.local
[*][03/01/2021 09:35] - Найдено 245 компьютеров
[*][03/01/2021 09:35] Пингование 245 компьютеров
[*][03/01/2021 09:35] - 55 компьютеров ответили на ping-запросы.
[*][03/01/2021 09:35] Проверка открытости TCP-порта 445 на 55 компьютерах
[*][03/01/2021 09:36] - 49 компьютеров имеют открытый TCP-порт 445.
[*][03/01/2021 09:36] Получение списка общих папок SMB с 49 компьютеров
[*][03/01/2021 09:36] - Найдено 217 общих папок SMB.
[*][03/01/2021 09:36] Получение разрешений от 217 общих папок SMB
[*][03/01/2021 09:37] - Перечислено 374 разрешений общих папок.
[*][03/01/2021 09:37] Получение списков каталогов с 33 общих папок SMB
[*][03/01/2021 09:37] - Нацеливание на до 3 уровней вложенных каталогов
[*][03/01/2021 09:37] - Перечислено 563 файла и папки.
[*][03/01/2021 09:37] Выявление потенциально чрезмерных разрешений общих папок
[*][03/01/2021 09:37] - Найдено 33 потенциально чрезмерных привилегий на 12 системах.
[*][03/01/2021 09:37] Сканирование завершено
---------------------------------------------------------------
АНАЛИЗ ПАПОК      
---------------------------------------------------------------
[*][03/01/2021 09:37] Начало анализа
[*][03/01/2021 09:37] - 14 общих папок доступны для чтения на 12 системах.
[*][03/01/2021 09:37] - 1 общая папка доступна для записи на 1 системе.
[*][03/01/2021 09:37] - 46 общих папок считаются нестандартными на 32 системах.
[*][03/01/2021 09:37] - 0 общих папок считаются высокорискованными на 0 системах.
[*][03/01/2021 09:37] - Определены 5 основных владельцев чрезмерных папок.
[*][03/01/2021 09:37] - Определены 5 основных групп папок.
[*][03/01/2021 09:37] - Определены 5 основных имён папок.
[*][03/01/2021 09:37] - Определены папки, созданные за последние 90 дней.
[*][03/01/2021 09:37] - Определены папки, к которым обращались за последние 90 дней.
[*][03/01/2021 09:37] - Определены папки, изменённые за последние 90 дней.
[*][03/01/2021 09:37] Анализ завершён
---------------------------------------------------------------
СВОДКА ОТЧЁТА ПО ПАПКАМ      
---------------------------------------------------------------
[*][03/01/2021 09:37] Домен: demo.local
[*][03/01/2021 09:37] Время начала: 03/01/2021 09:35:04
[*][03/01/2021 09:37] Время окончания: 03/01/2021 09:37:27
[*][03/01/2021 09:37] Время выполнения: 00:02:23.2759086
[*][03/01/2021 09:37] 
[*][03/01/2021 09:37] СВОДКА ПО КОМПЬЮТЕРАМ
[*][03/01/2021 09:37] - Найдено 245 компьютеров домена.
[*][03/01/2021 09:37] - 55 (22.45%) компьютеров домена ответили на ping.
[*][03/01/2021 09:37] - 49 (20.00%) компьютеров домена имели доступный TCP-порт 445.
[*][03/01/2021 09:37] - 32 (13.06%) компьютера домена имели нестандартные общие папки.
[*][03/01/2021 09:37] - 12 (4.90%) компьютеров домена имели папки с потенциально чрезмерными привилегиями.
[*][03/01/2021 09:37] - 12 (4.90%) компьютеров домена имели папки, предоставляющие доступ на ЧТЕНИЕ.
[*][03/01/2021 09:37] - 1 (0.41%) компьютер домена имел папки, предоставляющие доступ на ЗАПИСЬ.
[*][03/01/2021 09:37] - 0 (0.00%) компьютеров домена имели папки ВЫСОКОГО РИСКА.
[*][03/01/2021 09:37] 
[*][03/01/2021 09:37] СВОДКА ПО ОБЩИМ ПАПКАМ
[*][03/01/2021 09:37] - Найдено 217 общих папок. Ожидается минимум 98 папок
[*][03/01/2021 09:37]   потому что 49 систем имели открытые порты, и обычно есть две стандартные папки.
[*][03/01/2021 09:37] - 46 (21.20%) папок на 32 системах были нестандартными.
[*][03/01/2021 09:37] - 14 (6.45%) папок на 12 системах имеют 33 потенциально чрезмерных ACL.
[*][03/01/2021 09:37] - 14 (6.45%) папок на 12 системах предоставляют доступ на ЧТЕНИЕ.
[*][03/01/2021 09:37] - 1 (0.46%) папка на 1 системе предоставляет доступ на ЗАПИСЬ.
[*][03/01/2021 09:37] - 0 (0.00%) папок на 0 системах считаются ВЫСОКОГО РИСКА.
[*][03/01/2021 09:37] 
[*][03/01/2021 09:37] СВОДКА ПО ACL ОБЩИХ ПАПОК
[*][03/01/2021 09:37] - Найдено 374 ACL.
[*][03/01/2021 09:37] - 374 (100.00%) ACL были связаны с нестандартными папками.
[*][03/01/2021 09:37] - 33 (8.82%) ACL оказались потенциально чрезмерными.
[*][03/01/2021 09:37] - 32 (8.56%) ACL предоставляли доступ на ЧТЕНИЕ.
[*][03/01/2021 09:37] - 1 (0.27%) ACL предоставлял доступ на ЗАПИСЬ.
[*][03/01/2021 09:37] - 0 (0.00%) ACL связаны с именами папок ВЫСОКОГО РИСКА.
[*][03/01/2021 09:37] 
[*][03/01/2021 09:37] - 5 наиболее распространённых имён общих папок:
[*][03/01/2021 09:37] - 9 из 14 (64.29%) обнаруженных папок связаны с 5 основными именами.
[*][03/01/2021 09:37]   - 4 backup
[*][03/01/2021 09:37]   - 2 ssms
[*][03/01/2021 09:37]   - 1 test2
[*][03/01/2021 09:37]   - 1 test1
[*][03/01/2021 09:37]   - 1 users
[*] -----------------------------------------------

Примеры HTML-отчётов

Страница сводного отчёта

Страница сводного отчёта

Страница интересных файлов

Страница интересных файлов

Страница извлечённых секретов

Страница извлечённых секретов

Страница обозревателя ShareGraph

Страница обозревателя ShareGraph

Авторство

Автор
Scott Sutherland (@_nullbind)

Использованный открытый код
Эти люди написали открытый код, который использовался в этом проекте. Большое спасибо им и их работе!

ИмяСайт
Will Schroeder (@harmj0y)https://github.com/PowerShellMafia/PowerSploit/blob/master/Recon/PowerView.ps1

Лицензия
BSD 3-Clause

Задачи

Ожидающие исправления/ошибки

  • Обновить код для обхода Defender
  • Функции извлечения паролей в настоящее время возвращают «валидную» запись, когда поля найдены в файле, но имеют пустые значения. Также некоторые каталоги обрабатываются как файлы.
  • ACL, связанные с Builtin\Users, иногда отображаются как LocalSystem при неопределённых условиях и, как следствие, не появляются в экспорте чрезмерных привилегий. – Спасибо Sam!

Ожидающие функции

  • Добавить версию PowerHuntShares в вывод HTML-отчёта
  • Добавить опции отказа от перечисления интересных файлов и парсинга секретов.
  • Добавить возможность указания дополнительных групп для нацеливания
  • Добавить поиск по содержимому файлов.
  • Добавить опцию DontExcludePrintShares
  • Добавить автоматическое нацеливание на группы, содержащие большой процент пользователей; свыше 70% (сделать настраиваемым). Добавить как опцию.
  • Добавить конфигурацию: netlogon и sysvol: при использовании Windows 10 может быть отказано в доступе, если не настроен параметр ниже. Автоматически проверять это и пытаться изменить, если привилегии находятся на нужном уровне. gpedit.msc, перейти по пути Computer -> Administrative Templates -> Network -> Network Provider -> Hardened UNC Paths, включить политику и нажать кнопку «Show». Ввести имя сервера (* для всех серверов) в «Value name» и ввести следующий текст «RequireMutualAuthentication=0,RequireIntegrity=0,RequirePrivacy=0» без кавычек в поле «Value».
  • Добавить данные активных сеансов для выявления потенциальных владельцев/пользователей папки.
  • Получить SPN и описания компьютеров/описания SPN-учётных записей для выявления владельца/бизнес-подразделения.
  • Создать файл импорта для BloodHound / ребро (высокорискованная папка)
  • Добавить лучшую поддержку IPv6, IPv6-адреса не отображаются в сводке подсетей
  • Динамическое выявление всплесков создания высокорискованных папок/общих группировок. Необходимо лучше обобщать подтверждающие детали, помимо временной шкалы. Для каждого инсайта по данным добавить среднее количество созданных папок для группировки инсайтов по годам/месяцам (для хэша папки / имени и т.д.) и увеличение в месяц/год, когда происходит всплеск. (попытка предоставить некоторый исторический контекст); возможно, также перечислить наиболее распространённые нестандартные каталоги, используемые каждым из них. Добавление «даты первого появления» также возможно. (в альфе)
  • Динамическое выявление периодичности создания, изменения и доступа к папкам среди групп папок с одинаковым именем и высоким уровнем сходства.
  • Добавить отображение разрешений общих папок (вместе с уже отображаемыми разрешениями NTFS) и результирующего доступа (наиболее строгие ограничения)
  • Добавить глубину, флаг файл/каталог
  • Очень много других вещей.

Визуальный обзор PowerHuntShares

Ниже представлено визуальное описание того, как работает PowerHuntShares, какие данные он извлекает и как представляет практические результаты.

Панель управления

Предоставляет общий вид обнаруженных общих папок и связанных рисков.

Панель управления

Сгенерированные файлы

Автоматически созданные отчёты для удобного анализа и офлайн-просмотра.

Сгенерированные файлы

Имена общих папок

Детальное отображение имён общих папок и их свойств.

Имена общих папок – Пример 1 Имена общих папок – Пример 2 Имена общих папок – Пример 3

Рекомендации по устранению

Предлагаемые шаги по устранению выявленных рисков.

Устранение

Представление временной шкалы

Визуализация обнаруженных проблем во времени.

Временная шкала

Сравнение с аналогами

Сравнение обнаруженных общих папок и разрешений на разных системах.

Сравнение с аналогами

Группы папок

Группировка связанных папок и общих ресурсов для лучшего контекста.

Группы папок

Уровень раскрытия по отпечаткам активов

Показывает раскрытие активов на основе обнаруженных отпечатков.

Уровень раскрытия по отпечаткам активов

Граф общих папок

Визуальное представление обнаруженных общих папок и связей.

Граф общих папок

Извлечённые секреты

Подсвечивает конфиденциальную информацию и секреты, обнаруженные во время сканирования.

Извлечённые секреты

Интересные файлы

Перечисляет потенциально интересные или ценные файлы, найденные в общих папках.

Интересные файлы

Раскрытие данных

Подсвечивает области, где могут быть раскрыты конфиденциальные данные.

Раскрытие данных

Уровень риска

Комплексные представления уровня риска с детальным анализом.

Уровень риска Уровень риска 2

Скачать инструмент
Warren F (@pscookiemonster)https://github.com/RamblingCookieMonster/Invoke-Parallel
Luben Kirovhttp://www.gi-architects.co.uk/2016/02/powershell-check-if-ip-or-subnet-matchesfits/