
Automatisiertes Web-Domain-Reconnaissance- und Sicherheitsbewertungstool, das Subdomain-Enumeration, Port-Scanning, Schwachstellenscan und KI-gestützte Erkennung für Penetrationstest-Workflows integriert.
Einführung • Installation • Verwendung • HaxUnit ausführen • Funktionen
HaxUnit.com
Tritt dem Discord bei!
HaxUnit ist ein Python-basiertes umfassendes Aufklärungs- und Sicherheitsbewertungstool für Webdomänen. Es integriert verschiedene Werkzeuge für Subdomain-Enumeration, Portscans, Schwachstellenscans und mehr.
HaxUnit konzentriert sich auf Einfachheit und zielt darauf ab, die beste und vollständigste Lösung für Web-Sicherheitsbewertungen zu sein.
Für eine zuverlässige Installation empfiehlt es sich, HaxUnit mit Docker Compose zu verwenden.
Diese initiale Einrichtung kann einige Minuten dauern:
git clone https://github.com/Bandit-HaxUnit/haxunit && cd haxunit
.env.example in .env um und füllen Sie die API-Schlüssel aus.ACUNETIX_THRESHOLD=30
ACUNETIX_API_KEY=
NUCLEI_API_KEY=
WPSCAN_API_KEY=
PDCP_API_KEY=
chmod +x rebuild-compose.sh open-bash.sh
./rebuild-compose.sh
Sobald die Installation erfolgreich abgeschlossen ist, befinden Sie sich im Docker-Container und können HaxUnit ausführen:
🎉 Installation Complete! 🎉
HaxUnit is now ready to rock!
Time to find those vulnerabilities and patch them like a pro! 🕵️♂️🔍
🚀 To start scanning, run the following command:
haxunit -d <domain>
Das war's, Sie sind bereit, mit HaxUnit Domänen zu scannen!
Um eine Bash-Shell innerhalb des HaxUnit-Containers zu öffnen, führen Sie den folgenden Befehl aus:
./open-bash.sh
Stellen Sie sicher, dass die folgende Software auf Ihrem System installiert ist:
python3 (>=3.10)go (>=1.22)docker.io (>=20.10.7)Repository klonen:
Öffnen Sie ein Terminal und führen Sie den folgenden Befehl aus, um das Repository zu klonen und in das Projektverzeichnis zu wechseln:
git clone https://github.com/Bandit-HaxUnit/haxunit && cd haxunit
Installieren Sie python3.11-venv (falls erforderlich):
Wenn das venv-Modul nicht installiert ist, müssen Sie es möglicherweise installieren. Führen Sie einen der folgenden Befehle aus, abhängig von Ihrer Python-Version:
sudo apt update
sudo apt install python3.11-venv
Oder für Python 3.10:
sudo apt update
sudo apt install python3.10-venv
Erstellen Sie eine virtuelle Umgebung:
Erstellen Sie eine virtuelle Umgebung namens haxunit-venv:
python3 -m venv haxunit-venv
Aktivieren Sie die virtuelle Umgebung:
Aktivieren Sie die virtuelle Umgebung mit dem folgenden Befehl:
source haxunit-venv/bin/activate
Hinweis: Um die virtuelle Umgebung später zu deaktivieren, können Sie einfach deactivate ausführen.
Wenn alles korrekt installiert ist, sollten Sie die folgende Ausgabe sehen:
[HaxUnit] [Init] All tools are successfully installed - good luck!
Der Installationsprozess verwendet jetzt pdtm (ProjectDiscovery Tool Manager) für eine effiziente Tool-Verwaltung und beinhaltet intelligente Prüfungen, um eine Neuinstallation bereits vorhandener Werkzeuge zu vermeiden.
haxunit -h
Dies zeigt die Hilfe für das Tool an. Hier sind alle verfügbaren Schalter.
usage: main.py [-h] [-d DOMAIN] [-m {quick,extensive}] [-v] [-b BIN] [-is ISERVER] [-it ITOKEN] [-acu] [-y] [-u] [-i] [--wpscan-api-token WPSCAN_API_TOKEN]
[--use-notify] [--cloud-upload] [--htb] [--fuzz] [--use-gpt] [--skip-installers]
HaxUnit - Web Domain Reconnaissance Tool
optional arguments:
-h, --help show this help message and exit
-d DOMAIN, --domain DOMAIN
the website to recon: example.com
-m {quick,extensive}, --mode {quick,extensive}
set scan mode
-v, --verbose print more information
-b BIN, --bin BIN set which python bin to use
-is ISERVER, --iserver ISERVER
interactsh server URL for self-hosted instance
-it ITOKEN, --itoken ITOKEN
authentication token for self-hosted interactsh server
-acu, --use-acunetix Enable Acunetix integration
-y, --yes yes to all prompts
-u, --update update all tools
-i, --install install all tools
--wpscan-api-token WPSCAN_API_TOKEN
The WPScan API Token to display vulnerability data
--use-notify Run notify on completion
--cloud-upload Upload results to ProjectDiscovery cloud
--htb HackTheBox mode
--fuzz Enable ffuf fuzzing
--use-gpt Enable GPT suggestions
--skip-installers Skip tool installation checks
Einen schnellen Scan auf example.com ausführen:
haxunit -d example.com
Einen schnellen Scan auf example.com ausführen, der standardmäßig mit "Ja" auf das Hinzufügen von Domänen antwortet:
haxunit -d example.com -y
Einen umfangreichen Scan auf example.com mit Acunetix und Hochladen der Ergebnisse in die ProjectDiscovery-Cloud ausführen:
haxunit -d example.com -m extensive --use-acunetix --cloud-upload
Installationsprüfungen für einen schnelleren Start überspringen (wenn bekannt ist, dass die Werkzeuge installiert sind):
haxunit -d example.com --skip-installers
Die Ergebnisse des Scans werden in der folgenden Verzeichnisstruktur gespeichert:
scans/
└── example.com/
└── timestamp/
Ersetzen Sie example.com durch Ihre Ziel-Domäne und timestamp durch Datum und Uhrzeit des Scans.
Diese Struktur organisiert die Scan-Ergebnisse chronologisch unter dem entsprechenden Domänenordner im scans-Verzeichnis.
Dieses Repository enthält ein Beispiel-Apache-Airflow-DAG, das den HaxUnit-Scanprozess automatisiert.
dags-Verzeichnis Ihrer Apache-Airflow-Installation. git clone https://github.com/Bandit-HaxUnit/haxunit && cd haxunit
.env.example in .env um und füllen Sie die API-Schlüssel aus.ACUNETIX_THRESHOLD=30
ACUNETIX_API_KEY=
NUCLEI_API_KEY=
WPSCAN_API_KEY=
PDCP_API_KEY=
notify-config.yaml.example in notify-config.yaml um.Beispielkonfiguration für Slack-Benachrichtigungen:
slack:
- id: "slack"
slack_channel: "automated-pentest"
slack_username: "HackerBot"
slack_format: "{{data}}"
slack_webhook_url: "https://hooks.slack.com/services/XXXXX"
DAG einrichten:
Benennen Sie dags.py.example in dags.py um und konfigurieren Sie es nach Ihren Bedürfnissen.
Vergessen Sie nicht, --use-notify zu verwenden, um Benachrichtigungen zu aktivieren.
HaxUnit bauen und ausführen:
Nachdem Sie die Benachrichtigungseinstellungen konfiguriert haben, bauen und führen Sie HaxUnit mit dem folgenden Befehl aus:
chmod +x rebuild-compose.sh && ./rebuild-compose.sh
Indem Sie diese Schritte befolgen, können Sie nun Ihre Pentests mit Apache Airflow automatisieren. Genießen Sie den optimierten Prozess!
HaxUnit nutzt die REST-API von Acunetix, um die Gruppenerstellung zu automatisieren und Scans zu starten.
Um einen API-Schlüssel zu generieren, besuchen Sie die Profilseite.
Fügen Sie den API-Schlüssel in die .env-Datei ein.
ACUNETIX_API_KEY=
Bauen Sie Docker Compose neu, um die Änderungen zu übernehmen:
./rebuild-compose.sh
Um HaxUnit mit Acunetix auszuführen, verwenden Sie den folgenden Befehl:
haxunit -d example.com --use-acunetix
Um Acunetix zu installieren, führen Sie den folgenden Befehl aus:
bash <(wget -qO- https://raw.githubusercontent.com/Bandit-HaxUnit/acu/main/install.sh)
Dies lädt den Acunetix-Container herunter und installiert ihn.
Sobald die Installation abgeschlossen ist, können Sie Acunetix mit HaxUnit verwenden.
Acunetix kann unter https://localhost:3443 aufgerufen werden.
Benutzername: [email protected]
Passwort: [email protected]
Installieren Sie die erforderlichen Pakete:
Installieren Sie bei aktivierter virtueller Umgebung die notwendigen Pakete:
python3 -m pip install -r requirements.txt
Führen Sie das Installationsskript aus:
Führen Sie schließlich das Hauptskript mit dem Flag --install aus:
python3 main.py --install
| Funktion | Typ | Beschreibung |
|---|
| dnsx_subdomains | Subdomain-Entdeckung | Mit dnsx Subdomains finden und Subdomains bruteforcen |
| subfinder | Subdomain-Entdeckung | Mit subfinder Subdomains finden |
| chaos | Subdomain-Entdeckung | Abfrage der ProjectDiscovery-Chaos-Datenbank für passive Subdomain-Enumeration |
| subwiz | Subdomain-Entdeckung | KI-gestützte Subdomain-Vorhersage mittels maschinellem Lernen |
| katana | Crawling | Sammeln aller URLs auf der Liste der Subdomains und Parsen der Domäne mittels unfurl |
| alterx | Subdomain-Permutation | Generieren und Testen von Subdomain-Permutationen |
| dnsx_ips | IP-Adressen abrufen | Mit dnsx A-Einträge abrufen |
| naabu | Portscan-Entdeckung | Naabu auf der Liste der Subdomains mit einer Liste gängiger Ports ausführen, um HTTP-Dienste zu entdecken |
| httpx | Subdomain-Validierung | Überprüfen aller gefundenen Subdomains auf Aktivität |
| wpscan | Schwachstellenscanner | WordPress-Sicherheitsscanner |
| acunetix | Schwachstellenscanner | Erstellt automatisch eine Gruppe für die Website und startet Scans der Subdomains, um Schwachstellen zu finden |
| nuclei | Schwachstellenscanner | Verwendet alle gefundenen aktiven Subdomains, um nach Schwachstellen zu suchen |