dorkbot - Scan Google Search Results for Vulnerabilities

dorkbot is a modular command-line tool for performing vulnerability scans against a set of webpages returned by Google search queries in a given Google Custom Search Engine. It is broken up into two sets of modules:
  • Indexers - modules that issue a search query and return the results as targets
  • Scanners - modules that perform a vulnerability scan against each target

Targets are stored in a local database upon being indexed. Once scanned, any vulnerabilities found by the chosen scanner are written to a standard JSON report file. Indexing and scanning processes can be run separately or combined in a single command.

usage: [-h] [-c CONFIG] [-b BLACKLIST] [-d DATABASE] [-i INDEXER]
                  [-l] [-o INDEXER_OPTIONS] [-p SCANNER_OPTIONS] [-s SCANNER]
                  [-v VULNDIR]

optional arguments:
  -h, --help            show this help message and exit
  -c CONFIG, --config CONFIG
                        Configuration file
  -b BLACKLIST, --blacklist BLACKLIST
                        File containing (regex) patterns to blacklist from
  -d DATABASE, --database DATABASE
                        SQLite3 database file
  -i INDEXER, --indexer INDEXER
                        Indexer module to use
  -l, --list            List targets in database
                        Indexer-specific options (opt1=val1,opt2=val2,..)
                        Scanner-specific options (opt1=val1,opt2=val2,..)
  -s SCANNER, --scanner SCANNER
                        Scanner module to use
  -v VULNDIR, --vulndir VULNDIR
                        Directory to store vulnerability output reports

Python 2.7.x / 3.x (Linux / Mac OS / Windows) (requires python-dateutil)

  1. Download PhantomJS and either Arachni or Wapiti for your platform, and make sure you have installed any required dependencies for each.
  2. Extract each tool into the tools directory and rename the directory after the tool (dorkbot/tools/phantomjs/, dorkbot/tools/arachni/, etc).
  3. Create a Google Custom Search Engine and note the search engine ID, e.g. 012345678901234567891:abc12defg3h.
  4. Install python-dateutil (e.g.: pip install python-dateutil)
Example: use arachni to scan php pages that contain the string "id" in the url:
$ ./ -i google -o engine=012345678901234567891:abc12defg3h,query="filetype:php inurl:id" -s arachni

Indexer Modules

Search for targets in a Google Custom Search Engine (CSE) via custom search element.
Requirements: PhantomJS
  • engine - CSE id
  • query - search query
  • phantomjs_dir - phantomjs base directory containing bin/phantomjs (default: tools/phantomjs/)
  • domain - limit searches to specified domain

Search for targets in a Google Custom Search Engine (CSE) via JSON API.
Requirements: none
  • key - API key
  • engine - CSE id
  • query - search query
  • domain - limit searches to specified domain

Read targets from standard input, one per line.
Requirements: none
Options: none

Scanner Modules

Scan targets with Arachni command-line scanner.
Requirements: Arachni
  • arachni_dir - arachni base directory containing bin/arachni and bin/arachni_reporter (default: tools/arachni/)
  • report_dir - directory to save arachni scan binary and JSON scan report output (default: reports/)
  • checks - which vulnerability checks to perform (default: active/*,-csrf,-unvalidated_redirect,-source_code_disclosure,-response_splitting,-no_sql_injection_differential

Scan targets with Wapiti command-line scanner.
Requirements: Wapiti
  • wapiti_dir - wapiti base directory containing bin/wapiti (default: tools/wapiti/)
  • report_dir - directory to save wapiti JSON scan report (default: reports/)

dorkbot - Scan Google Search Results for Vulnerabilities dorkbot - Scan Google Search Results for Vulnerabilities Reviewed by Zion3R on 6:00 PM Rating: 5