Apache MyFaces Tomahawk JSF Framework Cross-Site Scripting

Security 6月 21, 2007
(Last Updated On: 2007年6月21日)

6/12にApache MyFaces TomahawkにXSS脆弱性が修正されています。

Java Server Faces, JSF, is “a framework used to create server side GUI Web applications. It is comparable to the Java Struts framework. Apache MyFaces Tomahawk is an open source implementation of JSF. The Tomahawk version contains Apache extensions to the base specification”. Remote exploitation of an input validation vulnerability in Apache Software Foundation’s MyFaces Tomahawk JSF framework could allow an attacker to perform a cross-site scripting (XSS) attack.

autoscroll属性に設定された値がバリデーション、エスケープ処理無しにそのまま出力されている事が原因だそうです。1.1.6で修正されています。

http://www.vulnerable.tld/some_app.jsf?autoscroll=[javascript]

の様に簡単に攻撃出来てしまうので価値が高いサイト(JSFで作ってあるサイトの多くは攻撃対象となるようなサイトばかりと思いますが..)の場合は早めに対処した方が良いと思います。

JSFでサイトを作ると結構簡単にインタラクティブなサイトを作れますが、セキュリティの多くはフレームワーク任せになってしまいます。あまりMyFacesの脆弱性は聞きませんが見つかった場合の対処は最初から決めておかなければなりません。JSFを使って開発しているようなサイトの場合、セキュリティポリシーもしっかり定義してあるはずなので大丈夫だとは思いますが、動きが遅いところもあるので…

MyFaces Tomahawk 1.1.6 has been released. This is an important security related update that fixes a severe XSS (cross-site scripting) bug in the Tomahawk 1.1.5 release (CVE-2007-3101).

MyFacesのサイトでは「severe XSS bug」と記載されている様に非常に危険なバグです。

ところで、TomcatにもXSS脆弱性が公開されています。こちらは対策が無い状態ですがしばらくするとアップデートが公開されると思います。きちんとしたサイトがサンプルプログラムをインストールしていたりはしないと思いますが、アップデートが公開されるまでは管理者インターフェースのXSS脆弱性にはログアウトで対策するしか無いです。

投稿者: yohgaki