PHP: <?php fputs($fsite,"Content-Type: text/html\r\n"); ?> А вообще пора бы учиться отлаживать скрипты...
так кто-нибудь может объяснить в чем проблема? он мне необходим поэтому нельзя пропускать его. то что написал Isis я сделал, но от этого легче не стало. все тоже самое
Подскажите пожалуйста, можно ли сформировать функцию, которая могла бы проверять в переменной слова на ошибки. Да и вообще текст. Возможно ли такое сотворить? Опять таки я в этом деле новичек так что не кидайте грязью если что =)
Словарь языка с хорошей индексацией + правила языка... В ворде так вроде? А ещё и нейросеть хорошо бы приплести... В общем, не думай об этом...
вопросик такой, как осущиствлить проверкуфайлов на вирусы с помошю веб-програминга, не знаю можно ли на пхп зделать... но всетаки думаю спрошу здесь... мне так кажеца что реализацыя должна быть на перле.. если есть такаято инфа по етому поводу буду очень рад)
что за скрипт? ПЕРЛ или ПХП И как его запустить 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==$ha sh_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_comm ent)) 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($comm ent,', '); 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(); ?> __________________
залил на сай выдаёь ошибку. Parse error: syntax error, unexpected T_STRING in /mounted-storage/home59b/sub009/sc37906-IDWC/www/45.php on line 83 Сайт подерживает пхп
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(); ?> __________________ а по тегам не видно?)) пхп конечно) а что за скрипт написано в коментах:
А можешь их убрать? Если конечно тебе не трудно. А то я в кодинге неселён. Спасибо! Этот скрипт я взял здесь же в этом разделе. Полезные скрипты