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

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

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

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

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

Категории

Все категории
Loading categories
ShareHound — Python-инструмент для простого сопоставления прав доступа к сетевым ресурсам с OpenGraphs BloodHound | Kitploit
Инструменты/GitHubGitHub/p0dalirius/sharehound
РазведкаКартирование сетиАудит конфигурацииСбор информацииПост-эксплуатацияСетевая безопасностьТестирование на ПроникновениеRed Teaming
GitHubp0dalirius/sharehound

ShareHound

Python-инструмент для простого сопоставления прав доступа к сетевым ресурсам с OpenGraphs BloodHound

Репозиторий
3102769 дней назадПроверено Kitploit

Популярное

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

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

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

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

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

ShareHound: построение карты прав доступа к сетевым ресурсам с помощью BloodHound OpenGraph

Инструмент для отображения прав доступа к сетевым ресурсам в BloodHound OpenGraph.
Get BloodHound Enterprise Get BloodHound Community

Читайте сопутствующую статью в блоге: https://specterops.io/blog/2025/10/30/sharehound-an-opengraph-collector-for-network-shares/

Две реализации

В этом репозитории содержатся две реализации ShareHound. Они преследуют одну и ту же цель — генерацию BloodHound OpenGraph JSON из разрешений SMB-ресурсов, — но отличаются языком, средой выполнения и набором функций. Выбирайте ту, которая подходит под ваш рабочий процесс.

РеализацияПутьАвторДля чего подходит
PythonPython/Remi Gascou (@podalirius_) @ SpecterOpsЭталонная реализация; легко расширяется и скриптуется
GoGo/Javier Azofra @ Siemens HealthineersКрупномасштабное сканирование (60 000+ хостов), контрольные точки, статические бинарники

В каждом подкаталоге есть собственный README с полной информацией по установке, использованию и настройке:

  • Python/README.md
  • Go/README.md

Возможности (общие для обеих реализаций)

  • Построение карты сетевых ресурсов домена и их прав в формате BloodHound OpenGraph
  • Широко настраиваемое сопоставление правил с помощью языка ShareQL
  • Многопоточное обнаружение ресурсов (поиск в ширину)
  • Аутентификация NTLM, Kerberos и pass-the-hash
  • Поддержка диапазонов CIDR и файлов со списками целей

Дополнительные возможности реализации на Go

  • Потоковый вывод со сжатием ZIP (обрабатываются миллионы рёбер)
  • Возобновляемые сканирования с помощью файлов контрольных точек
  • Режим --effective-access-only для значительного уменьшения размера графа в крупных средах
  • Кроссплатформенные статические сборки (Linux, Windows, macOS)

Быстрый старт: Cypher-запросы

После импорта OpenGraph в BloodHound эти запросы покрывают наиболее частые потребности. Больше примеров — в README каждой реализации.

Поиск субъектов с полным доступом (Full Control) к ресурсу

root@kitploit:~
MATCH (p)-[r]->(s:NetworkShareSMB)
WHERE (p)-[:CanDelete]->(s)
  AND (p)-[:CanDsControlAccess]->(s)
  AND (p)-[:CanDsCreateChild]->(s)
  AND (p)-[:CanDsDeleteChild]->(s)
  AND (p)-[:CanDsDeleteTree]->(s)
  AND (p)-[:CanDsListContents]->(s)
  AND (p)-[:CanDsListObject]->(s)
  AND (p)-[:CanDsReadProperty]->(s)
  AND (p)-[:CanDsWriteExtendedProperties]->(s)
  AND (p)-[:CanDsWriteProperty]->(s)
  AND (p)-[:CanReadControl]->(s)
  AND (p)-[:CanWriteDacl]->(s)
  AND (p)-[:CanWriteOwner]->(s)
RETURN p,r,s

Поиск субъектов с доступом на запись к ресурсу

root@kitploit:~
MATCH x=(p)-[r:CanWriteDacl|CanWriteOwner|CanDsWriteProperty|CanDsWriteExtendedProperties]->(s:NetworkShareSMB)
RETURN x

Поиск файлов по имени (без учёта регистра)

root@kitploit:~
MATCH p=(h:NetworkShareHost)-[:HasNetworkShare]->(s:NetworkShareSMB)-[:Contains*0..]->(f:File)
WHERE toLower(f.name) = toLower("flag.txt")
RETURN p

Поиск файлов по расширению (без учёта регистра)

root@kitploit:~
MATCH p=(h:NetworkShareHost)-[:HasNetworkShare]->(s:NetworkShareSMB)-[:Contains*0..]->(f:File)
WHERE toLower(f.extension) = toLower(".vmdk")
RETURN p

Поиск файлов, которые субъект может фактически прочитать (только Go)

Рёбра CanEffectiveRead / CanEffectiveWrite / CanEffectiveExecute формируются реализацией на Go, когда один и тот же SID имеет соответствующие права как на уровне ресурса, так и на уровне NTFS — то есть реальный доступ, предоставляемый по SMB.

root@kitploit:~
MATCH p=(principal)-[:CanEffectiveRead]->(f:File)
RETURN p

Авторы

  • Оригинальный проект: Remi Gascou (@podalirius_) @ SpecterOps — p0dalirius/ShareHound
  • Реализация на Go: Javier Azofra @ Siemens Healthineers
  • Сопутствующая статья в блоге: ShareHound: An OpenGraph Collector for Network Shares

Участие в разработке

Принимаются pull request'ы для обеих реализаций. Откройте issue, если хотите сначала обсудить новую функцию.

Скачать инструмент