Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
tailsnitch — Un auditor de seguridad para configuraciones de Tailscale. Escanea tu tailnet en busca de configuraciones incorrectas, controles de acceso excesivamente permisivos y violaciones de las mejores prácticas de seguridad. | Kitploit
Herramientas/GitHubGitHub/adversis/tailsnitch
Escáneres de VulnerabilidadesAuditoría de ConfiguraciónSeguridad de RedesSeguridad en la NubeDevSecOpsMala ConfiguraciónRespuesta a Incidentes
GitHubadversis/tailsnitch

tailsnitch

Un auditor de seguridad para configuraciones de Tailscale. Escanea tu tailnet en busca de configuraciones incorrectas, controles de acceso excesivamente permisivos y violaciones de las mejores prácticas de seguridad.

Ver Repositorio
1.1k2920hace 26 díasRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

Tailsnitch

Un auditor de seguridad para configuraciones de Tailscale. Tailsnitch escanea tu tailnet en busca de 57 malas configuraciones, controles de acceso excesivamente permisivos y violaciones de mejores prácticas de seguridad.

Inicio Rápido

# 1. Configura tus credenciales de la API de Tailscale
export TS_API_KEY="tskey-api-..."

# 2. Ejecuta la auditoría
tailsnitch

# 3. Ve solo los hallazgos de severidad alta
tailsnitch --severity high

# 4. Corrige algunos problemas  ~interactivamente~ modo yolo
tailsnitch --fix

Instalación

Descargar Binario Precompilado

Descarga la última versión desde GitHub Releases.

Usuarios de macOS: Elimina el atributo de cuarentena después de la descarga:

sudo xattr -rd com.apple.quarantine tailsnitch

Instalar vía Go

go install github.com/Adversis/tailsnitch@latest

Compilar desde el Código Fuente

git clone https://github.com/Adversis/tailsnitch.git
cd tailsnitch
go build -o tailsnitch .

Autenticación

Tailsnitch admite dos métodos de autenticación. Se prefiere OAuth cuando ambos están configurados.

Opción 1: Cliente OAuth (Recomendado)

Los clientes OAuth proporcionan acceso con alcance definido y auditable que no expira cuando los empleados se van.

export TS_OAUTH_CLIENT_ID="..."
export TS_OAUTH_CLIENT_SECRET="tskey-client-..."

Crea un cliente OAuth en: https://login.tailscale.com/admin/settings/oauth

Alcances requeridos para auditoría de solo lectura:

all:read lo cubre todo. Otorgar alcances individualmente:

AlcanceSe usa para
policy_file:readArchivo de política del tailnet — ACL-, NET-, SSH-*
devices:core:readLista de dispositivos — DEV-, NET-, ACL-011
dns:readConfiguración de DNS — DNS-001, DEV-007
auth_keys:readClaves de autenticación de máquinas — AUTH-*, ACL-011
feature_settings:readConfiguración del tailnet — DEV-008, DEV-009, DEV-014
logs:network:readConfiguración de registro de flujo de red — LOG-001
networking_settings:readConfiguración de certificados HTTPS — NET-004
log_streaming:readDestinos de transmisión de registros — LOG-002
webhooks:readEndpoints de webhooks — LOG-005, LOG-012
oauth_keys:readClientes OAuth — LOG-006
users:readRoles y estado de usuarios — USER-001, LOG-006
account_settings:readContacto de seguridad — LOG-011
devices:posture_attributes:readIntegraciones de postura — DEV-014

Cualquier alcance que omitas solo afecta a las comprobaciones que lo necesitan: esas comprobaciones informan que no pudieron leer la configuración en lugar de pasarla.

AUTH-005 y AUTH-006 leen las identidades federadas del tailnet, que la consola de administración llama credenciales de confianza. Provienen de la misma lista de claves que las claves de autenticación, por lo que se espera que auth_keys:read las cubra. Eso no se ha confirmado contra un tailnet en vivo. Si la lista de claves no se puede leer, ambas comprobaciones informan "no evaluado" en lugar de pasarla. Si un alcance faltante devuelve un error o en su lugar devuelve la lista con las identidades filtradas no está confirmado; si filtra silenciosamente, AUTH-005 informaría que no existen credenciales de confianza y AUTH-006 no encontraría nada que comprobar.

Alcances adicionales para el modo de corrección:

  • devices:core - Eliminar dispositivos, modificar etiquetas (requiere selección de etiquetas)
  • auth_keys - Eliminar claves de autenticación

Tailnet Lock

