GuardianUnivalle-Benito-Yucra 0.1.59__tar.gz → 0.1.60__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of GuardianUnivalle-Benito-Yucra might be problematic. Click here for more details.

Files changed (25) hide show
  1. {guardianunivalle_benito_yucra-0.1.59 → guardianunivalle_benito_yucra-0.1.60}/GuardianUnivalle_Benito_Yucra/detectores/detector_sql.py +15 -6
  2. {guardianunivalle_benito_yucra-0.1.59 → guardianunivalle_benito_yucra-0.1.60}/GuardianUnivalle_Benito_Yucra.egg-info/PKG-INFO +1 -1
  3. {guardianunivalle_benito_yucra-0.1.59 → guardianunivalle_benito_yucra-0.1.60}/PKG-INFO +1 -1
  4. {guardianunivalle_benito_yucra-0.1.59 → guardianunivalle_benito_yucra-0.1.60}/pyproject.toml +1 -1
  5. {guardianunivalle_benito_yucra-0.1.59 → guardianunivalle_benito_yucra-0.1.60}/GuardianUnivalle_Benito_Yucra/__init__.py +0 -0
  6. {guardianunivalle_benito_yucra-0.1.59 → guardianunivalle_benito_yucra-0.1.60}/GuardianUnivalle_Benito_Yucra/auditoria/registro_auditoria.py +0 -0
  7. {guardianunivalle_benito_yucra-0.1.59 → guardianunivalle_benito_yucra-0.1.60}/GuardianUnivalle_Benito_Yucra/criptografia/cifrado_aead.py +0 -0
  8. {guardianunivalle_benito_yucra-0.1.59 → guardianunivalle_benito_yucra-0.1.60}/GuardianUnivalle_Benito_Yucra/criptografia/intercambio_claves.py +0 -0
  9. {guardianunivalle_benito_yucra-0.1.59 → guardianunivalle_benito_yucra-0.1.60}/GuardianUnivalle_Benito_Yucra/criptografia/kdf.py +0 -0
  10. {guardianunivalle_benito_yucra-0.1.59 → guardianunivalle_benito_yucra-0.1.60}/GuardianUnivalle_Benito_Yucra/detectores/detector_csrf.py +0 -0
  11. {guardianunivalle_benito_yucra-0.1.59 → guardianunivalle_benito_yucra-0.1.60}/GuardianUnivalle_Benito_Yucra/detectores/detector_dos.py +0 -0
  12. {guardianunivalle_benito_yucra-0.1.59 → guardianunivalle_benito_yucra-0.1.60}/GuardianUnivalle_Benito_Yucra/detectores/detector_keylogger.py +0 -0
  13. {guardianunivalle_benito_yucra-0.1.59 → guardianunivalle_benito_yucra-0.1.60}/GuardianUnivalle_Benito_Yucra/detectores/detector_xss.py +0 -0
  14. {guardianunivalle_benito_yucra-0.1.59 → guardianunivalle_benito_yucra-0.1.60}/GuardianUnivalle_Benito_Yucra/middleware_web/middleware_web.py +0 -0
  15. {guardianunivalle_benito_yucra-0.1.59 → guardianunivalle_benito_yucra-0.1.60}/GuardianUnivalle_Benito_Yucra/mitigacion/limitador_peticion.py +0 -0
  16. {guardianunivalle_benito_yucra-0.1.59 → guardianunivalle_benito_yucra-0.1.60}/GuardianUnivalle_Benito_Yucra/mitigacion/lista_bloqueo.py +0 -0
  17. {guardianunivalle_benito_yucra-0.1.59 → guardianunivalle_benito_yucra-0.1.60}/GuardianUnivalle_Benito_Yucra/puntuacion/puntuacion_amenaza.py +0 -0
  18. {guardianunivalle_benito_yucra-0.1.59 → guardianunivalle_benito_yucra-0.1.60}/GuardianUnivalle_Benito_Yucra/utilidades.py +0 -0
  19. {guardianunivalle_benito_yucra-0.1.59 → guardianunivalle_benito_yucra-0.1.60}/GuardianUnivalle_Benito_Yucra.egg-info/SOURCES.txt +0 -0
  20. {guardianunivalle_benito_yucra-0.1.59 → guardianunivalle_benito_yucra-0.1.60}/GuardianUnivalle_Benito_Yucra.egg-info/dependency_links.txt +0 -0
  21. {guardianunivalle_benito_yucra-0.1.59 → guardianunivalle_benito_yucra-0.1.60}/GuardianUnivalle_Benito_Yucra.egg-info/requires.txt +0 -0
  22. {guardianunivalle_benito_yucra-0.1.59 → guardianunivalle_benito_yucra-0.1.60}/GuardianUnivalle_Benito_Yucra.egg-info/top_level.txt +0 -0
  23. {guardianunivalle_benito_yucra-0.1.59 → guardianunivalle_benito_yucra-0.1.60}/LICENSE +0 -0
  24. {guardianunivalle_benito_yucra-0.1.59 → guardianunivalle_benito_yucra-0.1.60}/README.md +0 -0
  25. {guardianunivalle_benito_yucra-0.1.59 → guardianunivalle_benito_yucra-0.1.60}/setup.cfg +0 -0
