Outils pour utilisateurs

Outils du site


kali

Ceci est une ancienne révision du document !


SECURITE


HARDENING LINUX

HARDENING LINUX

Mesures mise en place - Lien vers le guide : GUIDE ANSSI

Recommandation de niveau minimal

  Désactiver les comptes utilisateur inutilisés
  Utiliser des mots de passe robustes
  Éviter les fichiers ou répertoires sans utilisateur ou sans groupe connu
  Activer le sticky bit sur les répertoires inscriptibles
  Éviter l’usage d’exécutables avec les droits spéciaux setuid et setgid
  N’installer que les paquets strictement nécessaires
  Utiliser des dépôts de paquets de confiance
  Effectuer des mises à jour régulières
  Désactiver les services non nécessaires
  Protéger les mots de passe stockés
  Réduire la surface d’attaque des services réseau (En cours)

Recommandation de niveau intermédiaire

  Configurer le BIOS/UEFI
  Activer le démarrage sécurisé UEFI
  Configurer un mot de passe pour le chargeur de démarrage
  Paramétrer les options de configuration de la mémoire
  Paramétrer les options de configuration du noyau
  Activer et configurer le LSM Yama
  Paramétrer les options de configuration du réseau IPv4
  Désactiver le plan IPv6
  Paramétrer les options de configuration des systèmes de fichiers
  Partitionnement type
  Éxpirer les sessions utilisateur locales
  Assurer l’imputabilité des actions d’administration
  Désactiver les comptes de service
  Utiliser des comptes de service uniques et exclusifs
  Modifier les directives de configuration sudo
  Utiliser des utilisateurs cibles non-privilégiés pour les commandes sudo
  Bannir les négations dans les spécifications sudo 43
  Préciser les arguments dans les spécifications sudo 43
  Éditer les fichiers de manière sécurisée avec sudo
  Restreindre les droits d’accès aux fichiers et aux répertoires sensibles
  Restreindre les accès aux sockets et aux pipes nommées
  Séparer les répertoires temporaires des utilisateurs
  Désactiver les fonctionnalités des services non essentielles
  Configurer les privilèges des services
  Cloisonner les services
  Sécuriser les authentifications distante par PAM
  Sécuriser les accès aux bases utilisateur distantes
  Séparer les comptes système et d’administrateur de l’annuaire
  Durcir et surveiller les services exposés

Recommandation de niveau renforcé

  Choisir et configurer son matériel
  Activer l’IOMMU
  Désactiver le chargement des modules noyau
  Restreindre les accès au dossier /boot
  Modifier la valeur par défaut de UMASK 39
  Utiliser des fonctionnalités de contrôle d’accès obligatoire MAC
  Créer un groupe dédié à l’usage de sudo
  Limiter l’utilisation de commandes nécessitant la directive EXEC
  Activer les profils de sécurité AppArmor
  Changer les secrets et droits d’accès dès l’installation
  Éviter l’usage d’exécutables avec les droits spéciaux setuid root et setgid root
  Utiliser des dépôts de paquets durcis
  Mettre en place un système de journalisation
  Mettre en place des journaux d’activité de service dédiés 65
  Journaliser l’activité système avec auditd
  Durcir le service de messagerie locale
  Configurer un alias de messagerie des comptes de service
  Cloisonner les services réseau

