Alat untuk bruteforce subdomain

Puredns adalah penyelesai domain cepat dan alat bruteforcing subdomain yang dapat secara akurat menyaring subdomain wildcard dan entri yang diracuni DNS.

Table Of Contents

Ini menggunakan massdns , penyelesai DNS rintisan yang kuat, untuk melakukan pencarian massal. Dengan bandwidth yang tepat dan daftar resolver publik yang baik, ia dapat menyelesaikan jutaan kueri hanya dalam beberapa menit. Sayangnya, hasil dari massdns hanya sebagus jawaban yang diberikan oleh resolver publik. Hasil sering tercemar oleh jawaban DNS yang salah dan positif palsu dari subdomain wildcard.

Puredns memecahkan ini dengan algoritma deteksi wildcard. Itu dapat menyaring wildcard berdasarkan jawaban DNS yang diperoleh dari satu set resolver tepercaya. Itu juga mencoba untuk mengatasi keracunan DNS dengan memvalidasi jawaban yang diperoleh menggunakan resolver tepercaya tersebut.

Fitur

  • Selesaikan ribuan permintaan DNS per detik menggunakan massdns dan daftar resolver DNS publik
  • Subdomain bruteforce menggunakan daftar kata dan domain root
  • Bersihkan wildcard dan deteksi root wildcard menggunakan jumlah kueri minimal untuk memastikan hasil yang tepat
  • Hindari penyeimbangan beban DNS selama deteksi wildcard
  • Validasi bahwa hasilnya bebas dari keracunan DNS dengan menjalankan daftar resolver yang dikenal dan tepercaya
  • Simpan daftar domain yang valid, akar subdomain wildcard, dan output massdns bersih yang hanya berisi entri yang valid
  • Baca daftar domain atau kata dari stdin dan aktifkan mode senyap untuk integrasi yang mudah ke saluran otomatisasi khusus

Installasi

Puredns membutuhkan massdns di mesin host. Jika jalur ke biner massdns ada dalam variabel lingkungan PATH, puredns akan bekerja di luar kotak.

Tempat yang baik untuk menyalin executable massdns adalah /usr/local/bin pada kebanyakan sistem.

Jika tidak, Anda perlu menentukan jalur ke file biner massdns menggunakan --bin argumen baris perintah.

Script juga memerlukan beberapa dependensi lain:

  • python3
  • python3-dnspython
  • pv

Untuk memastikan dependensi diinstal pada Ubuntu, Anda dapat menggunakan baris perintah berikut ini

sudo apt install -y python3 python3-dnspython pv

Setelah dependensi diinstal, cukup klon repositori untuk mulai menggunakan puredns.

git clone https://github.com/d3mondev/puredns.git

Penggunaan

Command line arguments:

puredns v1.0
Use massdns to accurately resolve a large amount of subdomains and extract wildcard domains.

Usage:
        puredns [--skip-validation] [--skip-wildcard-check] [--write-massdns <filename>]
                [--write-wildcards <filename>] [--write-wildcard-answers <filename>] [--help] <command> <args>

        Example:
                puredns [args] resolve domains.txt
                puredns [args] bruteforce wordlist.txt domain.com

        Commands:
                resolve <filename>              Resolve a list of domains
                bruteforce <wordlist> <domain>  Perform subdomain bruteforcing on a domain using a wordlist

        Optional:
                -b,  --bin <path>                       Path to massdns binary file

                -r,  --resolvers <filename>             Text file containing resolvers
                -rt, --resolvers-trusted <filename>     Text file containing trusted resolvers

                -l,  --limit                            Limit queries per second for public resolvers
                                                        (default: unlimited)
                -lt, --limit-trusted                    Limit queries per second for trusted resolvers
                                                        (default: 10 * number of trusted resolvers)

                -ss, --skip-sanitize                    Do not sanitize the list of domains to test
                                                        By default, domains are set to lowercase and
                                                        only valid characters are kept
                -sw, --skip-wildcard-check              Do no perform wildcard detection and filtering
                -sv, --skip-validation                  Do not validate massdns results using trusted resolvers

                -w,  --write <filename>                 Write valid domains to a file
                -wm, --write-massdns <filename>         Write massdns results to a file
                -ww, --write-wildcards <filename>       Write wildcard root subdomains to a file
                -wa, --write-answers <filename>         Write wildcard DNS answers to a file

                -h, --help 

Wildcarder

Wildcarder dapat mengekstrak subdomain root wildcard dan jawaban DNS-nya dari daftar domain. Ini digunakan sebagai bagian dari alur kerja puredns, tetapi juga dapat digunakan dengan sendirinya.

Command line arguments:

usage: wildcarder [-h] [--load-massdns-cache massdns.txt]
                  [--write-domains domains.txt] [--write-answers answers.txt]
                  [--version]
                  file

Find wildcards from a list of subdomains, optionally loading a massdns simple
text output file to reduce number of DNS queries.

positional arguments:
  file                  file containing list of subdomains

optional arguments:
  -h, --help            show this help message and exit
  --load-massdns-cache massdns.txt
                        load a DNS cache from a massdns output file (-oS)
  --write-domains domains.txt
                        write wildcard domains to file
  --write-answers answers.txt
                        write wildcard DNS answers to file
  --version             show program's version number and exit

Untuk cara penggunaan lebih lengkapnya silahkan baca README.md pada repository project PureDNS.