GithubHelp home page GithubHelp logo

solomonsklash / chomp-scan Goto Github PK

View Code? Open in Web Editor NEW
392.0 20.0 76.0 6.44 MB

A scripted pipeline of tools to streamline the bug bounty/penetration test reconnaissance phase, so you can focus on chomping bugs.

Home Page: https://www.solomonsklash.io/chomp-scan-update.html

License: GNU General Public License v3.0

Shell 100.00%

chomp-scan's Introduction

Chomp Scan

GitHub release GitHub Github language GitHub issues Github contributors

A scripted pipeline of tools to simplify the bug bounty/penetration test reconnaissance phase, so you can focus on chomping bugs.

If you've found any bugs using this tool, please let me know!

Scope

Chomp Scan is a Bash script that chains together the fastest and most effective tools (in my opinion/experience) for doing the long and sometimes tedious process of recon. No more looking for word lists and trying to remember when you started a scan and where the output is. Chomp Scan can focus on a list of potentially interesting subdomains, letting you save time and focus on high-value targets. It can even notify you via Notica when it's done running!

Chomp Scan now integrates Notica, which allows you to receive a notification when the script finishes. Simply visit Notica and get a unique URL parameter, e.g. notica.us/?xxxxxxxx. Pass the parameter to Chomp Scan via the -n flag, keep the Notica page open in a browser tab on your computer or phone, and you will receive a message when Chomp Scan has finished running. No more constantly checking/forgetting to check those long running scans.

A list of interesting words is included, such as dev, test, uat, staging, etc., and domains containing those terms are flagged. This way you can focus on the interesting domains first if you wish. This list can be customized to suit your own needs, or replaced with a different file via the -X flag.

Chomp Scan runs in multiple modes. A new Configuration File is the recommended way to run scans, as it allows the most granular control of tools and settings. A standard CLI mode is included, which functions the same as any other CLI tool. A guided interactive mode is available, as well as a non-interactive mode, useful if you do not want to lookup parameters or worry about setting multiple arguments.

New Chomp Scan now includes rescope. Rescope will parse all resolved domains discovered by Chomp Scan and generate a JSON scope file that can be imported into Burp Suite. This option can be enabled by setting the ENABLE_RESCOPE variable in the configuration file or by passing the -r flag via the command line.

Please see the Wiki for detailed documentation.

Note: Chomp Scan is in active development, and new/different tools will be added as I come across them. Pull requests and comments welcome!

Scanning Phases

Subdomain Discovery (3 different sized wordlists)

Screenshots (optional)

Port Scanning (optional)

Information Gathering (optional) (4 different sized wordlists)

Content Discovery (optional) (4 different sized wordlists)

Configuration File

Chomp Scan now features a configuration file option that provides more granular control over which tools are run and is less cumbersome than passing a large number of CLI arguments. It is the recommended way to run Chomp Scan. It can be used by passing the -L flag. An example config file is included in this repo as a template, and complete config file details are available at the Configuration File wiki page.

Wordlists

A variety of wordlists are used, both for subdomain bruteforcing and content discovery. Daniel Miessler's Seclists are used heavily, as well as Jason Haddix's lists. Different wordlists can be used by passing in a custom wordlist or using one of the built-in named argument lists. See the Wordlist wiki page for more details.

Installation

Clone this repo and run the included installer.sh script, optionally including a custom file path to install necessary tools to. Make sure to run source ~/.profile in your terminal after running the installer in order to add the Go binary path to your $PATH variable. Then run Chomp Scan. If you are using zsh, fish, or some other shell, make sure that ~/go/bin is in your path. For more details, see the Installation wiki page.

TLDR: root@kali:~/chomp-scan# ./installer.sh [/some/optional/install/path]

Usage

For complete usage information, see the Usage page of the wiki. Please note that the configuration is the recommended and most powerful way to run Chomp Scan.

Chomp Scan always runs subdomain enumeration, thus a domain is required via the -u flag. The domain should not contain a scheme, e.g. http:// or https://. By default, HTTPS is always used. This can be changed to HTTP by passing the -H flag. A wordlist is optional, and if one is not provided the built-in short list (20k words) is used.

