| Title | Louis PilfoldのGleamにおけるパストラバーサルの脆弱性 |
|---|---|
| Summary | Gleamコンパイラのgit依存関係処理における不適切なパス検証の脆弱性により、依存関係のダウンロード中に任意のファイルシステムの改変が可能となります。gleam.tomlおよびmanifest.tomlの依存関係名が十分に検証されず、意図された依存関係ディレクトリへの制限もないため、攻撃者は相対パストラバーサル(../など)や絶対パスを利用して、そのディレクトリ外のファイルシステム上の場所を対象にできます。git依存関係の解決時(例えばgleam deps download)には、計算されたパスがディレクトリの削除や作成などのファイルシステム操作に使用されます。この脆弱性は、依存関係の取得および準備が通常制限されたディレクトリ内に限定されるべき依存関係解決およびダウンロード段階で発生します。悪意のある直接的または推移的なgit依存関係がこの問題を悪用し、意図された依存関係ディレクトリ外の任意のディレクトリを削除・上書きでき、攻撃者が選んだ絶対パスを含めてデータ損失を引き起こす可能性があります。一部の環境では、gitフックやシェル設定ファイルの上書きなどによりコード実行も達成される可能性があります。本問題はGleam 1.9.0-rc1から1.15.4までのバージョンに影響します。 |
| Possible impacts | 当該ソフトウェアが扱う全ての情報が外部に漏れる可能性があります。 また、当該ソフトウェアが扱う全ての情報が書き換えられる可能性があります。 さらに、当該ソフトウェアが完全に停止する可能性があります。 そして、この脆弱性を悪用した攻撃の影響は、他のソフトウェアには及びません。 |
| Solution | 正式な対策が公開されています。ベンダ情報を参照して適切な対策を実施してください。 |
| Publication Date | April 11, 2026, midnight |
| Registration Date | May 25, 2026, 10:25 a.m. |
| Last Update | May 25, 2026, 10:25 a.m. |
| CVSS3.0 : 重要 | |
| Score | 7.8 |
|---|---|
| Vector | CVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H |
| Louis Pilfold |
| Gleam 1.9.0 以上 1.15.4 未満 |
| No | Changed Details | Date of change |
|---|---|---|
| 1 | [2026年05月25日] 掲載 |
May 25, 2026, 10:25 a.m. |
| Summary | Improper path validation vulnerability in the Gleam compiler's handling of git dependencies allows arbitrary file system modification during dependency download. Dependency names from gleam.toml and manifest.toml are incorporated into filesystem paths without sufficient validation or confinement to the intended dependency directory, allowing attacker-controlled paths (via relative traversal such as ../ or absolute paths) to target filesystem locations outside that directory. When resolving git dependencies (e.g. via gleam deps download), the computed path is used for filesystem operations including directory deletion and creation. This vulnerability occurs during the dependency resolution and download phase, which is generally expected to be limited to fetching and preparing dependencies within a confined directory. A malicious direct or transitive git dependency can exploit this issue to delete and overwrite arbitrary directories outside the intended dependency directory, including attacker-chosen absolute paths, potentially causing data loss. In some environments, this may be further leveraged to achieve code execution, for example by overwriting git hooks or shell configuration files. This issue affects Gleam from 1.9.0-rc1 until 1.15.4. |
|---|---|
| Publication Date | April 11, 2026, 11:16 p.m. |
| Registration Date | April 15, 2026, 11:37 a.m. |
| Last Update | April 14, 2026, 7:16 p.m. |