Chapter 3. Administrative Basics
100
The Educated Guesswork blog has a good description of this kind of attack at
http://
www.educatedguesswork.org/2009/11/understanding_the_tls_renegoti.html
.
Either a client or a server may request a renegotiation of an existing TLS/SSL session (for instance,
to renew session encryption keys or to use different cipher suite). When TLS/SSL is used to secure
access to an HTTP service and a client attempts to access some protected resource, server-initiated
renegotiation asks client to authenticate with a certificate. In Certificate System, this kind of session
renegotiation occurs if a user connects to an end-entity port that doesn't require client authentication,
but then attempts to submit a certificate enrollment form for an enrollment profile that requires client
authentication. The Certificate System server requests and then parses a client certificate for the user.
Several erratas were release for Red Hat Certificate System 7.3 to address this vulnerability, including
Errata RHBA-2010:0170
2
and
Errata RHBA-2010:0165
3
. These erratas allow Certificate System to use
the (updated) system NSS packages on Red Hat Enterprise Linux, create a new secure authentication
port for end-entities to use, and reconfigure client connections for subsystems like the RA, TPS, and
SCEP services to use the new ports.
IMPORTANT
In Certificate System 7.3, no port is configured to require client authentication at the
initial connection. The workaround here configures the agent secure port to require client
authentication and directs requests for profiles that require client authentication to this
port.
The workarounds here assume that Certificate System has been configured to
use separate agent, end-entities, and admin ports, as described in
Section 3.11.3,
“Configuring Port Separation”
. However, port separation is only available on Certificate
System 7.3 if the server is updated to the latest version and then the subsystems are
manually configured to use port separation.
3.11.4.1. Updating the CA Configuration
1. Update the NSS packages by installing the system
nss
packages.
up2date nss
2. Before making any edits to the CA configuration, back up the following files:
• /var/lib/
instance_name
/conf/server.xml
• /var/lib/
instance_name
/web-apps.ee/ca/ee/ca/ProfileSelect.template
3. Open the
server.xml
file.
vim /var/lib/
instance_name
/conf/server.xml
4. In the
server.xml
file, change the
clientAuth
directive in the agent connector to
true
.
<Connector name="Agent" port="9443" maxHttpHeaderSize="8192"
2
https://rhn.redhat.com/errata/RHBA-2010-0170.html
3
https://rhn.redhat.com/errata/RHBA-2010-0165.html
Summary of Contents for CERTIFICATE SYSTEM 7.3 - ADMINISTRATION
Page 15: ...xv Index 525 ...
Page 16: ...xvi ...
Page 38: ...Chapter 1 Overview 16 Figure 1 4 Certificate System Architecture ...
Page 82: ...Chapter 2 Installation and Configuration 60 rpm ev rhpki manage ...
Page 154: ...132 ...
Page 194: ...172 ...
Page 238: ...216 ...
Page 244: ...222 ...
Page 246: ...224 ...
Page 286: ...264 ...
Page 292: ...270 ...
Page 318: ...Chapter 13 Certificate Profiles 296 Parameter IssuerType_n IssuerName_n ...
Page 321: ...Freshest CRL Extension Default 299 Parameter PointName_n PointIssuerName_n ...
Page 398: ...376 ...
Page 412: ...390 ...
Page 472: ...450 ...
Page 506: ...484 ...
Page 528: ...506 ...
Page 546: ...524 ...