Other scan phases are optional. Content discovery can take an optional wordlist, otherwise it defaults to the built-in short (22k words) list.

The final results of the scan are stored in three text files in the output directory. All unique domains that are found, whether they resolve or not, are stored in all_discovered_domains.txt, and all unique IPs that are discovered are stored in all_discovered_ips.txt. All domains that resolve to an IP are stored in all_resolved_domains.txt. As of v4.1 these domains are used to generate the interesting domain list and the all domains list, which can then be used for content discovery and information gathering.

chomp-scan.sh -u example.com -a d short -cC large -p -o path/to/directory

Usage of Chomp Scan:
        -u domain
                 (required) Domain name to scan. This should not include a scheme, e.g. https:// or http://.
	-L config-file
                 (optional) The path to a config file. This can be used to provide more granular control over what tools are run.
        -d wordlist
                 (optional) The wordlist to use for subdomain enumeration. Three built-in lists, short, long, and huge can be used, as well as the path to a custom wordlist. The default is short.
        -c
                 (optional) Enable content discovery phase. The wordlist for this option defaults to short if not provided.
        -C wordlist
                 (optional) The wordlist to use for content discovery. Five built-in lists, small, medium, large, xl, and xxl can be used, as well as the path to a custom wordlist. The default is small.
        -P file-path
                 (optional) Set a custom directory for the location of tools. The path must exist and the directory must contain all needed tools.
        -s
                 (optional) Enable screenshots using Aquatone.
        -i
                 (optional) Enable information gathering phase, using subjack, CORStest, S3Scanner, bfac, whatweb, wafw00f, httprobe, and nikto.
        -p
                 (optional) Enable portscanning phase, using masscan (run as root) and nmap.
        -I
                 (optional) Enable interactive mode. This allows you to select certain tool options and inputs interactively. This cannot be run with -D.
        -D
                 (optional) Enable default non-interactive mode. This mode uses pre-selected defaults and requires no user interaction or options. This cannot be run with -I.
                            Options: Subdomain enumeration wordlist: short.
                                     Content discovery wordlist: small.
                                     Aquatone screenshots: yes.
                                     Portscanning: yes.
                                     Information gathering: yes.
                                     Domains to scan: all unique discovered.
        -b wordlist
                 (optional) Set custom domain blacklist file.
        -X wordlist
                 (optional) Set custom interesting word list.
        -o directory
                 (optional) Set custom output directory. It must exist and be writable.
        -a
                 (optional) Use all unique discovered domains for scans, rather than interesting domains. This cannot be used with -A.
        -A
                 (optional, default) Use only interesting discovered domains for scans, rather than all discovered domains. This cannot be used with -a.
	-H
                 (optional) Use HTTP for connecting to sites instead of HTTPS.
	-r
                 (optional) Enable creation of Burp scope JSON file with rescope.
        -h
                 (optional) Display this help page.

In The Future

Chomp Scan is still in active development, as I use it myself for bug hunting, so I intend to continue adding new features and tools as I come across them. New tool suggestions, feedback, and pull requests are all welcomed. Possible additions:

  • The generation of an HTML report, similar to what aquatone provides

Screenshots

Thanks

Thanks to all the authors of the included tools. They do all the heavy lifting.

chomp-scan's People

Contributors

erjanmx avatar kre80r avatar sbim avatar solomonsklash avatar sy3omda avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

chomp-scan's Issues

problem to set custom directory

OUTPUT_DIR=$(grep '^OUTPUT_DIR' "$CONFIG_FILE" | cut -d '=' -f 2);

if suddenly the tool stopped in middle of working and i want to resume the tool after restart the pc.
as i know it could be resumed by set custom directory in current config file without creating new folder to continue scanning or brute forcing without start info gathering domain from the begging again.
the problem is when i set the full path of the working directory it keep saying Output directory test.com-20\:01\:08 does not exist or is not writable. Please check the configuration file.
i tried to set Custom directory in config file
# Set custom output directory. If multiple domains are used, this will contain each domain's output in a subdirectory. OUTPUT_DIR=test.com-20\:01\:08
OR OUTPUT_DIR=\test.com-20\:01\:08\ NOT working
OR OUTPUT_DIR=\root\chomp-scan\test.com-20\:01\:08\
So what is the right path should be in that config file ?
BTW i made this folder as writable by using chmod 755 test.com-20\:01\:08 to avoid writable issue and still not working

