« Atelier SysRes SE5 2023/2024 E16 » : différence entre les versions

De wiki-se.plil.fr
Aller à la navigation Aller à la recherche
Aucun résumé des modifications
 
(10 versions intermédiaires par le même utilisateur non affichées)
Ligne 1 : Ligne 1 :
==Configuration des machines de services==
===Configuration des LV ===
Tout d’abord monter les disques “manuellement” pour y placer nos répertoires. Tout d’abord il faut créer deux répertoires :
<syntaxhighlight lang="bash">
root@exegol:~# mkdir /mnt/xvda3
root@exegol:~# mkdir /mnt/xvda4
</syntaxhighlight >
Nous allons ensuite devoir formater et créer les systèmes de fichiers, que nous allons par la suite associer aux répertoires créés au dessus :
<syntaxhighlight lang="bash">
root@exegol:~# mkfs /dev/xvda3
root@exegol:~# mkfs /dev/xvda4
</syntaxhighlight >
Nous allons ensuite créer les points de montage des partitions (la commande ici monte le système de fichier /dev/xvda3 sur le répertoire /mtn/xvda3):
<syntaxhighlight lang="bash">
root@exegol:~# mount /dev/xvda3 /mnt/xvda3
root@exegol:~# mount /dev/xvda4 /mnt/xvda4
</syntaxhighlight >
Comme le répertoire home est déjà vide, nous pouvons uniquement déplacer le répertoire /var sur le disque xvda4, mais par précaution nous le faisons aussi pour /home dans xvda3 :
<syntaxhighlight lang="bash">
root@exegol:~# mv /var/* /mnt/xvda4
</syntaxhighlight >
Nous faisons ensuite un lsblk pour lister les LVM sur notre serveur:
<syntaxhighlight lang="bash">
root@exegol:~# lsblk
NAME  MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
xvda1 202:1    0  512M  0 disk [SWAP]
xvda2 202:2    0  10G  0 disk /
xvda3 202:3    0  10G  0 disk /mnt/xvda3
xvda4 202:4    0  10G  0 disk /mnt/xvda4
</syntaxhighlight >
Il faut ensuite modifier le fichier /etc/fstab pour monter correctement nos disques :
Nous allons rajouter les lignes concernant `/dev/xvda3` et `/dev/xvda4`
<syntaxhighlight lang="bash">
# mettre repertoire /home de la VM jiruus dans la partition LVM jiruus-home
/dev/xvda3 /home ext4 defaults 0 2
# mettre  repertoire /var de la VM jiruus dans la partition LVM jiruus-var
/dev/xvda4 /var ext4 defaults 0 2
</syntaxhighlight >
Puis, nous allons démonter les 2 volumes/répertoires que nous avons créés :
<syntaxhighlight lang="bash">
root@exegol:~# umount /mnt/xvda3
root@exegol:~# umount /mnt/xvda4
</syntaxhighlight >
Si nous faisons un lsblk, nous voyons bien que c’est démonté
<syntaxhighlight lang="bash">
root@exegol:/mnt# lsblk
NAME  MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
xvda1 202:1    0  512M  0 disk [SWAP]
xvda2 202:2    0  10G  0 disk /
xvda3 202:3    0  10G  0 disk
xvda4 202:4    0  10G  0 disk
</syntaxhighlight >
Puis, nous allons enfin, avec la commande suivante, monter tous les systèmes de fichiers qui sont spécifiés dans `/etc/fstab`
<code>
root@exegol:~# mount -a
</code>
Pour vérifier notre action, encore un lsblk :
<syntaxhighlight lang="bash">
root@exegol:~# lsblk
NAME  MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
xvda1 202:1    0  512M  0 disk [SWAP]
xvda2 202:2    0  10G  0 disk /
xvda3 202:3    0  10G  0 disk /home
xvda4 202:4    0  10G  0 disk /var
</syntaxhighlight >
Et la on voit bien que notre xvda3 est monté sur /home et xvda4 sur /var


== Effraction Wifi ==
== Effraction Wifi ==
Ligne 14 : Ligne 114 :
Clé WEP : 55:55:55:55:5A:BC:11:CB:A4:44:44:44:44
Clé WEP : 55:55:55:55:5A:BC:11:CB:A4:44:44:44:44


