« ポップンミュージック。 | トップページ | テクノラティがやってきた。 »

価格.comとSQLインジェクション。

asahi.com: データベースを攻撃、外部から支配 カカクコムHP事件-社会
最高レベルのセキュリティなんていってましたがなんとなく予想どおり簡単なセキュリティーホールがあったというこの事件。
SQLのエラーメッセージを表に見せないとか、入力された値はちゃんとエスケープするとか・・・最近流行のセキュリティ対策本にいつも載ってる項目だったりします。

以前読んだセキュリティー本にあった、「プレースホルダ」がとても便利で現在愛用していたりします。
PEAR::DBを使ってプログラミングをしているのですが、

$db->query('select * from test where id=? and name =?',Array('id'=>1,'name'=>'test'));

こんな書き方で簡単に使えるのがなかなか良い感じ。
#当てはめる値に後でわかりやすいよう連想配列にしています。
一度こういう便利なモノ使い始めるとなかなかやめれなくなりそうでコワイですが(苦笑)
とはいえ・・・やはりプログラムは完全とは思えないのでできる限りのエラーチェックは自前で記入しています。
人様のプログラムは疑ってかかれ!と言い聞かされておりますので(^-^;
ただし、なかなか自分のプログラムは疑ってかかっているつもりでもやっぱり甘かったりしてなかなか難しいですね。

価格.comの様な大騒ぎにならないようちゃんとしたプログラムを組まなければ!ということで気を引き締めたいと思います。

|

« ポップンミュージック。 | トップページ | テクノラティがやってきた。 »

「パソコン・インターネット」カテゴリの記事

コメント

PHPの場合はそう書くのが推奨&対応されてますね^^
ときに、ASP.NET for VBではどうすればよいのかわかりますか?^^;
ADO.NETに未だに慣れない今日この頃です^^;

投稿: ヴぇくたー | 2005/05/29 04:25

コメントありがとうございます。

ASP.NETはさわったことが全くないのでよくわからないのですが、
ぱぱーっと調べてみたところ以下のサイトにまとめてありました。
http://blog.shos.info/archives/2005/03/net_tips_web_sq_1.html

普通のASPで制作を行っていたときは自分でエスケープ関数を作って
SQL文に値を流し込む前に関数を通して無害化してました。
セキュリティーのためには大事なことだけれど結構面倒ですよね(^-^;

投稿: 茅乃 | 2005/05/30 22:46

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/2943/4279735

この記事へのトラックバック一覧です: 価格.comとSQLインジェクション。:

« ポップンミュージック。 | トップページ | テクノラティがやってきた。 »