このサイトについて

Null Pointer Access(Security Advisory for Zope 2.7 + 2.8)

Null Pointer Access(Security Advisory for Zope 2.7 + 2.8)

http://zope.org/Members/ajung/security_advisory

Zope 2.7.x,およびベータリリース中の2.8において,ZPT,DTMLで特定のコードを書くとZopeが落ちてしまう,という不具合。owaさんによって日本のZope情報にいちはやく登録され,また中神さん主催のZope-memoメーリングリストにもリポートが流れました。

向こうの開発MLに報告されていた例を見ると,「うっかり書いてしまうタイプ」のコードではないようです。ZMIを不特定多数に解放している場合,さらに悪意のある作業者がZMIにログインできる場合には要注意。一般的なZopeサイトではほぼ問題ないでしょう:-)。

ま,転ばぬ先の杖,ということで,etc/zope.confにコメントアウトされている

security-policy-implementation python

という設定を生かす('#'を除去する)のがいいでしょうか。ただし,設定変更のリスクとしてZopeの実行速度が多少遅くなるはずです。

Zope 2.7系で加わった,応答のエンコードをダイナミックに変換する仕組みまわりが影響している模様。DTMLでも,あれをああしてああすればZopeを落とすコードは書けるはずだけど,まあ不毛なので試してみません:-)。

Zopeの多くの部分はPythonでかかれているわけですが,一部Cでかかれた部分があって,今回のようにNull Pointer Accessを引き起こす可能性がある。また,バッファオーバーフローに関しても「可能性」としては皆無とはいえない。

一方で,問題に対する対処法がすぐに公開される安心感というのはある。Zopeはこれまでもセキュリティにフォーカスしてきましたので,その方向性は現在も堅持されているということでしょう。

2010-08-27 04:30