SleepTheGod/JustBet_0Day_Poc

GitHub: SleepTheGod/JustBet_0Day_Poc

这是一个演示如何通过拦截 Fetch/XHR 请求和篡改本地存储来伪造 JustBet 平台 AI Credits 余额的客户端漏洞概念验证工具。

Stars: 0 | Forks: 0

# JustBet 0Day PoC - AI Credits 漏洞利用 ## ⚠️ 免责声明 **本内容仅供教育和安全研究目的。未经授权修改或利用任何网站的功能是非法的,并且违反了服务条款。此概念验证旨在用于负责任的漏洞披露目的,以演示安全漏洞。** ## 概述 此概念验证演示了一种客户端漏洞,该漏洞会修改 JustBet 平台上 AI Credits 的显示和本地存储。该漏洞利用程序通过拦截 API 响应并篡改本地数据,使 AI Credits 的显示余额变为 $100.00。 ## 工作原理 ### 漏洞详情 该漏洞利用程序通过以下方式针对客户端数据处理: 1. **拦截 API 响应** - 劫持发往 credit/wallet endpoint 的 fetch 和 XMLHttpRequest 调用 2. **修改 Local Storage** - 篡改 localStorage/sessionStorage 中存储的用户数据 3. **DOM 篡改** - 更新显示信用值的 UI 元素 4. **持久化** - 通过定期更新来维持被修改的状态 ### 技术分析 #### 1. Fetch API 拦截 ``` const origFetch = window.fetch; window.fetch = function(...args) { // Targets /api/balance, /api/credits, /api/wallet, /api/user // Returns modified JSON with credits set to $100.00 } ``` #### 2. XMLHttpRequest 劫持 ``` XMLHttpRequest.prototype.open = function(method, url, ...rest) { // Tracks request URLs } XMLHttpRequest.prototype.send = function(body) { // Modifies response data before returning to the application } ``` #### 3. Storage 篡改 ``` Storage.prototype.getItem = function(key) { // Intercepts and modifies stored balance/credit values // Returns modified JSON data } ``` #### 4. UI 更新 - 扫描 DOM 中包含信用值的元素 - 将 "$0.00" 替换为 "$100.00" - 将 "0 WINR" 更新为 "100 WINR" ## 使用说明 ### 方法 1:浏览器控制台(快速测试) 1. 导航至 `https://justbet.com` 2. 打开开发者工具(按 F12 或右键点击 → 检查) 3. 转到 Console 标签页 4. 复制并粘贴整个漏洞利用代码 5. 按 Enter 键执行 ### 方法 2:Bookmarklet(一键执行) 使用以下 URL 创建一个书签: ``` javascript:(function(){const script=document.createElement('script');script.textContent='/* PASTE EXPLOIT CODE HERE */';document.head.appendChild(script);})(); ``` ### 方法 3:浏览器扩展(持久化) 为了进行更持久化的测试,可以创建一个在 JustBet 页面上注入该脚本的 Chrome 扩展。 ## 预期结果 执行后,您应该会看到: - 控制台输出:"💰 Exploiting AI Credits - Setting to $100.00" - AI Credits 显示更新为 $100.00 - localStorage/sessionStorage 中的值已被修改 - 通过自动更新保持持续的持久化 ## 检测与防御 ### 如何检测 - 监控被篡改的 `window.fetch` 和 `XMLHttpRequest` 原型 - 检查被篡改的 `Storage.prototype.getItem` 方法 - 留意 credit 相关元素中意外的 DOM 变动 - 对 credit 数量进行服务器端验证 ### 防御措施 1. **服务器端验证** - 永远不要信任客户端数据 2. **Object.freeze()** - 防止原型被修改 3. **Content Security Policy** - 限制脚本执行 4. **定期完整性检查** - 验证客户端代码是否被篡改 5. **API 响应签名** - 验证响应的真实性 6. **监控控制台访问** - 在生产环境中限制开发者工具 ## 道德考量 此 PoC 旨在: - 演示真实环境中的安全漏洞 - 帮助开发者了解客户端攻击向量 - 促进负责任的漏洞披露实践 **严禁**未经明确授权在生产系统上使用此漏洞利用程序。在测试安全措施之前,请务必获得适当的许可。 ## 负责任的漏洞披露 如果您发现了漏洞 1. 私下通知受影响的服务提供商 2. 给予合理的修复时间 3. 仅在修复实施后才公开披露 ## 仓库结构 ``` JustBet_0Day_PoC/ ├── PoC.txt # Main exploit code ├── README.md # This documentation └── LICENSE # License information ``` ## 许可协议 本项目仅供教育目的使用。风险自负。作者对因滥用此代码或由此造成的损害不承担任何责任。 **最后更新:** 2026 **作者:** Taylor Christian Newsome | SleepTheGod | ClumsyLulz | **代码仓库:** [GitHub - SleepTheGod/JustBet_0Day_Poc](https://github.com/SleepTheGod/JustBet_0Day_Poc)
标签:API劫持, DOM操纵, Github安全, Web前端, 客户端攻击, 数据可视化, 概念验证