--- title: winsec cours 3 tags: winsec --- # Réseau Chaque mach = un nom de mach + un nom de domaine Sys = WORKGROUP + DOMAIN on garde en mem un nom de machine, nom historique netbios, etc... ## NEtbios toujours supporté sous windows resolution de nom (soit deco soit co) et transfert de données netbios n'etait pas sur tcp ip avant il offre 3 service: Name service: TCP/UDP 137 datagram service 138 session service 139 ## Netbios name services pas très sécure on prend la premiere reponse si qqn demande un server et qu'on repond en prems on aura les connections pour ce serveur. Format de netbios = 15 char + 1 (netbios suffix) Ping TOTO => va lancer une requete netbios (NBNS) pour resoudre le nom? sur wireshark: on retrouver les 3 services netbios name services netbios est facile a exploiter pour notamment du mitm c'est pour ça que on va vouloir le désactiver Les deux autres services on n'en parle pas today Auj on essaye de minimiser les protocoles en broadcasts ## Windows networking (wnet) Tres important sur windows (wnet) y'a une fonction tres importante: le filesys (c'est complexe a ecrire) Y'a bcp de cas a gerer corruption, interruption etc ... souvent on veut echanger des fichiers sur le reseaus et on veut un protocole qui ne differentie pas le sys local ou par le reseau (ce sera pareille sur les memes) quand on ref un sys reseau par wnet on le fait par UNC (Uniform Naming Convention ) ex : \\Serveur\Partage\Chemin\Fichier celui qui va s'occuper d'interconnecter c'est le noyau. (ce qui fait que c'est transparent pour les utilisateur) il faut que ce soit accessible a distance: loopback ou nom de machine ,.. (le fichier doit pouvoir etre ressoulu) Serveur: . local / addr IP / / MPR: quand on enumere les fonctionnalite du partage reseau il faut une biblio qui fasse ce traitement. Multiple UNC Provider MUP: coté noyau - createfile (unc) API qui gere les entree sortie (local ou reseau) - si on est sur du reseau, pilote qui prend en charge le MU - il va appeller les directeur installer sur le sys - les redirecteur vont servire la demande faite :::info Du coup résumé/à retenir: - WNET: file sys reseau - MPR: traitement de demande de connexion - MUP : manipulation de fichier/traitememnt de opération sur les fichiers ::: RDP: deporte les imprimante/carte a puce/presse papier mais aussi un redirecteur reseau. Ex: on va pouvoir manipuler les fichiers d'une autre machine (notamment de la machine hote) Pour dire qu'on veut utiliser le redirecteur de RDP c'est testclient. Si maintenant on utiliser les focntions qu'on a vu: - net use z:\\tsclient - il dit bien que c'est microsoft terminal services Si je veux demonter mon partage - net use z: /delete Si on veut copier un fichier entre hote et inviter: - utilsation du presse papier - connecte en RDP sur un serveur et je fais CTR+V WebDAV: - permet l'acces a des fichiers via HTTPS - c'est tout simplement un jeu de commandes en plus qui viennent enrichir HTTP Si on fait: net use u: https://live.sysinternals.com monter: il va quand meme le convertir tout seul derriere en UNC. C'est pas un protocole ultra performant mais ca fonctionne. ## SMB Redirecteur SMB: - vrai partage de fichiers windows => protocol ultra perf dans les dernieres version - tres vieux protocol (fin anne 70). - avec windows vista, smb a ete refait depuis, le protocol est devenu performant. - c'est un protocole que microsoft continue d'enrichir aujourd'hui SMB2 nouveauté: - performance - sécurité - simplification - supports des lins symboliq SMB3 nouveautés: - chiffrement - ... SMB1 desactivation: - protocole dangereux que windows veut tuer. - il faut le tuer car il n'a plus raison d'etre - depuis les dernieres versions il est desactive par defaut Principales operationSMB - negocier le dialecte (protocole, famille, version) - authent - connection à un partage - acces au fichier - deconnexion Negociation du dialecte: ... Authent de l'utilisateur: - celui qui fait l'authen c'est autre chose - c'est pas le boulo d'SMB c'est un autre qui le fait. - SMB transporte l'authent WIreshark: Capture réseau - filtre sur SMB1 ou 2 - exemple paquet: negociation de revision. Dialecte: ... (ca dit je supporte toutes ces fonctionnalité), ensuite il negocie :::info > Things Administrators rarely understand > -- le prof si on fait "net use ..." et qu'on se trompe dans le mdp => sur wireshark, authentification on a l'echec et après ca on fait une connexion sur le port 80. Pourquoi ca fait ca: ca fait un propfile. Qu'est ce qu'il se passe? dans mes redirecteur il va dire qu'il a echouer et il passe a webdav donc le port 80. (quand on echoue on passe au redirecteur suivant) ::: Securite SMB: - Signature: les gens qui fobt SMBne s'occupe pas de l'authen mais cette authen doit: - assure au client qu'il est sur le bon serv - generer une clé de session - cette clé de sessions va etre donner a SMB pour qu'il fasse soit ?? soit du chiffrement. On prend l'en tete SMB > ...> avec SMB2 revision 3, on prend AES et on a directement une signature qu'on met dans le SMB_header. AES-128-CMAC pour des raisons de performance contre HMAC-SHA256 PAr defaut sur windows: - Dans secpol (strategie de sécurité de Windaube) communication signé... on voit que les signatures sont désactivés. - En effet, seul les controleurs de domaine impose la signature SMB Le chiffrement SMB3: - on a des algo qui ont evoluer (CCM ou GCM) Pour faire un partage chiffré sur windows: - creation nouveau dossier on va dans les param 'sharing' o demande a le partager sur toto. - on met un fichier dedans - on relance la capture Wireshark pour check les bails - sur wireshark: le texte est quand meme affiché :-1: rip - les fichiers peuvent etre exporté facilement sur wireshark (fichier export) pour chiffrer set-smbshare --EncryptData $true Parametre de confi du chiffrement - on a des options de chiffrement on peut desactiver le chiffrement obligatoire (jai pas ecouté quoi mais askip ca n'a pas bcp d'interet) Dans l'AD est ce que le partgae de fichier SMB est utilisé?? - dans l'AD on utilise les GPO configure les différent accès au SMB - donc il fait forcement du SMB La signature doit etre forcé par le client pour empecher les attaques mitm la forcé sur le serveur ne sert a rien si le client ne le force pas par défaut le client ne force pas la signature les dernieres version de windows 10 SMB supporte la compression Tout sys: SMB est transporte sur NetBios (TCP 139) doit etre desactivé obsolete aujourd'hui Win2000: Direct Hosting (4xx) en couche: - partage de fichier - SMB - netbios - IP TCP/UDP SMB1 pas que du partage de fichiers: - mailslot => envoi de messages au travers du reseau ## Communication IPC Pipes (utilise SMB) - Anonymes: permet comm entre 2 processus sur meme mach - Nommés: permet une communication entre processus potentiellement sur deux machines différentes ( on creer un canal on lui donne juste un nom et le correspondat ouvre le cannal par son nom. Le cannal peut etre local a une machine ou sur une machine distante.) Derriere il faut transfrere les canneaux nommée par un protocole: on va utiliser SMB. Tous les partages peuvent etre arrete mais ipc$ existe toujours. ## RPC - Remote Procedure Call - Mecanisme client/server reparti : fonctions export par server et call par client - Gestion des comm reseau sur le SE (sys d'exploitation) RPC: TCP / UDP / canal nommé / HTTP via IIS / LPC **LPC** port de comm mis en oeuvre par le noyau et permet une comm LSASS[SamSS[RPC samr] -> Base SAM] Voici comment utiliser la base SAM SamSS 2 ports d'ecoute => LPC (samss lpc) / NP (\pipe\lsass) netuserenum => qui est exporte par windows Interfaces reseaux : - public : - prive : - domaine : se fait tout seul si mach membre d'un domaine et domaine est joignable powershell quand on a fait la commande d'enumeration des profiles, un service a ete appeller (comment on connait le nom du process par rapport a son PID?? = /svc|findstr 2532, sinon on lance process hackeron chercher le pid ) c'ets pas powershell qui titile dans le clé de registre, c'est le service de reseau. Tout est RPC sur windows. a telecharger: RPC view WFAS: parefeu Windows Defender - l'interet de ce parfeu on peut filtrer par adr sources etc, mais on peut aussi aller plus loin dans la gestion des ... locaux - on peut par ex filtrer par programme, par service, par utilisateur interet du parefeu windows il gere par GPO: ca nous permet d'imposer des regle que plus personne ne peut surcharger les bails (lets goo) LLMNR : - Definit dans la RFC 4795 - Permet des requete DNS sur le lien local - comment ca fonctionne ? (??) Pour debug: net helpmsg number