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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
도구/GitHubGitHub/xmcyber/machound
Information GatheringPenetration TestingRed Teaming
GitHubxmcyber/machound

MacHound

BloodHound를 확장하여 macOS 호스트에서 Active Directory 관계를 수집 및 처리하고, 로그인된 사용자, 관리자 그룹, SSH/VNC/AppleEvent 접근 에지를 공격 경로 매핑에 포함합니다.

저장소 보기
991725년 전Kitploit 검토 완료

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

MacHound란?

MacHound는 Bloodhound 감사 도구의 확장으로, MacOS 호스트에서 Active Directory 관계를 수집하고 주입하는 기능을 제공합니다. MacHound는 Mac 시스템에 로그인한 사용자와 관리 그룹 구성원에 대한 정보를 수집하여 Bloodhound 데이터베이스에 주입합니다. HasSession 및 AdminTo 에지 외에도 MacHound는 Bloodhound 데이터베이스에 세 가지 새로운 에지를 추가합니다:

  • CanSSH - 호스트에 SSH 접속이 허용된 엔터티
  • CanVNC - 호스트에 VNC 접속이 허용된 엔터티
  • CanAE - 호스트에서 AppleEvent 스크립트 실행이 허용된 엔터티

MacHound에 대한 자세한 내용은 소개 게시물을 참조하세요.

데이터 수집

로그인한 사용자 (HasSession)

MacHound는 utmpx API를 사용하여 현재 활성 사용자를 쿼리하고 OpenDirectory 및 멤버십 API를 사용하여 Active Directory 사용자를 검증합니다.

관리 그룹

MacHound는 다음 로컬 관리 그룹의 Active Directory 멤버를 수집합니다:

admin

로컬 관리 그룹으로, 루트 작업을 허용합니다.

com.apple.access_ssh

이 로컬 그룹의 멤버는 원격 로그인 서비스(SSH)에 접근할 수 있습니다.

com.apple.remote_ae

이 로컬 그룹의 멤버는 AppleEvent 스크립트를 원격으로 실행할 수 있습니다.

com.apple.access_screensharing

이 로컬 그룹의 멤버는 화면 공유 서비스(VNC)에 접근할 수 있습니다.

구성 요소

MacHound는 수집기와 주입기 두 가지 주요 구성 요소로 나뉩니다.

수집기

MacHound 수집기는 Active Directory에 가입된 MacOS 호스트에서 로컬로 실행되는 Python3.7 스크립트입니다. 수집기는 로컬 OpenDirectory와 Active Directory에서 권한 있는 사용자 및 그룹에 대한 정보를 쿼리합니다. 실행 결과는 수집된 모든 정보를 포함하는 JSON 파일입니다.

주입기

MacHound 주입기는 출력 JSON 파일(호스트당 하나)을 파싱하고 neo4j 데이터베이스에 연결하여 에지를 데이터베이스에 삽입하는 Python3.7 스크립트입니다. 주입기는 Python용 neo4j 라이브러리를 사용하여 neo4j 데이터베이스에 정보를 쿼리하고 저장합니다. 주입기는 neo4j 데이터베이스에 TCP 접근이 가능한 호스트에서 실행되어야 합니다.

시작하기

요구 사항

MacHound는 Python3.7이 필요합니다. 주입기는 Python3.7용 neo4j 라이브러리가 필요합니다. ‏

수집기

배포

수집기는 Mac에서 로컬로 배포 및 실행되어야 합니다. 출력은 로컬에 저장되며 주입기를 실행 중인 호스트로 전송해야 합니다. 수집기는 Python3.7의 내장 라이브러리에 의존하며 추가 설치가 필요하지 않습니다. MacHound는 py2app 라이브러리를 사용하여 애플리케이션으로 컴파일하여 배포를 용이하게 할 수 있습니다.

사용법

수집기는 기본적으로 모든 정보를 쿼리하며 인수를 받지 않고 출력 파일을 ./output.json에 기록합니다. 수집기는 루트 사용자로 실행되어야 합니다.

root@kitploit:~
collector.py -o <output_file> -c <Admin,CanSSH,CanVNC,CanAE,HasSession> [-v] [-l log_file_path]

주입기

주입기는 Bloodhound의 neo4j 데이터베이스에 직접 TCP 연결이 가능한 호스트(가급적 보안 위험을 피하기 위해 neo4j 데이터베이스 서버 자체)에 배포되어야 합니다. 주입기에는 Python용 neo4j 드라이버 설치가 필요합니다(요구 사항 파일 참조).

root@kitploit:~
ingestor.py <url_to_neo4j> -u <username> -p <password> -i <json_folder>

라이선스

MacHound는 GPL-3.0 라이선스 하에 배포됩니다. 자세한 내용은 LICENSE.md를 참조하세요.

문의하기

질문, 제안, 버그 보고가 있으시면 [email protected]으로 언제든지 연락해 주세요.

도구 다운로드