01100001 01100011 01110100 01101001 01110110 01100101 00100000 01100100 01101001 01110010 01100101 01100011 01110100 01101111 01110010 01111001 00100000 01110000 01100001 01110011 01110011 01110111 01101111 01110010 0110010001100001 01100011 01110100 01101001 01110110 01100101 00100000 01100100 01101001 01110010 01100101 01100011 01110100 01101111 01110010 01111001 00100000 01110000 01100001 01110011 01110011 01110111 01101111 01110010 01100100
01100001 01100011 01110100 01101001 01110110 01100101 00100000 01100100 01101001 01110010 01100101 01100011 01110100 01101111 01110010 01111001 00100000 01110000 01100001 01110011 01110011 01110111 01101111 01110010 0110010001100001 01100011 01110100 01101001 01110110 01100101 00100000 01100100 01101001 01110010 01100101 01100011 01110100 01101111 01110010 01111001 00100000 01110000 01100001 01110011 01110011 01110111 01101111 01110010 01100100
01100001 01100011 01110100 01101001 01110110 01100101 00100000 01100100 01101001 01110010 01100101 01100011 01110100 01101111 01110010 01111001 00100000 01110000 01100001 01110011 01110011 01110111 01101111 01110010 0110010001100001 01100011 01110100 01101001 01110110 01100101 00100000 01100100 01101001 01110010 01100101 01100011 01110100 01101111 01110010 01111001 00100000 01110000 01100001 01110011 01110011 01110111 01101111 01110010 01100100
01100001 01100011 01110100 01101001 01110110 01100101 00100000 01100100 01101001 01110010 01100101 01100011 01110100 01101111 01110010 01111001 00100000 01110000 01100001 01110011 01110011 01110111 01101111 01110010 0110010001100001 01100011 01110100 01101001 01110110 01100101 00100000 01100100 01101001 01110010 01100101 01100011 01110100 01101111 01110010 01111001 00100000 01110000 01100001 01110011 01110011 01110111 01101111 01110010 01100100
01100001 01100011 01110100 01101001 01110110 01100101 00100000 01100100 01101001 01110010 01100101 01100011 01110100 01101111 01110010 01111001 00100000 01110000 01100001 01110011 01110011 01110111 01101111 01110010 0110010001100001 01100011 01110100 01101001 01110110 01100101 00100000 01100100 01101001 01110010 01100101 01100011 01110100 01101111 01110010 01111001 00100000 01110000 01100001 01110011 01110011 01110111 01101111 01110010 01100100
01100001 01100011 01110100 01101001 01110110 01100101 00100000 01100100 01101001 01110010 01100101 01100011 01110100 01101111 01110010 01111001 00100000 01110000 01100001 01110011 01110011 01110111 01101111 01110010 0110010001100001 01100011 01110100 01101001 01110110 01100101 00100000 01100100 01101001 01110010 01100101 01100011 01110100 01101111 01110010 01111001 00100000 01110000 01100001 01110011 01110011 01110111 01101111 01110010 01100100
01100001 01100011 01110100 01101001 01110110 01100101 00100000 01100100 01101001 01110010 01100101 01100011 01110100 01101111 01110010 01111001 00100000 01110000 01100001 01110011 01110011 01110111 01101111 01110010 0110010001100001 01100011 01110100 01101001 01110110 01100101 00100000 01100100 01101001 01110010 01100101 01100011 01110100 01101111 01110010 01111001 00100000 01110000 01100001 01110011 01110011 01110111 01101111 01110010 01100100
01100001 01100011 01110100 01101001 01110110 01100101 00100000 01100100 01101001 01110010 01100101 01100011 01110100 01101111 01110010 01111001 00100000 01110000 01100001 01110011 01110011 01110111 01101111 01110010 0110010001100001 01100011 01110100 01101001 01110110 01100101 00100000 01100100 01101001 01110010 01100101 01100011 01110100 01101111 01110010 01111001 00100000 01110000 01100001 01110011 01110011 01110111 01101111 01110010 01100100
01100001 01100011 01110100 01101001 01110110 01100101 00100000 01100100 01101001 01110010 01100101 01100011 01110100 01101111 01110010 01111001 00100000 01110000 01100001 01110011 01110011 01110111 01101111 01110010 0110010001100001 01100011 01110100 01101001 01110110 01100101 00100000 01100100 01101001 01110010 01100101 01100011 01110100 01101111 01110010 01111001 00100000 01110000 01100001 01110011 01110011 01110111 01101111 01110010 01100100
01100001 01100011 01110100 01101001 01110110 01100101 00100000 01100100 01101001 01110010 01100101 01100011 01110100 01101111 01110010 01111001 00100000 01110000 01100001 01110011 01110011 01110111 01101111 01110010 0110010001100001 01100011 01110100 01101001 01110110 01100101 00100000 01100100 01101001 01110010 01100101 01100011 01110100 01101111 01110010 01111001 00100000 01110000 01100001 01110011 01110011 01110111 01101111 01110010 01100100
$ ./bounty --secure-domain
Bounty Logo