Recommandation de niveau élevé

  Remplacer les clés préchargées
  Protéger les paramètres de ligne de commande du noyau et l’initramfs
  Paramétrer les options de compilation pour la gestion de la mémoire
  Paramétrer les options de compilation pour les structures de données
  Paramétrer les options de compilation pour l’allocateur mémoire
  Paramétrer les options de compilation pour la gestion des modules noyau
  Paramétrer les options de compilation pour les évènements anormaux
  Paramétrer les options de compilation pour les primitives de sécurité du noyau
  Paramétrer les options de compilation pour les plugins du compilateur
  Paramétrer les options de compilation pour la pile réseau
  Paramétrer les options de compilation pour divers comportements du noyau
  Paramétrer les options de compilation spécifiques aux architectures 32 bits
  Paramétrer les options de compilation spécifiques aux architectures x86_64 bits
  Paramétrer les options de compilation spécifiques aux architectures ARM
  Paramétrer les options de compilation spécifiques aux architectures ARM 64
  Activer SELinux avec la politique targeted 47
  Confiner les utilisateurs interactifs non privilégiés 48
  Paramétrer les variables SELinux 48
  Désinstaller les outils de débogage de politique SELinux
  Durcir les composants de cloisonnement
  Sceller et vérifier l’intégrité des fichiers
  Protéger la base de données des scellés

IPTABLES / IPSET

Rendre iptables et ipset persistents

Sous Debian, si vous souhaitiez rendre vos règles de pare-feu et liste de blocage persistantes, il fallait jouer des commandes iptables-save/iptables-restore et ipset save/ipset restore. Désormais tout peut être généré par netfilter-persistent, ce qui rend le chargement de vos règles automatique au démarrage.

Pour cela installez les paquets nécessaires:

#apt install ipset iptables netfilter-persistent ipset-persistent iptables-persistent

Créez ensuite vos ipset IPv4/IPv6, vos règles iptables IPv4/IPv6, puis sauvegarder la configuration avec netfilter-persistent :

#netfilter-persistent save

Assurez-vous que netfilter-persistent soit actif et démarré :

#systemctl enable netfilter-persistent
#systemctl start netfilter-persistent
#systemctl status netfilter-persistent

Au prochain redémarrage de votre serveur, les configurations sauvegardées seront automatiquement chargées et mises en place par netfilter-persistent

Création de la blacklist

Voici comment créer une liste nommée blacklistv4 pouvant contenir 1000000 adresses IPv4 (par défaut 65536) :

#ipset create blacklistv4 hash:ip family inet maxelem 1000000
#ipset create blacklist_ip hash:ip

Pour créer une blacklist de subnet:

#ipset create blacklist_netname hash:net

Pour une blacklist telporaire:

#ipset create temp_hosts hash:ip timeout 3600

Nous allons ensuite lier cette liste à iptables afin que les adresses IP ajoutées dans cette liste soient interdites. Nous ajoutons une règle au tout début de la chaîne d'entrée pour jeter les adresses IPv4 présentes dans la liste blacklistv4 :

#iptables -I INPUT 1 -m set --match-set blacklistv4 src -j DROP

Avec le même procédé, nous créons une blacklist pour l'IPv6 :

#ipset create blacklistv6 hash:ip family inet6 maxelem 1000000
#ip6tables -I INPUT 1 -m set --match-set blacklistv6 src -j DROP

Utilisation de la blacklist

Pour lister les chaines ipset:

#ipset list
#ipset -n list

Pour lister les adresses IP présentes dans votre blacklist :

#ipset list nom_de_votre_liste

Pour ajouter une adresse IP dans votre blacklist :

#ipset add nom_de_votre_liste adresse_IP
#ipset add blacklist_ip 192.168.2.123 timeout 3600

/!\ Attention /!\ à bien renseigner une adresse IPv4 dans votre liste créée pour l'IPv4 et une adresse IPv6 dans votre liste créée pour l'IPv6.

Pour supprimer une adresse IP dans votre blacklist :

#ipset del nom_de_votre_liste adresse_IP

Pour supprimer une chaine ipset :

#ipset destroy blacklist_ip

Utiliser Iptables avec Ipset

Une fois que l’on a créé la chaîne ipset, on fait correspondre une règle Iptables à cette dernière. Pour cela, on utilise l’option -m set pour –match-set. Par exemple pour créer une chaîne ipset blacklist_ip, puis ajoutez deux adresses IP 1.1.1.1 et 2.2.2.2 et enfin créez une règle DROP correspondant à cette chaîne.

