RHEL Engineering is moving the tracking of its product development work on RHEL 6 through RHEL 9 to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "RHEL project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs in the statuses "NEW", "ASSIGNED", and "POST" are being migrated throughout September 2023. Bugs of Red Hat partners with an assigned Engineering Partner Manager (EPM) are migrated in late September as per pre-agreed dates. Bugs against components "kernel", "kernel-rt", and "kpatch" are only migrated if still in "NEW" or "ASSIGNED". If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "RHEL project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/RHEL-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.
Bug 1949621 - In renegotiated handshake openssl sends extensions which client didn't advertise in second ClientHello [rhel-9]
Summary: In renegotiated handshake openssl sends extensions which client didn't advert...
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Red Hat Enterprise Linux 9
Classification: Red Hat
Component: openssl
Version: 9.0
Hardware: Unspecified
OS: Unspecified
low
low
Target Milestone: beta
: 9.0 Beta
Assignee: Dmitry Belyavskiy
QA Contact: Hubert Kario
URL:
Whiteboard:
Depends On:
Blocks: 1965362
TreeView+ depends on / blocked
 
Reported: 2021-04-14 16:51 UTC by Hubert Kario
Modified: 2021-12-07 21:28 UTC (History)
5 users (show)

Fixed In Version:
Doc Type: No Doc Update
Doc Text:
Clone Of:
: 1965362 (view as bug list)
Environment:
Last Closed: 2021-12-07 21:24:13 UTC
Type: Bug
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Github openssl openssl issues 14875 0 None open During renegotiation OpenSSL sends in ServerHello an extension not advertised by client in the second ClientHello 2021-04-14 16:56:48 UTC
Red Hat Issue Tracker CRYPTO-5642 0 None None None 2021-12-02 14:40:44 UTC

Description Hubert Kario 2021-04-14 16:51:24 UTC
Description of problem:
When client omits ec_point_formats extension in 2nd ClientHello, during renegotiation, the server still sends in the Server Hello.

This is violation of requirements from Section 7.4.1.4 of RFC 5246.

Version-Release number of selected component (if applicable):
openssl-1.1.1g-15.el8_3.x86_64

How reproducible:
always

Steps to Reproduce:
1. openssl req -x509 -newkey rsa -keyout /tmp/localhost.key -out /tmp/localhost.crt -subj /CN=localhost -nodes -batch
2. openssl s_server -key /tmp/localhost.key -cert /tmp/localhost.crt -www 2>server.err >server.out &
3. PYTHONPATH=. python scripts/test-renegotiation-changed-clienthello.py -d

Actual results:
drop ec_point_formats in renegotiation ...
Error encountered while processing node ExpectServerHello(description='second handshake') (child: <tlsfuzzer.expect.ExpectCertificate object at 0x7f63619a1ac8>) with last message being: <tlslite.messages.Message object at 0x7f63616f5fd0>
Error while processing
Traceback (most recent call last):
  File "tlsfuzzer/scripts/test-renegotiation-changed-clienthello.py", line 408, in main
    runner.run()
  File "/tmp/tmp.bHh2uLYuSt/tlsfuzzer/tlsfuzzer/runner.py", line 239, in run
    node.process(self.state, msg)
  File "/tmp/tmp.bHh2uLYuSt/tlsfuzzer/tlsfuzzer/expect.py", line 743, in process
    self._process_extensions(state, cln_hello, srv_hello)
  File "/tmp/tmp.bHh2uLYuSt/tlsfuzzer/tlsfuzzer/expect.py", line 630, in _process_extensions
    .toStr(ext_id)))
AssertionError: Server sent unadvertised extension of type ec_point_formats


Expected results:
drop ec_point_formats in renegotiation ...
OK

Additional info:


Note You need to log in before you can comment on or make changes to this bug.