CVE-2021-31402
dio vulnerable to CRLF injection with HTTP method string
The dio package 4.0.0 for Dart allows CRLF injection if the attacker controls the HTTP method string, a different vulnerability than CVE-2020-35669.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- High
- Integrity
- None
- Availability
- None
Exploit likelihood
What each source reports
NVD Score used
7.5
The dio package 4.0.0 for Dart allows CRLF injection if the attacker controls the HTTP method string, a different vulnerability than CVE-2020-35669.
- Record
CVE-2021-31402- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N - CVSS 2.0
- 5.0 Medium
AV:N/AC:L/Au:N/C:P/I:N/A:N - Weakness
- CWE-74
- Updated
- 2026-11-02
CVE List No score
The dio package 4.0.0 for Dart allows CRLF injection if the attacker controls the HTTP method string, a different vulnerability than CVE-2020-35669.
- Record
CVE-2021-31402- Updated
- 2026-11-02
EUVDEUVD-2023-0955 No score
The dio package 4.0.0 for Dart allows CRLF injection if the attacker controls the HTTP method string, a different vulnerability than CVE-2020-35669.
- Record
EUVD-2023-0955- Updated
- 2026-11-03
GitHub AdvisoriesGHSA-9324-jv53-9cc8
7.5
dio vulnerable to CRLF injection with HTTP method string
Impact
The dio package 4.0.0 for Dart allows CRLF injection if the attacker controls the HTTP method string, a different vulnerability than CVE-2020-35669.
Patches
The vulnerability has been resolved by https://github.com/cfug/dio/commit/927f79e93ba39f3c3a12c190624a55653d577984, and included since v5.0.0.
Workarounds
Cherry-pick the commit to your own fork can resolves the vulberability too.
References
- Record
GHSA-9324-jv53-9cc8- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N - Weakness
- CWE-93
- Updated
- 2026-11-02
OSV
7.5
The dio package 4.0.0 for Dart allows CRLF injection if the attacker controls the HTTP method string, a different vulnerability than CVE-2020-35669.
- Record
CVE-2021-31402- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N - Updated
- 2026-11-02
OSVGHSA-9324-jv53-9cc8
7.5
dio vulnerable to CRLF injection with HTTP method string
Impact
The dio package 4.0.0 for Dart allows CRLF injection if the attacker controls the HTTP method string, a different vulnerability than CVE-2020-35669.
Patches
The vulnerability has been resolved by https://github.com/cfug/dio/commit/927f79e93ba39f3c3a12c190624a55653d577984, and included since v5.0.0.
Workarounds
Cherry-pick the commit to your own fork can resolves the vulberability too.
References
- Record
GHSA-9324-jv53-9cc8- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N - Weakness
- CWE-93
- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
dioPub |
before 5.0.0 | 5.0.0 |
dioPub |
before 5.0.0, plus listed versions 0.0.10.0.100.0.110.0.120.0.13 Show 45 moreShow less0.0.140.0.20.0.30.0.40.0.50.0.60.0.70.0.80.0.90.1.10.1.20.1.30.1.40.1.50.1.60.1.70.1.81.0.01.0.11.0.101.0.111.0.121.0.131.0.141.0.151.0.161.0.171.0.21.0.31.0.41.0.51.0.61.0.71.0.81.0.92.0.02.0.12.0.102.0.112.0.122.0.132.0.142.0.152.0.162.0.17 |
5.0.0 |
History
| Recorded | Changed | Sources |
|---|---|---|
| aliases | EUVD | |
| first indexed | CVE List, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2021-31402 is a high vulnerability (CVSS 7.5) in Flutterchina Dio, published April 15, 2021. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 1.17%, the 67th percentile. Fixed in dio 5.0.0.
References
github.com/flutterchina/dio/issues/1130
github.com/cfug/dio/security/advisories/GHSA-9324-jv53-9cc8
nvd.nist.gov/vuln/detail/CVE-2021-31402
github.com/cfug/dio/issues/1752
github.com/cfug/dio/commit/927f79e93ba39f3c3a12c190624a55653d577984
osv.dev/GHSA-jwpw-q68h-r678
security.snyk.io/vuln/SNYK-PUB-DIO-5891148
github.com/advisories/GHSA-9324-jv53-9cc8
github.com/cfug/dio
Left out here: 67 versions. The JSON record has them.