📗
owasp-asvs-ja
  • OWASP Application Security Verification Standard ja
  • OWASP アプリケーションセキュリティ検証標準 5.0 日本語版
    • 口絵
    • 序文
    • ASVS とは何か?
    • 監査と認証
    • v4.x と比較した変更点
    • V1: エンコーディングとサニタイゼーション
    • V2: バリデーションとビジネスロジック
    • V3: Web フロントエンドセキュリティ
    • V4: API と Web サービス
    • V5: ファイル処理
    • V6: 認証
    • V7: セッション管理
    • V8: 認可
    • V9: 自己完結型トークン
    • V10: OAuth と OIDC
    • V11: 暗号化
    • V12: 安全な通信
    • V13: 構成
    • V14: データ保護
    • V15: セキュアコーディングとアーキテクチャ
    • V16: セキュリティログ記録とエラー処理
    • V17: WebRTC
    • 付録 A: 用語集
    • 付録 B: 参考情報
    • 付録 V: 暗号化標準
    • 付録 X: 推奨事項
  • OWASP アプリケーションセキュリティ検証標準 4.0 日本語版
    • ヘッダ
    • 口絵
    • 序文
    • ASVS の使い方
    • 監査と認証
    • V1: アーキテクチャ、設計、脅威モデリング
    • V2: 認証
    • V3: セッション管理
    • V4: アクセス制御
    • V5: バリデーション、サニタイゼーション、エンコーディング
    • V6: 保存時における暗号化
    • V7: エラー処理とログ記録
    • V8: データ保護
    • V9: 通信
    • V10: 悪意あるコード
    • V11: ビジネスロジック
    • V12: ファイルとリソース
    • V13: API と Web サービス
    • V14: 構成
    • 付録 A: 用語集
    • 付録 B: 参考情報
    • 付録 C: Internet of Things の検証要件
Powered by GitBook
On this page
  • 管理目標
  • V12.1 ファイルアップロード
  • V12.2 ファイル整合性
  • V12.3 ファイル実行
  • V12.4 ファイルストレージ
  • V12.5 ファイルダウンロード
  • V12.6 SSRF 保護
  • 参考情報

Was this helpful?

  1. OWASP アプリケーションセキュリティ検証標準 4.0 日本語版

V12: ファイルとリソース

管理目標

検証対象のアプリケーションが以下の上位要件を満たすことを確認します。

  • 信頼できないファイルデータはそれに応じてセキュアに処理する必要があります。

  • 信頼できない情報源から取得した信頼できないファイルデータは Web ルートの外部に、かつ制限されたパーミッションで保存されています。

V12.1 ファイルアップロード

zip 爆弾はペネトレーションテスト技法を使用して大いにテスト可能ですが、慎重な手動テストによる設計と開発への配慮を促し、サービス拒否状態となる自動ペネトレーションテストや未熟な手動ペネトレーションテストを避けるために、L2 以上とみなされています。

#
説明
L1
L2
L3
CWE

12.1.1

アプリケーションはストレージをいっぱいにしたり、サービス拒否を引き起こす可能性のある大きなファイルを受け付けない。

✓

✓

✓

400

12.1.2

アプリケーションが圧縮ファイル (zip, gz, docx, odt など) を展開する前に最大許容非圧縮サイズおよび最大ファイル数と照合している。

✓

✓

409

12.1.3

一人のユーザが非常に多くのファイルや極端に大きなファイルでストレージをいっぱいにすることができないように、ファイルサイズクォータとユーザあたりの最大ファイル数が適用されている。

✓

✓

770

V12.2 ファイル整合性

#
説明
L1
L2
L3
CWE

12.2.1

信頼できない情報源から取得されたファイルはファイルのコンテンツに基づいて予想される種類であることを確認されている。

✓

✓

434

V12.3 ファイル実行

#
説明
L1
L2
L3
CWE

12.3.1

パストラバーサルから保護するために、ユーザが送信したファイル名メタデータがシステムやフレームワークファイルにより直接使用されていない、および URL API が使用されている。

✓

✓

✓

22

12.3.2

ローカルファイルの開示、作成、更新、削除 (LFI) を防ぐために、ユーザが送信したファイル名メタデータが確認または無視されている。

✓

✓

✓

73

12.3.3

リモートファイルインクルージョン (Remote File Inclusion, RFI) やサーバサイドリクエストフォージェリ (Server-side Request Forgery, SSRF) によるリモートファイルの開示や実行を防ぐために、ユーザが送信したファイル名メタデータが確認または無視されている。

✓

✓

✓

98

12.3.4

JSON, JSONP, URL パラメータでユーザが送信したファイル名を確認または無視することにより、アプリケーションが反射型ファイルダウンロード (Reflective File Download, RFD) に対して保護している。レスポンスの Content-Type ヘッダは text/plain に設定し、Content-Disposition は固定ファイル名である。

✓

✓

✓

641

12.3.5

OS コマンドインジェクションから保護するために、信頼できないファイルメタデータがシステム API やライブラリで直接使用されていない。

✓

✓

✓

78

12.3.6

未検証のコンテンツ配信ネットワーク、JavaScript ライブラリ、node npm ライブラリ、サーバサイド DLL など、信頼できないソースからの機能がアプリケーションに含まれて実行されていない。

✓

✓

829

V12.4 ファイルストレージ

#
説明
L1
L2
L3
CWE

12.4.1

信頼できないソースから取得したファイルが、限られたパーミッションで、Web ルートの外側に保存されている。

✓

✓

✓

552

12.4.2

信頼できないソースから取得したファイルが、既知の悪意のあるコンテンツのアップロードと配信を防ぐためにウィルス対策スキャナによりスキャンされている。

✓

✓

✓

509

V12.5 ファイルダウンロード

#
説明
L1
L2
L3
CWE

12.5.1

意図しない情報漏洩やソースコード漏洩を防ぐために、Web 層が特定のファイル拡張子を持つファイルのみを処理するように設定されている。例えば、バックアップファイル (.bak など) 、一時作業ファイル (.swp など) 、圧縮ファイル (.zip, .tar.gz など) やエディタで一般的に使用されるその他の拡張子は、必要でない限りブロックする。

✓

✓

✓

552

12.5.2

アップロードされたファイルへの直接のリクエストが HTML/JavaScript コンテンツとして決して実行されない。

✓

✓

✓

434

V12.6 SSRF 保護

#
説明
L1
L2
L3
CWE

12.6.1

Web サーバまたはアプリケーションサーバが、サーバが要求を送信したりデータやファイルをロードしたりできるリソースやシステムの許可リストで構成されている。

✓

✓

✓

918

参考情報

詳しくは以下の情報を参照してください。

PreviousV11: ビジネスロジックNextV13: API と Web サービス

Last updated 4 months ago

Was this helpful?

File Extension Handling for Sensitive Information
Reflective file download by Oren Hafif
OWASP Third Party JavaScript Management Cheat Sheet