fix: better string sanitizing

This commit is contained in:
2026-05-05 15:09:39 +02:00
parent 8855fd0b01
commit 09ea29d6af
+5 -3
View File
@@ -25,6 +25,8 @@ if typing.TYPE_CHECKING:
class BaseHandler(abc.ABC, http.server.BaseHTTPRequestHandler): class BaseHandler(abc.ABC, http.server.BaseHTTPRequestHandler):
SANITIZE_REGEX = re.compile(r"[^\x20-\x7F]+")
@typing.override @typing.override
def __init__( def __init__(
self, self,
@@ -77,7 +79,7 @@ class BaseHandler(abc.ABC, http.server.BaseHTTPRequestHandler):
@typing.override @typing.override
def address_string(self) -> str: # pragma: no cover def address_string(self) -> str: # pragma: no cover
return re.sub(r"[^\x00-\x7F]+", "", super().address_string()) return self.SANITIZE_REGEX.sub("?", super().address_string())
@typing.override @typing.override
def log_message(self, format: str, *args: typing.Any) -> None: # pragma: no cover def log_message(self, format: str, *args: typing.Any) -> None: # pragma: no cover
@@ -108,7 +110,7 @@ class BaseHandler(abc.ABC, http.server.BaseHTTPRequestHandler):
code, code,
self.address_string(), self.address_string(),
self.host, self.host,
re.sub(r"[^\x00-\x7F]+", "?", self.requestline), self.SANITIZE_REGEX.sub("?", self.requestline),
) )
fmt = "%s - %s - %s - %s" fmt = "%s - %s - %s - %s"
if size != "": if size != "":
@@ -238,7 +240,7 @@ class BaseHandler(abc.ABC, http.server.BaseHTTPRequestHandler):
"...", "...",
self.address_string(), self.address_string(),
self.host, self.host,
re.sub(r"[^\x00-\x7F]+", "?", self.requestline), self.SANITIZE_REGEX.sub("?", self.requestline),
) )
fmt = "%s - %s - %s - %s" fmt = "%s - %s - %s - %s"
if self.in_size > 0: if self.in_size > 0: