| タイトル | Deno Land Inc.のDenoにおける不正な認証に関する脆弱性 |
|---|---|
| 概要 | DenoはJavaScript、TypeScript、およびWebAssemblyのランタイムです。バージョン2.8.1以前では、環境変数へのアクセスはenv権限によって制御されていました。--deny-envオプションでアクセスを拒否したり、--allow-env=FOO,BARのように特定の許可リストに制限したりすることが可能です。env権限なしで実行されるプログラムはprocess.envを変更できないことが期待されています。しかし、process.loadEnvFile()(.envファイルから変数を読み込むためのNode互換API)はこれを無視します。このAPIはプログラムがdotenvファイルに対する読み取り権限を持つかどうかのみを確認し、そのファイル内のすべてのキーを設定されていなくてもprocess環境に書き込みます。つまり、--allow-readオプションと書き込み可能または攻撃者に制御された.envファイルが存在すれば、--deny-envを無効化できるという問題があります。この脆弱性はバージョン2.8.1で修正されました。 |
| 想定される影響 | ・当該ソフトウェアが扱う情報の一部が外部に漏れる可能性があります。 ・当該ソフトウェアが扱う情報の一部が書き換えられる可能性があります。 ・当該ソフトウェアは停止しません。 |
| 対策 | ベンダ情報を参照して適切な対策を実施してください。 |
| 公表日 | 2026年6月23日0:00 |
| 登録日 | 2026年6月30日11:19 |
| 最終更新日 | 2026年6月30日11:19 |
| CVSS3.0 : 警告 | |
| スコア | 5.2 |
|---|---|
| ベクター | CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:N |
| No | 変更内容 | 変更日 |
|---|---|---|
| 1 | [2026年06月30日] 掲載 |
2026年6月30日11:19 |
| 概要 | Deno is a JavaScript, TypeScript, and WebAssembly runtime. Prior to 2.8.1, environment access is gated by the env permission. You can deny it with --deny-env, or restrict it to a specific allowlist with --allow-env=FOO,BAR. The expectation is that a program running without env permission cannot change process.env. process.loadEnvFile() (the Node-compatible API for loading variables from a .env file) does not honor this. It only checks that the program has read permission for the dotenv file, then writes every key in that file into the process environment — even when env access is denied. In effect, --allow-read plus a writable or attacker-controlled .env file is enough to defeat --deny-env. This vulnerability is fixed in 2.8.1. |
|---|---|
| 公表日 | 2026年6月24日3:18 |
| 登録日 | 2026年6月27日4:14 |
| 最終更新日 | 2026年6月29日22:35 |
| 構成1 | 以上 | 以下 | より上 | 未満 | |
| cpe:2.3:a:deno:deno:*:*:*:*:*:*:*:* | 2.3.0 | 2.8.1 | |||