TP sysres IMA5sc 2020/2021 G6 : Différence entre versions
(→Tests d'intrusion) |
|||
Ligne 62 : | Ligne 62 : | ||
[[Fichier:Groupe6-IMA2021-3.png|600px|thumb|center|clef trouvée]] | [[Fichier:Groupe6-IMA2021-3.png|600px|thumb|center|clef trouvée]] | ||
+ | |||
+ | * Intrusion sur un serveur d’application Web | ||
+ | |||
+ | L'objectif de cette intrusion est de réussir à trouver un mot de passe sur le site honey.plil.info | ||
+ | |||
+ | Pour cela, plusieurs techniques ont été utilisées notamment les méthodes d'injection ou d'exploration de système fichiers | ||
+ | |||
+ | La première étape consistait à utitliser la méthode d'injection en tapant sur http://honey.plil.info/ l'instruction | ||
+ | Identifiant : 'OR 1=1# | ||
+ | Mot de passe : 'OR 1=1# | ||
+ | |||
+ | Ce qui nous a permis d'obtenir le mot de passe admin de la page http://honey.plil.info/phpmyadmin | ||
+ | |||
+ | Une fois connectée à cette dernière nous avons cherché à trouver le chemin du fichier de mot de passe de php | ||
+ | |||
+ | .... ajouter le chemin... | ||
+ | |||
+ | Cela nous a permis de retrouver le fichier nous permettant de nous connecter à la base de données | ||
+ | |||
+ | .... | ||
+ | |||
+ | Dans ce fichier, nous avons retrouvé les identifiants | ||
+ | |||
+ | Nous nous sommes connectés en root | ||
+ | |||
+ | Et nous avons obtenus le mot de passe au niveau de l'arborescence test/ | ||
+ | |||
+ | Arrivé à cette étape nous nous sommes connectés en ssh | ||
+ | ssh rex@honey.plil.info | ||
+ | mot de passe : **** | ||
+ | |||
+ | On a installé l'utilitaire shadow | ||
+ | |||
+ | cat /etc/shadow | ||
+ | touch file | ||
+ | ... Add first line in fil | ||
+ | .... Uncrypt with john | ||
===Connexion de la VM au net=== | ===Connexion de la VM au net=== |
Version du 2 novembre 2020 à 17:49
Sommaire
Création de la machine virtuelle
Pour créer la machine virtuelle, une fois connecté sur le serveur capbreton, la commande utilisée est la suivante :
ssh capbreton.plil.info su - xen-create-image --hostname=morillon --dist=buster --ip=100.64.0.21 --netmask=255.255.255.240 --dir=/usr/local/xen/ --gateway=100.64.0.5 --force
Cependant, nous obtenions une erreur de type mkswap absent.
Pour répondre à ce problème, nous avons essayé de recompiler la dernière version des linux-utils, de les configurer et de les installer.
Cela a bien fonctionné mais n'a pas répondu au problème et finalement a fait bugué l'ensemble du serveur capbreton.
Pour récupérer des utilitaires fonctionnels, M. Redon a dû réinstaller les utilitaires depuis la commande apt en vérifiant les numéros de version au préalable.
La prochaine fois, nous ferons bien attention à rajouter un tiret pour se connecter en root (su -)...
Pour créer les disques virtuels, au préalable, commande pvcreate sur les disques physiques
lvcreate /dev/sde /dev/sdf storage pour créer le volume logique lvcreate -L10G -n JeandedieuTheauX storage
Pour créer deux partitions logiques.
Pour les monter dans les dossier /var et /home de la VM, nous les formattons (mkfs.ext4) Puis modifions le fichier de configuration de la VM --> ajout des lignes
'phy:/dev/storage/JeandedieuTheauX,xvdavY,w' X=[1 || 2]; Y = [3 || 4]
Au passage, nous modifions la ligne vif --> ajout à la fin du bridge :
bridge=IMA5sc
Après le boot de la VM :
xl create -c /etc/xen/morillon.cfg xl console morillon (si active)
Nous modifions le fichier '/etc/fstab pour monter automatiquement les dossiers /var et /home sur les partitions xvdav.
Tests d'intrusion
- Cassage de clef WEP d'un point d'accès WiFi
Dans cette partie, nous avons chercher à effectuer une intrusion sur un point d'accès WiFi
Nous avons pour cela installé le paquetage aircrack-ng qui est un programme de surveillance des réseaux sans fil
Il permet de ce fait d'effectuer un cassage des clés WEP ou WPA par exemple
Dans un premier temps nous allons utiliser le programme pour cracker un des points d'accès : cracotte06
Nous retrouvons le nom de son BSSID et son channel grâce à la commande suivante :
Nous effectuer la commande iwconfig pour retrouver le nom de notre interface wifi
Grâce aux deux commandes suivantes lancées dans deux terminaux différents aircrack-ng.
Comme on le voit sur les deux captures d'écran ci-dessous, nous retrouvons notre clé en Hexadecimal
- Intrusion sur un serveur d’application Web
L'objectif de cette intrusion est de réussir à trouver un mot de passe sur le site honey.plil.info
Pour cela, plusieurs techniques ont été utilisées notamment les méthodes d'injection ou d'exploration de système fichiers
La première étape consistait à utitliser la méthode d'injection en tapant sur http://honey.plil.info/ l'instruction
Identifiant : 'OR 1=1# Mot de passe : 'OR 1=1#
Ce qui nous a permis d'obtenir le mot de passe admin de la page http://honey.plil.info/phpmyadmin
Une fois connectée à cette dernière nous avons cherché à trouver le chemin du fichier de mot de passe de php
.... ajouter le chemin...
Cela nous a permis de retrouver le fichier nous permettant de nous connecter à la base de données
....
Dans ce fichier, nous avons retrouvé les identifiants
Nous nous sommes connectés en root
Et nous avons obtenus le mot de passe au niveau de l'arborescence test/
Arrivé à cette étape nous nous sommes connectés en ssh
ssh rex@honey.plil.info mot de passe : ****
On a installé l'utilitaire shadow
cat /etc/shadow touch file ... Add first line in fil .... Uncrypt with john
Connexion de la VM au net
Après plusieurs modifications par nos camarades et professeurs sur le serveur, nous avons eu la marche à suivre afin de configurer correctement la VM pour la connecter au web.
Pour cela, nous avons modifié le fichier /etc/network/interfaces pour avoir la configuration suivante :
Nous avons donc comme configuration l'adresse web 193.48.57.183 vue par l'extérieur, un routage sur l'adresse 100.64.0.23 sur l'OSPF qui correspond au réseau virtuel via le VLAN 333 et l'adresse routeur 100.64.0.2. Le mot clé src indique que les paquets à destination du 193.x.x.x est à destination de l'ip du VLAN.
Par la suite, une route doit être créée sur l'OSPF pour connecter correctement la VM sur le VLAN au web, une simple commande grâce au minicom :
enable conf t vlan 333 ip route 193.48.57.183 255.255.255.255 100.64.0.23
Modification host DNS et configuration de bind9
Modification sur gandi.net
Afin d'être identifiable sur le net, nous avons besoin d'un DNS sur notre VM.
Pour cela, nous créons un glue record sur gandi.net pour morillon avec l'adresse web externe : 193.48.57.183 en attribuant comme nameserver ns1.morillon.website
Ainsi, nous pouvons exporter le DNS sur notre serveur tel que le nameserver 1 est le notre : ns1.morillon.website et le 2, comme adressage de secours : ns6.gandi.net
Malheureusement, bien qu'on ait demandé à gandi d'exporter le nameserver le dimanche 1er novembre vers 12h30, celui-ci n'a pas pris en compte notre demande.
Elle fut redemandé le 2 novembre...
Configuration de bind9
Après installation
apt install bind9
nous avons configuré bind9 dans le dossier local de la VM
etc/bind9/
Le fichier db.morillon.website a été créé. Nous y avons ajouté les lignes suivantes :
BIND data file for local loopback interface; $TTL 604800 @ IN SOA ns1.morillon.website. postmaster.morillon.website. ( 3 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL ; @ IN NS ns1.morillon.website. @ IN NS ns6.gandi.net. ns1 IN A 193.48.57.183
Sécurisation du serveur
Pour sécuriser le serveur et accéder à notre site web apache2, ce dernier a besoin d'un certificat.
Pour l'obtenir, nous avons tout d'abord créer un CSR et une private key dans le dossier home du serveur.
openssl req -nodes -newkey rsa:2048 -sha:256 -keyout morillon.key -out morillon.csr
Et fourni les éléments d'identification de notre serveur (localisation, nom commun, etc.)
Encryption Clé USB
Pour sécuriser une clé avec un mot de passe, nous avons utilisé cryptsetup. On s'assure d'abord de partir sur une clé toute propre :
fdisk -l #sélection de la clé à formater fdisk /dev/sdb o #creation table MBR n #creation nouvelle partition w #écriture sur la clé
La commande crypsetup utilisée est la suivante :
cryptsetup open --type plain /dev/sdb1 encryptedDevice #s'en suit une demande de mdp
Elle monte ensuite dans le dossier /dev/mapper et il devient possible de la formater :
mkfs.ext4 /dev/mapper/encryptedDevice