2019年8月16日金曜日

セキュリティー対策(4)

ファイルアップロード攻撃
画像を投稿する等で、ファイルをアップロードするシステムでは、
場合によってはプログラムファイルがアップロードされてしまうと、そこまでのパスが分かれば
プログラムとして実行されてしまいます。

ファイルをアップロードするPHPプログラム

  <?php
   if (is_uploaded_file($_FILES['myfile']['tmp_name'])) {
  $file_nm = "data/" . basename($_FILES['myfile']['name']);
  echo $file_nm;
  if (move_uploaded_file($_FILES['myfile']['tmp_name'], $file_nm)){
   echo " up ok";
  }
 }
 
 
 header('Content-Type: text/html; charset=utf-8');

  ?>


プログラムをアップすると


  <?php
   echo "ファイルが実行されました。";

  ?>

アクセスすると実行することが、可能となってしまいます。



プログラムが実行され、文字列が出力されてしまいました。

アップロードしたファイルは、保存場所を知られないようにしたり、
ファイル名を変えたりする必要があります。
また、画像ファイルの場合は、アップロードされた画像をリサイズして
おくことも有効ですね。

https://www.filetalk.info/index.html

0 件のコメント:

コメントを投稿