FS#38400 - [tinyproxy] security patch for CVE-2012-3505
Attached to Project:
Community Packages
Opened by RbN (RbN) - Monday, 06 January 2014, 20:32 GMT
Last edited by Lukas Fleischer (lfleischer) - Sunday, 18 January 2015, 09:19 GMT
Opened by RbN (RbN) - Monday, 06 January 2014, 20:32 GMT
Last edited by Lukas Fleischer (lfleischer) - Sunday, 18 January 2015, 09:19 GMT
|
Details
Description (from NIST[0]):
"Tinyproxy 1.8.3 and earlier allows remote attackers to cause a denial of service (CPU and memory consumption) via (1) a large number of headers or (2) a large number of forged headers that trigger hash collisions predictably. bucket." Upstream bug report [1] Resolution: Upstream patch [2] and [3] Ressources: [0] http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2012-3505 [1] https://bugzilla.banu.com/show_bug.cgi?id=110 [2] https://bugzilla.banu.com/attachment.cgi?id=63&action=edit [3] https://bugzilla.banu.com/attachment.cgi?id=62&action=edit |
This task depends upon
Closed by Lukas Fleischer (lfleischer)
Sunday, 18 January 2015, 09:19 GMT
Reason for closing: Fixed
Additional comments about closing: "Fixed" in 1.8.4-1.
Sunday, 18 January 2015, 09:19 GMT
Reason for closing: Fixed
Additional comments about closing: "Fixed" in 1.8.4-1.
Anyway, if you want to ensure that these patch doesn't introduce other problems or bugs, please know that Debian uses these patch [0] for Squeeze and Wheezy since a few month, and at least openSuse does too ;)
[0] http://patch-tracker.debian.org/package/tinyproxy/1.8.2-1squeeze3
Patches pushed to master and 1.8.
With some additions:
- better hash algorithm (by daniel bernstein), patch by Peter Fröhlich.
- raised number of hash buckets to 256.
This will be in 1.8.4 which will be released very soon!
To sum it up: i agree its not "really solved" but in my opinion from reading the 4 patch files its kind of "mitigated good enough to maybe consider CVE-2012-3505 mitigated, do you agree?)
but to be honest the limit to 10000 entries and the bit of (re)seeding in the (per child) loop is however (in my opinion) "good enough" that this issue can't be exploited as trivial and effective as before.
Even if the way to seed is "stupid" and definitively not "cryptographic secure" it still helps a lot to work around the described issue especially because its not application unique but done in the (per child) loop (making guessing the PRNG seed (and/or reconstructing the PRNG-state) a lot more difficulty and *may* require some kind of side-channel attack to be able to do so).
MITRE has no problems marking CVEs as incomplete and re-issue new identifiers (with adjusted scores) if needed but in my personal honest opinion this (lets call it a work-around) is currently "good enough" to transform a very trivial and effective to exploit DoS vulnerability into something that is much much harder to exploit.
From our own point of view i really see no "gain" or "advantage" in keeping this open (after 1.8.4), but maybe it sounds like a nice topic to discuss at oss-security mailinglist? :-)
Sincerely, anthraxx