ファイルアップロードの脆弱性とは?写真・書類を受け取るサイトを診断する理由

ファイルアップロードの脆弱性とは?写真・書類を受け取るサイトを診断する理由

セキュリティ

採用フォームで履歴書を受け取ったり、問い合わせフォームで資料を添付してもらったりするWebサイトは、ファイルアップロード機能を使っています。

会員が写真を投稿する機能も同じです。

画像やPDFを受け取るだけなら問題なさそうに見えますが、受け取った後の保存方法や閲覧できる人まで確認しなければなりません。

制作会社に構築を任せていても、公開中のサイトで対策が想定どおり働いているかを、経営者だけで判断するのは難しいものです。

この記事では、ファイルを受け取るサイトで起こり得る問題と、制作会社への確認事項、公開環境で診断する理由をご紹介します。

セキュリティー診断さん セキュリティー診断さん

うちのサイトにも写真投稿機能があるけど…それって危ないの? ただ画像をアップするだけだと思ってたよ…

ファイルアップロードが危険な理由と起こりうる被害

ファイルを受け取る機能に問題があると、サイトの改ざんや停止、情報漏洩につながるおそれがあります。

さらに、応募者の履歴書や顧客から預かった資料を、権限のない第三者に見られる可能性もあります。

問題が起きれば、サイトの復旧だけでは終わりません。

影響を受けた人への説明や問い合わせ対応、制作会社との原因確認なども必要になり、通常業務へ負担がかかります。

大切なのは、画像やPDFを受け取れるかだけで安全と判断しないことです。

受け取るとき、保存するとき、利用者へ見せるときのそれぞれに確認すべき点があります。

セキュリティー診断さん セキュリティー診断さん

お客さんから預かった書類が他人に見られたら、説明や対応も大変だ…。 考えると不安になってきたよ…

ファイルアップロードを守る3段階の基本対策

79-File Upload - 3 Basic Tips Recommended by Professionals.png

ファイルアップロード機能は、受け取る前、保存するとき、公開・利用するときの各段階で守る必要があります。

経営者が細かな設定方法まで理解する必要はありません。

次の内容について、制作会社がどのような対策をしているか確認しましょう。

受け入れる前:種類と中身を確認する

採用フォームなら履歴書、問い合わせフォームなら画像やPDFなど、業務で必要なファイルの種類と大きさを決めておきます。

ファイル名の末尾にある拡張子や、送信時に示されるMIMEタイプは、種類を判断する手掛かりです。

ただし、表示だけを信用せず、実際の中身も確認する対策が必要です。

制作会社には、想定していない種類や極端に大きなファイルを受け付けない仕組みになっているか確認してください。

保存するとき:名前を変えて実行できない場所へ置く

受け取ったファイルは、利用者が付けた名前のまま扱わず、Webサイト上で危険な動作をしない場所へ安全に保存します。

これは、同じ名前による上書きや、保存したファイルを悪用した操作を防ぐためです。

制作会社には、受け取ったファイルがそのままプログラムとして動かない設計になっているか確認しましょう。

公開・利用するとき:ログイン状態と権限を確認する

履歴書や顧客資料は、URLを知っているだけで誰でも閲覧できる状態にしてはいけません。

表示やダウンロードのたびに、ログイン状態と閲覧権限を確認する仕組みが必要です。

制作会社には、別の利用者やログアウトした状態でURLを開いても、他人のファイルを閲覧できないか確認してもらいましょう。

対策済みでも公開環境で確認が必要な理由

制作会社から「必要な対策を実装しています」と説明を受けることは大切です。

一方で、設計どおりに作られていることと、公開中のサイトで対策が想定どおり働いていることの確認は役割が異なります。

公開環境では、複数の設定の組み合わせや、開発時には想定していなかった操作経路によって、問題が表面化する場合があります。

そのため、制作会社への確認に加えて、外部からアクセスできる状態でファイルの受け取り方や閲覧の制限を確認することが重要です。

セキュリティー診断さん セキュリティー診断さん

よーし、対策はバッチリ! …って思ったけど、これだけで本当に大丈夫なのかな? 見落としがありそうで不安になってきた…

Webアプリ全体の弱点を確認する際は、OWASP Top 10に沿ったWebの主要脆弱性チェックも参考にしてください。

診断結果を制作会社への修正依頼に使う

公開環境で診断すると、経営者だけでは判断しにくいWebサイトの問題を、制作会社へ相談するための材料にできます。

セキュリティー診断さん』は、外部からアクセスできるWebサイトやWebアプリの弱点をAIで調べ、結果を分かりやすいレポートにまとめるサービスです。

レポートでは、問題が見つかった場所と危険度を確認できます。

危険度の高い問題から制作会社へ共有すれば、何を優先して直してもらうか相談しやすくなります。

たとえば、想定していないファイルを受け付ける状態や、権限のない人がファイルを閲覧できる状態が示された場合、その結果を添えて修正を依頼できます。

専門用語に詳しくなくても、診断結果を共通の資料として使えば、経営者と制作会社の間で問題の場所や対応順を共有しやすくなります。

修正後は、対応した内容と確認結果も一緒に残しておくと、その後の運用や機能変更時にも経緯を確認できます。

写真や書類を受け取る機能は公開環境で確認しよう

採用フォームの履歴書、問い合わせ時の添付資料、会員が投稿する画像などを受け取るサイトでは、ファイルの受け取り方だけでなく、保存と閲覧の制限まで確認する必要があります。

制作会社へ対策内容を確認したうえで、公開前や機能変更後には、実際の公開環境で問題がないか確かめましょう。

セキュリティー診断さん』の診断結果は、危険なファイルを受け入れる状態や、他人のファイルを閲覧できる問題がないかを確認し、制作会社への修正依頼を具体化するために活用できます。

自分で技術設定を調べて判断を抱え込まず、まずはファイルを受け取る機能の状態を確認してみませんか?

セキュリティー診断さん セキュリティー診断さん

ヨシ! 診断結果を制作会社に渡せば、どこから直すか相談しやすいんだな! これなら僕だけで難しい判断を抱え込まずに進められそう! (๑•̀ㅂ•́)و✧