File Transfers

Les transferts de fichiers sont une étape essentielle dans de nombreux scénarios de tests d'intrusion. Savoir comment déplacer un fichier vers ou depuis un système cible peut permettre d'escalader des privilèges, de déployer des outils d'énumération ou simplement d'amener une charge utile là où elle est nécessaire.


🎯 Mise en situation

Imaginons le scénario suivant lors d'un engagement :

  • Un accès distant via Remote Code Execution (RCE) est obtenu sur un serveur web IIS grâce à une vulnérabilité d'upload non restreint.

  • Une web shell est d'abord téléversée, puis une reverse shell est envoyée pour poursuivre l'énumération et tenter une escalade de privilèges.

  • L'outil PowerUp.ps1 est bloqué par la stratégie de contrôle d'applications empêchant l'exécution de PowerShell.

  • Une énumération locale manuelle révèle le privilège SeImpersonatePrivilege.

  • L'outil PrintSpoofer est identifié comme une opportunité d'escalade. Il faut donc le téléverser.

  • Certutil est testé pour télécharger l'outil depuis un GitHub personnel, mais l'organisation applique un filtrage de contenu web strict, bloquant l'accès à GitHub, Dropbox, Google Drive, etc.

  • Une tentative de transfert via FTP échoue à cause du pare-feu bloquant les connexions sortantes sur le port 21 (TCP).

  • Finalement, l'outil Impacket smbserver est utilisé pour monter un partage SMB. Le port 445 (TCP) étant ouvert en sortie, le fichier peut être transféré avec succès.

Ce scénario illustre l'importance de maîtriser plusieurs méthodes de transfert et de comprendre les limites imposées par les contrôles d'hôte ou de réseau.


🛡️ Contraintes courantes

Les opérations de transfert peuvent être bloquées ou surveillées par divers mécanismes :

  • Contrôles d'applications (Application Whitelisting)

  • Antivirus / EDR (capables de bloquer certains outils ou scripts)

  • Pare-feux (filtrant les ports en sortie ou entrée)

  • IDS/IPS (détectant des comportements suspects)

Un bon testeur doit être capable de s'adapter à ces contraintes.


🛠 Outils et méthodes de transfert

Tous les systèmes d'exploitation possèdent des moyens natifs ou disponibles de transférer des fichiers. Toutefois, ces outils peuvent être bloqués ou absents. Ce module présente donc différentes techniques exploitables sur :

  • Windows (Certutil, SMB, FTP, PowerShell, etc.)

  • Linux (Wget, cURL, SCP, Netcat, etc.)

Le but est d'acquérir une boîte à outils variée pour réussir des transferts malgré les obstacles techniques.


🧪 Entraînement pratique

Des machines Windows et Linux sont mises à disposition pour expérimenter les méthodes enseignées. Il est fortement recommandé de :

  • Tester toutes les techniques dans des environnements variés

  • Observer les différences de comportement entre les systèmes

  • Prendre des notes sur les situations où chaque méthode fonctionne ou échoue


🎯 Objectif du module

À l'issue de ce module, vous serez capable de :

  • Identifier les bons outils de transfert selon le contexte

  • Comprendre les limites imposées par les contrôles de sécurité

  • Appliquer ces méthodes dans d'autres modules HTB ou environnements réels

Le transfert de fichiers est une compétence de base mais essentielle pour tout pentester ou analyste offensif. Maîtriser de multiples techniques augmente les chances de succès face à des environnements restrictifs.


Mis à jour