Conference notes: How to Differentiate Yourself as a Bug Bounty Hunter (OWASP Stockholm)
Posted in Conference notes on November 7, 2018
Posted in Conference notes on June 19, 2018
Hi, these are the notes I took while watching “The Bug Hunters Methodology v3(ish)” talk given by Jason Haddix on LevelUp 0x02 / 2018.
This talk is about Jason Haddix’s bug hunting methodology. It is an upgrade of:
Goal: Given an org name, identify both their hosts/top-level domains & IP space
org:tesla motors
Goal: Find new brands & Top-Level Domains
python ./domLink.py -d vip.com -o vip.out.txt
"Tesla © 2016" "Tesla © 2015" "Tesla © 2017" inurl:tesla
or whatever trademark is at the bottom of the pageroot@Test2:~/tools/amass# cat amass.sh
#!/bin/bash
mkdir $1
touch $1/$1.txt
amass -active -d $1 |tee /root/tools/amass/$1/$1.txt
root@Test2:~/tools/amass# ./amass.sh netflix.com
root@Test2:~/tools/subfinder# cat subfinder.sh
#!/bin/bash
mkdir $1
touch $1/$1.txt
subfinder -d $1 |tee /root/tools/subfinder/$1/$1.txt
root@Test2:~/tools/subfinder# ./subfinder.sh twitch.tv
time ./subbrute.py /root/work/bin/all.txt $TARGET.com | ./bin/massdns -r resolvers.txt -t A -a -o -w massdns_output.txt -
time gobuster -m dns -u $TARGET.com -t 100 -w all.txt
masscan -p1-65535 -iL $TARGET_LIST --max-rate 10000 -oG $TARGET_OUTPUT
#!/bin/bash
strip=$(echo $1|sed 's/https\?:\/\///')
echo ""
echo "##################################################"
host $strip
echo "##################################################"
echo ""
masscan -p1-65535 $(dig +short $strip|grep -oE "\b([0-9]{1,3}\.){3}[0-9]{1,3}\b"|head -1)
--max-rate 1000 |& tee $strip_scan
Masscan -> Nmap service scan-og -> Brutespray credential bruteforce
-oG
option to get an output in Nmap formatpython brutespray.py --file nmap.gnmap -U /usr/share/wordlist/user.txt -P /usr/share/wordlist/pass.txt --threads 5 --hosts 5
python Eyewitness.py --prepend-https -f ../domain/tesla.com.lst --all-protocols --headless
Not interesting:
Interesting:
Non standard Web ports:
--add-http-ports
or --add-https-ports
options.Retire.js: Outdated libraries (cmd-line, Burp on online form)
Builtwith: Stack information profiling
Wappalyzer: Similar to Builtwith (cmd-line, browser extension or online form)
burp-vulners-scanner: Burp plugin, detects versions with CVEs
A lot of memory is needed to use many Burp extensions on large scope bounties !
ZAP Ajax Spider
time ./gobuster -w --seclists/Discovery/Web_Content/raft-large-words.txt -s 200,301,307 -t 100 -u https://www.tesla.com
| ———————- | ——————— | —————— | | {regex + perm} id | {regex + perm} user | | | {regex + perm} account | {regex + perm} number | | | {regex + perm} order | {regex + perm} no | | | {regex + perm} doc | {regex + perm} key | | | {regex + perm} email | {regex + perm} group | | | {regex + perm} profile | {regex + perm} edit | REST numeric paths |
Example: http://acme.com/script?user=21856
Cloud providers
Check for CNAMES that resolve to these services. If the service has lapsed, register & profit!
can-i-take-over-xyz: List of every service, if it’s possible to do subdomain takeover and how & the fingerprint when there is no service registered
See you next time!