GREY-X // WINDOWS LAB
net share — WINDOWS NETWORK SHARES
Dans un environnement Windows, les partages réseau SMB permettent d’exposer des dossiers et des ressources à d’autres machines.
La commande native net share permet d’énumérer et d’administrer ces partages.
En pentest, elle est intéressante parce qu’un partage mal configuré peut révéler :
documents
scripts
sauvegardes
fichiers de configuration
ressources d'administration
données internesL’objectif n’est donc pas simplement de connaître la commande, mais de comprendre ce qu’elle révèle sur une machine Windows.
01 // Lister les partages
#
La commande la plus simple :
net shareExemple :
Share name Resource
------------------------------------------------
ADMIN$ C:\Windows
C$ C:\
IPC$
Users C:\Users
Public C:\Users\PublicCette sortie permet déjà d’identifier les ressources exposées par la machine.
On peut distinguer deux grandes catégories.
Partages administratifs #
ADMIN$
C$
IPC$Ils sont généralement liés au fonctionnement et à l’administration de Windows.
Partages configurés par l’administrateur #
Par exemple :
Public
Documents
Backup
ProjectsCe sont souvent ces partages qui méritent une attention particulière lors d’un audit.
02 // Comprendre les partages administratifs
#
Les partages terminés par $ sont généralement cachés de l’énumération classique.
Par exemple :
C$
ADMIN$
IPC$Le caractère $ indique qu’il s’agit d’un partage caché dans l’interface normale de navigation réseau.
Cela ne signifie pas :
inaccessiblemais plutôt :
non affiché normalementL’accès reste soumis aux mécanismes d’authentification et d’autorisation Windows.
03 // Interroger un partage précis
#
On peut demander davantage d’informations sur un partage :
net share PublicExemple :
Share name Public
Path C:\Users\Public
Remark Public files
Maximum users No limit
Users
Caching Manual caching of documentsCette commande permet notamment de connaître :
nom du partage
chemin local
description
limitation du nombre d'utilisateurs
configuration du partageLe point intéressant pour un pentester est le chemin local.
Par exemple :
Public → C:\Users\Public
Backup → D:\Backups
Projects → C:\ProjectsCela permet de comprendre comment les ressources réseau sont organisées sur le système.
04 // Le lien avec SMB
#
net share travaille au niveau de la configuration des partages Windows.
L’accès à ces ressources passe généralement par SMB.
On peut donc représenter le fonctionnement ainsi :
CLIENT
│
│ SMB
▼
WINDOWS SERVER
│
├── Share: Public
│ └── C:\Users\Public
│
├── Share: Backup
│ └── D:\Backups
│
└── Share: Projects
└── C:\ProjectsLors d’un pentest réseau, l’énumération SMB permet donc de passer de :
IP
↓
SMB
↓
SHARES
↓
PERMISSIONS
↓
DATA05 // Tester l'accès à un partage
#
Une fois qu’un partage est identifié, il faut déterminer si le compte utilisé peut réellement y accéder.
Depuis une machine Windows :
net use \\192.168.1.10\PublicSelon la configuration du serveur, Windows peut demander des informations d’authentification.
Pour utiliser explicitement un compte :
net use \\192.168.1.10\Public /user:DOMAIN\userL’objectif dans un laboratoire est d’observer la différence entre :
partage visibleet :
partage accessibleCe sont deux choses différentes.
06 // Énumération locale vs distante
#
Un point important :
net shareest principalement utilisé pour afficher les partages configurés sur la machine locale.
Pour analyser une machine distante, d’autres outils Windows ou SMB peuvent être utilisés.
Par exemple :
net view \\192.168.1.10Cette commande permet d’interroger les ressources partagées visibles sur une machine distante.
On obtient alors une logique d’énumération :
net view
↓
identifier les ressources réseau
↓
identifier les shares
↓
tester les permissions
↓
analyser les données accessibles07 // Pourquoi c'est intéressant en Red Team ?
#
Imaginons un environnement de laboratoire :
DC01
├── SYSVOL
├── NETLOGON
├── Backup
└── ITUn pentester peut chercher à comprendre :
Quels partages existent ?
Qui peut y accéder ?
Quelles données sont exposées ?
Les permissions sont-elles correctement configurées ?Un partage comme :
Backuppeut être particulièrement intéressant à examiner.
Pourquoi ?
Parce qu’une sauvegarde peut contenir :
configurations
scripts
exports
fichiers XML
fichiers INI
archives
informations techniquesEt parfois des informations sensibles mal protégées.
Le problème n’est donc pas nécessairement le partage lui-même.
Le véritable problème peut être :
SHARE
+
PERMISSIONS TROP LARGES
+
DONNÉES SENSIBLES08 // Les permissions : deux couches
#
Lorsqu’on analyse un partage Windows, il faut éviter une erreur classique :
Voir un partage accessible ne signifie pas forcément que tous les fichiers sont accessibles.
Windows peut appliquer plusieurs niveaux de permissions.
SMB SHARE
│
Share Permissions
│
▼
NTFS Permissions
│
▼
FILEPar exemple :
Share → Read
NTFS → ModifyLe résultat final dépend de la combinaison des permissions.
Lors d’un audit, il faut donc examiner les permissions du partage ET les permissions NTFS.
09 // Créer un partage dans un lab
#
Dans un laboratoire Windows, un administrateur peut créer un partage :
net share Lab=C:\LabWindows expose alors :
\\HOSTNAME\LabPour supprimer le partage :
net share Lab /deleteCette partie est particulièrement utile pour construire un environnement de test.
Par exemple :
C:\Lab
├── Public
├── Backup
├── Scripts
└── DocumentsPuis :
net share Lab=C:\LabOn dispose alors d’une ressource SMB contrôlée pour expérimenter.
10 // Modifier un partage
#
La commande peut également être utilisée pour administrer les ressources partagées.
Par exemple :
net share Lab=C:\Lab /remark:"Laboratoire Windows"On peut ensuite vérifier :
net share LabL’objectif pédagogique est de comprendre le cycle :
CREATE
↓
CONFIGURE
↓
ENUMERATE
↓
TEST
↓
REMOVE11 // Côté Blue Team
#
Du côté défenseur, net share permet rapidement de vérifier les ressources exposées :
net shareIl faut rechercher notamment :
shares inutilisés
shares hérités
shares trop permissifs
données sensibles
partages temporaires oubliésUne bonne pratique consiste à limiter l’exposition :
Need to know
+
Least privilege
+
NTFS permissions
+
Share permissionsUn partage qui n’est plus nécessaire devrait être supprimé.
12 // Mini-lab GREY-X
#
Sur une VM Windows de laboratoire :
Étape 1 — Énumérer #
net shareÉtape 2 — Créer un partage de test #
mkdir C:\Lab
echo GREY-X > C:\Lab\test.txtPuis :
net share Lab=C:\LabÉtape 3 — Vérifier #
net share LabÉtape 4 — Tester depuis une autre machine Windows #
net view \\IP_WINDOWSPuis :
net use \\IP_WINDOWS\LabÉtape 5 — Supprimer #
net share Lab /deleteCe petit laboratoire permet de comprendre concrètement :
Windows
↓
Share
↓
SMB
↓
Authentication
↓
Permissions
↓
Access13 // Quelques commandes à retenir
#
net share→ énumérer les partages locaux.
net share NOM_DU_SHARE→ afficher les informations d’un partage.
net share NOM=CHEMIN→ créer un partage.
net share NOM /delete→ supprimer un partage.
net view \\IP→ énumérer les ressources visibles d’une machine distante.
net use \\IP\SHARE→ établir une connexion vers un partage SMB.
14 // Perspective Pentest
#
net share est une petite commande, mais elle s’intègre dans une chaîne d’énumération beaucoup plus large :
DISCOVERY
│
▼
SMB
│
▼
NET SHARE
│
▼
SHARES
│
▼
PERMISSIONS
│
▼
CONTENT
│
▼
RISK ANALYSISL’objectif d’un pentest n’est pas de simplement dire :
"Le port SMB est ouvert."Il faut aller plus loin :
Quel service ?
Quels partages ?
Quelles permissions ?
Quelles données ?
Quel impact ?C’est cette progression qui transforme une simple énumération technique en véritable analyse de sécurité.
15 // À retenir
#
net share
→ énumérer les partages locaux
net share SHARE
→ analyser un partage
net view \\IP
→ voir les ressources réseau
net use \\IP\SHARE
→ accéder à une ressource SMB
C$
ADMIN$
IPC$
→ partages Windows particuliers
Share Permissions
+
NTFS Permissions
=
Effective AccessUn partage réseau n’est pas seulement un dossier accessible à distance.
C’est une frontière de sécurité entre le système de fichiers Windows et le réseau.
GREY-X — Enumerate. Understand. Validate. Secure.