フォームベースのファイルアップロード

info Web App Scanning プラグイン ID 98080

概要

フォームベースのファイルアップロード

説明

多くの Web アプリケーションの設計では、ユーザーは、受信側の Web サーバーによって保存または処理されるファイルをアップロードできなければなりません。

スキャナーはこれに、脆弱性としてではなく、ペネトレーションテスターがファイルアップロード機能でさらに手動テストを行うためのプロンプトとしてフラグを立てました。

安全でないフォームベースのファイルアップロードにより、サイバー犯罪者がサーバーを直接悪用したり、後でファイルにアクセスする可能性があるサードパーティを悪用したりする可能性があります。これは、クライアントがリクエストしたときに実行されるサーバーサイドコード (PHP など) を含むファイルのアップロードによって発生する可能性があります。

ソリューション

識別されたページで、少なくとも以下のことを実行する必要があります:
1. 許可されたファイルタイプをホワイトリストに登録し、その他のすべてをブロックします。これは、ファイルの拡張子ではなく MIME タイプで行う必要があります。2. ファイルがアップロードされ、サーバーによって処理される (ディスクに書き込まれる) 前に、ファイル名からすべての制御文字、特殊文字、Unicode 文字を削除する必要があります。3. アップロードが「GET」または「PUT」ではなく HTTP「POST」メソッドを使用して行われるようにします。4. ファイルが実行権限を持たないディレクトリに書き込まれ、そのディレクトリ内のすべてのファイルが同じ権限を継承するようにします。5. 保存する前に、最新のウイルススキャナーでスキャンしてください (可能な場合)。6. アプリケーションがホストオペレーティングシステムの下でファイルを処理するようにします。たとえば、ファイル名の長さが適切である、ファイルを保存するための十分なスペースがある、他のファイルを上書きできないようにするなどです。

参考資料

https://www.owasp.org/index.php/Unrestricted_File_Upload

プラグインの詳細

深刻度: Info

ID: 98080

タイプ: remote

ファミリー: Web Applications

公開日: 2017/3/31

更新日: 2017/10/16

スキャン テンプレート: basic, full, overview, pci, scan