如何通过SQL注入更新列?
我没有找到太多这方面的信息,但我听说可以在 URL 栏中输入 SQL 查询以从数据库中提取数据,我只是想知道是否也可以通过它更新列或表。
下面是一个示例:
SELECT *
FROM table
WHERE 1 = '2'
AND 3 = '$input'
是否可以在 URL 栏中使用更新查询?如果可以,如何进行?
I haven't found much information on this, but I heard it is possible to enter SQL queries into the URL bar to extract data from a database, I was just wondering if it was also possible to update a column or table through it.
Here's an example:
SELECT *
FROM table
WHERE 1 = '2'
AND 3 = '$input'
Is using an update query in the URL bar possible, and if so, how?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
如果有人创建这样的 SQL 查询字符串
,那么如果输入是
结果 SQL
将包含两个 SQL 语句。然后第二个可以做注射器想做的任何事情。
有两种可能性可以防止这种情况发生。
1
转义输入中的单引号,
将错误的输入转换为字符串的一部分
2
使用参数而不是字符串连接
详细信息取决于数据库、数据库访问技术和所使用的编程语言。我的例子必须被理解为伪代码。
If someone creates a SQL query string like this
then if the input is
The resulting SQL will be
It will contain two SQL statements. The second one can then do about anything the injector wants.
There are two possibilities to prevent this to happen.
1
Escape the single quotes in the input
turning the bad input into a part of the string
2
Use parameters instead of string concatenation
The details depend on the database, the database access technology and the programming language used. My examples have to be understood as pseudo code.