tor

The Tor anonymity network
git clone https://git.dasho.dev/tor.git
Log | Files | Refs | README | LICENSE

commit 2eb900f7e2ca64e6ce16fc86410cafd935e7cd1e
parent b9f65390089817a74bf20d93e93a15b41a970f79
Author: Nick Mathewson <nickm@torproject.org>
Date:   Mon, 15 Mar 2021 08:54:00 -0400

Merge branch 'maint-0.3.5' into maint-0.4.4

Diffstat:
Mchanges/ticket40286_minimal | 7++++---
Msrc/feature/dirparse/unparseable.c | 7+++++--
2 files changed, 9 insertions(+), 5 deletions(-)

diff --git a/changes/ticket40286_minimal b/changes/ticket40286_minimal @@ -1,5 +1,6 @@ - o Major bugfixes (denial of service): + o Major bugfixes (security, denial of service): - Disable the dump_desc() function that we used to dump unparseable information to disk. It was called incorrectly in several places, - in a way that could lead to excessive CPU usage. - Fixes bug 40286; bugfix on 0.2.2.1-alpha. + in a way that could lead to excessive CPU usage. Fixes bug 40286; + bugfix on 0.2.2.1-alpha. This bug is also tracked as + TROVE-2021-001 and CVE-2021-28089. diff --git a/src/feature/dirparse/unparseable.c b/src/feature/dirparse/unparseable.c @@ -498,8 +498,11 @@ dump_desc,(const char *desc, const char *type)) tor_assert(desc); tor_assert(type); #ifndef TOR_UNIT_TESTS - /* On older versions of Tor we are disabling this function, since it - * can be called with strings that are far too long. */ + /* For now, we are disabling this function, since it can be called with + * strings that are far too long. We can turn it back on if we fix it + * someday, but we'd need to give it a length argument. A likelier + * resolution here is simply to remove this module entirely. See tor#40286 + * for background. */ if (1) return; #endif