PHPのセキュリティ
セキュリティを勉強しなおしています。
恥ずかしながら、SQLインジェクションとXSSの違いを混同しており、
やっとその違いを理解できたところです。
既存アプリからのコピペじゃなく、
自分で書いてみるようになってはっきり理解できました。
教科書にしている本でのSQLインジェクションでは mysql_real_escape_string が非推奨でしたが、とりあえずはこれを使っていこうと思います。
ところで初心者向けPHPセキュリティの分かりやすいドキュメントがあれば、もっと早々に理解できたのになぁと感じています。
みんな苦労して会得したんだから当たり前といえばそれまでですが、
もっと初心者向けがあってもいいんじゃないかと思っています。
それぞれ厳密に調べていかなきゃいけないことですが、、、
とりあえずXSSやスクリプトインジェクションは表示する前に htmlspecialchars やっとけってことだし、
SQLインジェクションは クエリー文にリクエスト変数入れるんなら
mysql_real_escape_stringかましとけってことが大半だと思う。
その前提の後に入力制限したりなんだり考えていけば良いことで、
いきなり全部は無理でしょ。。。?
セキュリティTIPS見ると、とにかく全てを理解しないと危険だよって感じで、返って「後でゆっくり見よう」なんて流しちゃうことって、みなさんはないんでしょうか?
でもそのサイトのコンテンツを準備するのも一苦労だなと思ったりもする。。。