mirror of
https://github.com/openembedded/meta-openembedded.git
synced 2026-07-27 07:57:27 +00:00
python3-aiohttp: patch CVE-2025-69225
Details: https://nvd.nist.gov/vuln/detail/CVE-2025-69225 Backport the patch that is referenced by the NVD report. Signed-off-by: Gyorgy Sarvari <skandigraun@gmail.com> Signed-off-by: Anuj Mittal <anuj.mittal@oss.qualcomm.com>
This commit is contained in:
committed by
Anuj Mittal
parent
d691a39655
commit
0f91805c4b
@@ -0,0 +1,49 @@
|
|||||||
|
From 9ef3eb4a9f79c106b8a5518fc600412ad81dff5c Mon Sep 17 00:00:00 2001
|
||||||
|
From: "patchback[bot]" <45432694+patchback[bot]@users.noreply.github.com>
|
||||||
|
Date: Sat, 3 Jan 2026 00:39:41 +0000
|
||||||
|
Subject: [PATCH] Reject non-ascii digits in Range header (#11903)
|
||||||
|
|
||||||
|
**This is a backport of PR #11887 as merged into master
|
||||||
|
(7a067d1905e1eeb921a50010dd0004990dbb3bf0).**
|
||||||
|
|
||||||
|
Co-authored-by: Sam Bull <git@sambull.org>
|
||||||
|
|
||||||
|
CVE: CVE-2025-69225
|
||||||
|
Upstream-Status: Backport [https://github.com/aio-libs/aiohttp/commit/c7b7a044f88c71cefda95ec75cdcfaa4792b3b96]
|
||||||
|
Signed-off-by: Gyorgy Sarvari <skandigraun@gmail.com>
|
||||||
|
---
|
||||||
|
aiohttp/web_request.py | 2 +-
|
||||||
|
tests/test_web_request.py | 7 +++++++
|
||||||
|
2 files changed, 8 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/aiohttp/web_request.py b/aiohttp/web_request.py
|
||||||
|
index 4bc670a..d565557 100644
|
||||||
|
--- a/aiohttp/web_request.py
|
||||||
|
+++ b/aiohttp/web_request.py
|
||||||
|
@@ -598,7 +598,7 @@ class BaseRequest(MutableMapping[str, Any], HeadersMixin):
|
||||||
|
if rng is not None:
|
||||||
|
try:
|
||||||
|
pattern = r"^bytes=(\d*)-(\d*)$"
|
||||||
|
- start, end = re.findall(pattern, rng)[0]
|
||||||
|
+ start, end = re.findall(pattern, rng, re.ASCII)[0]
|
||||||
|
except IndexError: # pattern was not found in header
|
||||||
|
raise ValueError("range not in acceptable format")
|
||||||
|
|
||||||
|
diff --git a/tests/test_web_request.py b/tests/test_web_request.py
|
||||||
|
index c6398ac..704fc18 100644
|
||||||
|
--- a/tests/test_web_request.py
|
||||||
|
+++ b/tests/test_web_request.py
|
||||||
|
@@ -227,6 +227,13 @@ def test_range_to_slice_tail_stop() -> None:
|
||||||
|
assert req.content[req.http_range] == payload[-500:]
|
||||||
|
|
||||||
|
|
||||||
|
+def test_range_non_ascii() -> None:
|
||||||
|
+ # ५ = DEVANAGARI DIGIT FIVE
|
||||||
|
+ req = make_mocked_request("GET", "/", headers=CIMultiDict([("RANGE", "bytes=4-५")]))
|
||||||
|
+ with pytest.raises(ValueError, match="range not in acceptable format"):
|
||||||
|
+ req.http_range
|
||||||
|
+
|
||||||
|
+
|
||||||
|
def test_non_keepalive_on_http10() -> None:
|
||||||
|
req = make_mocked_request("GET", "/", version=HttpVersion(1, 0))
|
||||||
|
assert not req.keep_alive
|
||||||
@@ -7,8 +7,9 @@ LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=748073912af33aa59430d3702aa32d41"
|
|||||||
SRC_URI[sha256sum] = "edea7d15772ceeb29db4aff55e482d4bcfb6ae160ce144f2682de02f6d693551"
|
SRC_URI[sha256sum] = "edea7d15772ceeb29db4aff55e482d4bcfb6ae160ce144f2682de02f6d693551"
|
||||||
|
|
||||||
SRC_URI += "file://CVE-2024-52304.patch \
|
SRC_URI += "file://CVE-2024-52304.patch \
|
||||||
file://CVE-2025-53643.patch \
|
file://CVE-2025-53643.patch \
|
||||||
"
|
file://CVE-2025-69225.patch \
|
||||||
|
"
|
||||||
|
|
||||||
PYPI_PACKAGE = "aiohttp"
|
PYPI_PACKAGE = "aiohttp"
|
||||||
inherit python_setuptools_build_meta pypi
|
inherit python_setuptools_build_meta pypi
|
||||||
|
|||||||
Reference in New Issue
Block a user