
Ein Automatisierungstool, das Subdomains scannt, Subdomain-Übernahme, dann XSS, SSTI, SSRF und weitere Injection-Point-Parameter herausfiltert und automatisch nach einigen Low-Hanging-Vulnerabilities sucht.
Ich habe dieses Tool entwickelt, um mein Recon zu automatisieren und Zeit zu sparen. Es war wirklich nervig, immer solche Befehle einzugeben und dann zu warten, bis ein Befehl abgeschlossen ist, bevor ich den nächsten eingebe. Also habe ich einige Tools gesammelt, die im Bug-Bounty-Bereich weit verbreitet sind. In diesem Skript verwende ich Assetfinder, subfinder, amass, httpx, sublister, gauplus und gf patterns, und dann nutzt es dirsearch, dalfox, nuclei und kxss, um einige low-hanging fruits zu finden.
Das Skript enumeriert zunächst alle Subdomains der angegebenen Zieldomain mit assetfinder, sublister, subfinder und amass, filtert dann alle live Domains aus der gesamten Subdomain-Liste, extrahiert dann die Titel der Subdomains mit httpx, scannt dann auf Subdomain-Übernahme mit nuclei. Dann verwendet es gauplus, um Parameter der gegebenen Subdomains zu extrahieren, und nutzt gf patterns, um xss, ssti, ssrf, sqli Parameter aus diesen Subdomains zu filtern und scannt dann auch auf low-hanging fruits. Anschließend speichert es die gesamte Ausgabe in einer Textdatei wie target-xss.txt. Dann sendet es Benachrichtigungen über den Scan mit notify.
What's new in v4.0: fixed some previous issues and filter out time waste vulns(you need to find them manually) and added dorking.

Voraussetzungen: Go Language und Python 3.
Systemanforderungen: Empfohlen wird die Ausführung auf einem VPS mit 1VCPU und 2GB RAM.
Verwendete Tools – Sie müssen diese Tools installieren, um dieses Skript zu nutzen
subfinder •
sublist3r •
gf patterns •
dnsx •
assetfinder •
httpx •
kxss •
nuclei •
dalfox •
anew •
notify •
•
•
•
•
•
•
•
•
•
•
#Make sure you're root before installing the tool
garud:~ sudo su
garud:~ apt install git
garud:~ git clone https://github.com/R0X4R/Garud.git && cd Garud/ && chmod +x garud install.sh && mv garud /usr/bin/ && ./install.sh
Hinweis: Sollten Sie Probleme beim Ausführen der Datei
install.shodergarudhaben, führen Siesed -i -e 's/\r$//' install.shaus
█▀▀▀ █▀▀█ █▀▀█ █░░█ █▀▀▄
█░▀█ █▄▄█ █▄▄▀ █░░█ █░░█
▀▀▀▀ ▀░░▀ ▀░▀▀ ░▀▀▀ ▀▀▀░
[GARUD] == A RECONNAISSANCE SUITE FOR BUG BOUNTY (@R0X4R)
Example Usage:
garud [-d target.tld] [-x exclude domains] [--json] [-s]
Flags:
-d, --domain string Add your target -d target.tld
-x, --exclude string Exclude out of scope domains -x /home/dommains.list
Optional Flags:
-s, --silent Hide output in the terminal Default: False
-j, --json Store output in a single json file Default: False
-v, --version Print current version of Garud
Fehlerbehebung bei der Verwendung oder Installation von Garud
garud:~ chmod +x install.sh && ./install.sh
Error: ./install.sh : /bin/bash^M : bad interpretor: No such file or directory
# fix
garud:~ sed -i -e 's/\r$//' install.sh
Sie können den Fehler auch kopieren und bei Google suchen – das verbessert Ihre Debugging-Fähigkeiten ;)
Beispielverwendung
# garud -d hackerone.com
Domains ausschließen, die nicht im Scope sind
# echo test.hackerone.com > ossdomain.txt
# garud -d hackerone.com -x ~/ossdomain.txt
Mit allen Flags
# garud -d hackerone.com -j -s -x /home/oss.txt
Ausgabe im Terminal ausblenden
# garud -d hackerone.com -s
Ausgabe in einer einzelnen json-Datei speichern
# garud -d hackerone.com -s -j
# cd hackerone
# cat output.json | jq
{
"nuclei_critical": [],
"vuln_crlf": [],
"dalfox": [
"[POC][V][GET][inATTR-double(3)-URL] http://subdomain.target.tld/hpp?pp=FUZZ%22onpointerout%3Dconfirm.call%28null%2C1%29+class%3Ddalfox+",
----------------------snip----------------------
"subdomains": [
"sub.target.tld",
"tub.target.tld",
"subdomain.target.tld"
],
"vuln_xss": [
"[POTENTIAL XSS] - http://subdomain.target.tld/hpp/?pp=%22%3E%2F%3E%3Csvg%2Fonload%3Dconfirm%28document.domain%29%3E ",
"[POTENTIAL XSS] - http://subdomain.target.tld:80/hpp/?pp=%22%3E%2F%3E%3Csvg%2Fonload%3Dconfirm%28document.domain%29%3E ",
"[POTENTIAL XSS] - http://subdomain.target.tld:80/hpp/index.php?pp=%22%3E%2F%3E%3Csvg%2Fonload%3Dconfirm%28document.domain%29%3E "
]
}
Docker
Beigetragen von @frost19k
Dieses Image muss mit Buildkit erstellt werden
garud:~ git clone https://github.com/R0X4R/Garud.git
garud:~ cd Garud
garud:~ docker buildx build -t garud -f Dockerfile .
Um den Container auszuführen
garud:~ docker run -t --rm \
-v "/path/on/host":"/output" \ # Mount the Host Output Folder to "/output"
-v "/path/to/configs":"/Garud/.config/notify" \ # Mount your Notify Config files to "/Garud/.config/notify"
garud -d hackerone.com
Garud läuft als root im Container, daher ist es ratsam, Linux-Namespaces zu konfigurieren
@slack •
@discord •
@telegram •
configure-notify
@aboul3la @tomnomnom @lc @hahwul @projectdiscovery @maurosoria @shelld3v @devanshbatham @michenriksen @defparam @projectdiscovery
Danke an alle Mitwirkenden contributors.md
Warnung: Dieser Code wurde ursprünglich für den persönlichen Gebrauch erstellt. Er erzeugt eine erhebliche Menge an Datenverkehr, bitte mit Vorsicht verwenden.