Bug 1972881 (CVE-2021-34549)

Summary: CVE-2021-34549 tor: hashtable-based CPU denial-of-service attack against relays
Product: [Other] Security Response Reporter: Guilherme de Almeida Suckevicz <gsuckevi>
Component: vulnerabilityAssignee: Red Hat Product Security <security-response-team>
Status: CLOSED UPSTREAM QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: unspecifiedCC: casper, lewk, mh, paul.wouters, rh-bugzilla, s
Target Milestone: ---Keywords: Security
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2021-06-16 21:04:50 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1972882, 1972883    
Bug Blocks:    

Description Guilherme de Almeida Suckevicz 2021-06-16 19:41:52 UTC
Resist a hashtable-based CPU denial-of-service attack against relays. Previously we used a naive unkeyed hash function to look up circuits in a circuitmux object. An attacker could exploit this to construct circuits with chosen circuit IDs, to create collisions and make the hash table inefficient. Now we use a SipHash construction here instead. Fixes bug 40391; bugfix on 0.2.4.4-alpha. This issue is also tracked as TROVE-2021-005 and CVE-2021-34549.

References:
https://lists.torproject.org/pipermail/tor-announce/2021-June/000220.html
https://lists.torproject.org/pipermail/tor-announce/2021-June/000221.html

Comment 1 Guilherme de Almeida Suckevicz 2021-06-16 19:42:57 UTC
Created tor tracking bugs for this issue:

Affects: epel-all [bug 1972883]
Affects: fedora-all [bug 1972882]

Comment 2 Product Security DevOps Team 2021-06-16 21:04:50 UTC
This CVE Bugzilla entry is for community support informational purposes only as it does not affect a package in a commercially supported Red Hat product. Refer to the dependent bugs for status of those individual community products.