Bounty

Protect your domain's treasure - breach yourself before someone else does.

Where  password security meets  treasure protection

Protect Your Digital Treasure

Bounty is an Active Directory hardening tool that compares your users' password hashes against a database of cracked and leaked credentials. Like a vigilant guardian, Bounty proactively identifies weak or compromised accounts before they can be exploited. This empowers you to enforce a stronger authentication posture across your enterprise environment and stay ahead of potential threats.

Secure Your Domain's Most Valuable Assets

  • Secure Hash Comparison

    Like a seasoned treasure hunter consulting a trusted guide, Bounty securely checks your Active Directory password hashes against an encrypted database of known cracked credentials. It identifies vulnerable accounts without ever exposing your sensitive data, ensuring both security and insight.

  • Flexible Hash Processing Options

    Choose between sending NTLM hashes for comprehensive analysis or more secure hash digests for 1:1 matching. Full hashes undergo rigorous testing against specialized wordlists, rules, and masks to detect even low-entropy permutations of known compromised passwords, while digests offer maximum security with targeted matching.

  • Active Directory Integration

    Bounty integrates seamlessly with your Active Directory environment, allowing for targeted auditing of specific user groups, OUs, or the entire domain. This precision targeting ensures you can focus your security efforts where they matter most.

  • Password Hygiene Enforcement

    Beyond simple detection, Bounty provides comprehensive tools for enforcing resilient password policies, helping organizations implement and maintain strong password hygiene across their entire user base.

  • Complete Data Isolation

    Your company identity and usernames are fully decoupled from submitted hash data. Authentication occurs through a separate secure channel, and absolutely no organizational or user identifiers are ever attached to password hashes or digests. This architectural separation ensures your sensitive data cannot be linked back to your organization or specific users, providing an additional layer of security and privacy protection. Hashes exist in isolation—completely untraceable to their source.

  • Secure Authentication

    Bounty authentication credentials are never stored locally on your systems. The tool supports popular two-factor authentication methods, ensuring that only authorized security personnel can access the system and its findings. This zero-footprint authentication approach adds another layer of protection to your security operations.

  • Privileged Local Operation

    Bounty operates entirely on disk within your Domain Controller in a privileged folder, accessible only to local administrators. This ensures that regular domain users cannot access the tool or its sensitive operations, maintaining strict access control aligned with your existing security hierarchy.

The Kraken's Advantage

What sets Bounty apart is its unique approach to password security. While traditional tools focus on enforcing complex password policies, Bounty takes a proactive stance by identifying passwords that have already been compromised in the wild.

This approach provides a level of protection that traditional password policies alone cannot provide by addressing the fundamental weakness of complex passwords: their reuse or compromise in real-world breaches and red team engagements.

Technical Specifications

System Requirements

Domain Controller Access

  • Windows Server 2012 R2 or newer
  • Password expiration modification privileges
  • 8GB RAM minimum (16GB recommended)
  • 500MB+ storage for temporary audit storage

Security Features

  • Secure hash processing for maximum security
  • Encrypted storage of all sensitive data
  • Detailed audit logging of all operations
  • SIEM Integrations and Email Alerting

Hash Database

  • Regular updates from multiple breach and real-world sources
  • Over 18 billion cracked, unique hashes
  • Fast and secure bleeding edge protocols
  • Optimized search for rapid comparison

Use Cases

  • Regular security audits of Active Directory environments
  • Post-breach assessment to identify potentially compromised accounts
  • Compliance verification for password security requirements
  • Proactive security hardening before penetration testing

How Bounty Works

A secure, step-by-step process that protects your data while identifying vulnerabilities

1

Secure Job Creation

Administrator creates secure job on Domain Controller

2

Hash Extraction

Extract password hashes from NTDS.dit database

3

Smart Filtering

Filter users/groups, exclude krbtgt account

4

Data Anonymization

Decouple user info from hashes for anonymity

5

Hash Preparation

Prepare NTLM hashes or secure digests

6

Secure Transmission

Send anonymous hashes via encrypted channel

7

Local Encryption

Store random IDs in AES-256 encrypted database

8

Access Control

Require DPAPI access and unique nonce

9

Status Monitoring

Query job status until completion

10

Local Processing

Retrieve and compare results locally

11

Secure Storage

Save metadata to encrypted key-value store

Become a Beta Tester

Help shape the future of Active Directory security by joining our beta testing program.

Beta Tester Application
Fill out the form below to apply for our beta testing program.
$ ./contact_us.sh

Ready to Unleash the Kraken?

Contact us to discuss your offensive security needs and how our tools and expertise can enhance your security posture.