🔍 Contexte

Publié le 18 septembre 2026 sur GitHub (nmht3t/OneDrive-UDC2), cet article présente un outil offensif permettant d’utiliser Microsoft OneDrive for Business comme couche de transport pour un canal User-Defined C2 (UDC2) de Cobalt Strike.

⚙️ Fonctionnement technique

L’outil repose sur l’API Microsoft Graph avec la permission applicative Files.ReadWrite.All pour lire et écrire des fichiers dans des dossiers OneDrive dédiés. L’architecture se compose de :

  • Un relay Python (server/relay.py) qui fait le pont entre OneDrive et le teamserver Cobalt Strike via le protocole UDC2
  • Un client BOF (client/bof.o) chargé dans Cobalt Strike comme listener UDC2
  • Deux dossiers OneDrive distincts : un inbox (commandes entrantes) et un outbox (réponses sortantes)

🛠️ Prérequis et configuration

L’opérateur doit disposer de :

  • Un tenant Microsoft Entra ID avec un compte utilisateur OneDrive for Business
  • Une app registration Azure avec consentement administrateur sur Files.ReadWrite.All
  • Un tenant_id, client_id, client_secret, drive_id, inbox_folder_id, outbox_folder_id configurés dans server/config.json

📁 Gestion d’état

Le relay maintient un fichier d’état (config.json.state.json), un répertoire de spool pour les données en attente d’upload, et un fichier de verrou pour éviter les instances concurrentes. Une option --clean permet de réinitialiser l’état.

📌 Type d’article

Il s’agit d’une publication d’outil offensif (nouveaux outils) à destination des équipes red team, documentant l’implémentation complète d’un canal C2 furtif exploitant une infrastructure cloud légitime pour contourner les détections réseau traditionnelles.

🧠 TTPs et IOCs détectés

TTP

  • T1102 — Web Service (Command and Control)
  • T1102.002 — Bidirectional Communication (Command and Control)
  • T1567 — Exfiltration Over Web Service (Exfiltration)
  • T1071.001 — Application Layer Protocol: Web Protocols (Command and Control)
  • T1550.001 — Use Alternate Authentication Material: Application Access Token (Defense Evasion)

IOC

  • Fichiers : bof.o
  • Fichiers : relay.py
  • Chemins : server/relay.py
  • Chemins : server/config.json
  • Chemins : client/bof.o

⚠️ À propos de ces IOC — ils sont extraits automatiquement de l’article original le 20 septembre 2026 et n’ont pas fait l’objet d’une vérification externe. Un indicateur peut avoir été réattribué depuis : une IP de C2 peut redevenir un service légitime, un domaine sinkholé peut changer de propriétaire. Aucune garantie d’exactitude ni d’actualité — contrôlez leur validité avant tout usage opérationnel, en particulier avant de les injecter dans une blocklist ou un SIEM.

Malware / Outils

  • Cobalt Strike (framework)
  • OneDrive UDC2 (tool)

🟡 Indice de vérification factuelle : 40/100 (moyenne)

  • ⬜ github.com — source non référencée (0pts)
  • ✅ 3341 chars — texte complet (fulltext extrait) (15pts)
  • ✅ 5 IOCs (IPs/domaines/CVEs) (10pts)
  • ⬜ pas d’IOC vérifié (0pts)
  • ✅ 5 TTPs MITRE identifiées (15pts)
  • ⬜ date RSS ou approximée (0pts)
  • ⬜ aucun acteur de menace nommé (0pts)
  • ⬜ pas de CVE à vérifier (0pts)

🔗 Source originale : https://github.com/nmht3t/OneDrive-UDC2