Introduction
River Festival doit examiner les accès avant d’ouvrir son réseau. Visiteurs et personnel doivent pouvoir lire le programme public ; l’accueil et les fournitures sont réservés au personnel. Vous observerez le même serveur depuis les deux positions réseau pour livrer une revue précise, incluant les accès inattendus et les services requis indisponibles.
Guest Scanner et Staff Scanner sont des terminaux persistants dans des espaces de noms réseau distincts sur une seule VM de formation. Ils ont des routes et des adresses sources différentes, mais partagent les fichiers ; ce ne sont pas deux VM indépendantes. L’environnement est prêt et toutes les données sont synthétiques. Seuls le serveur 10.77.3.2 et les ports TCP 8311,8322,8333 sont autorisés au scan. Préservez les clients, routes, règles de filtrage, services, données et observateurs de paquets. Il s’agit uniquement d’observer : une revue correcte peut conclure que le réseau n’est pas prêt à ouvrir.
La saisie de commandes simples et la compréhension des chemins suffisent. Les options Nmap, HTTP et la syntaxe shell nécessaires sont expliquées ; Finding the Live Workshop Service est conseillé en préparation. Aucune programmation ni administration de pare-feu n’est requise.
Établir un témoin fonctionnel depuis chaque source
Vous découvrirez d’abord le fonctionnement public normal depuis chaque réseau avant de juger l’accès restreint. Utilisez les onglets nommés du lab, pas un shell serveur ou d’administration. Ouvrir un onglet de scan rejoint son réseau préparé sans le reconstruire. Chaque terminal conserve son propre répertoire et état shell ; les fichiers sont sur la même VM.
Guest Scanner
Sélectionnez Guest Scanner. cd change le répertoire courant de ce shell ; les chemins relatifs suivants en dépendent :
cd /home/labex/project/nmap-access/guest
cat affiche un fichier texte. .. désigne le répertoire parent : ce chemin lit donc les règles partagées au-dessus du répertoire du rôle :
cat ../plan.csv
CSV signifie valeurs séparées par des virgules : l’en-tête nomme les colonnes, puis chaque ligne décrit une relation. Les six lignes associent guest ou staff à un service et à un port TCP. allow exige une connexion fonctionnelle ; block exige que cette source ne puisse pas se connecter. Le programme public sur 8311 est autorisé aux deux sources. L’accueil sur 8322 et les fournitures sur 8333 sont réservés au personnel.
HTTP est le protocole requête/réponse utilisé par ces services. curl récupère une URL. Les options combinées -fsS font échouer la commande en cas d’erreur HTTP, masquent la progression et affichent encore les erreurs ; -o enregistre la réponse dans le fichier qui suit. L’adresse sélectionne la destination, le port après les deux-points sélectionne le point d’écoute et /manifest.csv sélectionne la ressource :
curl -fsS -o public.csv http://10.77.3.2:8311/manifest.csv
cat public.csv
Attendez-vous à l’en-tête et à deux enregistrements schedule/RIVER-FEST : P01/Doors at 10 et P02/Talk at 11. Cette réponse réelle provient de la position réseau des visiteurs, d’adresse source 10.77.1.2.
Staff Scanner
Passez à Staff Scanner. Son adresse source est 10.77.2.2 et son répertoire est distinct :
cd /home/labex/project/nmap-access/staff
curl -fsS -o public.csv http://10.77.3.2:8311/manifest.csv
cat public.csv
Vous devez retrouver les deux mêmes enregistrements publics complets. Un témoin public fonctionnel des deux côtés évite de confondre un scanner déconnecté avec un blocage réussi. Les deux fichiers public.csv sont dans des répertoires de rôles différents. En cas de faute dans un nom de fichier, lisez l’erreur, utilisez pwd pour afficher le répertoire de ce terminal et répétez le cd indiqué pour ce rôle avant de réessayer. Ne réparez pas les routes et ne redémarrez pas les services.
Scanner les mêmes services depuis chaque réseau
Vous recueillerez des observations complètes depuis les deux sources. L’état d’un port décrit ce que ce scanner a observé, pas une propriété intrinsèque du serveur. open signifie qu’une connexion TCP a été acceptée. closed signifie que le scan a reçu un refus, dû à l’absence d’écoute ou à un filtre qui rejette. filtered signifie que Nmap n’a pas pu déterminer si le port était ouvert, car les sondes ou réponses ont été bloquées. Ne déduisez pas une cause précise du seul état.
Nmap examine les services réseau. -sT sélectionne le scan TCP connect, qui n’exige ici aucun privilège de paquets bruts. -Pn saute la décision préliminaire de découverte de l’hôte et examine les ports indiqués même si d’autres sondes restent sans réponse ; il ne prouve pas à lui seul que l’hôte est actif. -n saute la résolution inverse des noms. --reason affiche le fondement de la réponse, -p choisit tous les ports autorisés et -oX enregistre un XML structuré en plus de la sortie normale du terminal. Les ports usuels par défaut ne remplacent pas le périmètre convenu.
Le moteur de scripts Nmap, NSE, peut envoyer une requête applicative choisie. --script sélectionne un script et --script-args fournit ses options nommées. http-title récupère un titre HTML ; http-title.url=/about choisit la ressource descriptive. Les trois candidats sont déclarés comme services HTTP. Le + initial exécute explicitement ce seul script malgré un port non reconnu, dans ce périmètre HTTP connu. Ce n’est pas une consigne générale pour forcer des scripts quelconques sur d’autres services. Aucun texte de version produit n’est exigé.
Guest Scanner
Passez à Guest Scanner, toujours dans /home/labex/project/nmap-access/guest. Lisez d’abord l’aide du script sélectionné avec --script-help :
nmap --script-help http-title
nmap -sT -Pn -n --reason --script=+http-title --script-args=http-title.url=/about -p 8311,8322,8333 -oX scan.xml 10.77.3.2
Attendez Nmap done. Les ports 8311 et 8322 doivent être open, avec les titres réels du programme public et de l’accueil du personnel. Le port 8333 doit être filtered. Les visiteurs peuvent joindre un service réservé au personnel : le succès du témoin public ne constituait donc pas une revue d’accès complète.
Staff Scanner
Passez à Staff Scanner, toujours dans /home/labex/project/nmap-access/staff. Effectuez la même inspection limitée depuis cette position réseau :
nmap -sT -Pn -n --reason --script=+http-title --script-args=http-title.url=/about -p 8311,8322,8333 -oX scan.xml 10.77.3.2
Les ports 8311 et 8322 doivent être open et 8333 closed. Le personnel ne peut donc pas se connecter à un service requis. Les réponses de titre identifient des candidats HTTP réactifs ; un nom conventionnel dans SERVICE ne prouve pas à lui seul l’application.
Ce sont deux vrais scans, pas un résultat renommé pour deux sources. Les fichiers scan.xml propres aux rôles et le trafic source existant étayent la revue. Si vous avez utilisé le mauvais onglet, la mauvaise cible ou les mauvais ports, relancez le scan complet corrigé depuis le bon scanner. Après interruption, attendez une nouvelle exécution complète. Renommer un texte en XML ou copier le fichier de l’autre rôle ne crée pas les observations d’une source manquante.
Livrer la revue des accès et préserver la scène
Vous allez transformer les six relations observées en une revue précise pour le responsable. Commencez dans Staff Scanner, dans /home/labex/project/nmap-access/staff. Gardez la scène initiale intacte : la revue peut être complète alors que les accès nécessitent encore une réparation ultérieure.
Pour une ligne allow, open respecte l’accord ; closed ou filtered signifie unavailable. Pour une ligne block, un port ouvert est unexpected-open ; closed ou filtered respecte la restriction de connexion observée. Cette conclusion ne concerne que la source, la cible, le protocole, les ports et le moment indiqués. Elle ne garantit pas tous les chemins réseau ni la cause précise du refus.
Les colonnes sont source,service,port,expected,observed,verdict. Reliez chaque source et service à ses propres preuves. Notez l’état réel au lieu de remplacer tous les résultats non ouverts par un même mot. L’accord exige les fournitures pour le personnel même si leur état actuel est closed : c’est un problème constaté, pas un blocage réussi.
Un here-document entre guillemets transmet les lignes littérales suivantes à cat. > remplace uniquement le rapport nommé ; le CSV final doit occuper seul sa ligne. ../access-review.csv place la revue partagée dans le répertoire parent :
Staff Scanner
cat > ../access-review.csv <<'CSV'
source,service,port,expected,observed,verdict
guest,schedule,8311,allow,open,meets
guest,checkin,8322,block,open,unexpected-open
guest,supplies,8333,block,filtered,meets
staff,schedule,8311,allow,open,meets
staff,checkin,8322,allow,open,meets
staff,supplies,8333,allow,closed,unavailable
CSV
cat ../access-review.csv
Reportez l’ouverture du réseau : l’accueil est accessible de façon inattendue aux visiteurs et les fournitures sont indisponibles pour le personnel. Ne supprimez pas une exposition et ne modifiez pas un filtre pour simplifier le rapport ; la tâche consiste à livrer les constats au responsable. Un même état peut avoir des implications différentes selon la relation allow/block.
Guest Scanner
Passez à Guest Scanner et réutilisez le témoin public inchangé :
curl -fsS -o public.csv http://10.77.3.2:8311/manifest.csv
Staff Scanner
Revenez à Staff Scanner et faites de même :
curl -fsS -o public.csv http://10.77.3.2:8311/manifest.csv
Les deux doivent toujours fournir les deux enregistrements publics initiaux. Les services privés et la configuration réseau initiale restent également en place pour l’enquête. Si l’URL est mal saisie, corrigez l’URL connue et réessayez depuis le même rôle au lieu de copier le téléchargement de l’autre côté.
Résumé
Vous avez établi le fonctionnement normal depuis chaque source, recueilli des observations Nmap distinctes et examiné chaque relation d’accès. Une accessibilité inattendue et un service requis indisponible sont deux constats différents. La revue complète préserve la scène initiale et limite ses conclusions aux sources et au périmètre réellement observés.



