2007年08月24日

SET NAMESは禁止?

PHPのセキュリティに詳しい大垣さんのブログ

SET NAMESは禁止

(引用)
============
脆弱性の説明は面倒ですが注意事項は簡単です。「DBMSをアプリケーションから利用する場合、文字エンコーディング設定は必ずAPIを利用する」つまり「SET NAMES(SET CLIENT_ENCODING等も)は禁止」です。
============

日本語以外の記事では、「SET NAMESを使ってはいけない」とまで書いている記事が見つからなかったので、いまだすんなりと納得できていないのですが、今後、MySQL 4.1以上を入れた共有サーバなんかではどうすればいいんでしょうか…。

“SET NAMES sjs”に問題がある、という記事は下記にありました。

t_komuraの日記
addslashes() による SQL 文字列のエスケープ回避問題

hoshikuzu | star_dust の書斎
■PHP 利用時に Shift_JIS で addslashes() によるエスケープ処理に SQL インジェクション可能な穴

“mysql_real_escape_string()でもSET NAMES sjis;等を実行した後に使うと2バイト目の0x5C文字がエスケープされないようです。”とあったので、

"0x5C SQL injection"
などで調べると、下記のページが。

http://www.postgresql.org/docs/techdocs.50
でも、このページには、

"this includes at least SJIS, BIG5, GBK, GB18030, and UHC."

とあります。大垣さんは、

SET NAMES ujis
SET NAMES utf8
SET NAMES binary

もみんな使うな、と言われているのでしょうか…。
このあたりに詳しい方、どなたか教えてください。
posted by SDozono at 15:45| 東京 🌁| Comment(10) | TrackBack(0) | PHP | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
PHPでデータベースに接続するときのまとめ
http://qiita.com/mpyw/items/b00b72c5c95aac573b71
Posted by CertaiN at 2013年08月27日 00:17
Review prices and buy ’ http://canadianpharmacyv.com/ canadian pharmacy online from responsible pharmacies online if you desire competitive, Powerful treatment is available when you canadian pharmacies http://canadapharmacyonlinev.com/ after you compare online offerings, People with low incomes are likely to best canadian pharmacy http://bestcanadianpharmacyv.com/ recommended if you're over 70 years old?, possibleYour pharmacists should respect your decision to canadian pharmacy meds http://canadaonlinepharmacyv.com/ is available online at the lowest possible medication price., Consider various price options before you online prescription http://canadianpharmacyonlinev.com/ to minimize specific symptoms !
Posted by ZghbclxSM at 2017年02月16日 07:31
<a href="http://canadadrugsonline7.com/">sildenafil 100mg</a>

Heya great website! Does running a blog such as this take a great deal of work? I have very little understanding of computer programming however I had been hoping to start my own blog soon. Anyhow, should you have any ideas or techniques for new blog owners please share. I understand this is off topic however I just wanted to ask. Many thanks! ’ http://canadadrugsonline7.com/
Posted by NjynfmMD at 2017年03月23日 06:09
buy cialis ’
<a href="http://celagenericcialisonlinecheap.com/">cheap cialis</a>
cialis
<a href="http://celagenericcialisonlinecheap.com/">buy cialis</a>
Posted by BjnhmatMU at 2017年04月22日 10:40
same day payday loans ’
http://neocialischeapbuy.com/
Posted by VdpknvjVH at 2017年05月04日 06:43
Posted by idrukl at 2017年05月08日 08:41
Posted by nxxqkl at 2017年05月10日 06:03
payday loans near me - https://badcreditnyrc.org/
loan bad credit <a href="https://badcreditnyrc.org/">online payday loan</a> ’
Posted by BbtrrowCV at 2017年05月18日 05:22
auto insurance quotes online - https://autoinsuranceratesyhd.com/
discount auto insurance <a href="https://autoinsuranceratesyhd.com/">compare car insurance</a> ’
Posted by FwcxrowGR at 2017年05月20日 07:09
online loan - https://paydayloanxwer.com/
fast cash loans <a href="https://paydayloanxwer.com/">cash advance now</a> ’
Posted by FbfxvrowBH at 2017年05月23日 08:32
コメントを書く
お名前: [必須入力]

メールアドレス:

ホームページアドレス:

コメント: [必須入力]

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。

この記事へのトラックバック
手(パー)To make a comment: Please type your name and comment. at the validation field box, type 'cakephp'. And there two glay buttons. "Preview"/"Submit". Thank you!