[Error] directory error

Hi.

After merging, An error occurs in relation to the file or directory.

I think this problem occurs in a single domain.

Files are stored in the root directory(/ ).

Error log:

root@oldesec:~/chomp-scan# ./chomp-scan.sh -L config
Beginning scan with config file options.
[i] Scanning example.com with dnscan.
[i] Command: /root/bounty/tools/dnscan/dnscan.py -d example.com -t 25 -o /dnscan_out.txt -w wordlists/subdomains-top1mil-20000.txt.
[*] Processing domain example.com
[*] Using system resolvers ['127.0.0.53']
[+] Getting nameservers
94.130.248.104 - ns2.schokokeks-dns.de
178.63.68.96 - ns1.schokokeks-dns.de
37.120.167.100 - ns3.schokokeks-dns.de
[-] Zone transfer failed

[+] IPv6 (AAAA) records found. Try running dnscan with the -6 option.
2a01:4f8:121:1ffe:1:1008:0:104b

[+] TXT records found
"v=spf1 a mx include:_spf.schokokeks-dns.de -all"

[+] MX records found, added to target list
100 zucker.schokokeks.org.

[*] Scanning example.com for A records
178.63.68.96 - example.com

[i] dnsscan took 2 seconds to run.
[!] dnscan found 1 IP/domain pairs.
[+] Found 1 unique IPs so far.
[+] Found 2 unique discovered domains so far.
[+] Found 0 unique resolvable domains so far.
./chomp-scan.sh: line 847: /tmp: Is a directory
mv: cannot overwrite non-directory '/all_discovered_domains.txt' with directory '/tmp'
[i] Scanning example.com with subfinder.
[i] Command: subfinder -d example.com -o /subfinder-domains.txt -t 25 -w wordlists/subdomains-top1mil-20000.txt.

[NOTE] Edit /root/.config/subfinder/config.json with your options !===============================================
-=Subfinder v1.1.3 github.com/subfinder/subfinder
===============================================


Running Source: Ask
Running Source: Archive.is
Running Source: Baidu
Running Source: Bing
Running Source: CertDB
Running Source: CertificateTransparency
Running Source: Certspotter
Running Source: Commoncrawl
Running Source: Crt.sh
Running Source: Dnsdb
Running Source: DNSDumpster
Running Source: DNSTable
Running Source: Dogpile
Running Source: Exalead
Running Source: Findsubdomains
Running Source: Googleter
Running Source: Hackertarget
Running Source: Ipv4Info
Running Source: PTRArchive
Running Source: Sitedossier
Running Source: Threatcrowd
Running Source: ThreatMiner
Running Source: WaybackArchive
Running Source: Yahoo

Running enumeration on example.com

waybackarchive: parse http://web.archive.org/cdx/search/cdx?url=*.example.com/*&output=json&fl=original&collapse=urlkey&page=: net/url: invalid control character in URL

dnsdb: Unexpected return status 503

ptrarchive: Get http://ptrarchive.com/tools/search3.htm?label=example.com&date=ALL: read tcp 206.189.223.157:36772->104.171.118.90:80: read: connection reset by peer

archiveis: Get http://archive.is/*.example.com: dial tcp 78.108.190.21:80: connect: connection timed out


Total 7 Unique subdomains found for example.com

.example.com
blog.example.com
bugs.example.com
crashes.example.com
files.example.com
flimp.example.com
www.example.com

[i] Subfinder took 132 seconds to run.
[!] Subfinder found 7 domains.
[+] Found 1 unique IPs so far.
[+] Found 9 unique discovered domains so far.
[+] Found 0 unique resolvable domains so far.
[i] Scanning example.com with sublist3r.
[i] Command: /root/bounty/tools/Sublist3r/sublist3r.py -d example.com -v -b -t 50 -o /sublist3r-output.txt.

                 ____        _     _ _     _   _____
                / ___| _   _| |__ | (_)___| |_|___ / _ __
                \___ \| | | | '_ \| | / __| __| |_ \| '__|
                 ___) | |_| | |_) | | \__ \ |_ ___) | |
                |____/ \__,_|_.__/|_|_|___/\__|____/|_|

                # Coded By Ahmed Aboul-Ela - @aboul3la

