| 标题 | diem-project diem 116974edfb9a5b8bd69cb13586dc62bcdbb485ad Absolute Path Traversal |
|---|
| 描述 | The code editors in `dmFrontPlugin/modules/dmCodeEditor` and `dmAdminPlugin/lib/codeEditor` construct filesystem paths from attacker-controlled values without resolving `..` components. `dmOs::join()` removes duplicate slashes only, while `dmProject::isInProject()` uses a raw string-prefix test. Consequently, values such as `../../etc/hosts` produce a path that begins textually with the project root but resolves outside it when passed to `file_get_contents()` or `file_put_contents()`. A user with the `code_editor` credential can read files readable by the PHP account and overwrite existing files writable by that account outside the intended project directory. |
|---|
| 来源 | ⚠️ https://github.com/diem-project/diem/issues/451 |
|---|
| 用户 | 100001001X (UID 100909) |
|---|
| 提交 | 2026-10-04 17時31分 (16 日前) |
|---|
| 管理 | 2026-10-19 07時14分 (15 days later) |
|---|
| 状态 | 已接受 |
|---|
| VulDB条目 | 422243 [diem-project diem 直到 5.1.3 dmCodeEditor actions.class.php dmOs::join 目录遍历] |
|---|
| 积分 | 20 |
|---|