Miggo Logo

CVE-2020-15093: Improper verification of signature threshold in tough

8.6

CVSS Score
3.1

Basic Information

EPSS Score
0.31836%
Published
8/25/2021
Updated
2/3/2023
KEV Status
No
Technology
TechnologyRust

Technical Details

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:N/I:H/A:N
Package NameEcosystemVulnerable VersionsFirst Patched Version
toughrust< 0.7.10.7.1

Vulnerability Intelligence
Miggo AIMiggo AI

Miggo AIRoot Cause Analysis

The vulnerability stems from improper counting of unique cryptographic signatures. The core issue exists in functions responsible for: 1) Verifying signature thresholds (verify_threshold) and 2) Performing signature verification (verify_signatures). These functions likely counted multiple signatures from the same key as separate valid signatures rather than enforcing uniqueness. The Python TUF reference implementation's fix shows the solution requires deduplicating by key ID, indicating the vulnerable functions would be those handling signature aggregation and threshold verification.

Vulnerable functions

Only Mi**o us*rs **n s** t*is s**tion

WAF Protection Rules

WAF Rule

## Imp**t T** tou** li*r*ry, prior to *.*.*, *o*s not prop*rly v*ri*y t** uniqu*n*ss o* k*ys in t** si*n*tur*s provi*** to m**t t** t*r*s*ol* o* *rypto*r*p*i* si*n*tur*s. It *llows som*on* wit* ****ss to * v*li* si*nin* k*y to *r**t* multipl* v*li*

Reasoning

T** vuln*r**ility st*ms *rom improp*r *ountin* o* uniqu* *rypto*r*p*i* si*n*tur*s. T** *or* issu* *xists in *un*tions r*sponsi*l* *or: *) V*ri*yin* si*n*tur* t*r*s*ol*s (v*ri*y_t*r*s*ol*) *n* *) P*r*ormin* si*n*tur* v*ri*i**tion (v*ri*y_si*n*tur*s).