@@ -15,15 +15,24 @@ if not logger.handlers:
15
15
  logger.addHandler(handler)
16
16
 
17
17
  # =====================================================
18
- # === PATRONES DE ATAQUE SQL DEFINIDOS ===
18
+ # ===        PATRONES DE ATAQUE SQL DEFINIDOS       ===
19
19
  # =====================================================
20
20
  SQL_PATTERNS = [
21
+ # Patrones de Extracción de Datos y Evasión (Alto Peso)
21
22
  (re.compile(r"\bunion\b\s+(all\s+)?\bselect\b", re.I), "Uso de UNION SELECT", 0.7),
22
- (re.compile(r"\bor\b\s+'?\d+'?\s*=\s*'?\d+'?", re.I), "Tautología OR 1=1", 0.6),
23
- (re.compile(r"\bselect\b.+\bfrom\b", re.I), "Consulta SQL SELECT-FROM", 0.5),
24
- (re.compile(r"(--|#|/\*|\*/)", re.I), "Comentario SQL sospechoso", 0.4),
25
- (re.compile(r"\b(drop|truncate|delete|insert|update)\b", re.I), "Manipulación SQL", 0.5),
26
- (re.compile(r"exec\s*\(", re.I), "Ejecución de procedimiento almacenado", 0.6),
23
+ (re.compile(r"\bor\b\s+['\"]?\d+['\"]?\s*=\s*['\"]?\d+['\"]?", re.I), "Tautología OR X=X", 0.6), # Mejorado
24
+ (re.compile(r"\b(sleep|benchmark|waitfor\s+delay)\b\s*\(", re.I), "Función de Tiempo (SQL Ciega)", 0.8), # Muy peligroso
25
+ (re.compile(r"\b(extractvalue|updatexml|convert)\b\s*\(", re.I), "Extracción Basada en Errores/Funciones", 0.75),
26
+
27
+ # Patrones de Control y Destrucción (Peso Medio)
28
+ (re.compile(r"\b(drop\s+table|truncate\s+table|delete\s+from|insert\s+into|update\s+set)\b", re.I), "Manipulación DML/DDL", 0.5),
29
+ (re.compile(r"\b(exec|execute|xp_cmdshell)\b", re.I), "Ejecución de Comando (OS o Stored Proc)", 0.6),
30
+ (re.compile(r";\s*(select|drop|insert|update)\b", re.I), "Apilamiento de Consultas (Separador ;)", 0.55), # Nuevo
31
+
32
+ # Patrones de Detección e Información (Bajo Peso)
33
+ (re.compile(r"(--|#|/\*|;)", re.I), "Comentario SQL o Separador de Consulta", 0.4),
34
+ (re.compile(r"\b(substring|substr|mid)\b\s*\(", re.I), "Función de Cadena (SQL Ciega Booleana)", 0.45), # Nuevo
35
+ (re.compile(r"\b(select)\b.+\b(from|where)\b", re.I), "Estructura SELECT-FROM-WHERE", 0.4), # Más específico
27
36
  ]
28
37
 
29
38
  IGNORED_FIELDS = ["password", "csrfmiddlewaretoken", "token", "auth"]
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: GuardianUnivalle-Benito-Yucra
3
- Version: 0.1.59
3
+ Version: 0.1.60
4
4
  Summary: Middleware y detectores de seguridad (SQLi, XSS, CSRF, DoS, Keylogger) para Django/Flask
5
5
  Author-email: Andres Benito Calle Yucra <benitoandrescalle035@gmail.com>
6
6
  License: MIT
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: GuardianUnivalle-Benito-Yucra
3
- Version: 0.1.59
3
+ Version: 0.1.60
4
4
  Summary: Middleware y detectores de seguridad (SQLi, XSS, CSRF, DoS, Keylogger) para Django/Flask
5
5
  Author-email: Andres Benito Calle Yucra <benitoandrescalle035@gmail.com>
6
6
  License: MIT
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "GuardianUnivalle-Benito-Yucra" # usar mayúsculas consistente
7
- version = "0.1.59"
7
+ version = "0.1.60"
8
8
  description = "Middleware y detectores de seguridad (SQLi, XSS, CSRF, DoS, Keylogger) para Django/Flask"
9
9
  authors = [
10
10
  { name = "Andres Benito Calle Yucra", email = "benitoandrescalle035@gmail.com" }