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

WEB bp官方靶场NOSQL注入漏洞1

CTF练习 942 0 2025-9-1 08:47:36

第一关 检测 NoSQL 注入

这一关就是靶场的产品类别的数据由MongoDB数据库提供,容易受到nosql注入攻击,通过检测到存在nosql注入,进行攻击后,可以检索出所有产品

提示:1、靶场的产品类别过滤器由 MongoDB NoSQL 数据库提供支持。它容易受到 NoSQL 注入的攻击。

2、要解决该实验室,请执行导致应用程序显示未发布产品的 NoSQL 注入攻击。

具体操作:

1、随便选个类别点击

2、把这个类别过滤器数据包发往repeater

3、然后在 Repeater 中,在 category 参数中提交一个 ' 字符。请注意,这会导致 JavaScript 语法错误。这可能表明用户输入未正确过滤或清理。

响应返回500,页面显示“内部服务器错误”,

4、在类别查询参数的值中提交有效的 JavaScript 有效负载。可以使用以下有效负载:

category=Accessories'+'

通过突出显示类别参数的值(有效负载)并使用 Ctrl+u快捷键对有效负载进行 URL 编码。注意,它不会导致语法错误。这表示可能正在发生某种形式的服务器端注入。

鼠标左键划过类别的值,突显类别的值后,快捷键ctrl+u,对突显的参数类别的值进行 URL 编码

category=Accessories'%2b'

显示了插入的语句,说明正常进行服务端的注入

再尝试下确定是否可以注入布尔条件来更改响应

在 category 参数中插入 false 条件。例如

category=Accessories' && 0 && 'x

确保对有效负载进行 URL 编码。请注意,不会检索任何产品。

category=Accessories'+%26%26+0+%26%26+'x

显示插入的语句,说明向服务端注入成功,但是没有检索任何产品。

接着尝试在 category 参数中插入 true 条件:

category=Accessories' && 1 && 'x

确保对有效负载进行 URL 编码。注意,已检索“礼品”类别中的产品。

category=Accessories'+%26%26+1+%26%26+'x

响应返回:显示插入的语句,还进行的产品筛选

分析完,知道注入布尔条件有效果

那么先提交一个布尔条件,该条件在类别参数中始终计算为 true:

category=Accessories'||1||'

显示所有类别的产品,包括未发布的,类别有关系还是没关系的都会显示出来

刷新浏览器,靶场过关

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