So richten Sie einen automatisierten Subdomänen-Übernahmescanner für alle Bug Bounty-Programme in 5 Minuten ein

Sie arbeiten mit Ihrem neuen Subdomain-Scanner buchstäblich an einem Laptop, weil Sie so großartig sind.

Sub-Domain-Übernahmen sind im Moment der letzte Schrei in der Bug-Bounty-Szene. Wahrscheinlich haben Sie von einigen Bugs-Bounty-Legenden gehört, die im Teig herumharken, weil sie es geschafft haben, einen automatisierten Sub-Domain-Übernahmescanner einzurichten. Ich werde Sie in ein Geheimnis einweihen, es ist nicht so schwer, wie es sich anhört.

Mit ein paar kostenlosen Tools und einigen zwielichtigen Ghetto-Bash-Skripten können wir in weniger als 5 Minuten unsere eigene Version für Arme zusammenstellen. Umschnalldildo

Sammeln von Wildcard-Domains

Das wichtigste zuerst! Wir brauchen eine Liste aller Wildcard-Domains aller öffentlichen Bug-Bounty-Programme auf Bugcrowd und HackerOne. Das klingt viel schwieriger als es ist. Sie sehen, es wäre schwer, aber jemand hat es bereits für uns getan (Ruf an Arkadiyt). Starten Sie Kali und führen Sie die folgenden Befehle aus:

cd ~;
mkdir subdomain_takeover;
cd subdomain_takeover;
Git-Klon https://github.com/arkadiyt/bounty-targets-data;

Führen Sie einfach Folgendes aus, um die Platzhalterdomänen anzuzeigen:

cat ./bounty-targets-data/data/wildcards.txt

Diese Liste ist ziemlich vollständig und wird stündlich aktualisiert.

Auflisten von Unterdomänen

Sicher, es gibt unzählige Möglichkeiten, Unterdomänen aufzulisten, aber ich hatte den größten Erfolg mit einem Tool namens Subfinder. Dieses Tool wurde von zwei meiner Internetkollegen geschrieben, ice3man543 und codingo. Um es zu installieren, führen Sie einfach die folgenden Befehle aus:

passend installieren Sie Golang;
Holen Sie sich github.com/subfinder/subfinder;

Für diese App sind außerdem API-Schlüssel von verschiedenen Diensten erforderlich. Melden Sie sich bei den folgenden Diensten für kostenlose Konten an:

  • https://www.virustotal.com/
  • https://community.riskiq.com/ (Passive Summe)
  • https://securitytrails.com/
  • https://riddler.io/
  • https://censys.io/
  • https://www.shodan.io/

Nachdem Sie sich angemeldet haben, bearbeiten Sie /root/.config/subfinder/config.json, um die entsprechenden API-Schlüssel, Benutzernamen und Kennwörter zu erhalten.

Um nun Unterdomänen von allen Platzhalterzielen aufzulisten, kopieren / fügen Sie die folgende Grausamkeit in Ihr Terminal ein:

localdir = `pwd`;
cd ~ / subdomain_takeover / Kopfgeld-Zieldaten /;
Git ziehen;
cd $ localdir;
cp ~ / subdomain_takeover / Kopfgeld-Zieldaten / data / wildcards.txt ./; Katze wildcards.txt | sed 's /^*.// g' | grep -v '*'> wildcards_without_stars.txt;
während read host;
   do file = $ host && file + = "_ subfinder.out";
   ~ / go / bin / subfinder -o $ file -d $ host;
fertig <./wildcards_without_stars.txt

Wie ich bereits sagte, haben wir es hier mit meiner eigenen Hacky-Bash-Ghetto-Voodoo-Programmierung zu tun, urteilen Sie nicht. Sie sehen, meine Programmierkenntnisse eignen sich eher für den Ansatz "Wenn es funktioniert, sind wir cool". Mit dem obigen Code wird im Grunde genommen der Subfinder für jede Wildcard-Domain ausgeführt, die in der Wildcards.txt-Datei enthalten ist, die wir zuvor von GitHub heruntergeladen haben. Abhängig von Ihrer Internetverbindung dauert es sehr lange, vielleicht 5 Stunden oder länger.

