Coder Social home page Coder Social logo

heller / dnsrazzle Goto Github PK

View Code? Open in Web Editor NEW

This project forked from f8al/dnsrazzle

0.0 0.0 0.0 24.31 MB

A pure python tool for finding and comparing typo-squatting, bytesqatting, phishing attacks and brand impersonation

License: Apache License 2.0

Python 100.00%

dnsrazzle's Introduction

______  __    _ _______ ______   _______ _______ _______ ___     _______ 
|      ||  |  | |       |    _ | |   _   |       |       |   |   |       | 
|  _    |   |_| |  _____|   | || |  |_|  |____   |____   |   |   |    ___|
| | |   |       | |_____|   |_||_|       |____|  |____|  |   |   |   |___ 
| |_|   |  _    |_____  |    __  |       | ______| ______|   |___|    ___|
|       | | |   |_____| |   |  | |   _   | |_____| |_____|       |   |___ 
|______||_|  |__|_______|___|  |_|__| |__|_______|_______|_______|_______|

A pure python tool for finding and comparing typo-squatting, bitsqatting, and homoglyph domains for detecting brand impersonation

DNSRazzle

DNSrazzle's DNS fuzzing is an automated workflow for discovering potentially malicious domains targeting your organisation. This tool works by using dnstwists permutation engine to generate a large list of permutations based on a domain name you provide, and then checking if any of those permutations are in use. Additionally, it generates screenshots of the original domain, and the discovered web pages, and compares them using computer vision to see if they are part of an ongoing phishing attack or brand impersonation, and much more!

Version 1.5.x+ note

DNSRazzle no longer outputs all the discovered domains and their info and scores to console, it is now placed in a CSV file so you can start a DNSRazzle run and go do something else instead of having to babysit it to get the scores and DNS info.

Installation steps

$ git clone https://github.com/f8al/DNSRazzle
$ cd DNSRazzle
$ python3 -m venv .
$ source bin/activate
$ pip3 install --upgrade pip
$ pip3 install -r requirements.txt

Usage

DNSRazzle_usage

DNSRazzle supports single domain names, a comma seperated list of domain names, with the -d option, or a file containing a list of domain names, 1 per line with the -f option.

Basic command

$ python3 DNSRazzle.py -d acme.com -o outdir

Required arguments

-d DOMAIN, --domain DOMAIN   | Target domain or domain list.

                                        OR

-f FILE, --file FILE         | Provide a file containing a list of domains to run DNSrazzle on.

Optional arguments

-h, --help                                        | Show help message and exit
--browser                                         | specify what browser for seleium to use. Options: '(chrome|firefox)'

-D FILE, --dictionary FILE                        | Path to dictionary file to pass to DNSTwist to aid in domain permutation generation.

-g, --generate                                    | Do a dry run of DNSRazzle and just output permutated domain names

-n, --nmap                                        | Perform nmap scan on discovered domains

-o OUT_DIR, --out-directory OUT_DIR               | Absolute path of directory to output reports to. Will be created if doesn't exist

-r, --recon                                       | Create dnsrecon report on discovered domains.

-t THREADS, --threads THREADS                     | Number of threads to use in permutation checks, reverse lookups, forward lookups, brute force and SRV record enumeration.

--tld FILE                                        | Path to TLD dictionary file.

-u STRING, --useragent STRING                     | User-Agent STRING to send with HTTP requests (default: Mozilla/5.0 dnsrazzle/0.1.0)

--debug                                           | Print debug messages

Output

Upon successful execution of a base run without dnsrecon reports or nmap runs, there will be a folder and 2 files output,

  • screenshots - contains the screenshots of the discovered domains
    • screenshots/originals - contains the screenshots of the original reference domain
  • discovered-domains.csv - CSV file containing all of the discovered domains as well as all of the discovered information about them
  • domain_similarity.csv - CSV file containing the domain name and the similarity score

Known Compatibility Issues

As of version 1.5.3, thereare no known incompatibilities with Apple silicon. All utilized libraries now have pip installable ARM64 wheels or have compatible setup.py instruction sets

dnsrazzle's People

Contributors

dataminion avatar f8al avatar heller avatar jfn6030217 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.