RustFSでWebDAV・FTP・SFTP経由のバケットポリシー回避により保護データが改ざんされるおそれ
概要
RustFSのWebDAV、FTP、FTPS、SFTPの各リスナーでは、バケットポリシーや条件キーによる拒否が適用されず、有効なアクセスキーを持つ利用者が拒否されたオブジェクトを読み取り、上書き、削除できるおそれがあります。影響を受けるのはrustfsクレートで、修正版は1.0.2です。1.0.2以降へ更新してください。
AI要約
外部の AI が作成した要約です。誤りを含むことがあります。重要な判断の前に、下の原文と参照URLを確認してください。
RustFSのWebDAV、FTP、FTPS、SFTPの各リスナーでは、バケットポリシーや条件キーによる拒否が適用されず、有効なアクセスキーを持つ利用者が拒否されたオブジェクトを読み取り、上書き、削除できるおそれがあります。影響を受けるのはrustfsクレートで、修正版は1.0.2です。1.0.2以降へ更新してください。
影響パッケージ
| 種類 | パッケージ | 影響を受ける版 | 直った版 |
|---|---|---|---|
| rust | rustfs |
<= 1.0.1 |
1.0.2 |
原文の説明 取得元が公開している説明をそのまま載せています (多くは英語)。
Summary
RustFS enforces bucket policies and policy condition keys only on the S3 API authorization path. The alternate file protocol listeners (WebDAV, FTP, FTPS, SFTP) authorize every operation only against IAM identity policies with a hard-coded empty condition map, and their storage backend calls the s3s S3 handler methods directly without passing through the s3s S3Access layer where authorize_request runs. An attacker who holds any valid access key pair can therefore read, overwrite, and delete objects that a bucket policy explicitly denies to them, and can read objects whose IAM Deny is conditioned on request attributes such as aws:SourceIp, by simply using WebDAV, FTP, or SFTP instead of S3. Affected component: rustfs-protocols authorization gateway and the rustfs protocol storage client. Required privilege: a valid access key pair (IAM user or service account) and network reachability to an enabled protocol listener. Ultimate consequence: unauthorized disclosure and tampering of protected object data.
Novelty classification: Historical-related variant. Prior advisories GHSA-3g29-xff2-92vp and GHSA-g3vq-vv42-f647 covered entirely missing IAM authorization on FTP/FTPS handlers and were fixed by adding the shared gateway used today. This report describes a distinct gap in the same trust boundary. The duplicate-check outcome is below.
Details
Tested revision: rustfs main commit 1e7065101d7de4ebacabd249db5b4debbf5baa68 (crate version 1.0.1, 84 commit…
出典: GitHub Repository Security Advisories (Game のスタック) GitHub Advisory OSV
参照URL
- GITHUB_REPO_ADVISORY rustfs/rustfs