初めてのシステムと日記

システムも日記も初めてです。

研修(Webセキュリティ)

Webセキュリティについて

こういうことが起きるというのと対策方法をまとめた。


SQLインジェクション攻撃

ショッピングサイトなどの入力フォームでSQLインジェクション攻撃を受け、

個人情報、クレジットカード情報が盗まれて不正に扱われるケース。


・原因
   サイトのSQLインジェクション対策がなされていなかった。

・対策
   SQLインジェクション対策をする。
    →・htmlspecialchars(htmlタグを無効化する)
     ・mysql_escape_string
      mysql_real_escape_string(SQL文の特殊文字をエスケープ)
     ・プレースホルダー(PEAR_DBでのクエリ内の変数を別に記載)


自分もソース書いててよく忘れるので気をつける。


■個人情報の扱い

・サイト上に個人情報ファイルを誤って保存

・メールで個人情報ファイルをやり取り

これらによって、サイトで個人情報が公開されてしまったり、

メールの送り主に個人情報を知られてしまったなどのケースがある。


・原因
   ・サーバー上へ不必要なファイルを保存
   ・メールで個人情報ファイルをやり取り
   ・ファイルの中身を確認していなかった

・対策
   ・サーバー上に保存するファイルを確認
   ・メールで個人情報ファイルをやり取りしない
     →どうしてもという場合は、ファイルにパスワードをかける 


■セッションやGETでのid管理

セッションやGETで

・個人情報を持たせている

・URLに特定のユーザーのidが含まれている

ことで他のユーザーに個人情報が漏れたケースがある。

モバイルサイトなどではセッションやGETで情報を持たせるのはよく使う。


・原因
   セッション、GETに特定のユーザーの個人情報、idが含まれたまま

・対策
   構文チェック、セッションなどの初期化を行う