veilletech.fr
3 oct. Feed du jour
#03 SÉCURITÉ Faille

Un faux client, une branche NDA et un hook Git piégé

Le contrat était dans la branche. Le piège aussi.

Frank Wiles (REVSYS) a reçu une fausse demande de projet : le « prospect » partageait sur Dropbox un dossier de spécifications contenant un répertoire .git, et demandait de basculer sur la branche NDA pour signer l'accord. Un hook post-checkout y téléchargeait puis lançait un binaire depuis une application Vercel. git clone ne transfère jamais les hooks, mais un dossier .git copié tel quel les emporte.

1 min de lecturedébutantvidéo 1:23
Partager
Sommaire4 sections
  1. Ce qui se passe
  2. Pourquoi ça marche
  3. Comment s'y prendre
  4. À retenir

Ce qui se passe

Frank Wiles, de l'agence REVSYS, a été visé par un faux prospect : un projet d'application dans l'éducation en ligne, un rendez-vous, puis une demande de lire le cahier des charges et de signer un accord de confidentialité. Le dossier Dropbox partagé contenait des fichiers Markdown — et un répertoire .git, passé inaperçu au début.

L'accord manquait. Réponse : il est dans la branche NDA, il suffit de basculer dessus.

Dans .git/hooks, à côté des exemples livrés par Git, un seul vrai script : post-checkout, exécuté après chaque changement de branche. Il récupérait auprès d'une application Vercel un binaire adapté au système, le lançait, puis s'effaçait. Frank pense que son compte GitHub et les accès de ses clients étaient visés ; il a signalé les comptes à Dropbox et à Vercel.

Pourquoi ça marche

git clone ne recopie jamais les hooks du dépôt d'origine. Un dossier .git transmis tel quel — partage, archive, clé USB — les emporte, et la première commande Git les déclenche.

Comment s'y prendre

Récit d'un seul cas, sans analyse du binaire.

Source : I got targeted: Trying to get your credentials via a git post-checkout hook, Frank Wiles, 2 octobre 2026.