Asayomu Tech
注目★★★★★GitHub Advisory

compliance-trestle に SSRF 対策回避の脆弱性、IPv6 や 0.0.0.0 で内部ネットワークへアクセス可能

30秒で把握

  • 1compliance-trestle 4.0.3 の URLSecurityValidator が IPv4 マップ IPv6 と 0.0.0.0 を許可・SSRF 制限回避
  • 2OSCAL プロファイルの imports/back-matter リンク経由でクラウドメタデータ・内部ネットワークへアクセス可能
  • 3外部 OSCAL 源を処理する場合はファイル検証強化・ネットワーク分離・IAM 最小化で対策

要約

compliance-trestle 4.0.3 の URLSecurityValidator に SSRF (Server-Side Request Forgery) 対策の不完全さがあり、IPv4 マップ IPv6 リテラル ([::ffff:169.254.169.254] 等) と IPv4 未指定アドレス (0.0.0.0) を使うことで、ローカルホストやクラウドメタデータエンドポイント、RFC 1918 プライベートネットワークへのアクセス制限を回避できる。悪意のある OSCAL プロファイルで imports または back-matter.resources リンク先にこれらのアドレスを指定すると、HTTPSFetcher・SFTPFetcher の remote-fetch 経由で検証をすり抜けリクエストが送出される。TRESTLE_BLOCK_PRIVATE_IPS=true 設定下でもプライベートネットワークへの接触が可能になる。

あなたへの影響

compliance-trestle を用いて外部ソースの OSCAL プロファイルをインポート・検証する運用をしている場合、ファイルの仕入先・バリデーション方法の再点検が必要。

推奨:特にクラウドメタデータエンドポイント (AWS / GCP / Azure) やローカル管理インタフェースへの意図しないアクセスが成立する可能性があるため、ネットワークセグメンテーションと shared IAM 権限の最小化で多層防御を強化すべき。

詳細を読む → 元記事へ※ 本文は元記事をご確認ください (asayomu は要約のみ提供)

関連する記事

※ 外部記事の権利は原著作者に帰属します。著作権削除要請は copyright@asayomu.jp までご連絡ください(受領確認 24h・実処理 72h 以内)。