最近、SQLインジェクションが話題ですよね。昨日も、なんか事件がなかったでしたっけ?
SQLインジェクションの意味とそのやり方については、このサイトを参照してね。
で、セキュリティといえば、IPA、なんかやってるのかな??
とおもって、IPAのセキュリティセンターのページをみても、SQLインジェクションについて。。。ない!
と思ったら、こんなページにちょっと書いてありました。
うーん、これじゃー見つけられないっす!
こんだけ事件になっているんだから、大々的にやっていただかないと!
SQLインジェクションを防ぐには、引数のチェックということになるんでしょうが、現実にはチェックしきれないですよね。なんたって、以前のブログにかいたブラックボックステストのはなじじゃーないですけど、以前は、同値として条件に考えていなかったわけですから、それをテストせいといわれてもねえ。。。
とおもってたら、PreparedStatementを使うといいみたいなことを書いてあるページがあった。ここっす。
ほー、自動生成やってるとき、雛形にきたソース、動的に1行しかステートメントを作らないような場所でも、PreparedStatementを使うような雛形だったんで、なぜなんだろう??っていままで思ってたけど、そうか、サニタイジングのためなのね。。。
それに気づかないで、直接SQLを書かせないために、パターン化、自動生成させてたのね。納得。。。って、いまごろ気づくな(^^;)って!
組込みソフトウェア開発における品質向上の勧め (コーディング編) SEC books
情報処理推進機構ソフトウェア・エンジニアリング・センター
って見ました?
8ページ、9ページのソフトウェア品質特性モデルのとこと
34ページ、35ページのコーディング規約が書いてあるもののまとめと
42ページから47ページのコーディングの作法
しか見るべき所は無いんだけど(それも、ただまとまってるっていうだけなんだけど)、
本のおねだんが315円なんで、まあ、コーヒー2杯分と考えれば、それだけ見るのでも、お安いかもかも?ちょっと、お得感のある本です。