Beim letzten Ausführen dieses Skripts habe ich es über Nacht laufen lassen und bis zu 261873 Subdomains aktiviert. Cha-ching. Ein Wort der Warnung; Die Domänen im Repository sowie die soeben aufgezählten Unterdomänen sind nicht unbedingt im Geltungsbereich. Stellen Sie sicher, dass Sie das aktuelle Programm auf Bugcrowd oder HackerOne lesen, um den Umfang und die Regeln zu überprüfen, bevor Sie irgendetwas angreifen.

Überprüfen der aufgelisteten Unterdomänen auf Übernahmen

Jetzt werden wir ein Tool namens "Subover" verwenden, das von denselben Leuten wie Subfinder geschrieben wurde. Subover ist ein Tool, das überprüft, ob Subdomains für Subdomain-Übernahmen anfällig sind. Das Installieren des Tools ist so einfach wie das Ausführen:

Holen Sie sich github.com/Ice3man543/SubOver

Mit dem unten stehenden Bash-Skript führen wir dieses Tool in jeder von uns aufgelisteten Unterdomäne aus.

cat ./*.out> all_subdomains.lst;
~ / go / bin / SubOver -l ./all_subdomains.lst -timeout 5 -o subover.out;

Dies kann je nach Internetverbindung über 5 Stunden dauern.

Straffung des Prozesses

Das ist es wirklich, Sie haben alle Schritte, die Sie benötigen, um jede öffentliche Bug-Bounty-Subdomain auf Bugcrowd und HackerOne aufzulisten und dann zu überprüfen, ob sie für Subdomain-Übernahmen anfällig sind. Wir können diesen gesamten Prozess in zwei einfachen Bash-Skripten rationalisieren.

Das erste Bash-Skript richtet die erforderlichen Tools und Ordnerstrukturen in Kali ein. Sie müssen dies nur einmal ausführen:

mkdir ~ / subdomain_takeover;
cd ~ / subdomain_takeover;
Git-Klon https://github.com/arkadiyt/bounty-targets-data;
passend installieren Sie Golang;
Holen Sie sich github.com/subfinder/subfinder;
Holen Sie sich github.com/Ice3man543/SubOver;

Das zweite Bash-Skript kann so oft ausgeführt werden, wie Sie möchten. Es listet alle Unterdomänen neu auf und überprüft sie dann alle, um festzustellen, ob sie für Übernahmen anfällig sind:

cd ~ / subdomain_takeover / Kopfgeld-Zieldaten /;
Git ziehen;
cd ~ / subdomain_takeover;
cp ~ / subdomain_takeover / Kopfgeld-Zieldaten / data / wildcards.txt ./; Katze wildcards.txt | sed 's /^*.// g' | grep -v '*'> wildcards_without_stars.txt;
während read host;
   do file = $ host && file + = "_ subfinder.out";
   ~ / go / bin / subfinder -o $ file -d $ host;
fertig <./wildcards_without_stars.txt;
cat ./*.out> all_subdomains.lst;
~ / go / bin / SubOver -l ./all_subdomains.lst -timeout 5 -o subover.out;

Den Autopiloten einschalten

Wenn Sie noch mehr auf Hardcore-Franz-Rosén-Stil setzen möchten, können Sie dieses Skript alle 12 Stunden mit einem Cronjob planen und sich die Ausgabe per E-Mail mit dem Befehl „mail“ oder ähnlichem zusenden lassen. Vielleicht speichere ich das für meinen nächsten Artikel.

Holen Sie sich weitere erstklassige Hacking-Tipps

Ich schreibe sehr gerne Hacking-Artikel. Ich mache viele neue Internetkollegen und lerne auch viel. Wenn Sie weitere Hacking-Tipps erhalten und mein Internet-Partner sein möchten, geben Sie Ihre E-Mail-Adresse unten ein und folgen Sie mir auf Twitter.