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.
- guardianunivalle_benito_yucra-0.1.36/GuardianUnivalle_Benito_Yucra/auditoria/registro_auditoria.py +46 -0
- {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/GuardianUnivalle_Benito_Yucra.egg-info/PKG-INFO +1 -1
- {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/PKG-INFO +1 -1
- {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/pyproject.toml +1 -1
- guardianunivalle_benito_yucra-0.1.35/GuardianUnivalle_Benito_Yucra/auditoria/registro_auditoria.py +0 -9
- {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/GuardianUnivalle_Benito_Yucra/__init__.py +0 -0
- {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/GuardianUnivalle_Benito_Yucra/criptografia/cifrado_aead.py +0 -0
- {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/GuardianUnivalle_Benito_Yucra/criptografia/intercambio_claves.py +0 -0
- {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/GuardianUnivalle_Benito_Yucra/criptografia/kdf.py +0 -0
- {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/GuardianUnivalle_Benito_Yucra/detectores/detector_csrf.py +0 -0
- {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/GuardianUnivalle_Benito_Yucra/detectores/detector_dos.py +0 -0
- {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/GuardianUnivalle_Benito_Yucra/detectores/detector_keylogger.py +0 -0
- {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/GuardianUnivalle_Benito_Yucra/detectores/detector_sql.py +0 -0
- {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/GuardianUnivalle_Benito_Yucra/detectores/detector_xss.py +0 -0
- {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/GuardianUnivalle_Benito_Yucra/middleware_web/middleware_web.py +0 -0
- {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/GuardianUnivalle_Benito_Yucra/mitigacion/limitador_peticion.py +0 -0
- {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/GuardianUnivalle_Benito_Yucra/mitigacion/lista_bloqueo.py +0 -0
- {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/GuardianUnivalle_Benito_Yucra/puntuacion/puntuacion_amenaza.py +0 -0
- {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/GuardianUnivalle_Benito_Yucra/utilidades.py +0 -0
- {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/GuardianUnivalle_Benito_Yucra.egg-info/SOURCES.txt +0 -0
- {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/GuardianUnivalle_Benito_Yucra.egg-info/dependency_links.txt +0 -0
- {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/GuardianUnivalle_Benito_Yucra.egg-info/requires.txt +0 -0
- {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/GuardianUnivalle_Benito_Yucra.egg-info/top_level.txt +0 -0
- {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/LICENSE +0 -0
- {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/README.md +0 -0
- {guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/setup.cfg +0 -0
guardianunivalle_benito_yucra-0.1.36/GuardianUnivalle_Benito_Yucra/auditoria/registro_auditoria.py
ADDED
|
@@ -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.
|
|
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.
|
|
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
|
{guardianunivalle_benito_yucra-0.1.35 → guardianunivalle_benito_yucra-0.1.36}/pyproject.toml
RENAMED
|
@@ -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.
|
|
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" }
|
guardianunivalle_benito_yucra-0.1.35/GuardianUnivalle_Benito_Yucra/auditoria/registro_auditoria.py
DELETED
|
@@ -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()
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|