#ipset -N blacklist_ip hash:ip
#ipset -A blacklist_ip 1.1.1.1
#ipset -A blacklist_ip 2.2.2.2
#iptables -A INPUT -m set --set blacklist_ip src -j DROP

Ainsi ici on bloque les connexions provenant des adresses IP 1.1.1.1 et 2.2.2.2.

Si à l’inverse, vous souhaitez définir une condition de pare-feu qui correspondrait à tout sauf des paquets de 1.1.1.1 ou 2.2.2.2.2 et poursuivez le traitement dans MaChaine, utilisez la syntaxe suivante :

#ipset -N whitelist_ip hash:ip
#ipset -A whitelist_ip 1.1.1.1
#ipset -A whitelist_ip 2.2.2.2
#iptables -A INPUT -m set ! --set whitelist_ip src -g machaine
Commandes Description
create SETNAME TYPENAME [type-specific-options] Create a new set Créer une chaîne ipset
add SETNAME ENTRY Ajouter des entrées dans une chaîne ipset
del SETNAME ENTRY Supprimer une entrée dans une chaîne ipset
test SETNAME ENTRY Tester une entrée dans une chaîne ipset
destroy [SETNAME] Détruire une chaîne ipset
list [SETNAME] Lister les chaînes ipset
save [SETNAME] Enregistrer une chaîne ou tous les ensembles sur stdout
restore Restaurer l’état d’ipset
flush [SETNAME] Vider le contenu d’une chaîne ipset
rename FROM-SETNAME TO-SETNAME Renommer une chaîne ipset
swap FROM-SETNAME TO-SETNAME Permuter deux chaînes ipset
Type de chaînes Description
bitmap:ip Le type de jeu Bitmap:IP utilise une plage de mémoire pour stocker des adresses réseau IPv4 (par défaut) ou IPv4. Par exemple : [proto:]port [proto:]fromport-toport Un bitmap: type IP de jeu peut stocker jusqu’à 65536 entrées.
hash:ip Le type de jeu Hash:IP utilise un hachage pour stocker des adresses hôtes IP (par défaut) ou des adresses réseau. L’adresse IP de valeur zéro ne peut pas être stockée dans un hachage: type IP de jeu.
hash:ip,port La HASH: IP, le type de jeu de ports utilise un hachage pour stocker une adresse IP et des paires de numéro de port. Le numéro de port est interprété avec un protocole (TCP par défaut) et un numéro de protocole zéro ne peut pas être utilisé.
hash:ip,port,net Le type hash:ip,port,net utilise un HASH pour stocker l’adresse IP, le numéro de port et l’adresse réseau IP triple. Le numéro de port est interprété avec un protocole (TCP par défaut) et un numéro de protocole zéro ne peut pas être utilisé. L’adresse réseau avec zéro préfixe la taille ne peut pas être stockée non plus.
hash:net,port hash:net,port est un type de jeu net se comporte de la même manière que le hachage: IP, Port, Net mais accepte une valeur CIDR pour le premier et le dernier paramètre. Soit sous-réseau est autorisé à être A / 0 si vous souhaitez correspondre au port entre toutes les destinations.
hash:ip,mark Le type de hachage: IP, le type de jeu utilise un hachage pour stocker l’adresse IP et les paires de paquets.
hash:net:iface Le type de jeu de hachage utilise un HASH pour stocker des paires de noms de réseau IP différentes et de noms d’interface.

VERIF HASH DOWNLOAD

Avec Powershell:

Remplacez filename.iso par le nom du fichier à vérifier (pensez à l’auto-complétion avec la touche Tab) et SHA256 par la fonction de hachage désirée.

PS C:>Get-FileHash .\filename.iso -Algorithm SHA256 | Format-List
PS C:>"HASH1" -eq "HASH2"

Si le retour est TRUE ⇒ OK

Avec CMD:

certutil -hashfile filename.iso SHA256
if "HASH1" == "HASH2" echo True

linux:

