#136 · Herramienta para desarrolladores

Python Inspector

Inspecciona un fragmento Python para resumir su estructura y señalar patrones que merecen revisión: eval o exec, shell=True, pickle.loads, consultas de subprocess, posibles secretos literales y uso de algoritmos criptográficos obsoletos por nombre. También cuenta imports, funciones y ramas aproximadas. Las señales son heurísticas y no afirman por sí solas que exista una vulnerabilidad; sirven para priorizar una revisión manual del código.

Datos de entrada

Código Python
Espacio publicitario

Cómo usar esta herramienta para desarrolladores

  1. Pega o carga una entrada compatible con el formato indicado.
  2. Ajusta las opciones específicas de la herramienta si las necesitas.
  3. Pulsa el botón principal o usa Ctrl/Cmd + Enter.
  4. Revisa el resumen, la interpretación y las métricas antes de copiar o descargar el resultado.

Qué hace esta herramienta para desarrolladores

Cada indicador incluye una línea y una explicación breve; su presencia significa “revisar”, no “vulnerabilidad confirmada”.

Se combinan métricas estructurales con búsquedas de patrones sensibles sobre cada línea del archivo.

No envíes secretos reales: el análisis ocurre localmente en el navegador, pero sigue siendo mejor usar ejemplos anonimizados.

Ejemplo

Entrada

import subprocess

API_KEY = "demo-placeholder"

def run(command):
    return subprocess.run(command, shell=True)

def parse(payload):
    return eval(payload)

Salida esperada

Línea 7 · shell=True: revisa posible inyección de comandos.
Línea 10 · Uso de eval(): revisa si procesa entrada no confiable.

Casos de uso

  • Revisar fragmentos antes de incorporarlos a un repositorio.
  • Preparar ejemplos reproducibles para documentación o incidencias.
  • Obtener una representación intermedia que pueda copiarse o descargarse.

Consejos para obtener resultados fiables

  • Usa una entrada mínima y reproducible cuando investigues un error.
  • Conserva una copia del código original antes de aplicar transformaciones.
  • Revisa manualmente sintaxis avanzada que quede fuera de las limitaciones indicadas.
  • No pegues secretos reales ni credenciales en ejemplos compartidos.
  • Confirma el resultado con el compilador, intérprete o herramienta oficial cuando sea necesario.

Detalles del procesamiento

Las reglas detectan llamadas y asignaciones textuales frecuentes y añaden contexto de línea sin ejecutar el programa.

Puede producir falsos positivos, no sigue flujo de datos, no resuelve valores dinámicos y no sustituye a SAST o revisión de seguridad especializada.

Preguntas frecuentes

¿El Python Inspector confirma vulnerabilidades de seguridad?

No. Señala patrones de riesgo para revisión y puede tener falsos positivos o pasar por alto problemas contextuales.

¿Detecta eval, exec y shell=True en código Python?

Sí, incluye reglas textuales para esos patrones y muestra la línea donde aparecen.

¿Puede encontrar claves API o contraseñas escritas en el código?

Busca asignaciones literales con nombres habituales como api_key, secret, token o password, pero no es un detector de secretos completo.

¿El inspector analiza flujo de datos entre funciones?

No. No hace taint analysis ni seguimiento interprocedimental; trabaja con estructura y patrones locales.

¿Qué significa que no haya indicadores en el resultado?

Solo significa que ninguna regla incluida coincidió. No es una certificación de seguridad ni calidad.

Resumen del módulo

AspectoDetalle
EntradaCódigo Python
SalidaInforme de inspección
ProcesamientoLocal en el navegador
DependenciasNinguna

Programming Language Tools

Explora utilidades para analizar, transformar y revisar código de distintos lenguajes directamente en el navegador.

Ver categoría