Posted by Shugo Maeda on 1 Jul 2005
2005年6月17日、[ruby-core:05237]にて、XMLRPC.iPIMethodsの 脆弱性が報告されました。 この脆弱性により、遠隔の第三者によって任意のコマンドを 実行される危険性があります。
影響範囲
この脆弱性の影響を受けるプログラムは、XMLRPC.iPIMethodsを利用して XML-RPCサービスを提供しているプログラムです。
対策
CVSのHEADおよびruby_1_8ブランチでは、すでに問題は修正されています。
また、ruby-1.8.2の場合、以下のパッチを適用することにより、 問題を回避することができます。
- www.ruby-lang.org/patches/ruby-1.8.2-xmlrpc-ipimethods-fix.diff
--- ruby-1.8.2/lib/xmlrpc/utils.rb.orig 2003-08-15 02:20:14.000000000 +0900
+++ ruby-1.8.2/lib/xmlrpc/utils.rb 2005-07-01 16:33:19.243521736 +0900
@@ -138,7 +138,7 @@
def get_methods(obj, delim=".")
prefix = @prefix + delim
- obj.class.public_instance_methods.collect { |name|
+ obj.class.public_instance_methods(false).collect { |name|
[prefix + name, obj.method(name).to_proc, nil, nil]
}
end