| 标题 | llama.cpp commit 55abc39 Stack-based Buffer Overflow |
|---|
| 描述 | A stack-based buffer overflow (stack overflow) vulnerability existed in the GBNF grammar handling logic of llama.cpp. When processing specific grammar constructs, the function `llama_grammar_advance_stack()` could enter unbounded recursive expansion because it lacked adequate recursion/cycle protection beyond checking for an empty stack. In particular, a crafted GBNF file containing nested repetition patterns (for example `(...*)*`) could cause the function to repeatedly create new stack states and recursively call itself until the program’s call stack was exhausted. This results in a crash detected by AddressSanitizer and can be exploited as a denial-of-service condition when an application loads attacker-controlled grammar files. The vendor has since addressed the issue. |
|---|
| 来源 | ⚠️ https://github.com/ggml-org/llama.cpp/issues/18988 |
|---|
| 用户 | TYGLS (UID 94774) |
|---|
| 提交 | 2026-01-23 04時29分 (5 月前) |
|---|
| 管理 | 2026-02-06 08時41分 (14 days later) |
|---|
| 状态 | 已接受 |
|---|
| VulDB条目 | 344636 [ggml-org llama.cpp 直到 55abc39 GBNF Grammar llama-grammar.cpp llama_grammar_advance_stack 内存损坏] |
|---|
| 积分 | 20 |
|---|