找回密码
立即注册
搜索
热搜: Java Python Linux Go
发回帖 发新帖

2836

积分

0

好友

394

主题
发表于 4 小时前 | 查看: 0| 回复: 0

在针对 Web 应用进行安全测试时,有一个容易被忽略但回报率很高的侦察方向:仔细搜索前端 JavaScript 文件中出现的 .json 文件路径。特别是在 /assets/mock//test//fixtures/ 这类目录下,开发或测试人员很可能遗留了包含真实数据的测试文件。这些文件往往未做访问控制,直接暴露了诸如个人隐私信息、API密钥、Token乃至内部接口结构等敏感内容。

这种思路为何有效?因为现代前端开发中,为了方便联调和测试,常常会使用本地的 Mock 数据文件。项目上线后,如果清理不彻底,这些文件就可能被一并打包部署到生产环境。攻击者或测试人员只需从前端打包后的代码中定位到这些请求路径,即可尝试直接访问。

例如,在打包压缩后的 JS 文件中,你可能会发现类似这样的代码片段:

fetch(“/assets/mock/user.json”)
axios.get(“/mock/order-detail.json”)

这些路径直接指明了服务器上可能存在的、未受保护的 JSON 文件资源。

这些 Mock 或测试用的 JSON 文件里都可能藏着什么“宝藏”呢?

  • 测试账号的邮箱、密码
  • 真实的用户姓名、手机号
  • 有效的 JWT Token 或会话标识
  • 完整的内部 API 接口地址和结构
  • AWS/Aliyun 等云服务的密钥、Stripe 支付密钥
  • 内网服务的 URL 地址和数据库连接字符串

关键在于,这些文件通常没有任何访问权限校验,通过浏览器直接访问对应 URL 就能下载:

https://target.com/assets/mock/users.json

这无疑是一个典型的“低成本、高回报”的安全漏洞挖掘点。下面我们通过几个具体场景来看看其危害性。

场景一:泄露真实用户隐私信息

假设在对一个目标进行前端测试时,在其 main.js 文件中发现了这样一行代码:

axios.get(“/assets/mock/userList.json”)

那么,直接尝试访问构造出的完整 URL:

https://target.com/assets/mock/userList.json

返回的结果可能令人震惊:

[
  {
    “id”: 1001,
    “name”: “Alice Zhang”,
    “email”: “alice@company.com”,
    “phone”: “+86-138xxxx”
  }
]

这直接导致了用户个人身份信息泄露,属于高危的 PII 数据泄露漏洞。

场景二:泄露高权限测试 Token

另一个常见的情况是泄露用于模拟登录的 Token。代码中可能这样写:

fetch(“/mock/loginResponse.json”)

访问该文件,内容可能是:

{
  “token”: “eyJhbGciOiJIUzI1NiIsInR5cCI...”,
  “role”: “admin”
}

攻击者获取到这个 Token 后,很可能直接将其用于身份认证,从而绕过登录流程,实现未授权访问甚至获取管理员权限,这直接构成了认证绕过漏洞。

场景三:泄露内部架构与凭据

更严重的情况是,这些 JSON 文件可能直接暴露系统的内部架构。例如,一个配置文件可能包含:

{
  “internalApi”: “http://10.0.3.15:9000/admin/deleteUser”,
  “db”: “mongodb://user:pass@10.0.0.5:27017”
}

这不仅暴露了内网 IP 和端口,甚至直接给出了数据库的连接凭据。这类信息对于后续的内网横向移动和深度渗透具有极高的价值,属于严重的信息泄露漏洞。

总而言之,从前端 JavaScript 代码中挖掘未受保护的 JSON 资源路径,是一种非常直接且高效的信息收集手段。它提醒开发者在项目上线前务必清理测试和 Mock 文件,同时也为安全测试人员提供了一个清晰的检查清单。如果你在日常开发或安全研究中遇到过类似案例,欢迎到云栈社区的对应板块分享与交流。




上一篇:基于主动与被动的Web漏洞扫描工具xray实战解析:从安装到自定义POC检测
下一篇:Linux内核如何应对突发风险?解读官方的项目延续性与继任计划
您需要登录后才可以回帖 登录 | 立即注册

手机版|小黑屋|网站地图|云栈社区 ( 苏ICP备2022046150号-2 )

GMT+8, 2026-1-31 21:30 , Processed in 0.274674 second(s), 42 queries , Gzip On.

Powered by Discuz! X3.5

© 2025-2026 云栈社区.

快速回复 返回顶部 返回列表