sha256sum ubuntu-23.04-desktop-amd64.iso
sha256sum fichier1.txt fichier2.txt

WAZUH

TCPDUMP

Installation

#tcpdump --version
#apt update
#apt install tcpdump
ou
#yum install tcpdump
ou
#dnf install tcpdump

COMMANDES

Liste et sélection de l’interface réseau

#tcpdump -D
#tcpdump -i eth0

Afficher des informations détaillées sur les paquets

Plusieurs options permettent de contrôler la quantité de détails affichés :

  • v : augmente la verbosité et affiche plus d’informations sur les paquets, comme le Time-to-Live (TTL) et le type de service.
  • vv : niveau de verbosité encore plus élevé, montrant par exemple les noms de domaine pour les adresses IP.
  • vvv : verbosité maximale pour une capture encore plus détaillée.

exemple:

#tcpdump -i eth0 -v

Limiter le nombre de paquets capturés

#tcpdump -i eth0 -c 10

Format brut de sortie des paquets

#tcpdump -i eth0 -X

Adresse IP source : capturer les paquets provenant d’une IP spécifique :

#tcpdump src 192.168.1.1

Adresse IP de destination : capturer les paquets allant vers une adresse spécifique :

#tcpdump dst 192.168.1.100

Ports : pour filtrer les paquets basés sur les ports (utile pour surveiller un service précis comme HTTP ou SSH) :

#tcpdump port 80

Protocoles : capturer uniquement le trafic TCP, UDP ou ICMP :

#tcpdump tcp

Ces filtres peuvent être combinés pour des captures encore plus précises. Par exemple, pour capturer uniquement les paquets TCP provenant de l’adresse 192.168.1.1 et destinés au port 80 :

#tcpdump src 192.168.1.1 and tcp port 80

Sauvegarder une capture dans un fichier

Ce fichier peut ensuite être lu par TCPDump ou par d’autres logiciels de capture et d’analyse comme Wireshark.

#tcpdump -i eth0 -w capture.pcap

Lecture d’un fichier de capture

#tcpdump -r capture.pcap

Ce filtre affiche uniquement les paquets du fichier de capture qui utilisent le port 80.

#tcpdump -r capture.pcap port 80

Les règles utiles

Écouter tout le trafic entre l'hôte 1 et l'hôte 2 ou 3 (les antislashs devant les parenthèses servent à ne pas faire interpréter ses dernières par un shell) :

#tcpdump host hote1 and \( hote2 or hote3 \)

Tous les paquets IP entre l'hôte 1 et le reste du réseau, sauf l'hôte 2 :

#tcpdump ip host hote1 and not hote2

Pour afficher les paquets SYN et le paquets FIN de chaque session TCP d'un hôte qui n'est pas sur notre réseau :

#tcpdump 'tcp[tcpflags] & (tcp-syn|tcp-fin) != 0 and not src and dst net ladresse_du_reseau_local'

