Return-Path: Delivered-To: apmail-httpd-dev-archive@www.apache.org Received: (qmail 66184 invoked from network); 17 Apr 2011 12:41:38 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 17 Apr 2011 12:41:38 -0000 Received: (qmail 66203 invoked by uid 500); 17 Apr 2011 12:41:38 -0000 Delivered-To: apmail-httpd-dev-archive@httpd.apache.org Received: (qmail 66141 invoked by uid 500); 17 Apr 2011 12:41:38 -0000 Mailing-List: contact dev-help@httpd.apache.org; run by ezmlm Precedence: bulk Reply-To: dev@httpd.apache.org list-help: list-unsubscribe: List-Post: List-Id: Delivered-To: mailing list dev@httpd.apache.org Received: (qmail 66133 invoked by uid 99); 17 Apr 2011 12:41:37 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 17 Apr 2011 12:41:37 +0000 X-ASF-Spam-Status: No, hits=-0.7 required=5.0 tests=FREEMAIL_FROM,RCVD_IN_DNSWL_LOW,RFC_ABUSE_POST,SPF_PASS,T_TO_NO_BRKTS_FREEMAIL X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of trawick@gmail.com designates 209.85.214.45 as permitted sender) Received: from [209.85.214.45] (HELO mail-bw0-f45.google.com) (209.85.214.45) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 17 Apr 2011 12:41:31 +0000 Received: by bwz16 with SMTP id 16so4694769bwz.18 for ; Sun, 17 Apr 2011 05:41:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:in-reply-to:references:date :message-id:subject:from:to:content-type:content-transfer-encoding; bh=tffOdSzneea9/xSOj7FbiZYxfPE241KBZh4CdPNC0W4=; b=BJvK2Dfm23nn/3ZtNo6z4vSWLxlTJpfRXzLxFxq4u95Uga7FiVpEISOPkEdc/p+PpH weiJcagBV/Ru9T9W7e44FGitzie7n26JBVGAV/U7URXfkKB9TPRtXLA3u0o/j2nv47oC g8UV9BiaCaErQfZgyeo/NAKr4IhmZClb80fLc= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type:content-transfer-encoding; b=kNH6cpZM237ZlVpH1pJfJ5DTBkzDi+tz5fabNGZA/a29NAapVJrYs6O+e0yIC5q9G+ jtMUO6PcoIif5gx8CfZdqThFshZmtwxFAFtXN7+yqiCKTsOaCX6xqNZ4Oad2MerDcyNS fGyhh8Oq79ZhBHymNYu62kj4VYnjK/W67e2OU= MIME-Version: 1.0 Received: by 10.204.45.152 with SMTP id e24mr2688778bkf.47.1303044071202; Sun, 17 Apr 2011 05:41:11 -0700 (PDT) Received: by 10.204.16.207 with HTTP; Sun, 17 Apr 2011 05:41:11 -0700 (PDT) In-Reply-To: <4DA9F06E.2080908@primary.net> References: <4DA9F06E.2080908@primary.net> Date: Sun, 17 Apr 2011 08:41:11 -0400 Message-ID: Subject: Re: SSL related DoS From: Jeff Trawick To: dev@httpd.apache.org Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable X-Virus-Checked: Checked by ClamAV on apache.org On Sat, Apr 16, 2011 at 3:39 PM, Daniel Ruggeri wrot= e: > On 4/16/2011 11:52 AM, Chris Hill wrote: >> >> Dear Apache httpd dev list, >> ... >> The reason why I insist in this is that the world has come to depend on >> HTTP/SOAP over SSL (and Apache/OpenSSL are probably the most popular >> implementation) for business critical apps, yet, it is not clear how >> these businesses can play around with configuration parameters to fine >> tune these SSL settings to their specific needs, e.g. *ensure client >> side renegs can be disabled* or at least,*provide a way of limiting how >> many of these a client initiated re-negotiations (or initial handshakes) >> a server will allow per second for a specific connection/IP*. It is >> great that recent Apache builds disable client initiated renegotiation >> by default, but how can I ensure this will never be turned back on in >> future releases given the lack of configuration parameters? >> > > Chris; > =A0 I believe this topic (enable/disable renegotiation) was brought up on= this > list just a matter of days ago. I don't recall seeing a consensus, but I > would agree that a configuration parameter to (dis)allow client-initiated > renegotiation would be a Very Good Thing. I don't think this would be ver= y > difficult to implement - and would be a good start to correct the issues = you > call out. I thought client-initiated renegotiation was already disabled out of the box, with no configuration mechanism to re-enable. >From ssl_engine_kernel.c, 2.2.x-latest: /* If the first handshake is complete, change state to reject any * subsequent client-initated renegotiation. */ else if ((where & SSL_CB_HANDSHAKE_DONE) && scr->reneg_state =3D=3D RENEG_INIT) { scr->reneg_state =3D RENEG_REJECT; }