v1.0.92: шаг1 — SQL-инъекция, валидация UUID
This commit is contained in:
@@ -7,7 +7,7 @@ class ThreadingHTTPServer(ThreadingMixIn, HTTPServer):
|
||||
"""Многопоточный HTTP-сервер."""
|
||||
daemon_threads = True
|
||||
from urllib.parse import urlparse, parse_qs
|
||||
import subprocess, tempfile, os, sys, json, time
|
||||
import subprocess, tempfile, os, sys, json, time, re
|
||||
|
||||
import httpx
|
||||
from llm_prompt import build_prompt
|
||||
@@ -91,6 +91,10 @@ class Handler(BaseHTTPRequestHandler):
|
||||
if not cid:
|
||||
self.send_error(400, "contract_id required")
|
||||
return
|
||||
# Validate UUID to prevent SQL injection
|
||||
if not re.fullmatch(r'[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}', cid, re.I):
|
||||
self.send_error(400, "invalid contract_id format")
|
||||
return
|
||||
|
||||
self.send_response(200)
|
||||
self.send_header("Content-Type", "text/event-stream; charset=utf-8")
|
||||
|
||||
Reference in New Issue
Block a user