[-] Enumerating subdomains now for example.com
[-] verbosity is enabled, will show the subdomains results in realtime
[-] Searching now in Baidu..
[-] Searching now in Yahoo..
[-] Searching now in Google..
[-] Searching now in Bing..
[-] Searching now in Ask..
[-] Searching now in Netcraft..
[-] Searching now in DNSdumpster..
[-] Searching now in Virustotal..
[-] Searching now in ThreatCrowd..
[-] Searching now in SSL Certificates..
[-] Searching now in PassiveDNS..
ThreatCrowd: blog.example.com
Virustotal: blog.example.com
Virustotal: files.example.com
Virustotal: flimp.example.com
Virustotal: bugs.example.com
Virustotal: crashes.example.com
Virustotal: www.example.com
Bing: blog.example.com
Bing: crashes.example.com
Bing: flimp.example.com
Bing: files.example.com
Google: flimp.example.com
Google: crashes.example.com
Google: blog.example.com
Google: files.example.com
Yahoo: blog.example.com
Yahoo: flimp.example.com
DNSdumpster: crashes.example.com
SSL Certificates: files.example.com
SSL Certificates: crashes.example.com
SSL Certificates: flimp.example.com
SSL Certificates: blog.example.com
SSL Certificates: www.example.com
SSL Certificates: bugs.example.com
Yahoo: crashes.example.com
Yahoo: files.example.com
DNSdumpster: www.example.com
DNSdumpster: blog.example.com
DNSdumpster: files.example.com
DNSdumpster: flimp.example.com
DNSdumpster: bugs.example.com
[-] Starting bruteforce module now using subbrute..
example.com
^C
[!] Cancelling command.
./chomp-scan.sh: line 875: 14650 Killed                  "$SUBLIST3R" -d "$1" -v -b -t 50 -o "$WORKING_DIR"/sublist3r-output.txt
[+] Found 1 unique IPs so far.
[+] Found 9 unique discovered domains so far.
[+] Found 0 unique resolvable domains so far.
[i] Scanning example.com with amass.
[i] Command: amass -d example.com -w wordlists/subdomains-top1mil-20000.txt -ip -rf resolvers.txt -active -o /amass-output.txt -min-for-recursive 3 -bl blacklist.txt
bugs.example.com 178.63.68.96,2a01:4f8:121:1ffe:1:1008:0:1321
blog.example.com 178.63.68.96,2a01:4f8:121:1ffe:1:1008:0:104c
www.example.com 178.63.68.96,2a01:4f8:121:1ffe:1:1008:0:104b
flimp.example.com 178.63.68.96,2a01:4f8:121:1ffe:1:1008:0:145f
crashes.example.com 178.63.68.96,2a01:4f8:121:1ffe:1:1008:0:104d
example.com 178.63.68.96,2a01:4f8:121:1ffe:1:1008:0:104b
files.example.com 178.63.68.96,2a01:4f8:121:1ffe:1:1008:0:105b
autoconfig.example.com 178.63.68.96,2a01:4f8:121:1ffe:1:1285:0:676
Average DNS queries performed: 107/sec, DNS names remaining: 8
^C

OWASP Amass v2.9.11                               https://github.com/OWASP/Amass
--------------------------------------------------------------------------------
8 names discovered - scrape: 1, cert: 5, api: 1, dns: 1
--------------------------------------------------------------------------------
ASN: 24940 - HETZNER-AS, DE
        178.63.0.0/16           8    Subdomain Name(s)
        2a01:4f8::/29           8    Subdomain Name(s)

