Brute-Force

javaboon

Grünschnabel
Hallo Gemeinde,
ich weiß, es ist ein heikles Thema. Ganz einfach gesagt habe ich vor eine "Brute-Force"- Attacke zu simulieren. Ich möchte meine Website aus drei PHP Scripten aufbauen. Das erste Script (index.php) soll eben diesen Angriff durchführen. Es versucht der reihe nach alle möglichen Passwort und Benutzername-kombinationen meines zweiten Scriptes. Dieses besteht aus einem einfachen Formular. In dieser Art:
Code:
<form action="p1.php" method="post">
<p>Name<input name="name"/></p>
<p>Passwort<input name="pw"/></p>
<input type="submit"/>
</form>
Dieses Submit sollte nur eben, ohne auf den Button zu drücken durchgeführt werden. Das dritte Script p1.php soll nur eine richtige Möglichkeit für Passwort und Benutzername bieten. Über einfache if abfragen soll es dies checken, und je nach Wahr/Falsch eine echo ausgabe liefern. Diese möchte ich wieder im ersten Script zeigen.
Ich würde es mir vorstellen, dass in diesem ersten Script eine Tabelle erstellt wird mit den bereits durchsuchten Passwörtern, und der Ausgabe des anderen Scriptes.
Ich hoffe dass meine Idee realisierbar/legal ist und von euch unterstütz wird.
Vielen Dank
 
Moin,

Ich hoffe dass meine Idee realisierbar/legal ist und von euch unterstütz wird.

Das Problem ist Folgendes: wenn wir das hier erörten, liefern wir Hilfestellung dazu, wie man es macht.
Dass du dies nur zu eigenen Testzwecken einsetzen willst, glaube ich dir, aber es liesse sich genausogut zum Angriff auf fremde Anwendungen einsetzen, weswegen wir soetwas hier nicht besprechen können&wollen, denn es ist defakto eine Straftat gemäss § 202c StGB
 
Fallt das Weitergeben von Informationen, die ebenfalls zu illegalen Zwecken genutzt werden können nicht unter Redefreiheit? Wenn ein Schlosser einen Lehrling beibringt, wie er Schloss aufgebaut ist, und dieser die Information benutzt um einzubrechen, fällt die (Teil)Verantwortung ja auch nicht auf den Meister, oder?

Auf jedem Fall eignet sich PHP sowieso nicht für "Programme", wo es auf Geschwindigkeit ankommt, da es seeeehr langsam ist. Eine echo-Ausgabe bremst das noch um einiges mehr aus. Für solche Fälle wird man um Hochsprachen wie Java oder C++ wohl nicht herum kommen.
 
Brute Force?

Wenn Du Deine eigene Webseite messen möchtest, dann nimm dafür doch ein Analysewerkzeug wie z.B. canoo webtest, da ist afaik nix illegal dran. Wenn Du so ein Werkzeug allerdings als Angriffsmittel gegen eine Website nutzt, bist Du bei der heutigen Vorratsdatenspeicherung der Provider ehrlich gesagt eh nicht mehr zu retten ;-)
 
Für solche Fälle wird man um Hochsprachen wie Java oder C++ wohl nicht herum kommen.

Ich glaube das Problem wird da eher Bruteforce selbst sein, ich hab mal ein kleines Programm in C++ geschrieben, was so einen Bruteforceangriff simuliert, einfach um mal eine Zeitvorstellung zu kriegen. Es wurden alle Buchstaben in Groß-und Kleinschreibung sowie alle Zahlen von 0-9 durchprobiert, d.h. nicht einmal Sonderzeichen.
Wenn ich mich recht erinnere war ab 5 Zeichen Schluss.
 
Mit PHP wirst du eine Seite nicht mit Brute Force knacken können, weil auf den meisten Servern eine Laufzeitbeschränkung für PHP-Skripte besteht. Die liegt normalerweise bei 30 oder 60 Sekunden. In der Zeit kriegst du ein gutes Passwort nicht geknackt. Und grade weil du ja die schon erwähnten Lade-, Ausgabe- und Antwortzeiten abwarten musst, wirds schon gleich gar nicht klappen.

Grüße,
Frezl
 
Mit PHP wirst du eine Seite nicht mit Brute Force knacken können, weil auf den meisten Servern eine Laufzeitbeschränkung für PHP-Skripte besteht. Die liegt normalerweise bei 30 oder 60 Sekunden. In der Zeit kriegst du ein gutes Passwort nicht geknackt. Und grade weil du ja die schon erwähnten Lade-, Ausgabe- und Antwortzeiten abwarten musst, wirds schon gleich gar nicht klappen.

Ich würde das nicht als das Hauptproblem sehen, Skriptlaufzeiten kann man ja ändern.

So eine Attacke mit einem PHP-Skript dürfte, mal angenommen Benutzername+Passwort sind je nur 4 Zeichen lang, so lange dauern, dass, bis man wirklich eine Chance hat, einen Treffer zu erlangen, der Server verrostet und das Rechenzentrum zu Staub zerfallen ist :-)

Alleine die anfallenden Stromkosten im Laufe der 100en von Jahren dürften sich im Millionenbereich bewegen, es wäre einfacher+billiger, den Server von von einem Profi klauen zu Lassen :suspekt:
 
In der Zeit kriegst du ein gutes Passwort nicht geknackt.

Kommt drauf an wie du gutes Passwort definierst. Wenn du als letztes zu überprüfendes Zeichen die 9 nimmst, und das Passwort lautet 999999, dann ist das zwar ein schlechtes Passwort, aber es dauert am längsten ;)

Wie ich schon geschrieben habe, selbst in C++ war nach 5 (höchstens 6) Zeichen Schluss, länger als 13sek wollte ich nicht mehr warten (die vorherige Wartezeit war erheblich geringer).
 
Zurück