Skip to content
KitploitKITPLOIT
OutilsBlog
Log in
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
tailsnitch — Un auditeur de sécurité pour les configurations Tailscale. Analyse votre tailnet pour les mauvaises configurations, les contrôles d'accès trop permissifs et les violations des bonnes pratiques de sécurité. | Kitploit
Outils/GitHubGitHub/adversis/tailsnitch
Scanners de VulnérabilitésAudit de ConfigurationSécurité RéseauSécurité CloudDevSecOpsMauvaise ConfigurationRéponse aux Incidents
GitHubadversis/tailsnitch

tailsnitch

Un auditeur de sécurité pour les configurations Tailscale. Analyse votre tailnet pour les mauvaises configurations, les contrôles d'accès trop permissifs et les violations des bonnes pratiques de sécurité.

Voir le dépôt
1.1k2920il y a 27 joursVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

Tailsnitch

Un auditeur de sécurité pour les configurations Tailscale. Tailsnitch analyse votre tailnet à la recherche de 57 mauvaises configurations, de contrôles d'accès trop permissifs et de violations des bonnes pratiques de sécurité.

Démarrage rapide

# 1. Définissez vos identifiants API Tailscale
export TS_API_KEY="tskey-api-..."

# 2. Lancez l'audit
tailsnitch

# 3. Affichez uniquement les résultats de sévérité élevée
tailsnitch --severity high

# 4. Corrigez certains problèmes ~interactivement~ mode yolo
tailsnitch --fix

Installation

Télécharger le binaire précompilé

Téléchargez la dernière version depuis GitHub Releases.

Utilisateurs macOS : Supprimez l'attribut de quarantaine après le téléchargement :

sudo xattr -rd com.apple.quarantine tailsnitch

Installer via Go

go install github.com/Adversis/tailsnitch@latest

Compiler depuis les sources

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

Authentification

Tailsnitch prend en charge deux méthodes d'authentification. OAuth est préféré lorsque les deux sont configurés.

Option 1 : Client OAuth (recommandé)

Les clients OAuth fournissent un accès limité et auditable qui n'expire pas lorsque des employés quittent l'entreprise.

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

Créez un client OAuth à l'adresse : https://login.tailscale.com/admin/settings/oauth

Portées requises pour un audit en lecture seule :

all:read couvre tout. Attribution des portées individuellement :

PortéeUtilisée pour
policy_file:readFichier de politique du tailnet — ACL-, NET-, SSH-*
devices:core:readListe des appareils — DEV-, NET-, ACL-011
dns:readConfiguration DNS — DNS-001, DEV-007
auth_keys:readClés d'authentification machine — AUTH-*, ACL-011
feature_settings:readParamètres du tailnet — DEV-008, DEV-009, DEV-014
logs:network:readParamètre de journalisation des flux réseau — LOG-001
networking_settings:readParamètre des certificats HTTPS — NET-004
log_streaming:readDestinations de diffusion des journaux — LOG-002
webhooks:readPoints de terminaison webhook — LOG-005, LOG-012
oauth_keys:readClients OAuth — LOG-006
users:readRôles et statuts des utilisateurs — USER-001, LOG-006
account_settings:readContact de sécurité — LOG-011
devices:posture_attributes:readIntégrations de posture — DEV-014

Toute portée que vous omettez n'affecte que les vérifications qui en ont besoin : ces vérifications signalent qu'elles n'ont pas pu lire le paramètre plutôt que de le considérer comme réussi.

AUTH-005 et AUTH-006 lisent les identités fédérées du tailnet, que la console d'administration appelle les informations d'identification de confiance. Elles proviennent de la même liste de clés que les clés d'authentification, donc auth_keys:read est censé les couvrir. Cela n'a pas été confirmé sur un tailnet en production. Si la liste des clés ne peut pas être lue, les deux vérifications signalent « non évalué » plutôt que réussi. On ne sait pas si une portée manquante renvoie une erreur ou renvoie plutôt la liste avec les identités filtrées ; si elle filtre silencieusement, AUTH-005 signalerait qu'aucune information d'identification de confiance n'existe et AUTH-006 ne trouverait rien à vérifier.