[!] Cancelling command.
[i] amass took 97 seconds to run.
[!] amass found 8 domains.
[+] Found 8 unique IPs so far.
[+] Found 11 unique discovered domains so far.
[+] Found 0 unique resolvable domains so far.
[i] Running goaltdns against all 11 unique discovered subdomains to generate domains for masscan to resolve.
[i] Command: goaltdns -l /all_discovered_domains.txt -w wordlists/altdns-words.txt -o /goaltdns-output.txt.
[i] Goaltdns took 0 seconds to run.
[i] Goaltdns generated 12343 subdomains.
[i] Scanning 11339 current unique example.com domains and IPs, goaltdns generated domains, and domain-appended wordlist with massdns (in quiet mode).
[i] Command: cat (all found domains and IPs) | /root/bounty/tools/massdns/bin/massdns -r resolvers.txt -q -t A -o S -w /massdns-result.txt.
[i] Massdns took 25 seconds to run.
[!] Check /massdns-CNAMEs.txt for a list of CNAMEs found.
[+] Found 8 unique IPs so far.
[+] Found 11 unique discovered domains so far.
[+] Found 6 unique resolvable domains so far.
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
sort: read failed: /: Is a directory
mv: '/temp4' and '/temp4' are the same file
[i] Running subjack against all 6 unique discovered subdomains to check for subdomain takeover.
[i] It will run twice, once against HTTPS and once against HTTP.
[i] Command: subjack -d example.com -w /all_resolved_domains.txt -v -t 20 -ssl -m -o /subjack-output.txt
[Not Vulnerable] files.example.com
[Not Vulnerable] example.com
[Not Vulnerable] crashes.example.com
[Not Vulnerable] blog.example.com
[Not Vulnerable] www.example.com
[Not Vulnerable] bugs.example.com
[Not Vulnerable] blog.example.com
[Not Vulnerable] bugs.example.com
[Not Vulnerable] crashes.example.com
[Not Vulnerable] files.example.com
[Not Vulnerable] example.com
[Not Vulnerable] www.example.com
[i] Subjack took 0 seconds to run.
[i] Full Subjack results are at /subjack-output.txt.
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
./chomp-scan.sh: line 791: /: Is a directory
sort: read failed: /: Is a directory
mv: '/temp4' and '/temp4' are the same file
wc: /: Is a directory
[!] No interesting domains have been found yet.
[+] Found 8 unique IPs so far.
[+] Found 11 unique discovered domains so far.
[+] Found 6 unique resolvable domains so far.
[i] Creating a Burp scope file with rescope.
[-] Grabbing targets from /all_resolved_domains.txt
[-] Parsing to JSON (Burp Suite)
[โœ“] Done. Wrote 1256 bytes to /burp-scope.json

[i] Total script run time: 1558171283 seconds.

root dir:

root@oldesec:/# ls /
all_discovered_domains.txt  etc                   media                    subjack-https-output.txt
all_discovered_ips.txt      goaltdns-output.txt   mnt                      sys
all_resolved_domains.txt    home                  opt                      temp4
amass-output.txt            initrd.img            proc                     tmp
bin                         initrd.img.old        root                     usr
boot                        lib                   run                      var
burp-scope.json             lib64                 sbin                     vmlinuz
dev                         lost+found            snap                     vmlinuz.old
dnscan-domains.txt          massdns-CNAMEs.txt    srv
dnscan-ips.txt              massdns-appended.txt  subfinder-domains.txt
dnscan_out.txt              massdns-result.txt    subjack-http-output.txt

Error running the script

Every time I try to run the script I end up with the following error:

[!] The path or the file specified by the path for wafw00f does not exit.

Any suggestions?

I'm running on Ubuntu 20.04

Subjack path

[!] The path or the file specified by the path for subjack does not exit.

i did source ~/.profile

installer script error.

There is no problem with the installation process.

However, when I run the program, I get an error in obtaining the PATH.

also need the PATH setting associated with GO.

I think that there is an error in finding the path through command.