Pour afficher tous les paquets HTTP sur IPv4 qui viennent ou arrivent sur le port 80 et qui ne contiennent que des données (pas de SYN, pas de FIN, pas de paquet ne contenant qu'un ACK):

#tcpdump 'tcp port 80 and (((ip[2:2] - ((ip[0]&0xf)<<2)) - ((tcp[12]&0xf0)>>2)) != 0)'

Capture de paquets spécifiques pour la sécurité

Détection de scans de port

Les scans de port sont souvent utilisés par des attaquants pour identifier les services actifs sur une machine. Avec TCPDump, vous pouvez capturer et surveiller les tentatives de connexion suspectes sur différents ports.

Pour capturer toutes les connexions TCP entrantes sur des ports communs (par exemple, de 1 à 1024), utilisez la commande suivante :

#tcpdump 'tcp[13] == 2' and portrange 1-1024

Ici, tcp[13] == 2 filtre les paquets SYN, qui sont souvent utilisés lors d’un scan de port. En surveillant ces paquets, vous pouvez identifier des activités de scan sur des ports critiques (SSH, HTTP, etc.).

Capture d’activités de connexion suspectes sur SSH

Le port 22 est fréquemment ciblé par des attaques de force brute visant à accéder aux services SSH. En utilisant TCPDump, vous pouvez capturer les tentatives de connexion à ce port pour identifier des activités suspectes.

#tcpdump -i eth0 port 22 and 'tcp[13] == 2'

Ce filtre capture uniquement les paquets SYN vers le port 22, ce qui indique une tentative de connexion initiale. En analysant la fréquence de ces paquets, vous pouvez identifier une tentative de brute force si vous observez un grand nombre de paquets SYN depuis la même adresse IP ou des adresses IP différentes dans un court laps de temps.

Surveillance des requêtes DNS pour détecter des anomalies

Le DNS est souvent utilisé dans des attaques, comme pour des exfiltrations de données ou des attaques DDoS basées sur des requêtes amplifiées. Vous pouvez surveiller le trafic DNS en filtrant le port 53 pour capturer toutes les requêtes et réponses DNS.

#tcpdump -i eth0 port 53

En analysant les paquets DNS, vous pouvez détecter des comportements suspects, comme un nombre inhabituel de requêtes de la part d’un hôte ou des requêtes vers des domaines inconnus. Cela peut indiquer une activité malveillante, comme l’utilisation de DNS pour des communications de commande et contrôle (C2).

Détection des attaques par déni de service (DoS)

Les attaques par DoS saturent les ressources réseau pour rendre un service indisponible. En capturant les paquets à grande fréquence sur un même port ou protocole, TCPDump peut aider à détecter des flux de trafic anormalement élevés.

Pour capturer uniquement les paquets ICMP, souvent utilisés dans les attaques de type ping flood, utilisez :

#tcpdump -i eth0 icmp

L’analyse des paquets ICMP vous permet de voir si un volume anormal de requêtes ping est envoyé à une machine, ce qui pourrait être le signe d’un DoS basé sur ICMP.

Surveillance des tentatives de connexion non autorisées

Pour surveiller toutes les tentatives de connexion à des ports non utilisés ou bloqués (ce qui peut signaler une exploration par un attaquant), vous pouvez capturer le trafic à destination de ports spécifiques en dehors des ports de service habituels.

Par exemple, pour capturer les connexions tentées sur des ports non standard (au-delà de 1024) :

#tcpdump 'tcp[13] == 2' and portrange 1025-65535

Ce type de capture peut révéler des tentatives d’accès à des services non autorisés ou des ports peu communs, souvent associés à des activités de reconnaissance.

Capture de paquets pour analyse des attaques basées sur le protocole UDP

Les attaques par amplification UDP, qui exploitent des services comme DNS ou NTP, utilisent des paquets UDP pour générer un volume important de trafic. Vous pouvez surveiller les paquets UDP pour détecter des pics inhabituels de trafic.

Par exemple, pour capturer le trafic UDP sur le port 123 (NTP) :

#tcpdump -i eth0 udp port 123

Cela permet d’observer si le serveur reçoit un nombre inhabituel de paquets NTP, ce qui pourrait indiquer une tentative d’amplification UDP par DoS.

TCPDump peut être insuffiisant pour détecter certaines attaques avancées, comme les attaques de type DNS tunneling ou les attaques de type SYN flood. C’est là que des outils de détection d’intrusion (IDS) ou de prévention d’intrusion (IPS) plus avancés peuvent être nécessaires, comme Suricata ou Snort.

Je n'arrive pas à capturer

Voici quelques indices pour vous aider à trouver le problème dans un cas général :

  • Vous n'écoutez pas la bonne interface réseau, bête, mais ça peut arriver, surtout si vous ne précisez pas à tcpdump l'interface réseau à écouter alors que vous en avez plusieurs ;
  • Vous êtes sur un switch, celui-ci n'est sensé diriger que votre trafic sur le réseau, donc si vous avez une machine qui agit comme une sonde (c'est à dire sans adresse IP, qui se contente d'écouter) il se peut que le switch n'ait pas de paquets pour vous. Certains switchs d'assez haut niveau ont des options de configurations afin de mettre certains ports en recopie de tout le trafic (afin justement de pouvoir l'analyser). Il existe certaines techniques pour faire passer un switch en hub (c'est à dire répéter les paquets sur tous les ports) mais comme ceci constitue une forme d'attaque, cela ne sera pas développé ici (de plus, les nouveaux switchs sont de moins en moins vulnérables à ces attaques) ;
  • Vous n'avez pas mis votre interface réseau en mode “promiscous”. Le mode “promiscous” est le mode où la carte peut lire tous les paquets du réseau, même ceux qui ne lui sont pas destiné (avec une adresse MAC différente de la sienne par exemple pour une carte Ethernet). Normalement, tcpdump passe automatiquement les interfaces en mode “promiscous”, si ce n'est pas le cas chez vous, c'est probablement qu'il n'a pas réussi, dans ce cas c'est que votre carte réseau ne supporte pas le mode “promiscous”.
  1. Je ne capture que mon trafic

Si c'est le cas, comme explicité plus haut, vous êtes surement dans une des deux configurations suivantes:

Vous n'êtes pas en mode “promiscous”, à moins que vous ayez expressément spécifié à tcpdump de ne pas s'y mettre, c'est sûrement un problème de carte réseau ;

Vous êtes sur un switch.

  1. Je ne capture rien à part de l'ARP

Il est fortement probable que vous soyez alors sur un switch que ne vous recopie pas tous les paquets sur votre interface. Vous recevez alors les paquets ARP de l'annonce de nouvelles machines ou autre (en fait, il suffit que l'adresse MAC soit celle de broadcast). Cela doit vous conforter dans l'idée d'être sur un switch si vous ne recevez que ces paquets.

  1. J'ai toujours quelques (voire un nombre important de) paquets qui sont “dropped by kernel”

