検索
インタビュー

え? PHPファイルを登録できるのはまずいでしょ…… Webアプリの「アップロード機能」に潜む“あるある”ワナ“典型的やられサイト”で学ぶセキュリティのワナ(2/3 ページ)

ネット上で商売するのが当たり前な時代。インシデントが発生すれば失うものは計り知れない。本連載では脆弱性診断実習用のWebアプリ「BadTodo」を題材に、ストーリー形式でWebアプリ制作に潜む“ワナ”について学んでいく。

Share
Tweet
LINE
Hatena

上野 まずはアップロードできるファイルの種類をチェックしてみよう。

荒井 はい。今回は予定にテキストや画像などのファイルを添付できるようにしています。

上野 うん。どんな形式のファイルが求められているか考えるのは重要だね。一方で、便利だからといってどんな形式のファイルでもアップロードできるようになっているとさすがに危険かな。

上野 例えばこの「info.php」という名前のファイルをアップロードしてみよう。PHPファイルの添付は禁止されていないので当然そのまま投稿できる。

荒井 あ……。

上野 なんとなく分かってきたかな? アップロードできたら、登録した予定のページから添付ファイル「info.php」を開くと……。PHPファイル内のコマンドが実行されてしまう。

photo
開かれたPHPインフォページ

上野 今回はPHPの設定を表示する「phpinfo」コマンドのみ記載していたから設定が表示されるだけで済んだ。でも、要するにサーバでプログラムが動いているわけだから、悪意のあるプログラムを使った遠隔操作などの攻撃を受ける可能性もある。

荒井 これは……大変ですね。

上野 うん。他の手口もたくさん考えられるから、こういう機能を作るときは、アップロードする必要のあるファイル形式を洗い出して、それ以外は登録できないようにするのがいいね。今なら画像ファイル(PNG、JPEGなど)やPDFファイルくらいに絞っておくのがいいかな。

荒井 分かりました。

Copyright © ITmedia, Inc. All Rights Reserved.

ページトップに戻る