Привет. Интересует заливка шелла через БД. HTML: http://www.stpatsfc.com/news.php?id=-2839%20UNION%20SELECT%201,2,3,4,5,6,file_priv%20from%20mysql.user-- Выдает ошибку: SELECT command denied to user 'stpatsf_admin'@'web6.novara.ie' for table 'user' Получается, что невозможно выполнить SELECT ... INTO DUMPFILE 'бла-бла', и шелл залить нельзя? Максимум это слить базу?
Эта ошибка означает, что у текущего пользователя БД нет доступа к таблице mysql.user. Тем не менее при этом file_priv может быть Y. Но в данном случае экранируются кавычки, так что INTO DUMPFILE не сработает в любом случаем. MySQL там 5ой версии, слей названия таблиц, поищи админку и т.д.
Думаю что кавычки это наименьшая из проблем там. Ведь у пользователя нету прав. Странно, я почему-то думал, что Magic Quotes можно обойти. Правда опыта у меня не много, пока в основном читаю литературу. Например Bernardo Damele, ведущий разработчик sqlmap, пишет по этому поводу так (http://www.slideshare.net/inquis/sql-injection-not-only-and-11-updated):
есть доступ в админку сайта, но не получается залить шелл. через менеджер изображений не получается. есть возможность добавлять свои переменные на сайте в виде массива или переменной... можно ли какой-нибудь код добавить,чтобы можно было как-то залиться шелл?
если бы всё так на деле обстояло. переменные, которые уже забиты указывают в основом как выводить картинку, как показано меню и т.д. в хтмл форме.
В двойных кавычках(С разрешением RG, или с не экранированием одинарных), или попробовать выйти за пределы переменной.
Есть вопросец.Имеется вот такой вот инклуд: Code: http://atlanticacorp.com/pages/admin/img_stats.php?file=../../../inf/config.php .Но вывод идет только одной строки ( а именно 3).Можно ли выжать что то большее?
PHP: //if($_SESSION['user_admin']>=$adminRights['stats']) { if(isset($_GET['file']) && !empty($_GET['file'])) { if(file_exists('./cache/'.$_GET['file'])) { $contents = file('./cache/'.$_GET['file']); $imgTyp = trim($contents[1]); $imgTitel = trim($contents[2]); $imgValues = trim($contents[3]); $imgStrings = trim($contents[4]); $inWerte = unserialize($imgValues); $inStrings = unserialize($imgStrings); } } Здесь не инклуд, а локальное урезанное чтение файлов. В коде жесткое ограничение, что значения берутся только с 3 строчки. Странно, что проверка на админа закомментирована.
ДАДАДА.Меня тоже удивила, как будто специально багу мастерили в двиге.Тоесть ничего не сделать?А вот нашел сайтец на похожем движке: Code: http://cwerymt2.ru/index.php?s=../../../../../../../../etc/passwd%00 Двиг аналогичный, но инклуд пашет (просто видно на том сайте нуль байт не пахал).Чисто дальнейшее развитие событий какое может быть?Как происходит залив шелла через локальный инклуд, если неизвестны пути до access.log ?
Это не инклуд а читалка. Совсем разные понятия. Всё, что ты можешь сделать с помощью этой уязвимости - читать 3-ую строчку из файлов.
Нашел SQL-инъекцию на сайте...ребята из античата раскрутили её до вывода версии, имя пользователя, таблицы... Напишите как можно из этих данных получить пароли всех пользователей в том числе и админа))) Вот SQL-инъекции http://www.tnak.am/sub/aforizm.php?act=1&uid=52&let=1/**/and/**/row(1,1)%3E(select/**/count(*),concat(version(),0x3a,floor(rand()*2))/**/x/**/from/**/(select/**/1/**/union/**/select/**/2)a/**/group/**/by/**/x/**/limit/**/1)+--+1
как отфильтровать запрос таким образом, мне например надо inurl:index.php?test= но что бы искало по контенту например powered by coolsite попробовал такую чушь inurl:index.php?test= intextowered by coolsite не канает подскажите
Примерно так: Code: "Powered by: vBulletin" inurl:forum42.html Советую изучить все поиск. запросы гугла и искать так как тебе надо, а не как он выдаёт.