[[Fichier:Aircrack cracotte10.png]]
[[Fichier:Aircrack cracotte10.png|700px]]
==== Cassage de mot de passe WPA-PSK par force brute ====
==== Cassage de mot de passe WPA-PSK par force brute ====
Wifi : cracotte10
Wifi : cracotte10
Ligne 22 : Ligne 122 :
Interface réseau : wlan1mon
Interface réseau : wlan1mon


[[Fichier:Fichier:Wpa_psk_force_brute.png]]
[[Fichier:Wpa_psk_force_brute.png|600px]]
 
 
 
= Services Internet =
 
== Filtrage des services ==
Sur la machine mandataire, nous allons vérifier dans le fichier de log /var/log/auth.log si il y a des tentatives d’authentification par ssh. Vérification simplifiée par la commande suivante qui va nous donner le nombre d’authentifications qui ont fail sur environ une journée (contenu du fihcier de log): <br>
<syntaxhighlight lang="bash">
root@cruella:/var/log# cat auth.log | grep Failed | wc -l
763
</syntaxhighlight>
 
Par exemple nous avons :<br>
<syntaxhighlight lang="bash">
Jan 15 09:34:35 cruella sshd[15112]: Failed password for invalid user git from 64.227.185.241 port 33352 ssh2
Jan 15 09:41:21 cruella sshd[15122]: Failed password for invalid user guest from 64.227.185.241 port 52478 ssh2
Jan 15 09:48:07 cruella sshd[15127]: Failed password for invalid user www from 64.227.185.241 port 37134 ssh2
Jan 15 09:53:06 cruella sshd[15134]: Failed password for root from 193.105.134.95 port 54196 ssh2
Jan 15 09:55:01 cruella sshd[15136]: Failed password for invalid user mysql from 64.227.185.241 port 42730 ssh2
Jan 15 10:01:46 cruella sshd[15141]: Failed password for invalid user debian from 64.227.185.241 port 42378 ssh2
Jan 15 10:02:18 cruella sshd[15145]: Failed password for invalid user Admin from 14.33.68.177 port 59271 ssh2
Jan 15 10:02:21 cruella sshd[15145]: Failed password for invalid user Admin from 14.33.68.177 port 59271 ssh2
Jan 15 10:02:25 cruella sshd[15145]: Failed password for invalid user Admin from 14.33.68.177 port 59271 ssh2
Jan 15 10:02:28 cruella sshd[15145]: Failed password for invalid user Admin from 14.33.68.177 port 59271 ssh2
Jan 15 10:02:33 cruella sshd[15145]: Failed password for invalid user Admin from 14.33.68.177 port 59271 ssh2
Jan 15 10:08:31 cruella sshd[15152]: Failed password for invalid user testuser from 64.227.185.241 port 52646 ssh2
Jan 15 10:15:20 cruella sshd[15157]: Failed password for invalid user pi from 64.227.185.241 port 56514 ssh2
Jan 15 10:22:05 cruella sshd[15170]: Failed password for invalid user hadoop from 64.227.185.241 port 49388 ssh2
Jan 15 10:28:51 cruella sshd[15372]: Failed password for invalid user steam from 64.227.185.241 port 39384 ssh2
Jan 15 10:35:40 cruella sshd[15502]: Failed password for invalid user test1 from 64.227.185.241 port 36486 ssh2
Jan 15 10:42:26 cruella sshd[15551]: Failed password for invalid user es from 64.227.185.241 port 39242 ssh2
Jan 15 10:49:16 cruella sshd[15559]: Failed password for invalid user deploy from 64.227.185.241 port 36742 ssh2
Jan 15 10:56:07 cruella sshd[15568]: Failed password for invalid user minecraft from 64.227.185.241 port 49322 ssh2
Jan 15 11:02:53 cruella sshd[15573]: Failed password for invalid user ftp from 64.227.185.241 port 49876 ssh2
Jan 15 11:09:39 cruella sshd[15580]: Failed password for invalid user test2 from 64.227.185.241 port 38594 ssh2
Jan 15 11:10:55 cruella sshd[15587]: Failed password for root from 185.246.128.133 port 9349 ssh2
Jan 15 11:16:23 cruella sshd[15605]: Failed password for invalid user student from 64.227.185.241 port 36814 ssh2
Jan 15 14:25:12 cruella sshd[16423]: Failed password for invalid user admin from 103.145.4.190 port 56230 ssh2
</syntaxhighlight>
 
