[英]SQL injection query for enumerating available tables in databases
我们有一个练习,正在努力想出一个 sql 注入,从 mySQL 的数据库中找到更多的数据。
这是我们得到的结果: mySQL 网页结果
在上图中,您可以看到我们已经设法让数据库泄露用户标识、用户和密码值。
为此,我们在登录框中输入: admin' --
Then: ' union select table_name from information_schema.tables --
在密码框中
然而,这并不是演习的全部目标。 我们必须发现可用的数据库和表。 我们不确定为什么响应没有考虑我们union select table_name from information_schema.tables
。
以下是在登录或密码框中未输入任何内容时的响应示例:默认 mySQL 网页
我们的任务:
有人能指出我们正确的方向吗?
为什么 information_schema.tables 中的select table_name from information_schema.tables
工作?
更新:在将第一个登录框中的初始查询重组为:
admin’ union select table_name,2,3 from information_schema.tables -- -
修复:第一个 select 查询和联合 select 查询之间的列数必须匹配。
您可能必须将整个注入放在用户名框中。 目前--
在登录输入中的“ admin'
之后,正在评论查询的 rest。
即登录框应该包含admin' UNION SELECT table_name FROM information_schema.tables --
您可能需要 select 填充来自information_schema.tables
的列,因为无法判断users
表有多少列。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.