Deserialization in Asynkron Wire
CVE-2021-29508
Due to how Wire handles type information in its serialization format, malicious payloads can be passed to a deserializer. e.g. using a surrogate on the sender end, an attacker can pass information about a different type for the receiving end. And by doing so allowing the serializer to create any type on the deserializing end. This is the same issue that exists for .NET BinaryFormatter https://docs.microsoft.com/en-us/visualstudio/code-quality/ca2300?view=vs-2019. This also applies to the fork of Wire.
Vulnerability class: Insecure Deserialization
EPSS: 0.016 (73.5th percentile) — read the EPSS interpretation.
CVSS v3 metric
CVSS v3 base score 9.1 (Critical). Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:H.
Affected products
- Asynkron Wire
- Asynkronit Wire — versions <= 1.0.0
Weakness classification (CWE)
Public proof-of-concept exploits
References
- security-advisories@github.com (x_refsource_CONFIRM, Exploit, Third Party Advisory)
- security-advisories@github.com (Third Party Advisory, x_refsource_MISC)
Frequently asked questions
- What is CVE-2021-29508?
- CVE-2021-29508 is a critical-severity vulnerability in Asynkron Wire, classified under Deserialization of Untrusted Data. CVSS score: 9.1/10. Published 2021-05-11.
- How severe is CVE-2021-29508?
- Critical severity. CVSS v3 base score is 9.1 out of 10.
- Is CVE-2021-29508 known to be exploited?
- 1 public proof-of-concept repositories are indexed. Not currently listed in the CISA KEV catalog.