On remarque bien qu’on a des attaques, donc on installe fail2ban sur cruella (notre serveur mandataire). <br>
Nous allons modifier le fichier `/etc/fail2ban/jail.d/defaults-debian.conf` comme ce qui suit :<br>
<syntaxhighlight lang="bash">
[sshd]
enabled = true
port    = ssh
filter  = sshd
logpath  = /var/log/auth.log
maxretry = 10
actionban = ufw
</syntaxhighlight>
 
Nous pouvons vérifier si les prisons sont bien actives :<br>
<syntaxhighlight lang="bash">
root@cruella:/etc/fail2ban# fail2ban-client status
Status
|- Number of jail: 1
`- Jail list: sshd
</syntaxhighlight>
 
Nous avons alors fait un test avec un camarade qui à essayé de se connecter plus de 3 fois (la conf avait été changée) : <br>
<syntaxhighlight lang="bash">
root@cruella:~# cat /var/log/auth.log | grep Failed | tail
Jan 15 14:25:12 cruella sshd[16423]: Failed password for invalid user admin from 103.145.4.190 port 56230 ssh2
Jan 15 14:51:33 cruella sshd[17089]: Failed password for root from 184.72.82.0 port 56274 ssh2
Jan 15 14:51:37 cruella sshd[17091]: Failed password for root from 184.72.82.0 port 56278 ssh2
Jan 15 14:51:40 cruella sshd[17094]: Failed password for root from 184.72.82.0 port 55786 ssh2
Jan 15 14:51:44 cruella sshd[17097]: Failed password for root from 184.72.82.0 port 55788 ssh2
Jan 15 14:51:50 cruella sshd[17099]: Failed password for root from 184.72.82.0 port 55804 ssh2
Jan 15 15:50:48 cruella sshd[17565]: Failed password for root from 185.246.128.133 port 53811 ssh2
Jan 15 15:59:51 cruella sshd[17641]: Failed password for root from 2a01:c916:2047:c800:216:3eff:fe82:8a5c port 45868 ssh2
Jan 15 16:00:12 cruella sshd[17652]: Failed password for invalid user gaby from 2a01:c916:2047:c800:216:3eff:fe82:8a5c port 45870 ssh2
Jan 15 16:00:38 cruella sshd[17652]: Failed password for invalid user gaby from 2a01:c916:2047:c800:216:3eff:fe82:8a5c port 45870 ssh2
</syntaxhighlight>
<syntaxhighlight lang="bash">
root@cruella:~# fail2ban-client status sshd
Status for the jail: sshd
|- Filter
|  |- Currently failed: 0
|  |- Total failed: 0
|  `- File list: /var/log/auth.log
`- Actions
  |- Currently banned: 1
  |- Total banned: 1
  `- Banned IP list: 2a01:c916:2047:c800:216:3eff:fe82:8a5c
</syntaxhighlight>
On remarque bien qu’un adresse IP à été bannie, celle qui à tentée de se connecter plusieurs fois sans succès.<br>

Version actuelle datée du 16 janvier 2024 à 17:50

Configuration des machines de services

Configuration des LV

Tout d’abord monter les disques “manuellement” pour y placer nos répertoires. Tout d’abord il faut créer deux répertoires :

root@exegol:~# mkdir /mnt/xvda3 
root@exegol:~# mkdir /mnt/xvda4


Nous allons ensuite devoir formater et créer les systèmes de fichiers, que nous allons par la suite associer aux répertoires créés au dessus :

root@exegol:~# mkfs /dev/xvda3

root@exegol:~# mkfs /dev/xvda4


Nous allons ensuite créer les points de montage des partitions (la commande ici monte le système de fichier /dev/xvda3 sur le répertoire /mtn/xvda3):

root@exegol:~# mount /dev/xvda3 /mnt/xvda3
root@exegol:~# mount /dev/xvda4 /mnt/xvda4

Comme le répertoire home est déjà vide, nous pouvons uniquement déplacer le répertoire /var sur le disque xvda4, mais par précaution nous le faisons aussi pour /home dans xvda3 :

root@exegol:~# mv /var/* /mnt/xvda4


Nous faisons ensuite un lsblk pour lister les LVM sur notre serveur:

