GuardianUnivalle-Benito-Yucra 0.1.35__tar.gz → 0.1.36__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 (26) hide show
  1. guardianunivalle_benito_yucra-0.1.36/GuardianUnivalle_Benito_Yucra/auditoria/registro_auditoria.py +46 -0
  2. {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/GuardianUnivalle_Benito_Yucra.egg-info/PKG-INFO +1 -1
  3. {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/PKG-INFO +1 -1
  4. {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/pyproject.toml +1 -1
  5. guardianunivalle_benito_yucra-0.1.35/GuardianUnivalle_Benito_Yucra/auditoria/registro_auditoria.py +0 -9
  6. {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/GuardianUnivalle_Benito_Yucra/__init__.py +0 -0
  7. {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/GuardianUnivalle_Benito_Yucra/criptografia/cifrado_aead.py +0 -0
  8. {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/GuardianUnivalle_Benito_Yucra/criptografia/intercambio_claves.py +0 -0
  9. {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/GuardianUnivalle_Benito_Yucra/criptografia/kdf.py +0 -0
  10. {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/GuardianUnivalle_Benito_Yucra/detectores/detector_csrf.py +0 -0
  11. {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/GuardianUnivalle_Benito_Yucra/detectores/detector_dos.py +0 -0
  12. {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/GuardianUnivalle_Benito_Yucra/detectores/detector_keylogger.py +0 -0
  13. {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/GuardianUnivalle_Benito_Yucra/detectores/detector_sql.py +0 -0
  14. {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/GuardianUnivalle_Benito_Yucra/detectores/detector_xss.py +0 -0
  15. {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/GuardianUnivalle_Benito_Yucra/middleware_web/middleware_web.py +0 -0
  16. {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/GuardianUnivalle_Benito_Yucra/mitigacion/limitador_peticion.py +0 -0
  17. {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/GuardianUnivalle_Benito_Yucra/mitigacion/lista_bloqueo.py +0 -0
  18. {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/GuardianUnivalle_Benito_Yucra/puntuacion/puntuacion_amenaza.py +0 -0
  19. {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/GuardianUnivalle_Benito_Yucra/utilidades.py +0 -0
  20. {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/GuardianUnivalle_Benito_Yucra.egg-info/SOURCES.txt +0 -0
  21. {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/GuardianUnivalle_Benito_Yucra.egg-info/dependency_links.txt +0 -0
  22. {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/GuardianUnivalle_Benito_Yucra.egg-info/requires.txt +0 -0
  23. {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/GuardianUnivalle_Benito_Yucra.egg-info/top_level.txt +0 -0
  24. {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/LICENSE +0 -0
  25. {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/README.md +0 -0
  26. {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/setup.cfg +0 -0
@@ -0,0 +1,46 @@
1
+ import datetime
2
+ import json
3
+ import os
4
+
5
+ # Archivo donde se guardarán los eventos
6
+ LOG_FILE = "auditoria_guardian.log"
7
+
8
+
9
+ def registrar_evento(
10
+ tipo: str,
11
+ descripcion: str = "",
12
+ severidad: str = "MEDIA",
13
+ extra: dict | None = None,
14
+ ):
15
+ """
16
+ Registra un evento de auditoría en un archivo.
17
+ :param tipo: Tipo de evento (DoS, CSRF, XSS, SQLi, etc.)
18
+ :param descripcion: Descripción detallada del evento
19
+ :param severidad: Nivel de severidad (BAJA, MEDIA, ALTA)
20
+ :param extra: Datos adicionales opcionales
21
+ """
22
+ try:
23
+ evento = {
24
+ "fecha": datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S"),
25
+ "tipo": tipo,
26
+ "descripcion": descripcion,
27
+ "severidad": severidad,
28
+ "extra": extra or {},
29
+ }
30
+
31
+ # Asegurar que el archivo exista
32
+ os.makedirs(os.path.dirname(LOG_FILE), exist_ok=True)
33
+
34
+ with open(LOG_FILE, "a", encoding="utf-8") as f:
35
+ f.write(json.dumps(evento, ensure_ascii=False) + "\n")
36
+
37
+ except Exception as e:
38
+ print(f"[Auditoría] Error al registrar evento: {e}")
39
+
40
+
41
+ def generar_reporte() -> str:
42
+ """Devuelve todo el contenido del archivo de auditoría."""
43
+ if not os.path.exists(LOG_FILE):
44
+ return "No hay registros aún."
45
+ with open(LOG_FILE, "r", encoding="utf-8") as f:
46
+ return f.read()
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: GuardianUnivalle-Benito-Yucra
3
- Version: 0.1.35
3
+ Version: 0.1.36
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.35
3
+ Version: 0.1.36
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.35"
7
+ version = "0.1.36"
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" }
@@ -1,9 +0,0 @@
1
- import datetime
2
-
3
- def registrar_evento(tipo: str, mensaje: str):
4
- with open("auditoria_guardian.log", "a", encoding="utf-8") as f:
5
- f.write(f"[{datetime.datetime.now()}] {tipo}: {mensaje}\n")
6
-
7
- def generar_reporte() -> str:
8
- with open("auditoria_guardian.log", "r", encoding="utf-8") as f:
9
- return f.read()