AFoST
10.02.2009, 05:10
VarTryer v. 1.0 [console]
Скрипт для быстрой проверки php-скриптов на баги [фаззер]
1. Принцип работы
Запускаем скрипт, по подсказкам вводим нужные данные. Запрашивается хост (например, localhost). Запрашивается путь к проверяемому файлу и сам файл (например, /files/doc/index.php) и запрашивается путь и файл, в котором хранятся переменные, которые будут участвовать в проверке($ перед переменной обязательно, например $variable).
Пример файла с переменными
$var1
$var2
$var3
После чего, подсчитывается количество переменных и соответственно делаются запросы(POST, GET, COOKIE) к скрипту с каждой переменной, например
GET http://localhost/index.php?tryvar=tryval
host: localhost
Connection: close
POST http://localhost/index.php
host: localhost
Connection: close
Content-type: application/x-www-form-urlencoded
Content-Length: 13
tryvar=tryval
GET http://localhost/index.php
Cookie: tryvar=tryval
host: localhost
Connection: close
Далее получается ответ от сервера (если в теле полученного документа есть слово error или warning, то тут же на экран выводится извещение и запрос при котором, была получена ошибка) подсчитывается размер ответа. Создается массив с размерами ответов сервера. Далее, высчитывается математическое ожидание размера ответа, дисперсия и среднеквадратическое отклонение. И идёт выборка "странных" значений размера ответа. Выводится схематический текстовый график вероятности выпадения размеров и справа список параметров. Ниже выводится список "странных" размеров с методом и переменной, при которой этот ответ был получен.
2. Требования
Код написан на php с ООП(собственно, учился ООП тут =)).
Требуется php5+ и включенные сокеты.
3. Назначение
1)Быстрый анализ локального php-скрипта на баги.
Ставим проверяемый скрипт на сервер. Вводим хост и путь к файлу. На запрос пути к файлу с переменными указываем тот же файл, что висит на сервере. Скрипт пропарсит проверяемый файл на переменные и далее пойдет проверка.
2)Удаленный анализ на php-баги.
Указываем удаленный хост и путь к сприпту. Указываем путь к файлу с набором переменных. Смысл в том, что если на проверяемом хосте включен register_globals = on и в скрипте есть ошибки, связанные с переменными, то скрипт их должен выявить.
3. Установка
Весь скрипт состоит из главного файла и нескольких подключаемых классов. Надо лишь разархивировать архив в одну папку.
(с) AFoST 10.02.2009 4:10
Скрипт для быстрой проверки php-скриптов на баги [фаззер]
1. Принцип работы
Запускаем скрипт, по подсказкам вводим нужные данные. Запрашивается хост (например, localhost). Запрашивается путь к проверяемому файлу и сам файл (например, /files/doc/index.php) и запрашивается путь и файл, в котором хранятся переменные, которые будут участвовать в проверке($ перед переменной обязательно, например $variable).
Пример файла с переменными
$var1
$var2
$var3
После чего, подсчитывается количество переменных и соответственно делаются запросы(POST, GET, COOKIE) к скрипту с каждой переменной, например
GET http://localhost/index.php?tryvar=tryval
host: localhost
Connection: close
POST http://localhost/index.php
host: localhost
Connection: close
Content-type: application/x-www-form-urlencoded
Content-Length: 13
tryvar=tryval
GET http://localhost/index.php
Cookie: tryvar=tryval
host: localhost
Connection: close
Далее получается ответ от сервера (если в теле полученного документа есть слово error или warning, то тут же на экран выводится извещение и запрос при котором, была получена ошибка) подсчитывается размер ответа. Создается массив с размерами ответов сервера. Далее, высчитывается математическое ожидание размера ответа, дисперсия и среднеквадратическое отклонение. И идёт выборка "странных" значений размера ответа. Выводится схематический текстовый график вероятности выпадения размеров и справа список параметров. Ниже выводится список "странных" размеров с методом и переменной, при которой этот ответ был получен.
2. Требования
Код написан на php с ООП(собственно, учился ООП тут =)).
Требуется php5+ и включенные сокеты.
3. Назначение
1)Быстрый анализ локального php-скрипта на баги.
Ставим проверяемый скрипт на сервер. Вводим хост и путь к файлу. На запрос пути к файлу с переменными указываем тот же файл, что висит на сервере. Скрипт пропарсит проверяемый файл на переменные и далее пойдет проверка.
2)Удаленный анализ на php-баги.
Указываем удаленный хост и путь к сприпту. Указываем путь к файлу с набором переменных. Смысл в том, что если на проверяемом хосте включен register_globals = on и в скрипте есть ошибки, связанные с переменными, то скрипт их должен выявить.
3. Установка
Весь скрипт состоит из главного файла и нескольких подключаемых классов. Надо лишь разархивировать архив в одну папку.
(с) AFoST 10.02.2009 4:10