Bon, en fait, je ne sais pas si c'est un problème connu ou non, mais quand il y a un trafic trop important de paquets, il arrive que la machine n'arrive pas à traiter assez rapidement les paquets et finisse par les “dropper” (rejeter). Vous pouvez faire gagner du temps CPU en ne faisant pas traiter les paquets en live et en écrivant dans un fichier, ou vous pouvez vous attaquer au corps du problème. Le problème vient de la taille de la socket de récéption qui en général est trop petite. Voici chez moi, la taille de la socket d'écoute par défaut et la taille maximale :

#sysctl net.core.rmem_default
net.core.rmem_default = 506880

#sysctl net.core.rmem_max
net.core.rmem_max = 506880

C'est parfois un peu trop petit pour un trafic important, pour régler ce problème, il suffit d'augmenter la taille de la socket, on peut faire comme il suit:

# sysctl net.core.rmem_max=1013760
net.core.rmem_max = 1013760
# sysctl net.core.rmem_default=1013760
net.core.rmem_default = 1013760

Ici, je me suis contenté de doubler ces valeurs. Vous pouvez bien entendu encore les augmenter. Mais sachez que cette méthode va allouer un buffer de la taille que vous fixerez pour chaque socket d'écoute. Donc sur une machine qui n'est pas dédiée à l'écoute, vous ne pourrez pas trop monter cette valeur (la machine risque d'avoir beaucoup de socket d'ouverte, donc un besoin d'allouer beaucoup de mémoire).

Il existe un patch non officiel pour la libpcap (sur laquelle se base tcpdump) pour pouvoir changer la taille de la socket d'écoute (ce qui reviendrait ici à modifier net.core.rmem_max pour l'augmenter et modifier la socket de la libpcap afin d'augmenter sa taille, mais ne pas augmenter cette taille pour tous les programmes).


NMAP / WIRESHARK

https://www.malekal.com/exemples-de-commandes-nmap/

