form-data boundary randomness vulnerability

漏洞信息

漏洞名称: form-data boundary randomness vulnerability

漏洞编号:

  • CVE: CVE-2025-7783

漏洞类型: 其他

漏洞等级: 高危

漏洞描述: 该漏洞涉及一个名为’form-data boundary randomness’的安全问题,主要影响通过npm安装的特定服务器应用。受影响的产品包括使用类似技术栈的web应用,这些应用通常部署在企业级服务或作为常见的web应用组件。漏洞的根源在于服务器在处理表单数据时,边界随机性不足,导致攻击者可以预测或操纵请求,从而绕过预期的安全限制。具体来说,攻击者可以利用此漏洞在未经授权的情况下,向服务器发送恶意构造的请求,例如在请求中添加未授权的参数(如is_admin: true),从而可能获得提升的权限或其他未授权的操作能力。这种漏洞的存在可能导致严重的安全风险,包括但不限于权限提升、数据泄露和服务中断。攻击者可以利用此漏洞进行远程攻击,且在某些情况下,攻击可以自动化执行,无需用户交互。

来源: https://github.com/benweissmann/CVE-2025-7783-poc

类型: CVE-2025:github search

仓库文件

  • .gitignore
  • .tool-versions
  • README.md
  • backend.js
  • exploit.js
  • package-lock.json
  • package.json
  • predict.py
  • requirements.txt
  • vulnerable-server.js

来源概述

form-data boundary randomness vulnerability

Largely based on https://hackerone.com/reports/2913312 by https://hackerone.com/parrot409?type=user

Installing:

  • npm install
  • Make sure you have python3 installed with the z3 module (pip3 install -r requirements.txt) – the exploit code shells out to python3 to predict the next random value

Running:

In parallel, run:

  • npm run start-backend (the backend server that will receive the manipulated request)
  • npm run start-vulnerable-server (the frontend server that can be tricked into sending a manipulated request)
  • npm run exploit (the client code that crafts and sends the exploit)

In the stdout of npm run backend, you should see a request with is_admin: true (despite the code in vulnerable-server.js never intending to add an is_admin parameter to the API call)


form-data boundary randomness vulnerability
http://example.com/2025/07/18/github_3402118809/
作者
lianccc
发布于
2025年7月18日
许可协议