root@exegol:~# lsblk
NAME  MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
xvda1 202:1    0  512M  0 disk [SWAP]
xvda2 202:2    0   10G  0 disk /
xvda3 202:3    0   10G  0 disk /mnt/xvda3
xvda4 202:4    0   10G  0 disk /mnt/xvda4

Il faut ensuite modifier le fichier /etc/fstab pour monter correctement nos disques :

Nous allons rajouter les lignes concernant `/dev/xvda3` et `/dev/xvda4`

# mettre repertoire /home de la VM jiruus dans la partition LVM jiruus-home
/dev/xvda3 /home ext4 defaults 0 2
# mettre  repertoire /var de la VM jiruus dans la partition LVM jiruus-var
/dev/xvda4 /var ext4 defaults 0 2

Puis, nous allons démonter les 2 volumes/répertoires que nous avons créés :

root@exegol:~# umount /mnt/xvda3
root@exegol:~# umount /mnt/xvda4

Si nous faisons un lsblk, nous voyons bien que c’est démonté

root@exegol:/mnt# lsblk
NAME  MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
xvda1 202:1    0  512M  0 disk [SWAP]
xvda2 202:2    0   10G  0 disk /
xvda3 202:3    0   10G  0 disk 
xvda4 202:4    0   10G  0 disk

Puis, nous allons enfin, avec la commande suivante, monter tous les systèmes de fichiers qui sont spécifiés dans `/etc/fstab`

root@exegol:~# mount -a

Pour vérifier notre action, encore un lsblk :

root@exegol:~# lsblk
NAME  MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
xvda1 202:1    0  512M  0 disk [SWAP]
xvda2 202:2    0   10G  0 disk /
xvda3 202:3    0   10G  0 disk /home
xvda4 202:4    0   10G  0 disk /var

Et la on voit bien que notre xvda3 est monté sur /home et xvda4 sur /var




Effraction Wifi

Avancée

Cassage de clef WEP d'un point d'accès WiFi

Wifi : cracotte10

Machine : zabeth02

Interface réseau : wlan1mon

Clé WEP : 55:55:55:55:5A:BC:11:CB:A4:44:44:44:44

Aircrack cracotte10.png

Cassage de mot de passe WPA-PSK par force brute

Wifi : cracotte10

Machine : zabeth02

Interface réseau : wlan1mon

Wpa psk force brute.png


Services Internet

Filtrage des services

Sur la machine mandataire, nous allons vérifier dans le fichier de log /var/log/auth.log si il y a des tentatives d’authentification par ssh. Vérification simplifiée par la commande suivante qui va nous donner le nombre d’authentifications qui ont fail sur environ une journée (contenu du fihcier de log):

root@cruella:/var/log# cat auth.log | grep Failed | wc -l
763

Par exemple nous avons :