# Tool paths
SUBFINDER=$(command -v subfinder);
SUBJACK=$(command -v subjack);
FFUF=$(command -v ffuf);
WHATWEB=$(command -v whatweb);
WAFW00F=$(command -v wafw00f);
GOBUSTER=$(command -v gobuster);
CHROMIUM=$(command -v chromium);
NMAP=$(command -v nmap);
MASSCAN=$(command -v masscan);
NIKTO=$(command -v nikto);
INCEPTION=$(command -v inception);
WAYBACKURLS=$(command -v waybackurls);
SUBLIST3R=~/bounty/tools/Sublist3r/sublist3r.py;
DNSCAN=~/bounty/tools/dnscan/dnscan.py;
ALTDNS=~/bounty/tools/altdns/altdns.py;
MASSDNS_BIN=~/bounty/tools/massdns/bin/massdns;
MASSDNS_RESOLVERS=resolvers.txt;
AQUATONE=~/bounty/tools/aquatone/aquatone;
BFAC=~/bounty/tools/bfac/bfac;
DIRSEARCH=~/bounty/tools/dirsearch/dirsearch.py;
SNALLY=~/bounty/tools/snallygaster/snallygaster;

Error log:

 The path or the file specified by the path for subfinder does not exit.

Suggestion to minimize running time by Nikto

else

if you could remember our discussion about minimize time to run nikto against domains, i find out a way we could do by parsing the result of already filtered list which generated from aquatone tool.
which would be a good idea to use this list aquatone_urls.txt located in aquatone folder to run different tools against it and the first one would be Nikto to reduce time scanning target and avoid scanning unnecessary sub-domains .
the code would be something like
"$NIKTO" -h "$WORKING_DIR"/aquatone/aquatone_urls.txt -Format html -output "$WORKING_DIR"/nikto/"$ADOMAIN".html;

Subfinder changed

Hi!

The address of the subfinder repository has changed.
The installation command should be as follows: go get -u github.com/projectdiscovery/subfinder/cmd/subfinder (line 227 install.sh)
Also, to install subfinder you need at least go version 1.14 (Now version 1.12 is installed in install.sh.).
I used go version 1.15.1 and everything seems to work in Kali 2020.2.
You can change url: https://dl.google.com/go/go1.15.1.linux-amd64.tar.gz in function install_go()

I had the following error while installing (./installer.sh):

...
Installing subfinder from Github.
package github.com/projectdiscovery/subfinder: no Go files in /root/go/src/github.com/projectdiscovery/subfinder
...

Also I could not start the chomp (./chomp-scan.sh):

$ ./chomp-scan.sh -L config
[!] The path or the file specified by the path for subfinder does not exit.

Attached the corrected version of the install.sh.txt
install.sh.txt

file not even exist

"$SUBJACK" -d "$1" -w "$2" -v -t 20 -ssl -m -o "$WORKING_DIR"/subjack-https-output.txt -c "$HOME"/go/src/github.com/haccer/subjack/fingerprints.json;

while i check subjack tool for the first time i found you mention a fingerprints.json with argument -c in go path /go/src/github.com/haccer/subjack/ BUT this path it not exist in the first place.
i setup the tool twice but the path it is not their !!
perhaps we need to add command to download subjack repo to mentioned PATH
could you check this out ???

New Tool Requests

Please leave a comment here with requests for new tools. Make sure to include a link to the tool and a description of what the tool does and how you see it fitting into Chomp Scan.

Suggestion

I think we need to add option in config file to give user choice to shutdown computer after the script finished because in some cases this script could take 2 or more days of running.

Suggestion to minimize false positive subdomains

i think this script need some tool or bash script to filter All_resolved_domain.txt before nikto scan it, because its some times generate false positive or wildcard subdomains which is not running any web server in fact and this make nikto take so long to scan non excising or wildcard subdomains

[Q/A] About tool composition

Hi.

I looked at the tools and found out singularities.

For example, most subdomain search tools are receiving wordlists.

Example)

run_dnscan "$DOMAIN" "$SHORT";
run_subfinder "$DOMAIN" "$SHORT";
run_knock "$DOMAIN" "$SHORT";
run_amass "$DOMAIN" "$SHORT";
run_massdns "$DOMAIN" "$SHORT";

It seems that the tools are running in brute forcing mode.

That is, there is a concern that the same wordlist is input and the same result is output.

And it takes a long time.

Is this the design you intended?

And it appears that there is an option error in the tool.

The tool currently uses the "-w" option without the "brute" option.

the present:

