вы неверно уловили суть проблемы, во 1-ых. по за-альяс'иным колонкам сортирует только груп, который находится в строке с inj.(%23) 2. у group другая ошибка 3. group в отличии от ордер бай в таких запросах сортирует ближайшую выборку 4. +не уверен, но group (в отличии от order) выполняется до формирования столбцов из select, а значит не должен ссылатся на альясы 5. даже если бы проблема была в group, альяс или колонку можно было бы вписать во вторую выборку немного практики- узнаем имя бд(блинд или +union select 1 from lala%23) и составляем запрос в такoм дуxe: конкретно здесь работать не будет, потаму что поля в ордербае задаются в виде имя_табл.колонка (что не катит в двойных запросах) но если в вашей многострочной скуле order by поле то этот способ вам поможет)
Здравствуйте, подскажите пожалуйсто как можно залить шел через PHP иньекцию Вот уязвимый сайт http://www.cyl.ru/index.php?page=3&lang=../%00 Взял я его из раздела PHP иньекции. Там уже залит шел, мне просто интеренсно, каким способом....
1 Это не инклуд там file() 2 Тема что по инклуд, что про читалку достаточно обширная и отражена в статьях. Т.е. нет такой кнопки "Залить шелл через инклуд" (Ну если только RFI ), а переписывать сюда статьи для тебя не имеет смысла . PS Что такое RFI тоже в статьях вот линки, читай: https://forum.antichat.ru/thread12123.html http://forum.antichat.ru/thread23501.html https://forum.antichat.ru/thread91807.html https://forum.antichat.ru/thread98525.html
[ Вопрос ] Автоматизация подбора полей и таблиц в MySQL и MsSql (надеюсь что тут этот вопрос можно задать) Нужны данные проги, работающие по сабжу + независимо друг от друга...если кто то знает сие, то может и заделится)) консольные проги, работающие сами по себе приветствуются)
А кто-нибудь может залить СИПТ 4.0 куда нить,т.к. все ссылки в темах битые.... К тому же качал несколько архивов с ним с 4 сайтов, ни один работает...
Не согласен, при UNION по альясным колонкам в MySQL 5 нужно сортировать ТОЛЬКО ORDER http://dev.mysql.com/doc/refman/5.1/en/union.html: Конкретно ни где это работать не будет(если продемострируете работоспобный запрос для 5 версии MySQL то я буду только рад этому) изходя из первого условия для UNION,ORDER BY и MySQL 5. Согласен с of ORDER BY cannot use column references that include a table name но я и не утверждал что это не так. Ваш запрос такой же не работоспособный был бы если в ORDER сортировался просто по именни колонки без table name. +Боюсь предположить что это при определеных условиях вызовет - #1222 - The used SELECT statements have a different number of columns
Мдя, а в 1 своем посте я не про это писал(как тогда воспринимать ваши заявления,и понт было это отписывать не пойму, это типа того у кого больше яйца)? К чему это? Мало того что вы сами описали почему это не работает, разговор то идет про альяс в первом запросе и про иньект до ордер по названию колонки в оригинале и версию MySQL 5.(e.g. select table_name as lol, table_schema as lol2 from columns where column_name='user' [sql_injection] order by table_name) Например если кодер поймет что ему не надо все значения из columns: select 3,1,2 from columns union select tables.* from tables order by column_name З.Ы. Давайте закончим эту пустой спор, ничего нового я не узнал и из того что вы написали, равно как и вы от того что написал я, если с чем то не согласны и хотите обсудить, для этого есть ПМ.
приведёный пример никак не связан с этой скулей, что касается 3,1,2 - из этой же области: таблица cats.* не везде существует, админ пролил пиво на системник, ...; мой пост был не понтом, а замечанием, что inj в общем случае возможна.
PHP: if (strpos($clean, 'union') !== false && preg_match('~(^|[^a-z])union($|[^[a-z])~s', $clean) != 0) $fail = true; Можно ли (если да, то как?) обойти такую фильтрацию?
strpos() чувствителен к регистру UNION он не заметит. А вот со stripos() такое не прокатит. P.S. да и регулярка тоже чувствительна к регистру без i, т.е. они тоже проглотит UNION и ничего не заметит.
Да, но вся проблема в том, что переменная $clean изначально переводиться в нижний регистр (забыл упомянуть об этом в предыдущем посте).
Тогда хрен что сделаешь, правда без union`a прожить можно - ведь можно и посимвольно инъекцию заюзать.
Grey, ага, только трабла в том, что селект фильтрует, тобишь посимвольный вывод даных из бд (кроме информации о ней) тоже не катит. PHP: // Sub selects? We don't use those either. elseif (preg_match('~\([^)]*?select~s', $clean) != 0) $fail = true; Плюс еще к всему этому он фильтрует < и >, т.е. подбирать придется по очереди через =. Сама уязвимость, если кому интересно Code: http://forum.antichat.ru/showpost.php?p=1328827&postcount=40
А эта регулярка уже кривая: and (/*)*/select substring(version(),1))=4 - такое она пропустит А что касается фильтрации < > - то можно юзать: WHERE IN (0, 255) - по сути (вернее по скорости) тоже самое, что если юзать < >
Если бы не PHP: //Comments? We don't use comments in our queries, we leave 'em outside! elseif (strpos($clean, '/*') > 2 || strpos($clean, '--') !== false || strpos($clean, ';') !== false) $fail = true;