1- Scanner un seul host :

#nmap 192.168.1.1
#nmap www.exemple.com

2- Scanner plusieurs adresse IP :

#nmap 192.168.16.6 192.168.16.2 192.168.16.8

3- scanner une plage d’adresses : Cette commande scanne les adresses de 192.168.10.0 à 192.168.10.255

#nmap 192.168.10,.0-255

4-Scanner une plage d’adresse en utilisant le Wildcard :

#nmap 192.168.1.*

5-Scanner un sous-réseau :

#nmap 192.168.1.0/24

6- Scan de ports ouverts :

#nmap -sS 192.168.1.3

7-Scanner des host dans un fichier :

#cat > /host.txt

Ecrivez les IP/Host :

192.168.12.0/24 192.168.50.1/24 10.1.2.3 www.exemple.com

#nmap -iL /host.txt

8-Exclure des adresses IP : Lorsque vous scannez un grand nombre d’hôtes vous pouvez exclure des adresses IP :

#nmap 192.168.1.0/24 --exclude 192.168.1.5
#nmap 192.168.1.0/24 --exclude 192.168.1.5,192.168.1.254 9

9-Détecter le système d’exploitation d’une machine :

#nmap -O 192.168.1.3
#nmap -v -O --osscan-guess 192.168.1.1

10-Voir si le host est protégé par un firewall :

#nmap -sA 192.168.1.254

11-Scanner un host ayant une adresse IPv6 :

#nmap -6 2607:f0d0:1002:51::4

11-Snanner un réseau et trouver les machine up :

#nmap -sP 192.168.1.0/24
Host 192.168.1.1 is up (0.00035s latency).
MAC Address: BC:AE:C5:C3:16:93 (Unknown)
Host 192.168.1.2 is up (0.0038s latency).
MAC Address: 74:44:01:40:57:FB (Unknown)
Host 192.168.1.5 is up.
Host nas03 (192.168.1.12) is up (0.0091s latency).
MAC Address: 00:11:32:11:15:FC (Synology Incorporated)
Nmap done: 256 IP addresses (4 hosts up) scanned in 2.80 second

12-Vérifier qu’une machine écoute bine sur un port :

#nmap -p 80 192.168.1.3
#nmap -p 80,443 192.168.1.1

Scanner tous les ports TCP :

#nmap -sT 192.168.1.1

Scanner tous les ports UDP :

#nmap -sU 192.168.1.1

Scanner un port TCP en particulier :

#nmap -p T:80 192.168.1.1

Scanner un port UDP :

#nmap -p U:53 192.168.1.1

Pour scanner un intervalle de ports :

#nmap -p T:1-1024 192.168.1.1

Pour combiner plusieurs scans de ports réseaux spécifiques :

#nmap -p U:53,9,113,T:21-25,80,443,8080 192.168.1.1

Effectuer une analyse rapide, pour cela, on utilise l’option -F de Nmap :

#nmap -F 192.168.1.1

Analyser les informations du système d’exploitation et Traceroute Nmap est aussi capable de détecter le système d’exploitation et la version en cours d’exécution sur l’hôte distant. Pour activer la détection du système d’exploitation et de la version, l’analyse des scripts et le traceroute, nous pouvons utiliser l’option -A :

#nmap -A X.X.X.X

Liste des options Nmap

Options Commandes
–exclude Exclure des hôtes du scan
-n Désactiver la résolution DNS
–open Afficher que les ports ouverts
-oN Enregistrer le résultat du scan dans un fichier au formate texte
-oX Enregistrer le résultat du scan dans un fichier au formate XML
-p Spécifier les ports réseaux à scanner
-Pn Désactiver la découverte d’hôte
-r Analyser les ports consécutivement
-sT Faire un scan de port TCP
-sU Faire un scan de port UDP
-sV Trouver les versions du service
-script Utilise un script interne à nmap pour scan de vulnérabilité, bruteforce, etc
-v ou -vv Mode bavard

