【发布时间】:2015-01-28 03:30:39
【问题描述】:
我正在尝试利用在 VM 内运行的示例网站中的一些 Web 漏洞(它在 Web 上不可用 - 仅用于教育目的)。我有一个搜索条件字段,我写“全部”来显示所有产品,或者写一个特定的产品。
我尝试在字段中注入代码以进行搜索,但不起作用。
我测试过:
' or 'UPDATE' 'products' 'SET' 'price'='0' 'where' 'price'='1000'--'
' or 'UPDATE products SET price=0 where price=1000'--';
all' or DROP TABLE products #
(...)
但通常会返回一条消息:
SQL 错误:您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 1 行的“按价格订购”附近使用正确的语法
SQL 语句:SELECT pcode,price,description FROM products WHERE description like '%' or 'UPDATE products SET price=0 where price=1000'%' ORDER BY PRICE
【问题讨论】:
-
请参阅en.wikipedia.org/wiki/SQL_injection,了解如何利用此类漏洞的一些示例。请注意,SQL 适配器需要支持 multi-statement(例如,这些在
mysqli中默认禁用)请求以搭载单独的 DML 语句。 -
这个问题似乎离题了,因为它与编程无关。对于与安全相关的问题,请使用 security.stackexchange.com。
标签: sql database web-applications