Добрый день... вот написал скрипт для проверки списка сайтов на уязвимость MySQL ijection, но вот столкнулся с проблемой..Скрипт вначале проверяет все сайты а потом выводит результат, как можно сделать что бы скрипт проверял один сайт и выводил результат, затем другой проверял и выводил результат и т.д.
| Код | <html> <head> <style> body { padding:10px; background:#2A2E33; font-family:tahoma, verdana, arial; font-size:11px; text-align:center; color:#B9B9BD; } a:link, a:hover, a:visited { color:#B9B9BD; text-decoration: none; } input { vertical-align:middle; margin:1px 0; padding-right:10px; border:1px solid #336600; padding:2px; background:#363940; color:#B9B9BD; } textarea { vertical-align:middle; margin:1px 0; padding-right:10px; border:1px solid #336600; padding:2px; background:#363940; color:#B9B9BD; } form { padding:10px; border:1px solid #666; width:400px; margin:0 auto; } </style> <title>MySQL scanner</title> </head> <body> <?php // By Zircool
error_reporting (0);
if(set_time_limit(0)) { set_time_limit(0); ignore_user_abort(1); $limit = true; }
$config["LISTTXT"] = "list.txt"; $config["GOODTXT"] = "good.txt";
if(isset($_GET["clean_list"])) { $pf = fopen($config["LISTTXT"], "w"); fclose($pf); print "<a href='index.php'>Done!</a>"; die; }
if(isset($_GET["clean_good"])) { $pf = fopen($config["GOODTXT"], "w"); fclose($pf); print "<a href='index.php'>Done!</a>"; die; }
Error_Reporting(E_ALL & ~E_NOTICE); print('<form method="POST">'); print(" Скрипт сканирует сайты на наличие в них уязвимости MySQL injection "); print('</br>' ); print('</br>' ); print "<a href=\"".$config["LISTTXT"]."\"><B>LIST.TXT</B></a> - ".count(file($config["LISTTXT"]))." - <a href='index.php?clean_list=1'>clean</a>"; print(' ' ); print "<a href=\"".$config["GOODTXT"]."\"><B>GOOD.TXT</B></a> - ".count(file($config["GOODTXT"]))." - <a href='index.php?clean_good=1'>clean</a><br><br>"; print('</br>' ); print('<input type="submit" name="sub" value=" Go! " />'."<br />\r\n"); print('</form>'); print('</br>' );
if(isset($_POST['sub'])) { ob_get_contents(); $sites=file('list.txt'); foreach($sites as $site) {
$url=$site."'";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_HEADER, TRUE); curl_setopt($ch, CURLOPT_NOBODY, FALSE); curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); curl_setopt($ch, CURLOPT_USERAGENT, "MSIE 7.0"); curl_setopt($ch, CURLOPT_TIMEOUT, 60); $text = curl_exec($ch); curl_close($ch);
$host=parse_url($url); $host=$host['host']; echo "Выполняеся проверка сайта ".$host."<br>";
$substr_count = substr_count($text,"SQL");
if ($substr_count > 0) { $goodfopen = fopen($config["GOODTXT"], "a+"); fwrite($goodfopen, $site); fclose($goodfopen);
}
ob_flush();
}
}
?> </body> </html>
|
Содержимое файла list.txt там 2 сайта с инъекциями, администраторам сайтов уже сообщено об инъекциях на их сайте, но пока видимо админы ещё не проверяли почту....
| Код | http://www.krainamriy.com/news.php?id=42 http://www.michaelpollan.com/article.php?id=12 http://www.humanevents.com/article.php?id=7591 http://www.kromestudios.com/games/results_platform.php?id=2 http://referat.svitonline.com/details.php?id=484 http://www.ipecac.com/bio.php?id=44 http://www.aratta-ukraine.com/news_ua.php?id=5070
|
Заранее благодарен...
|