0

現在、ユーザーがドキュメントをアップロードして、Web サイトで他のユーザーに送信できるようにする機能を構築しています。

これで、実行される PHP コードを含むイメージをユーザーがアップロードできるようにするイメージで発生する可能性のあるリスクがいくつか理解できました。

この質問を投稿する前にオンラインで調査し、MIME タイプの検証に関する PHP ドキュメントを見ていると、これが見つかりました

$_FILES['userfile']['type']
  This mime type is however not checked on the PHP side and therefore 
  don't take its value for granted.

事前に、これが不正なファイルのアップロードと戦うために使用する主な方法であると考えていましたが、安全にアップロードする方法を見つけるためのすべての努力は、上記のように MIME タイプをチェックすることに向けられています。

理想的には、ユーザーが txt、pdf、doc、および ZIP ファイルをアップロードできるようにしたいと考えています。

上記の方法 (MIME タイプをチェックする) は、まだ使用可能なオプションですか?

読んでくれてありがとう。

4

2 に答える 2

0

元のファイル名を確認します。また、必要な拡張子を使用して、アップロードされたファイルの名前を変更します。そのため、誰かが .exe ファイルをアップロードする場合、次の 2 つのハードルがあります。

  1. ファイル名を確認し、.exe を確認し、アップロードを拒否しました
  2. すべてのファイルの名前を独自の可能な拡張子のセットに変更しましたが、.exe はそれらの 1 つではありません。

zip は不良ファイルが含まれている可能性があるため見苦しいため、解凍して各ファイルをチェックして名前を変更し、不良ファイルを削除する必要があります。

S

于 2013-09-13T12:20:40.743 に答える