世界中の共有動画を横断検索。youku.com,youtube,tudou.com,Dailymotionに対応。・・・そんなサービスの開発者ブログ。

みんなの動画サーチ

個人メニュー
最近見た動画

サービス:みんなの動画サーチ   利用できる動画共有サイト : youku.com , youtube , tudou.com , Dailymotion

Ads by Google

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
--------(--)

phpを使った開発におけるSQLインジェクション対策

SQLインジェクション対策

 外部入力のデータをSQLに埋め込んで使うことは良くあります。たとえばユーザー認証にSQLを発行するようなケースです。
 このとき、ユーザーから入力された内容をそのまま利用してはいけません。たとえば下記のようなコードです。

$pass = mysql_escape_string($_POST["pass"]);
$sql="select id , username where pass = $pass"
 このとき、$_POST["pass"]に
"4 OR 1=1"
 と入力がなされていると、PHPの設定次第ではこのようなSQLが生成されます。
select no,username where pass= 4 OR 1=1

 このSQLが発行されると、全てを返してしまいます。そのため、まずSQL文は値を「'」でかこんで

$sql="select id , username where pass = '$pass'"

という形にします。ただしこれだけでは、$IDに [1' OR 1='1]と入力されているとこのようなSQL文が生成されてしまうため

select no,username where pass='4' OR 1='1'

 同じことになります。
 そのため値のサニタイズもあわせて行う必要があります。MYSQLならmysql_escape_string()、PostgreSQLならpg_escape_string()が利用できます。ADODB、PEARDBなどを使っているなら、サニタイズ関数がありますからそちらを使うと良いでしょう。

tag : php セキュリティ SQLインジェクション

2008-03-24(Mon)

 みんなの動画サーチ 現在の人気動画

RSSフィード
最近の記事
月別アーカイブ
カテゴリー
逆アクセスランキング
プロフィール

Author:ナカタツ
 共有動画サーチの開発をやっているフリーランサーです。プログラム歴は趣味で使っていた頃も合わせるとちょうど今年で10年目。最近はPHPばかり使ってます。
 私に興味を持ってくださる方はお気軽にご連絡ください。Skypeでお話できる人歓迎。メールフォームはこちら

カレンダー
10 | 2009/11 | 12
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 - - - - -

みんなの動画サーチへ戻る

カテゴリ:芸能・テレビ | 音楽 | アニメ | おもしろ | 神・衝撃 | ゲーム | 動物 | スポーツ | 時事ニュース | 自然・歴史 | 車・バイク | セクシー


アクセス解析 アクセスランキング
  • seo

Powered by FC2 Blog

FC2Ad

FC2ブログ

Copyright © みんなの動画サーチ開発者ブログ All Rights Reserved.