GuardianUnivalle-Benito-Yucra 0.1.34__tar.gz → 0.1.35__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.34 → guardianunivalle_benito_yucra-0.1.35}/GuardianUnivalle_Benito_Yucra/detectores/detector_keylogger.py +9 -22
- {guardianunivalle_benito_yucra-0.1.34 → guardianunivalle_benito_yucra-0.1.35}/GuardianUnivalle_Benito_Yucra.egg-info/PKG-INFO +1 -1
- {guardianunivalle_benito_yucra-0.1.34 → guardianunivalle_benito_yucra-0.1.35}/PKG-INFO +1 -1
- {guardianunivalle_benito_yucra-0.1.34 → guardianunivalle_benito_yucra-0.1.35}/pyproject.toml +1 -1
- {guardianunivalle_benito_yucra-0.1.34 → guardianunivalle_benito_yucra-0.1.35}/GuardianUnivalle_Benito_Yucra/__init__.py +0 -0
- {guardianunivalle_benito_yucra-0.1.34 → guardianunivalle_benito_yucra-0.1.35}/GuardianUnivalle_Benito_Yucra/auditoria/registro_auditoria.py +0 -0
- {guardianunivalle_benito_yucra-0.1.34 → guardianunivalle_benito_yucra-0.1.35}/GuardianUnivalle_Benito_Yucra/criptografia/cifrado_aead.py +0 -0
- {guardianunivalle_benito_yucra-0.1.34 → guardianunivalle_benito_yucra-0.1.35}/GuardianUnivalle_Benito_Yucra/criptografia/intercambio_claves.py +0 -0
- {guardianunivalle_benito_yucra-0.1.34 → guardianunivalle_benito_yucra-0.1.35}/GuardianUnivalle_Benito_Yucra/criptografia/kdf.py +0 -0
- {guardianunivalle_benito_yucra-0.1.34 → guardianunivalle_benito_yucra-0.1.35}/GuardianUnivalle_Benito_Yucra/detectores/detector_csrf.py +0 -0
- {guardianunivalle_benito_yucra-0.1.34 → guardianunivalle_benito_yucra-0.1.35}/GuardianUnivalle_Benito_Yucra/detectores/detector_dos.py +0 -0
- {guardianunivalle_benito_yucra-0.1.34 → guardianunivalle_benito_yucra-0.1.35}/GuardianUnivalle_Benito_Yucra/detectores/detector_sql.py +0 -0
- {guardianunivalle_benito_yucra-0.1.34 → guardianunivalle_benito_yucra-0.1.35}/GuardianUnivalle_Benito_Yucra/detectores/detector_xss.py +0 -0
- {guardianunivalle_benito_yucra-0.1.34 → guardianunivalle_benito_yucra-0.1.35}/GuardianUnivalle_Benito_Yucra/middleware_web/middleware_web.py +0 -0
- {guardianunivalle_benito_yucra-0.1.34 → guardianunivalle_benito_yucra-0.1.35}/GuardianUnivalle_Benito_Yucra/mitigacion/limitador_peticion.py +0 -0
- {guardianunivalle_benito_yucra-0.1.34 → guardianunivalle_benito_yucra-0.1.35}/GuardianUnivalle_Benito_Yucra/mitigacion/lista_bloqueo.py +0 -0
- {guardianunivalle_benito_yucra-0.1.34 → guardianunivalle_benito_yucra-0.1.35}/GuardianUnivalle_Benito_Yucra/puntuacion/puntuacion_amenaza.py +0 -0
- {guardianunivalle_benito_yucra-0.1.34 → guardianunivalle_benito_yucra-0.1.35}/GuardianUnivalle_Benito_Yucra/utilidades.py +0 -0
- {guardianunivalle_benito_yucra-0.1.34 → guardianunivalle_benito_yucra-0.1.35}/GuardianUnivalle_Benito_Yucra.egg-info/SOURCES.txt +0 -0
- {guardianunivalle_benito_yucra-0.1.34 → guardianunivalle_benito_yucra-0.1.35}/GuardianUnivalle_Benito_Yucra.egg-info/dependency_links.txt +0 -0
- {guardianunivalle_benito_yucra-0.1.34 → guardianunivalle_benito_yucra-0.1.35}/GuardianUnivalle_Benito_Yucra.egg-info/requires.txt +0 -0
- {guardianunivalle_benito_yucra-0.1.34 → guardianunivalle_benito_yucra-0.1.35}/GuardianUnivalle_Benito_Yucra.egg-info/top_level.txt +0 -0
- {guardianunivalle_benito_yucra-0.1.34 → guardianunivalle_benito_yucra-0.1.35}/LICENSE +0 -0
- {guardianunivalle_benito_yucra-0.1.34 → guardianunivalle_benito_yucra-0.1.35}/README.md +0 -0
- {guardianunivalle_benito_yucra-0.1.34 → guardianunivalle_benito_yucra-0.1.35}/setup.cfg +0 -0
|
@@ -108,33 +108,22 @@ def detectar_archivos_sospechosos() -> List[str]:
|
|
|
108
108
|
|
|
109
109
|
def detectar_programas_instalados() -> list[str]:
|
|
110
110
|
"""
|
|
111
|
-
|
|
112
|
-
Funciona incluso si WMIC está en otra ruta o no está disponible.
|
|
111
|
+
Detecta software potencialmente malicioso en Windows usando PowerShell.
|
|
113
112
|
"""
|
|
114
113
|
hallazgos = []
|
|
115
114
|
if platform.system() != "Windows":
|
|
116
115
|
return hallazgos
|
|
117
116
|
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
"
|
|
121
|
-
|
|
122
|
-
"C:\\Windows\\System32\\WMIC.exe",
|
|
123
|
-
]
|
|
124
|
-
|
|
125
|
-
wmic_path = None
|
|
126
|
-
for ruta in posibles_rutas:
|
|
127
|
-
if os.path.exists(ruta):
|
|
128
|
-
wmic_path = ruta
|
|
129
|
-
break
|
|
130
|
-
|
|
131
|
-
# Si no se encontró ruta, intenta usarlo directamente (PATH)
|
|
132
|
-
if wmic_path is None:
|
|
133
|
-
wmic_path = "wmic"
|
|
117
|
+
ps_command = (
|
|
118
|
+
"Get-ItemProperty HKLM:\\Software\\Wow6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\*,"
|
|
119
|
+
"HKLM:\\Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\* | Select-Object DisplayName"
|
|
120
|
+
)
|
|
134
121
|
|
|
135
122
|
try:
|
|
136
123
|
salida = subprocess.check_output(
|
|
137
|
-
[
|
|
124
|
+
["powershell", "-Command", ps_command],
|
|
125
|
+
stderr=subprocess.DEVNULL,
|
|
126
|
+
shell=True,
|
|
138
127
|
).decode("utf-8", errors="ignore")
|
|
139
128
|
|
|
140
129
|
for linea in salida.splitlines():
|
|
@@ -143,10 +132,8 @@ def detectar_programas_instalados() -> list[str]:
|
|
|
143
132
|
hallazgos.append(nombre)
|
|
144
133
|
registrar_evento("Keylogger", f"Software sospechoso: {nombre}")
|
|
145
134
|
|
|
146
|
-
except FileNotFoundError:
|
|
147
|
-
logger.warning("WMIC no encontrado. No se puede listar programas instalados.")
|
|
148
135
|
except Exception as e:
|
|
149
|
-
logger.error("Error al listar programas instalados: %s", e)
|
|
136
|
+
logger.error("Error al listar programas instalados con PowerShell: %s", e)
|
|
150
137
|
|
|
151
138
|
return hallazgos
|
|
152
139
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: GuardianUnivalle-Benito-Yucra
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.35
|
|
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.35
|
|
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.34 → guardianunivalle_benito_yucra-0.1.35}/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.35"
|
|
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" }
|
|
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
|