Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz

23.03.2008, 03:01
|
|
Постоянный
Регистрация: 29.05.2007
Сообщений: 852
Провел на форуме: 4832771
Репутация:
1916
|
|
BBG2
Там в скрипте просто пробелы в переменных стояли, вот и ошибки выдавал.
PHP код:
<?
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~[ xxx ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
/*
/* Forum Dump Parser v0.2 (FDPv0.2)
/* by Re@ctor
/* http://truenet.net.ru/security/
/*
/*
/* Скрипт предназначен для частного использования и позволяет
/* привести имеющиеся дампы баз данных в единый удобный формат для
/* дальнейшего анализа в программе Passwords Pro, либо просто
/* в списки для других программ.
/*
/* Скрипт запрещается использовать в корыстных целях и автор не
/* несёт ответственности за возможный ущерб, причинённый от исполь-
/* зования данного скрипта.
/*
/* Скрипт запрещается использовать в противозаконных целях, либо
/* целях, ведущих к умышленному или неумышленному нарушению законода-
/* тельства Российской Федерации.
/*
/* Хорошего дня и доброго насроения! ;-)
/* Помните про существование TrueNET! =)
/*
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~[ xxx ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
###### 1. выходной формат файлов ######
# для брута, формат Passwords Pro
#$sort = array('username','password','salt'); # пользователи
#$sort = array('email','password','salt'); # мыльники
$sort = array('icq','password','salt'); # аськи
# помните, что формат PPro - имя:хэш:сальт:расшифр.пароль:комментарий
# поэтому надо писать от 2 до 3 значений, т.к. меньше или больше
# будет воспринято неверно программой.
# просто базы
#$sort = array('email'); # e-mail
#$sort = array('icq'); # icq
###### 2. формирование строк ######
$delim = "¤"; # разделитель между значениями
$br = "\n"; # чем заканчивать строку (\n - перенос строки)
###### 3. промежуточный вывод ######
$makefiles = 1; # делать ли отдельные файлы для каждого дампа
$ext = "txt"; # расширение выходного файла этих файлов
###### 4. параметры сбора информации ######
$site = 1; # если $makefiles = 0;, то получать сведения о сайте
# из титла и мета-тегов (необоходимо подключение к сети) и записывать в начало файла
# ( удобно при составлении тематических спам-баз )
# формат файла должен быть префиксАДРЕС_САЙТАрасширение, где префикс и расширение любые
$site_prefix = ''; # если $site=1, указать префикс файлов
$site_ext = '.sql'; # если $site=1, указать расширение файлов
$convert = 0; # конвертировать полученный текст в win-1251, если оно не в нём (отключить при багах)
###### 5. общий файл с данными ######
$hashmake = 1; # делать ли единый файл со всеми хэшами
$hash_filename = '!PasswordsPro.Hashes'; # имя файла с хэшами
###### 6. выборка из дампов админов в отдельный файл ######
$admins = 1; # сделать файл с хэшами админов дампов
$admin_pass = 'password'; # имя ячейки с хэшем пароля
$admin_salt = 'salt'; # имя ячейки с салом пароля
$admin_comment = array('username','email','icq'); # то что будет в комментарии в полях пассворс-про
$admin_filename = '!admin.PasswordsPro.Hashes';
###### 7. (WARNING!) имя первой ячейки в таблице ######
$firstintable = 'userid'; # название первой ячейки в таблице (важно!)
ini_set("max_execution_time","86400");
set_time_limit(0);
function make($value) { return preg_replace("'\'(.*?)\''i",'\\1',$value); }
function checksalt($salt) { if(strlen($salt)>3) return str_replace(array("\\\\",'\"',"\'"),array("\\",'"',"'"),$salt); else return $salt; }
function koi($txt) { return convert_cyr_string($txt,'k','w'); }
function iso($txt) { return convert_cyr_string($txt,'i','w'); }
function myau() { echo "\n\nDone! ;-D\n\nNice day. Visit http://truenet.net.ru/ !\n\n"; }
$d=opendir('.');
while(($e=readdir($d))!=false) {
if($e=='.'||$e=='..' || $e==$admin_filename || $e==$hash_filename || $e==$argv[0]) continue;
if(is_file($e)) {
if($makefiles==1)$f = fopen("$e.$ext","w+");
echo "[+] $e (".filesize($e)." bytes)\n";
$file = file($e);
foreach($file as $a) {
$tmp = explode(' ',$a); $tablesuf=$tmp[1];
if(!$vars) { if($tablesuf==$firstintable) { $vars[]=array('name'=>$firstintable,'num'=>0); } continue; }
foreach (array_unique(array_merge($sort, $admin_comment)) as $s) {
if($tablesuf==$s) { $vars[]=array('name'=>$s,'num'=>count($vars)); $y=1; }
}
if(!$y) $vars[]='b'; else unset($y);
if(strstr($a,'PRIMARY KEY')) break;
}
foreach($file as $a) {
if(strstr($a,"INSERT INTO")) {
$tmp = preg_replace("'INSERT INTO (.*?) VALUES\((.*?)\);'i",'\\2',$a);
$values = explode(',',$tmp);
foreach($values as $v) { $m[] = str_replace(array("\r","\n"),'',$v); }
foreach($sort as $s) {
if(!$vars) { echo "[!] Can't get table values from $e =[\n"; break; } else foreach($vars as $v) {
if($admins==1&&$hashmake==0&&$makefiles==0) {
if(!$tr) $tr[]=$e;
if($v['name']==$admin_pass) $tr[]=make($m[$v['num']]);
elseif($v['name']==$admin_salt) $tr[]=checksalt(make($m[$v['num']]));
foreach($admin_comment as $comm) if($comm==$v['name']) $comment[] = make($m[$v['num']]);
$admok=1;
} else {
if($s==$v['name']) {
if($s=='salt') $tm[] = checksalt(make($m[$v['num']]));
else $tm[] = make($m[$v['num']]);
}
if($admins==1&&!$admok) {
if(!$tr) $tr[]=$e;
if($v['name']==$admin_pass) $tr[]=make($m[$v['num']]);
elseif($v['name']==$admin_salt) $tr[]=checksalt(make($m[$v['num']]));
foreach($admin_comment as $comm) if($comm==$v['name']) $comment[] = make($m[$v['num']]);
}
}
}
if($admok==1) break; $admok=2;
}
if($tm[0])$globhash[]=$towrite[]=@implode($tm,$delim); if($admins==1)if($tr[0])$odmen[] = @implode($tr,$delim) .$delim.$delim.@implode($comment,', ');
unset($tr); unset($m); unset($tm); unset($comment);
if($admok==1) break;
}
}
if($makefiles==1) {
if($site==1) {
$host = preg_replace("'$site_prefix(.*?)$site_ext'i",'\\1',$e);
echo "[:] connecting to $host..\n";
$fp = fsockopen($host,80,&$errno,&$errstr,5);
if(!$fp) echo "[:] Error connecting $host ($errno - $errstr)\n";
fputs($fp,"GET / HTTP/1.0\r\nUser-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; en)\r\nHost: $host\r\nAccept-Language: ru\r\nAccept-Charset: windows-1251, utf-8, utf-16, iso-8859-1;q=0.6, *;q=0.1\r\n\r\n");
while(!feof($fp)) {
$tmp=fgets($fp,1000);
if(preg_match("'charset='i",$tmp)||!$schar) {
$ch=preg_replace("'(.*?)charset=(.*?)\r\n'i",'\\2',$tmp);
if(preg_match("'koi8-r'i",$ch)) $koi=1;
elseif(preg_match("'iso8859-5'i",$ch)) $iso=1; $schar=1;
}
elseif(preg_match("'<title>(.*?)</title>'i",$tmp)) {
$title=preg_replace("'(.*?)<title>(.*?)</title>(.*?)'i",'\\2',$tmp);
echo "[:] TITLE ok..\n";
}
elseif(preg_match("'<meta (.*?)keywords(.*?)>'i",$tmp)) {
$kiwords=preg_replace("'(.*?)<meta (.*?)content=(\"|\')(.*?)(\"|\')(.*?)>(.*?)'i",'\\4',$tmp);
echo "[:] KEYWORDS ok..\n";
}
elseif(preg_match("'<meta (.*?)description(.*?)>'i",$tmp)) {
$descr=preg_replace("'(.*?)<meta (.*?)content=(\"|\')(.*?)(\"|\')(.*?)>(.*?)'i",'\\4',$tmp);
echo "[:] DESCRIPTION ok..\n";
}
elseif(preg_match("'</head>'i",$tmp)||preg_match("'<body'i",$tmp)) break;
}
fclose($fp);
if($koi||$convert==1) { $title=koi($title); $kiwords=koi($kiwords); $descr=koi($descr); }
if($iso||$convert==1) { $title=iso($title); $kiwords=iso($kiwords); $descr=iso($descr); }
$info="Site: $host\nTitle: $title\nDescription: $descr\nKeywords: $kiwords\n\n"; $title=$host=$descr=$kiwords='';
}
echo "[~] sorting and writing hashes in $e.$ext..\n"; @asort($towrite); fwrite($f,$info.@implode($towrite,$br)); fclose($f); unset($info);
}
unset($vars); unset($file); unset($towrite); unset($admok);
}
}
if($hashmake==1) { echo "[*] sorting & writing all hashes..\n"; @asort($globhash); $f = fopen($hash_filename,"w+");fwrite($f,@implode($globhash,$br));fclose($f);}
if($admins==1) { echo "[*] sorting & writing admin hashes..\n"; @asort($odmen); $f = fopen($admin_filename,"w+"); fwrite($f,@implode($odmen,$br)); fclose($f);}
myau();
?>
__________________
что за скрипт? ПЕРЛ или ПХП
а по тегам не видно?)) пхп конечно)
а что за скрипт написано в коментах:
Скрипт предназначен для частного использования и позволяет
привести имеющиеся дампы баз данных в единый удобный формат для
дальнейшего анализа в программе Passwords Pro, либо просто
в списки для других программ.
|
|
|
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|