Интересует такой вопрос в книге по безопасности php говорилось допустим у нас есть запрос на выбору
mysql_query ("SELECT * FROM user WHERE id='$id'");
$id = числу но можно подставить следующие при должно проверки
$id= 10 OR nick=ADMIN и запрос будет типа
mysql_query ("SELECT * FROM user WHERE id='10 OR nick=ADMIN'");
в вожу в адресной строке следующее
http://site.ru/user.php?id=10 or nick=ADMIN
почему не срабатывает? обработки id нету ибо я сам писал запрос
у тебя в запросе ID передается как string (оно в ковычках), чтобы попасть в тело запроса, нужно сначало выйти за предела id, получится id='10' or nick='ADMIN'
данный тип иньекции требует отключенный magic quotes
YuNi|[c, во первых - раз у тебя данные передаются _POST методом, то символ плюс (+) использовать не нужно, т.к. это аналог пробела, и в твоем случае этот символ попадает так как есть.
во-вторых в конце обязательно нужен комментарий, в качестве которого достаточно использовать символ решетки (#)
в-третьих попробуй так:
ты прав с включеным magic quotes не работает однако насчет '$id' в ковычках ты не прав я попробовал такой запрос сделать
id=1' or nick='ADMIN
получаем
mysql_query ("SELECT * FROM user WHERE id='1' or nick='ADMIN'");
все равно большое спасибо за разъяснение
ну да, а что не так? последняя ковычка после ADMIN'" это ковычка для закрытия запроса, так как mysql_query принимает строку, естественно запрос нужно взять в ковычки, а на синтаксис запроса они никак не влияют
Сорри если не там пишу) но надо срочно узнать)
Вообщем рутанул сервак, расшифровал пасс от рута
пытаюсь подключится через WinScp на стандартный порт 22, но нет конекта...
кто знает как можно узнать порт?
мб он гдето вписан в каком нить файле на сервере?
сервак FreeBSD
или же придется сканить на открытые порты?
Мне кажется быстрее выполнить nmap -sS IP-сервера, чем ждать ответа.