也许我上面的问题可能是愚蠢的,但我只是想知道是否有可能在select或where内插入查询。
我想知道的原因是,如果有人入侵了网站或任何应用程序数据库,那么黑客可以在我不知情的情况下将数据输入到被入侵的数据库中吗?
我在其他站点看到的以下SQL注入示例
http://www.example.com/empsummary.php?id=1 AND 1=-1 union select 1,group_concat(name,0x3a,email,0x3a,phone,0x2a),3,4,5,6,7,8,9 from employee
我知道上面的查询到底做了什么,但是黑客可以在数据库或任何表上输入(使用插入查询)吗?
是的,如果数据库接口配置为允许查询中有多个语句,则可能会发生。
一个INSERT
不能为的一部分运行SELECT
的语句。但是,利用漏洞可能会完成SELECT,然后执行单独的插入操作。
假设您有一个容易受到攻击的陈述,例如:
SELECT foo FROM bar WHERE fee = '$var'
当$var
包含以下内容时,请考虑SQL文本:
1'; INSERT INTO emp (id) VALUES (999); --
SQL文本可能是这样的:
SELECT foo FROM bar WHERE fee = '1'; INSERT INTO emp (id) VALUES (999); --'
如果在数据库接口库中启用了多语句查询,则可以想到INSERT
可以执行一条语句。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句