Jan 15 09:34:35 cruella sshd[15112]: Failed password for invalid user git from 64.227.185.241 port 33352 ssh2
Jan 15 09:41:21 cruella sshd[15122]: Failed password for invalid user guest from 64.227.185.241 port 52478 ssh2
Jan 15 09:48:07 cruella sshd[15127]: Failed password for invalid user www from 64.227.185.241 port 37134 ssh2
Jan 15 09:53:06 cruella sshd[15134]: Failed password for root from 193.105.134.95 port 54196 ssh2
Jan 15 09:55:01 cruella sshd[15136]: Failed password for invalid user mysql from 64.227.185.241 port 42730 ssh2
Jan 15 10:01:46 cruella sshd[15141]: Failed password for invalid user debian from 64.227.185.241 port 42378 ssh2
Jan 15 10:02:18 cruella sshd[15145]: Failed password for invalid user Admin from 14.33.68.177 port 59271 ssh2
Jan 15 10:02:21 cruella sshd[15145]: Failed password for invalid user Admin from 14.33.68.177 port 59271 ssh2
Jan 15 10:02:25 cruella sshd[15145]: Failed password for invalid user Admin from 14.33.68.177 port 59271 ssh2
Jan 15 10:02:28 cruella sshd[15145]: Failed password for invalid user Admin from 14.33.68.177 port 59271 ssh2
Jan 15 10:02:33 cruella sshd[15145]: Failed password for invalid user Admin from 14.33.68.177 port 59271 ssh2
Jan 15 10:08:31 cruella sshd[15152]: Failed password for invalid user testuser from 64.227.185.241 port 52646 ssh2
Jan 15 10:15:20 cruella sshd[15157]: Failed password for invalid user pi from 64.227.185.241 port 56514 ssh2
Jan 15 10:22:05 cruella sshd[15170]: Failed password for invalid user hadoop from 64.227.185.241 port 49388 ssh2
Jan 15 10:28:51 cruella sshd[15372]: Failed password for invalid user steam from 64.227.185.241 port 39384 ssh2
Jan 15 10:35:40 cruella sshd[15502]: Failed password for invalid user test1 from 64.227.185.241 port 36486 ssh2
Jan 15 10:42:26 cruella sshd[15551]: Failed password for invalid user es from 64.227.185.241 port 39242 ssh2
Jan 15 10:49:16 cruella sshd[15559]: Failed password for invalid user deploy from 64.227.185.241 port 36742 ssh2
Jan 15 10:56:07 cruella sshd[15568]: Failed password for invalid user minecraft from 64.227.185.241 port 49322 ssh2
Jan 15 11:02:53 cruella sshd[15573]: Failed password for invalid user ftp from 64.227.185.241 port 49876 ssh2
Jan 15 11:09:39 cruella sshd[15580]: Failed password for invalid user test2 from 64.227.185.241 port 38594 ssh2
Jan 15 11:10:55 cruella sshd[15587]: Failed password for root from 185.246.128.133 port 9349 ssh2
Jan 15 11:16:23 cruella sshd[15605]: Failed password for invalid user student from 64.227.185.241 port 36814 ssh2
Jan 15 14:25:12 cruella sshd[16423]: Failed password for invalid user admin from 103.145.4.190 port 56230 ssh2

On remarque bien qu’on a des attaques, donc on installe fail2ban sur cruella (notre serveur mandataire).
Nous allons modifier le fichier `/etc/fail2ban/jail.d/defaults-debian.conf` comme ce qui suit :

[sshd]
enabled = true
port     = ssh
filter   = sshd
logpath  = /var/log/auth.log
maxretry = 10
actionban = ufw

Nous pouvons vérifier si les prisons sont bien actives :

root@cruella:/etc/fail2ban# fail2ban-client status
Status
|- Number of jail:	1
`- Jail list:	sshd

Nous avons alors fait un test avec un camarade qui à essayé de se connecter plus de 3 fois (la conf avait été changée) :

root@cruella:~# cat /var/log/auth.log | grep Failed | tail
Jan 15 14:25:12 cruella sshd[16423]: Failed password for invalid user admin from 103.145.4.190 port 56230 ssh2
Jan 15 14:51:33 cruella sshd[17089]: Failed password for root from 184.72.82.0 port 56274 ssh2
Jan 15 14:51:37 cruella sshd[17091]: Failed password for root from 184.72.82.0 port 56278 ssh2
Jan 15 14:51:40 cruella sshd[17094]: Failed password for root from 184.72.82.0 port 55786 ssh2
Jan 15 14:51:44 cruella sshd[17097]: Failed password for root from 184.72.82.0 port 55788 ssh2
Jan 15 14:51:50 cruella sshd[17099]: Failed password for root from 184.72.82.0 port 55804 ssh2
Jan 15 15:50:48 cruella sshd[17565]: Failed password for root from 185.246.128.133 port 53811 ssh2
Jan 15 15:59:51 cruella sshd[17641]: Failed password for root from 2a01:c916:2047:c800:216:3eff:fe82:8a5c port 45868 ssh2
Jan 15 16:00:12 cruella sshd[17652]: Failed password for invalid user gaby from 2a01:c916:2047:c800:216:3eff:fe82:8a5c port 45870 ssh2
Jan 15 16:00:38 cruella sshd[17652]: Failed password for invalid user gaby from 2a01:c916:2047:c800:216:3eff:fe82:8a5c port 45870 ssh2
root@cruella:~# fail2ban-client status sshd
Status for the jail: sshd
|- Filter
|  |- Currently failed:	0
|  |- Total failed:	0
|  `- File list:	/var/log/auth.log
`- Actions
   |- Currently banned:	1
   |- Total banned:	1
   `- Banned IP list:	2a01:c916:2047:c800:216:3eff:fe82:8a5c

On remarque bien qu’un adresse IP à été bannie, celle qui à tentée de se connecter plusieurs fois sans succès.