| 标题 | NASA Trick 19.6.0 Buffer Overflow |
|---|
| 描述 | JSONVariableServerThread::parse_request() in trick_source/sim_services/JSONVariableServer/JSONVariableServerThread.cpp line 104 uses sscanf(incoming_msg, "%s %s", command, path) where command is a 32-byte stack buffer and incoming_msg is sourced directly from recvfrom() on a TCP socket. An unauthenticated remote attacker sending a request whose first whitespace-delimited token exceeds 31 characters causes a stack-based buffer overflow (CWE-121). The developer left a comment in the source: "Need to protect against buffer overflow" but the fix was never applied. ASan confirms WRITE of size 34 overflowing command[32].
poc.py && log
https://app.notion.com/p/Stack-based-Buffer-Overflow-in-NASA-Trick-JSONVariableServer-via-Unbounded-sscanf-on-Network-Receive-39cbd773e51180e1917cd717b90b8bc8?source=copy_link |
|---|
| 来源 | ⚠️ https://github.com/nasa/Trick |
|---|
| 用户 | juntheworld (UID 99760) |
|---|
| 提交 | 2026-07-13 16時06分 (2 月前) |
|---|
| 管理 | 2026-08-29 16時40分 (2 months later) |
|---|
| 状态 | 已接受 |
|---|
| VulDB条目 | 397028 [NASA Trick 19.6.0 TCP Socket JSONVariableServerThread.cpp parse_request 内存损坏] |
|---|
| 积分 | 19 |
|---|