[PHP-users 30195] Re: ご意見等をよろしくお願いいたします

Reiji Matsumoto matsumoto @ spline.oc.to
2006年 8月 31日 (木) 03:56:52 JST


松本と申します。

> 私の投稿で不愉快な思いをされた方がいらしたようなので、
> 私も以後は、このMLへの投稿はひかえるつもりです。

一通りスレッドを読んでみましたが、特に不愉快な思いを
されている方がいらっしゃるとは感じられませんでした。
まぁ、このメーリングリストに集う識者の方々に納得してもらえる
セキュリティレベルを確保するのは、それなりに難しい事かも
知れませんが。:-)

> ですが特に、外部から受け取った値を
> mysql_escape_string()
> などをして、シングルクオートした際に、
> ダイレクトSQLコマンドインジェクションができてしまう
> ケースが、真面目な話、分からないです。

それは是非、書籍等で勉強された方がよろしいかと思います。
全部のソースを見てはおりませんが、少なくとも
/test_maker/data/data_for_group.php の 20行目の処理に、
SQLインジェクション脆弱性を確認しております。
失礼ながらここでの処理は、エスケープさえすれば脆弱性を回避
できるという考えの典型的な失敗例かと思われます。

例えば、

SELECT * FROM tbl WHERE id=$class_id

というSQLを実行する場合、$class_idが "0;DELETE FROM tbl"
の場合に、tblテーブルを全削除できます。

主に外部変数 $class_id の処理に問題を抱えております。
この変数は数値なのですから、事前に数値である事を集中管理的に
チェックするのが理想的なやり方ですね。



PHP-users メーリングリストの案内