Journalisation SYSMON

Télécharger Sysmon dans X:\Chemin_dest\

Avec PS aller dans le dossier:

#cd X:\Chemin_dest\

Renommer le process:

#Ren .\Sysmon64.exe New_name.exe

Installer Sysmon en changeant le nom du driver avec l'option -d:

#.\New_name.exe -i -d NameDrv -accepteula

Modifier la configuration avec un nouveau .xml:

#.\New_name.exe -c .\sysmonconfig.xml

Vérifier la configuration:

#.\New_name.exe -c

Chemin logs dans obs. d'évenements:

#"Journaux des applications et des services" > "Microsoft" > "Windows" > "Sysmon"

HARDENAD

PARAMETRAGE LDAPS SUR AD

Par défaut, Active Directory Domain Services établissent une liaison au port 389 pour les demandes LDAP non sécurisées et au port 636 pour les requêtes LDAP sur SSL (LDAPS). Toutefois, même si le port 636 est ouvert dans le pare-feu Windows et qu’il accepte les connexions TCP, toutes les demandes d’annuaire effectuées sur le port 636 sont rejetées si le contrôleur de domaine ne dispose pas d’un certificat de confiance pour établir une liaison au service lors du démarrage.

Vous pouvez tester la connectivité LDAPS à l’aide de l’outil LDP, qui est installé sur le contrôleur de domaine par défaut dans le cadre des fonctionnalités de gestion Active Directory.

  1. 1.Exécutez la commande suivante dans une invite de commandes d’administration sur le contrôleur de domaine.
#ldp.exe
  1. 2.Cliquez sur Connection > Connect.
  1. 3.Saisissez le nom de domaine complet du contrôleur de domaine et connectez-vous sur le port 636 via SSL.

  1. 4.Vérifiez la sortie. Si la connexion échoue avec le message « Error <0x51> Fail to connect », le contrôleur de domaine ne dispose pas de certificat LDAPS et les produits Dell ne peuvent pas utiliser l’intégration Active Directory avec ce contrôleur de domaine tant qu’un certificat n’est pas installé.

Pour résoudre ce problème, il est nécessaire d’installer un certificat valide sur tous les contrôleurs de domaine que le système utilise pour l’intégration AD. Microsoft a publié un article qui décrit les exigences relatives aux certificats LDAPS et le processus de demande d’un certificat auprès d’un serveur d’autorité de certification :

tuto microsoft

Sinon, étant donné que le certificat ne doit être approuvé que par le contrôleur de domaine lui-même, les clients qui ne disposent d’aucun serveur d’autorité de certification peuvent activer LDAPS en créant un certificat autosigné sur le contrôleur de domaine à l’aide des étapes ci-dessous.

Ouvrez une fenêtre d’administration PowerShell sur le contrôleur de domaine. Exécutez la commande suivante pour créer le certificat :

#New-SelfSignedCertificate -DnsName dc1.domain.local, dc1 -CertStoreLocation cert:\LocalMachine\My

(replacing "dc1.domain.local" and "dc1" with the FQDN and name of your domain controller)

Exécutez la commande suivante pour ouvrir le composant logiciel enfichable de gestion des certificats pour la machine locale.

#certlm.msc

Accédez à Personal > Certificates, recherchez le certificat qui vient d’être créé et copiez-le dans Trusted Root Certification Authorities > Certificates.

Attendez que LDAPS établisse une liaison au port 636 à l’aide du nouveau certificat. Cette opération se fait automatiquement et prend moins d’une minute.

Utilisez la commande suivante pour vérifier la connexion au contrôleur de domaine via SSL sur le port 636.

#ldp.exe

PFSENSE

DOC PFSENSE

Activation accès wan par shell:

#pfSsh.php playback enableallowallwan

kali.1743594702.txt.gz · Dernière modification : 2025/04/02 13:51 de huracan

DokuWiki Appliance - Powered by TurnKey Linux