DEV-010 y DEV-012 informan sobre Tailnet Lock, que la API de Tailscale no expone como una configuración del tailnet. Los dispositivos bloqueados por él son visibles a través de la API, pero determinar si el bloqueo está habilitado necesita el CLI local tailscale, que lee el daemon en la máquina que ejecuta tailsnitch. Al auditar otro tailnet con --tailnet, trata esa parte del resultado en consecuencia. Usa --tailscale-path si el binario está en una ubicación no estándar.

Opción 2: Clave de API

Las claves de API operan como el usuario que las creó y heredan los permisos de ese usuario.

export TS_API_KEY="tskey-api-..."

Crea una clave de API en: https://login.tailscale.com/admin/settings/keys

Ejemplos de Uso

Auditoría Básica

# Ejecuta auditoría completa
tailsnitch

# Muestra también las comprobaciones que pasan (verbose)
tailsnitch --verbose

# Salida como JSON para procesamiento
tailsnitch --json

# Audita un tailnet específico (cuando el cliente OAuth tiene acceso a varios)
tailsnitch --tailnet mycompany.com

Filtrar Resultados

# Solo muestra problemas críticos y de severidad alta
tailsnitch --severity high

# Filtrar por categoría
tailsnitch --category access    # Problemas de ACL
tailsnitch --category auth      # Autenticación y claves
tailsnitch --category device    # Seguridad de dispositivos
tailsnitch --category network   # Exposición de red
tailsnitch --category ssh       # Reglas SSH
tailsnitch --category log       # Registro y administración

# Ejecutar solo comprobaciones específicas
tailsnitch --checks ACL-001,AUTH-001,DEV-010
tailsnitch --checks stale-devices,tailnet-lock-not-enabled

# Listar todas las comprobaciones disponibles
tailsnitch --list-checks

Modo de Corrección Interactivo

El modo de corrección te permite remediar problemas directamente a través de la API de Tailscale:

# Modo de corrección interactivo
tailsnitch --fix

# Vista previa de lo que se corregiría (ejecución en seco)
tailsnitch --fix --dry-run

# Auto-seleccionar correcciones seguras (aún requiere confirmación)
tailsnitch --fix --auto

# Deshabilitar el registro de auditoría de las acciones de corrección
tailsnitch --fix --no-audit-log

Elementos corregibles por API:

ComprobaciónAcción
AUTH-001, AUTH-002, AUTH-003Eliminar claves de autenticación
DEV-002Eliminar etiquetas de dispositivos de usuario
DEV-004Eliminar dispositivos obsoletos
DEV-005Autorizar dispositivos pendientes

El modo de corrección también proporciona enlaces directos a la consola de administración para problemas que requieren intervención manual.

Exportación de Evidencia SOC 2

Genera informes de evidencia para auditorías SOC 2 con mapeos de Criterios Comunes (CC):

# Exportar como JSON
tailsnitch --soc2 json > soc2-evidence.json

# Exportar como CSV (para hojas de cálculo)
tailsnitch --soc2 csv > soc2-evidence.csv

El informe SOC 2 incluye:

  • Resultados de pruebas por recurso (cada dispositivo, clave, regla ACL probada individualmente)
  • Mapeos de códigos CC (CC6.1, CC6.2, CC6.3, CC6.6, CC7.1, CC7.2, etc.)
  • Estado Aprobado/Reprobado/N/A para cada prueba de control
  • Marca de tiempo para la pista de auditoría

Ejemplo de salida CSV:

resource_type,resource_id,resource_name,check_id,check_title,cc_codes,status,details,tested_at
device,node123,prod-server,DEV-001,Tagged devices with key expiry disabled,CC6.1;CC6.3,PASS,Tags: [tag:server] key expiry enabled,2025-01-05T10:30:00Z
key,tskey-auth-xxx,tskey-auth-xxx,AUTH-001,Reusable auth keys exist,CC6.1;CC6.2;CC6.3,FAIL,Reusable key expires in 45 days,2025-01-05T10:30:00Z

Ignorar Riesgos Conocidos

Crea un archivo .tailsnitch-ignore para suprimir hallazgos de riesgos aceptados conocidos:

# .tailsnitch-ignore
# Ignorar comprobaciones informativas
ACL-008  # Intencionalmente no usamos grupos
ACL-009  # Las ACL heredadas están bien para nuestro caso de uso

# Ignorar comprobaciones específicas de severidad media con justificación
DEV-006  # Los dispositivos externos son contratistas aprobados
LOG-001  # Los registros de flujo requieren el plan Enterprise
Descargar herramienta