"$AMASS" -d "$1" -w "$2" -ip -rf resolvers.txt -active -o "$WORKING_DIR"/amass-output.txt -min-for-recursive 3 -bl "$BLACKLIST";

Ref:
https://github.com/OWASP/Amass/blob/master/doc/user_guide.md

-brute: Perform brute force subdomain enumeration
-w:  	Change the wordlist used during brute forcing

Thanks

add multi domain in config

Hi

The current tool must generate a "config" file per domain.

Ex) google.com -> config1.txt
fb.com -> config2.txt
test.com -> config3.txt

It would be nice if could configure multiple domains in a single file.

sample file:

[general]
# Set domain to scan (required). Do not include a scheme, e.g. https:// or http://. Chomp Scan will add the appropriate scheme as needed.
DOMAIN= fb.com, google.com, test.com

[Info] Missing or fake domains.

Hi

I check #50.

The "all_resolved_domains.txt" file contains a lot of errors.

Missing or fake domains.

So, the performance of the tool is falling.

scan speed up.. but.. Missing domain.

In my opinion, other validation filtering seems to be required.

The massdns tool seems to generate false positives.

What exactly this function DO?

function get_interesting() {

this function couse me missed the main domain from scan more than once which is www.test.com and of course if intersting is there so all_resolved is ignored as you know.
So i am wondering what this function is really do, it`s not filtering any thing or use specific tool to say that list is really interesting.
i hope you got the idea

Aquatone error when trying to look at the gathered screenshots

Hi,

Just want to start with saying that this is a awesome tool, have had some really fun weeks working with it and trying it out (and thanks for the ubuntu script ;).

Problem is when I'm using the aquatone module the screenshots become corrupted, I don't know if it's because of chromium of why this is happening.

S3Scanner moved to pip

The latest S3Scanner needs to be run with

git clone [email protected]:sa7mon/S3Scanner.git
cd S3Scanner
pip3 install -r requirements.txt
python3 -m S3Scanner

or installed with pip
pip3 install s3scanner

Add CLI arguments

Nice tool!
Any option to give all the configuration option at starting of command itself?Currently we need to monitor tool continuously to enter option for next step..If we give all configure at first step , we can check result after finishing every steps

Create installation script

Hello.

Nice good tool.

But, Installation is difficult.

How can I work in the Ubuntu environment?

There is a difficulty in setting PATH.

Do you plan to develop an installation script?

Add threading/subshells

Am not sure if it is possible
Is it possible run content discovery/Information discovery tools in multiple threads?

Option to pass user input subdomains

Skipping subdomain enumeration and proceed next steps with user input subdomain list.
for eg:
If i want to scan only known 10 subdomain for content/info discovery, and next steps.Is it possible to give this file and proceed further?Is it possible?

Issue with inception tool

Hey!

After the last update I reinstalled chomp-scan and now I'm having some issues with running the inception module.

"[!] The path or the file specified by the path for inception does not exit."

The inception program is installed under ~/go/bin as it should be I assume? I have also tried blanking it out in the config file but it still generates the same error message.

If I only try to run the tool it also come back with a error message that it's trying to locate "/src/github.com/proabiral/inception/provider.json: no such file or directory", and that is ofc because it dosn't apply the ~/ to the search path......

Run Subjack with HTTP and HTTPS

Currently subjack only checks "https".

"$SUBJACK" -d "$1" -w "$2" -v -t 20 -ssl -m -o "$WORKING_DIR"/subjack-output.txt -c "$HOME"/go/src/github.com/haccer/subjack/fingerprints.json;

But sometimes, there can be problems at http.

So I think , need to add a check for "http".

maybe (delete -ssl option)

"$SUBJACK" -d "$1" -w "$2" -v -t 20 -m -o "$WORKING_DIR"/subjack-http-output.txt -c "$HOME"/go/src/github.com/haccer/subjack/fingerprints.json;

Error scan

root@d00m:/pentest/chomp-scan# ./chomp-scan.sh -u github.com -a d short -cC large -p -o /pentest/chomp-scan/teste/
Use all discovered domains.
[!] The path or the file specified by the path for subfinder does not exit.

root@d00m:/pentest/chomp-scan#

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.