Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
ShareHound — 네트워크 공유의 접근 권한을 BloodHound OpenGraphs로 쉽게 매핑하는 Python 도구 | Kitploit
도구/GitHubGitHub/p0dalirius/sharehound
ReconnaissanceNetwork MappingConfiguration AuditingInformation GatheringPost-ExploitationNetwork SecurityPenetration TestingRed Teaming
GitHubp0dalirius/sharehound

ShareHound

네트워크 공유의 접근 권한을 BloodHound OpenGraphs로 쉽게 매핑하는 Python 도구

저장소 보기
310273개월 전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의 두 가지 구현이 포함되어 있습니다. 두 구현은 SMB 공유 권한에서 BloodHound OpenGraph JSON을 생성한다는 동일한 목표를 공유하지만, 언어, 런타임 및 기능 세트에서 차이가 있습니다. 워크플로에 맞는 것을 선택하세요.

구현경로저자적합한 용도
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

공유에 대한 쓰기(Write) 액세스 권한이 있는 보안 주체 찾기

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 전용)

Go 구현은 동일한 SID가 공유 및 NTFS 수준 모두에서 일치하는 권한을 가질 때(즉, SMB를 통해 실제로 부여된 액세스) CanEffectiveRead / CanEffectiveWrite / CanEffectiveExecute 엣지를 생성합니다.

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

기여

두 구현 모두에 대한 풀 리퀘스트를 환영합니다. 먼저 새 기능을 논의하고 싶다면 이슈를 열어 주세요.

도구 다운로드