![]() |
Автоинклюдер от меня
Emo auto-includer Для начала расскажу как пользоваца (хотя, в принципе, всё интуитивно понятно) :cool: I. Manual load_file() include via remote MySQL-Injection пример: Возьмем такую инъекцию: Цитата:
Код:
URL: http://www.vulnsite.com/vulnfolder/vulnscript.php?id=-1Local include пример: Возьмем такой инклюд: Цитата:
Код:
URL: http://www.vulnsite.com/vulnfolder/vulnscript?id=Думаю, здесь всё понятно :) Далее расскажу принцип работы. II. Principum load_file() include via remote MySQL-Injection Объясню опять же на примере. Возьмем ту же инъекцию: Цитата:
Цитата:
Ну, из этого понятно, что если скрипт видит EXIST между этими тегами, значит путь существует. Local include Здесь ситуация сложнее, ибо вставить свои теги или вообще какой-то текст нет возможности. Проблема решилась с помощью этакой гадалки :D Точнее функции similar_text(). Вот описание функции - ttp://us2.php.net/similar_text. Возьмем тот же инклюд: Цитата:
III. Outro Также в процессе написания и отлаживания возник вопрос обработки больших файлов (спасибо Spyder), таких как access_log или error_log в апаче, которые могут иметь довольно большие размеры и, соответственно, сильно тормозить работу скрипта. Решение нашел, на мой взгляд, единственное - грузить только часть страницы. За "часть" был взят размер в 80КБ, которого, по-моему, должно вполне хватить :) Собственно, вот сам скрипт: Код:
http://goportacaribe.com/tmp/index.phpIV. P.S. Почему не выкладываю исходники? Я за опенсорс, но и за грамотность кода. Просто стыдно выкладывать этот ужас :) Ибо мои познания в пхп очень далеки от совершенства. Но если кому-то действительно нужно или интересно - напишите в личку, залью куда-нибудь. Приму любые пожелания и критику. Желательно на чем-то основанные :) Все баги или недочеты - в тему или в личку, по мере возможности буду исправлять и обновлять. Если есть какие-то идеи по реализации проверки правильности пути в локальном инклюде - велком в асю или в личку. Признаюсь, стили не мои. Те кто в теме - поймут откуда ;) если не туда запостил - перенесите |
Скрипт работает =)
Цитата:
Цитата:
фича Local include в идеале должна принимать всего один параметр - URL с инклудом, количество папок можно определить самим скриптом (например перебирать путь до /etc/passwd или C:/boot.ini или брать из ошибки PHP, если таковая имеется) Цитата:
|
[Raz0r],
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
|
Потестил всё пашет без накладок ) Молодец n0ne )
|
Цитата:
|
хорошая штука, интересуют сорцы )
|
Don1=2, выслал в личку) спасибо за положительный отзыв :)
|
протестил
тузла с лоад_файл работает хорошо, а вот локал инклуд не нашёл ни одного пути, даж /etc/passwd =) Вобщем идея и реализация хорошая, буду ждать обновления функции поиска при инклуде, ибо пока сыровато |
Молодца, просто супер !!!
|
для mysql load_file() было похожее http://forum.antichat.ru/showthread.php?p=582624
|
| Время: 17:07 |