最低限知っておくべきwebサイトのセキュリティ

というわけで、思いつく奴をさらさらっと書いてみる

パラメータを信頼するな。ユーザー側の情報はすべてユーザーが書き換え可能。

アプリケーションを作る時にgetリクエストの場合、URLの後ろに?nantoka_id=10&kantoka=5とか
つく事がありますが、これはurlの中身を書き換える事で簡単にパラメータの変更ができます。
postだって、htmlのフォームの内容を書き換えれば、簡単にパラメータの変更が出来ます。
簡単に言うと、user_idを弄る事で他のユーザーの情報にアクセス出来てしまうとかが想定されます。


セッション情報と付き合わせる事やプログラムごとにログインユーザーの権限を確認する。
idを連番ではなく推測されない十分な長さのランダムな文字列に変えるなど、対応しましょう。

ユーザーが入力した内容を表示する際、フィルタリングするべし。

掲示板などでユーザーが入力したhtmlを表示する場合、タグが貼り付けられると
簡単にスクリプトが実行されます。
cookiesの情報を抜いたり、別のサイトに移動させたり等、簡単に攻撃が出来ますので、
タグは、一部のタグのみ許可するとか、全部禁止するなどの処置を取りましょう。

javascriptは隠したくてもオープンソース

暗号化アルゴリズムを実装しても、javascriptで実行しているとそれが読まれ、対応されます。
javascriptにパスワードを書くなどもっての外です。
javascriptファイルは読まれる物だと想定して下さい。