{"adoption": {"forks": 381, "observed_at": "2026-08-28T04:06:51.499312+00:00", "stars": 2437}, "canonical_url": "https://ross.abutalabs.com/products/bloodhoundpy", "card": {"archived": false, "artifact_type": "cli-tool", "description": "A Python based ingestor for BloodHound", "domain": ["security", "penetration-testing", "developer-tools"], "enriched": true, "function": ["security", "penetration-testing", "cli", "data-generation"], "health_score": 49, "homepage": null, "language": "Python", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["dirkjanm/BloodHound.py"], "name": "dirkjanm/BloodHound.py", "platform": ["python", "cli", "windows", "cross-platform"], "pushed_at": "2025-10-24T12:11:26+00:00", "repo": "dirkjanm/BloodHound.py", "stars": 2437, "tags": ["active-directory", "bloodhound", "ldap-enumeration", "ad-security-assessment", "impacket", "ingestor", "red-team", "command-line", "linux", "macos"], "topics": [], "urls": [], "use_cases": ["enumerate active directory users groups and computers from linux", "collect bloodhound data without running windows tools", "map active directory attack paths and privilege escalation routes", "gather domain trust and local admin information for pentest reports", "query ldap and remote computers to collect session data", "ingest AD data into bloodhound for graph analysis"], "what_it_is": "BloodHound.py is a Python-based data ingestor for BloodHound that enumerates Active Directory domains, collecting users, groups, computers, sessions, trusts, and local admin relationships. It is built on Impacket and provides a command-line tool (bloodhound-python) that outputs JSON data for BloodHound graph analysis.", "when_to_avoid": ["you are running BloodHound Community Edition and need the CE branch rather than legacy 4.2/4.3 support", "you need the full collection fidelity of SharpHound on a Windows domain-joined machine", "you are not working with Active Directory environments"], "when_to_choose": ["you need to run BloodHound data collection from Linux or macOS without Windows", "you want a scriptable, pip-installable alternative to SharpHound", "you are doing AD security assessments or red team engagements from a non-Windows host", "you need to authenticate with NT hashes, AES keys, or Kerberos tickets instead of passwords"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/bloodhoundpy", "repo": "dirkjanm/BloodHound.py", "role": "main", "score": 54}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:06:51.499312+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T02:30:59.881725+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "ba8b0b0d142a9d858b5d44a1b3f268bc09d0c01ccc4b03dda7fdb09923945c27", "fetched_at": "2026-08-28T04:06:51.499312+00:00", "kind": "readme", "missing": false, "url": "https://github.com/dirkjanm/BloodHound.py"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:06:51.499312+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T02:30:59.881725+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "ba8b0b0d142a9d858b5d44a1b3f268bc09d0c01ccc4b03dda7fdb09923945c27", "fetched_at": "2026-08-28T04:06:51.499312+00:00", "kind": "readme", "missing": false, "url": "https://github.com/dirkjanm/BloodHound.py"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T02:30:59.881725+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "ba8b0b0d142a9d858b5d44a1b3f268bc09d0c01ccc4b03dda7fdb09923945c27", "fetched_at": "2026-08-28T04:06:51.499312+00:00", "kind": "readme", "missing": false, "url": "https://github.com/dirkjanm/BloodHound.py"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:06:51.499312+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:06:51.499312+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:06:51.499312+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T02:30:59.881725+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "ba8b0b0d142a9d858b5d44a1b3f268bc09d0c01ccc4b03dda7fdb09923945c27", "fetched_at": "2026-08-28T04:06:51.499312+00:00", "kind": "readme", "missing": false, "url": "https://github.com/dirkjanm/BloodHound.py"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:06:51.499312+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:06:51.499312+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T02:30:59.881725+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "ba8b0b0d142a9d858b5d44a1b3f268bc09d0c01ccc4b03dda7fdb09923945c27", "fetched_at": "2026-08-28T04:06:51.499312+00:00", "kind": "readme", "missing": false, "url": "https://github.com/dirkjanm/BloodHound.py"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:06:51.499312+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:06:51.499312+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:06:51.499312+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T02:30:59.881725+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "ba8b0b0d142a9d858b5d44a1b3f268bc09d0c01ccc4b03dda7fdb09923945c27", "fetched_at": "2026-08-28T04:06:51.499312+00:00", "kind": "readme", "missing": false, "url": "https://github.com/dirkjanm/BloodHound.py"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:06:51.499312+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:06:51.499312+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T02:30:59.881725+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "ba8b0b0d142a9d858b5d44a1b3f268bc09d0c01ccc4b03dda7fdb09923945c27", "fetched_at": "2026-08-28T04:06:51.499312+00:00", "kind": "readme", "missing": false, "url": "https://github.com/dirkjanm/BloodHound.py"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T02:30:59.881725+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "ba8b0b0d142a9d858b5d44a1b3f268bc09d0c01ccc4b03dda7fdb09923945c27", "fetched_at": "2026-08-28T04:06:51.499312+00:00", "kind": "readme", "missing": false, "url": "https://github.com/dirkjanm/BloodHound.py"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T02:30:59.881725+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "ba8b0b0d142a9d858b5d44a1b3f268bc09d0c01ccc4b03dda7fdb09923945c27", "fetched_at": "2026-08-28T04:06:51.499312+00:00", "kind": "readme", "missing": false, "url": "https://github.com/dirkjanm/BloodHound.py"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T02:30:59.881725+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "ba8b0b0d142a9d858b5d44a1b3f268bc09d0c01ccc4b03dda7fdb09923945c27", "fetched_at": "2026-08-28T04:06:51.499312+00:00", "kind": "readme", "missing": false, "url": "https://github.com/dirkjanm/BloodHound.py"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 48, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["no_releases"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 3110, "days_push": 313, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 54, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}