Prototype 1.6.0.2 公開

2008/01/31 12:40pm

気づけば Prototype 1.6.0.2 がリリースされていた。

Safari 3 における getElementsBySelector

Safari では無効になっていた DOM 3 XPath が有効になったようだ(無効になっていたのは Safari のバグ絡み?)。ただし、Selector#shouldUseXPath が false を返した場合は、いままでどおり無効になる。

ブラウザ以外の環境での XSS 脆弱性の修正

これまで Ajax.Request における JavaScript の実行(Automatic JavaScript response evaluation)では、

  1. オプションで evalJS が設定されていること
  2. Content-Type が JavaScript であること

をチェックしており、同じドメイン(プロトコルやポートも)に属しているかどうかの制約はブラウザの実装に任されていた。

しかし、Opera のウィジェットのようなブラウザ以外の環境では、こうした制約を課していないため XSS 脆弱性の原因となる可能性があった。そのため、今回のバージョンから自前でチェックするようになったようだ(Ajax.Request#isSameOrigin)。

また、同様のセキュリティに関する修正が施された 1.5 系の最新版 Prototype 1.5.1.2 も公開されている。