ファイルアップローダーを作りたいので、アップロードを禁止する拡張子は何が良いでしょうか?
もちろん、限定した方が安全な事は理解しています。
どちらかというと、仕様検討していて説得する材料を探している状況です。
用途
ショップからお客様(エンドユーザー)に、帳票(Excel、Word等)やPDF、画像を個別に送る事を想定しています。
仕様について
任意のタイミングでメールかメッセージアプリでファイルを送ります。
メールの場合は添付、
メッセージアプリの場合はダウンロードリンクを付与します。
帳票(Excel、Word等)やPDF、画像とは書きましたが、
現時点では使用する形式が決まっていないので、どのようなファイルでも送れるようにしたい。
懸念事項
下記のことから、限定する拡張子を調べています。
- 送信元が悪意のあるファイルを送信する可能性があるので限定した方が良いのでは無いか?
- 自由にすると、mimeタイプの指定ができないのではないか?
禁止する想定の拡張子
汎用的に使うものなので、画像、PDF、Officeファイルだけという限定はしません。
- .EXE
- .COM
- .BAT
- .CMD
- .PIF
- .SCR
- .VBS
- .HTML
- .VBE
- .JS
- .JSE
- .WSF
- .WSH
- .ZIP
- .LZH
- .RAR
- .CAB
- .DOC
- .XLS
- .MDB
- .PPT
- .7Z
アップロードしたファイルをどのように利用する予定なのでしょうか?
何もせず、ただ収集するだけであれば、拡張子なんてきにする必要は全くありません。誰にでも公開する予定のファイル共有用でしょうか?その場合どのようなポイントが懸念点になるのでしょうか?勝手にウイルスをばら撒かれないようにすること?
そのあたりをご提示された方がより適切な回答が得られやすくなるのではないでしょうか。
ご指摘いただきありがとうございます。
用途について詳細に追記させていただきます。
お客様とはエンドユーザーでしょうか?現時点で仕様が決まっていないとしていますが、最終的には決めないのですか?ちなみに、メール添付などの場合、ウイルス対策ソフトで弾かれるものがあるので、正規のものだとしてもうまくお客様に届かない場合もあります。これらのことからホワイトリストの方が好ましいかと現時点では思います。
ご指摘ありがとうございます。
おっしゃる通り、ホワイトリストで対応するのが良いと思います。
> お客様とはエンドユーザーでしょうか?
はい。
> 最終的には決めないのですか?
実装側としては決めたいです。
ただ、クライアントはショップ側に悪意は基本的に無く、もし問題が発生した場合は自己責任とする意向なので決められない状態です。
> ウイルス対策ソフトで弾かれるものがあるので、正規のものだとしてもうまくお客様に届かない場合もあります。
なるほどですね。
そこも調査して、クライアントと摺り合せればホワイトリストの件を実現できるかもしれません。
クライアントが「とにかく安く作ってくれ」という要望だと面倒ですね。ショップ側にたとえ悪意がないとしても、意図せずにウイルスに感染し、感染したファイルを送信してしまうというリスクもありますが、これだと拡張子をどのようにしても防ぐことができません。本来的にはサーバー側でウイルス対策ソフトを動かしてチェックするのが良いかと思いますが、それよりも拡張子のホワイトリストの方が実効性が薄いけど安くできるという言い方はできるかもしれません。
度々ご回答いただきありがとうございます。
対策はソフトを導入するより、ホワイトリストの方が安くできるという交渉の材料になりそうです。
ありがとうございます。
ホワイトリストなら、それっぽい拡張子をいくつか選定しておいて、要望があったら追加していけばいいのではないでしょうか
そんなたくさんにはならないと思いますけど。
ユーザが開けなければ意味がないのでそんなにトリッキーな形式で送りつけることはないでしょうし、割と簡単に内容が書き換えられるOfficeっぽいものもそんなに使わないと思いますし
q_sane_qさん
こちらにもご回答いただきありがとうございます。
技術的な質問では無くなってしまい失礼しました。
運用方法としてはお伺いした方法が望ましいです。
あとは、クライアントの意向次第です…。
回答3件
あなたの回答
tips
プレビュー