この日記のはてなブックマーク数 Subscribe with livedoor Reader

2006-05-24 Wed


LWM.net と Slashdot.org の RSSの翻訳サイト [Linux]


http://traiss.tabesugi.net/

Traiss は英語サイトの RSS 翻訳を支援するソフトウェアです。いまのところ LWN.net と Slashdot を対象にしています。


このサイトが活発になってくれると嬉しいなぁ(^^;

#見出しだけでも日本語訳がつくと、見通しがよくなるね。




PostgreSQL security releases [PostgreSQL][Security]


http://www.postgresql.org/docs/techdocs.50
via http://lwn.net/Articles/184760/rss
via http://traiss.tabesugi.net.nyud.net:8090/lwn.html

今日はこれで半日は潰れた……どうも単純なアップデートだと、アプリケーションによっては痛い目を見る気がします。

取るべき対策は

1. PostgreSQLサーバのアップデート
2. クライアント側のドライバのアップデート
3. いくつかのアプリでは、改修も必要

こんな感じでしょうか?

目を通しておくべきドキュメントは

http://www.postgresql.org/docs/techdocs.52

からリンクのある

FAQ
User's Guide
Technical Information on the Security Hole

の3つ。

このアップデートで、PostgreSQLサーバには

1. UTF-8, SJIS などマルチバイトなエンコードで、不正な文字コードをきちんとチェックするようになった。
2. default で、文字コードが SJIS, BIG5, GBK, GB1803, UHC の場合、エスケープ文字として "\" が使えなくした。

の2つの変更が加えられています。特に後者が曲者で、SJIS を使っており、なおかつエスケープ文字として "\" を利用しているようなアプリを書いてると、該当部分の書き直しが必要になるようです(あってるよね?)

ちなみに、このエスケープ文字の挙動に関しては

    * backslash_quote = on : Allow \' always (old behavior; INSECURE
    * backslash_quote = off : Reject \' always
    * backslash_quote = safe_encoding : Allow \' if client_encoding is safe


こんな感じで、以前の挙動に戻せたりするらしい。ちなみに前記したように、default の挙動は

 backslash_quote = safe_encoding


だそうです。

アプリが動かなくなった!とか、クライアント側のドライバのアップデートが抜けてた! とかありそうな話だ……

ちなみになぜマルチバイトエンコードを利用して、SQL Injection が可能となるのか? それについては、上でも挙げた

Technical Information on the Security Hole

に、非常に詳しく書いてあるので、ご一読をお奨めします。そっか表か……


IPv4/IPv6 meter
検索キーワードは複数指定できます
ChangeLogを検索
Google
Web www.kunitake.org
思ったより安い……時もある、Amazon

カテゴリ