Portées supplémentaires pour le mode de correction :

  • devices:core - Supprimer des appareils, modifier les tags (nécessite la sélection de tags)
  • auth_keys - Supprimer les clés d'authentification

Tailnet Lock

DEV-010 et DEV-012 signalent l'état de Tailnet Lock, que l'API Tailscale n'expose pas comme paramètre du tailnet. Les appareils verrouillés par celui-ci sont visibles via l'API, mais déterminer si le verrouillage est activé nécessite le CLI local tailscale, qui lit le démon sur la machine exécutant tailsnitch. Lors de l'audit d'un autre tailnet avec --tailnet, traitez cette partie du résultat en conséquence. Utilisez --tailscale-path si le binaire se trouve dans un emplacement non standard.

Option 2 : Clé API

Les clés API opèrent en tant qu'utilisateur qui les a créées et héritent des autorisations de cet utilisateur.

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

Créez une clé API à l'adresse : https://login.tailscale.com/admin/settings/keys

Exemples d'utilisation

Audit de base

# Lancez l'audit complet
tailsnitch

# Affichez également les vérifications réussies (mode verbeux)
tailsnitch --verbose

# Sortie au format JSON pour traitement
tailsnitch --json

# Auditez un tailnet spécifique (lorsque le client OAuth a accès à plusieurs)
tailsnitch --tailnet mycompany.com

Filtrer les résultats

# Affichez uniquement les problèmes critiques et de sévérité élevée
tailsnitch --severity high

# Filtrer par catégorie
tailsnitch --category access    # Problèmes ACL
tailsnitch --category auth      # Authentification et clés
tailsnitch --category device    # Sécurité des appareils
tailsnitch --category network   # Exposition réseau
tailsnitch --category ssh       # Règles SSH
tailsnitch --category log       # Journalisation et administration

# Exécutez uniquement des vérifications spécifiques
tailsnitch --checks ACL-001,AUTH-001,DEV-010
tailsnitch --checks stale-devices,tailnet-lock-not-enabled

# Listez toutes les vérifications disponibles
tailsnitch --list-checks

Mode de correction interactif

Le mode de correction vous permet de remédier directement aux problèmes via l'API Tailscale :

# Mode de correction interactif
tailsnitch --fix

# Aperçu de ce qui serait corrigé (essai à blanc)
tailsnitch --fix --dry-run

# Sélection automatique des corrections sûres (nécessite toujours une confirmation)
tailsnitch --fix --auto

# Désactivez la journalisation d'audit des actions de correction
tailsnitch --fix --no-audit-log

Éléments corrigibles via l'API :

VérificationAction
AUTH-001, AUTH-002, AUTH-003Supprimer les clés d'authentification
DEV-002Retirer les tags des appareils utilisateur
DEV-004Supprimer les appareils obsolètes
DEV-005Autoriser les appareils en attente

Le mode de correction fournit également des liens directs vers la console d'administration pour les problèmes nécessitant une intervention manuelle.

Export de preuves SOC 2

Générez des rapports de preuves pour les audits SOC 2 avec les correspondances des critères communs (CC) :

# Export au format JSON
tailsnitch --soc2 json > soc2-evidence.json

# Export au format CSV (pour les feuilles de calcul)
tailsnitch --soc2 csv > soc2-evidence.csv

Le rapport SOC 2 comprend :

  • Résultats de test par ressource (chaque appareil, clé, règle ACL testés individuellement)
  • Correspondances des codes CC (CC6.1, CC6.2, CC6.3, CC6.6, CC7.1, CC7.2, etc.)
  • Statut Réussi/Échoué/N/A pour chaque test de contrôle
  • Horodatage pour la piste d'audit

Exemple de sortie 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

Ignorer les risques connus

Créez un fichier .tailsnitch-ignore pour supprimer les résultats concernant les risques acceptés connus :

# .tailsnitch-ignore
# Ignorez les vérifications informatives
ACL-008  # Nous n'utilisons volontairement pas de groupes
ACL-009  # Les ACL héritées conviennent à notre cas d'utilisation
Télécharger l’outil