initial commit

This commit is contained in:
Guillaume-Sanchez
2026-05-26 13:56:03 +02:00
parent 4c720637a1
commit ff4bb12d22
539 changed files with 12415 additions and 0 deletions
+22
View File
@@ -0,0 +1,22 @@
# RSX112 28 04 2025 Sécurité des Réseaux
## Systèmes d'exploitation et Droits
ASL
Capacité -> Modèle utilisateur
## AGDLP
Les groupes de sécurité.
Méthode utilisé par Microsoft.
coté utilisateur et coté fichiers géré de manière indépendante.
étendu des groupe
- GL
- GG
- GU
Binary file not shown.
Binary file not shown.
+14
View File
@@ -0,0 +1,14 @@
#!/bin/bash
# Liste des utilisateurs à créer
tab_user=('yannick' 'eulalie' 'jean' 'justine' 'pierre' 'sandrine' 'cecile' 'michel')
# Boucle pour créer chaque utilisateur
for user in "${tab_user[@]}"
do
# Création de l'utilisateur
useradd -m -s /bin/bash $user
echo -e "$user\n$user" | passwd $user
echo "Utilisateur $user créé avec succès avec le mot de passe par défaut."
done
Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

+27
View File
@@ -0,0 +1,27 @@
# Exercice2
## 3
root@ubuntu-RSX112:~# groupadd visiteurs -g 1404
## 4
root@ubuntu-RSX112:~# useradd -u 140401 -g visiteurs -m -s /bin/bash invite
## 5
root@ubuntu-RSX112:~# cat /etc/passwd | grep invite
invite:x:140401:1404::/home/invite:/bin/bash
root@ubuntu-RSX112:~# cat /etc/group | grep visiteurs
visiteurs:x:1404:
## 6
root@ubuntu-RSX112:~# chage -M 90 -W 14 -I 7 invite
## 7
root@ubuntu-RSX112:~# cat /etc/shadow | grep invite
invite:!:20206:0:90:14:7::
## 8
root@ubuntu-RSX112:~# echo -e "welc0me\nwelc0me" | passwd "invite"
## 9
useradd -u 140402 -g visiteurs -m -s /bin/bash intrus
chage -M 90 -W 14 -I 7 invite
echo -e "1234\n1234" | passwd intrus
## 10
root@ubuntu-RSX112:~# tail -n 2 /etc/shadow
invite:$6$P87urVNAHId2z7fG$GHn/.vL4nI6nsgq.uaxmGqSgTn4n39bD/0HsQwFICgKp.4dhKOiu5scPs4tdkN2Avya09zPBI5qSxfF2Fu.eC0:20206:0:90:14:7::
intrus:$6$F8Zh5OOiIrskScOO$WdDFLGZakeBdyv4DM0RCL5zvPkYpxllgi9IcucoVXb6z5ujYW.KtfW4ZsZrUkjFssJqta5ZG2qvpRmfduL6tJ/:20206:0:99999:7:::
Le nombre de jours avant expiation du mdp est passé à 99999 pour l'utilisateur intrus
Binary file not shown.

After

Width:  |  Height:  |  Size: 78 KiB

+26
View File
@@ -0,0 +1,26 @@
#!/bin/bash
echo "Exercice 2"
echo "Créer un groupe visiteurs avec le GID 1404"
groupadd visiteurs -g 1404
echo "Créer un utilisateur invite avec le UID 140401 et le GID 1404"
useradd -u 140401 -g visiteurs -m -s /bin/bash invite
echo "affichez les lignes correspondantes des fichiers utilisateurs et groupes"
cat /etc/passwd | grep invite
cat /etc/group | grep visiteurs
echo "modification des droits de changement de mdp de l'utilisateur invite"
chage -M 90 -W 14 -I 7 invite
echo "affichez la lignes correspondant à l'utilisateur invite dans le fichier shadow"
cat /etc/shadow | grep invite
echo "modification du mot de passe de l'utilisateur invite"
echo -e "welc0me\nwelc0me" | passwd "invite"
echo "créer un utilisateur intrus avec le UID 140402 et le GID 1404"
useradd -u 140402 -g visiteurs -m -s /bin/bash intrus
echo "modification des droits de changement de mdp de l'utilisateur intrus"
chage -M 90 -W 14 -I 7 invite
echo "modification du mot de passe de l'utilisateur intrus"
echo -e "1234\n1234" | passwd intrus
echo "afficher les 2 dernière lignes du fichier shadow"
tail -n 2 /etc/shadow
Binary file not shown.

After

Width:  |  Height:  |  Size: 53 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

+7
View File
@@ -0,0 +1,7 @@
#!/bin/bash
echo "Exercice 3"
su - invite
echo "date" >> utcd.sh
chmod u+x utcd.sh
ls -l utcd.sh
./utcd.sh
Binary file not shown.

After

Width:  |  Height:  |  Size: 86 KiB

+129
View File
@@ -0,0 +1,129 @@
#!/bin/bash
tab_group=("technique" "formation" "commercial" "administratif")
tab_user=("philippe" "harouna" "emmanuelle" "nicolas" "laurent" "franck" "patrick" "ali" "eric")
function nettoyage {
for user in "${tab_user[@]}"
do
if id "$user" &>/dev/null; then
userdel -r "$user"
fi
done
for group in "${tab_group[@]}"
do
if getent group "$group" &>/dev/null; then
groupdel "$group"
rm -Rf /$group
fi
done
}
function create_user {
echo
echo "Création des utilisateurs"
echo
for user in "${tab_user[@]}"
do
useradd "$user" -m -N -p $user
chage -M 90 -m 5 $user
echo "echo 'Bienvenue, $(whoami), sur le système Ubuntu-RSX112 !'" >> "/home/$user/.bashrc"
echo "Utilisateur $user créé avec succès avec le mot de passe par défaut."
done
}
function create_group {
echo
echo "Création des groupes"
echo
for group in "${tab_group[@]}"
do
groupadd $group
mkdir /$group
chgrp $group /$group
chmod 770 /$group
echo "Groupe $group créé avec succès."
done
}
function Attribution_user_group {
echo
echo "Attribution des utilisateurs à leur groupe principale et secondaire"
echo
for user in "${tab_user[@]}"
do
if [[ $user == "philippe" ]]; then
usermod -g technique $user
echo "L'utilisateur $user a été ajouté au groupe principal technique."
elif [[ $user == "harouna" ]]; then
usermod -g technique $user
echo "L'utilisateur $user a été ajouté au groupe principal technique."
elif [[ $user == "emmanuelle" ]]; then
usermod -g technique $user
usermod -aG formation $user
echo "L'utilisateur $user a été ajouté au groupe principal technique et secondaire formation."
elif [[ $user == "nicolas" ]]; then
usermod -g formation $user
usermod -aG technique $user
echo "L'utilisateur $user a été ajouté au groupe principal formation et secondaire technique."
elif [[ $user == "laurent" ]]; then
usermod -g technique $user
usermod -aG formation $user
usermod -aG commercial $user
echo "L'utilisateur $user a été ajouté au groupe principal technique et secondaire formation, commercial."
elif [[ $user == "franck" ]]; then
usermod -g formation $user
usermod -aG technique $user
usermod -aG administratif $user
echo "L'utilisateur $user a été ajouté au groupe principal formation et secondaire technique, administratif."
elif [[ $user == "patrick" ]]; then
usermod -g administratif $user
echo "L'utilisateur $user a été ajouté au groupe principal administratif."
elif [[ $user == "ali" ]]; then
usermod -g commercial $user
echo "L'utilisateur $user a été ajouté au groupe principal commercial."
elif [[ $user == "eric" ]]; then
usermod -g commercial $user
usermod -aG administratif $user
echo "L'utilisateur $user a été ajouté au groupe principal commercial et secondaire administratif."
else
echo "Aucun groupe n'a été attribué à l'utilisateur $user."
fi
done
}
nettoyage
echo "===================================================="
echo "Exercice 4 - Gestion des utilisateurs et des groupes"
echo "===================================================="
create_user
create_group
Attribution_user_group
echo
echo "Mise en place du mot de passe de philippe"
echo
echo -e "My-P@$$w0rd\nMy-P@$$w0rd" | passwd philippe
echo
echo "Ajout de Ali dans le groupe de techniciens"
echo
usermod -aG technique ali
echo
Binary file not shown.

After

Width:  |  Height:  |  Size: 8.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 79 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

+45
View File
@@ -0,0 +1,45 @@
# Exercice 5
## Prérequis
### 1
c. Un UID généralement supérieur ou égal à 1000
### 2
Le fichier peut être lu, modifié et executé
L'utilisateur peut lire le contenu du fichier (r).
L'utilisateur peut ajouter, écrire dans le fichier (w).
L'utilisateur peut executer le fichier (x).
### 3
L'utilisateur peut lister son contenu (r).
L'utilisateur peut ajouter, supprimer ou renommer des fichiers dans ce répertoire (w).
L'utilisateur peut entrer dans le répertoire et accéder à son contenu (x).
### 4
754
### 5
rw-r-----
### 6
SUID
## Partie 1
### 1
### 2
### 3
## Partie 2
+6
View File
@@ -0,0 +1,6 @@
#!/bin/bash
echo "===================================================="
echo "Exercice 5"
echo "===================================================="
Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 86 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 109 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

+48
View File
@@ -0,0 +1,48 @@
# TP_2_Guillaume_Sanchez
FHWWH PHWKRGH GDQDOBVH GH IUHTXHQFHV PRQWUH LD YXOQHUDELOLWH GXQ
FKLIIUHPHQW D VXEVWLWXWLRQ VLPSOH ERQQH FKDQFH SRXU OH GHFKLIIUHU
## Notez vos premières impressions
- Repérez si certaines lettres semblent revenir très souvent
Le W, H, L, Q, F, K
- Repérez sil y a des répétitions de groupes de lettres ou des motifs
particuliers
RQ 3 fois
WL 2 fois
KL 2fois
## Parcourez le texte chiffré et comptez le nombre de fois où chaque lettre apparaît
A 0
B 1
C 0
D 6
E 3
F 6
G 5
H 20 | 20 / 115 = 0,1739
I 5
J 0
K 4
L 8
M 0
N 0
O 5
P 4
Q 10
R 5
S 2
T 1
U 7
V 5
W 9
X 6
Y 1
Z 0
115 caractères
20 / 115 = 0,1739
+78
View File
@@ -0,0 +1,78 @@
# RSX 112 20-05-2025
## La Cryptographie
Identifié la personne, envoyer un message de manière intègre.
Primitive chyptographique, qui va chrypter, chiffrer, etc un msg
Primitive chyptographique : Procécus de chiffrement et de chiffrement
## TP 5 :
mdp 1 -> 1 sec
mdp 2 -> 1 sec
mdp 3 -> 1 sec
mdp 4 -> 10 sec
mdp 5 -> 3 min
mdp 6 -> plusieurs heures potentiel.
┌──(nk㉿nk-kali)-[~/Zip-Files]
└─$ fcrackzip -vul 1 file-A-1.zip
found file 'user_credentials_1.txt', (size cp/uc 271/ 442, flags 9, chk 3c3d)
found file 'user_credentials_2.txt', (size cp/uc 270/ 442, flags 9, chk 3c3d)
found file 'user_credentials_3.txt', (size cp/uc 272/ 445, flags 9, chk 3c3d)
PASSWORD FOUND!!!!: pw == B
┌──(nk㉿nk-kali)-[~/Zip-Files]
└─$ fcrackzip -vul 2 file-A-2.zip
found file 'user_credentials_4.txt', (size cp/uc 267/ 437, flags 9, chk 3c3d)
found file 'user_credentials_5.txt', (size cp/uc 259/ 433, flags 9, chk 3c3d)
found file 'user_credentials_6.txt', (size cp/uc 271/ 442, flags 9, chk 3c3d)
PASSWORD FOUND!!!!: pw == R2
┌──(nk㉿nk-kali)-[~/Zip-Files]
└─$ fcrackzip -vul 3 file-A-3.zip
found file 'user_credentials_7.txt', (size cp/uc 271/ 443, flags 9, chk 3c3d)
found file 'user_credentials_8.txt', (size cp/uc 266/ 435, flags 9, chk 3c3d)
found file 'user_credentials_9.txt', (size cp/uc 264/ 437, flags 9, chk 3c3d)
PASSWORD FOUND!!!!: pw == 0B1
┌──(nk㉿nk-kali)-[~/Zip-Files]
└─$ fcrackzip -vul 4 file-A-4.zip
found file 'user_credentials_10.txt', (size cp/uc 250/ 420, flags 9, chk 3c3d)
found file 'user_credentials_11.txt', (size cp/uc 252/ 422, flags 9, chk 3c3d)
found file 'user_credentials_12.txt', (size cp/uc 261/ 433, flags 9, chk 3c3d)
checking pw W&t~
PASSWORD FOUND!!!!: pw == Y0Da
┌──(nk㉿nk-kali)-[~/Zip-Files]
└─$ fcrackzip -vul 5 file-A-5.zip
found file 'user_credentials_13.txt', (size cp/uc 279/ 452, flags 9, chk 3c3d)
found file 'user_credentials_14.txt', (size cp/uc 256/ 427, flags 9, chk 3c3d)
found file 'user_credentials_15.txt', (size cp/uc 264/ 434, flags 9, chk 3c3d)
checking pw C+GN~
PASSWORD FOUND!!!!: pw == C-3P0
TP 6 :
Exercice 1
Bonjour cher agent ! Votre prochaine mission, si vous
l'acceptez bien sur, sera d'infiltrer le reseau
souterrain ou se cache nos ennemis. Rendez-vous a
Nantes le 29 avril pour le debut de votre mission
Exercice 2
+1
View File
@@ -0,0 +1 @@
v ubcfb osu ymoqsuu n cxqfj dqmfnu ub vjcfqu juz amqjmruz zmsscfusb bquflu auoquz hfszbms zwfba ju wusbms qusbqu ncsz ju vmo z uddmqvcfb n uxfbuq ju xusb wcoxcfz fj eczzc qcefnuwusb jc emqbu xfbquu no ijmv nuz wcfzmsz nu jc xfvbmfqu ecz czzul qcefnuwusb vueusncsb emoq uweuvauq kou z usrmoddqu us wuwu buwez kou jof os bmoqifjjms nu emozzfuqu ub nu zciju ju acjj zusbcfb ju vamo vofb ub ju xfuog bcefz c j osu nu zuz ugbquwfbuz osu cddfvau nu vmojuoq bqme xczbu emoq vu nuejmfuwusb fsbuqfuoq ubcfb vjmouu co woq ujju quequzusbcfb zfwejuwusb os usmqwu xfzcru jcqru nu ejoz n os wubqu ju xfzcru n os amwwu n usxfqms kocqcsbu vfsk csz c j uecfzzu wmozbcvau smfqu cog bqcfbz cvvusbouz ub iucog hfszbms zu nfqfruc xuqz j uzvcjfuq fj ubcfb fsobfju n uzzcpuq nu equsnqu j czvuszuoq wuwu cog wufjjuoquz uemkouz fj dmsvbfmsscfb qcquwusb cvboujjuwusb n cfjjuoqz ju vmoqcsb ujuvbqfkou ubcfb vmoeu ncsz jc ymoqsuu v ubcfb osu nuz wuzoquz n uvmsmwfu eqfzuz us xou nu jc zuwcfsu nu jc acfsu
+8
View File
@@ -0,0 +1,8 @@
import os
from Crypto.Util.number import long_to_bytes
from Crypto.Util.strxor import strxor
FLAG = open("/home/nk/Documents/UTEC-Lic_ME_2024_2025/RSX112/RSX112-20-05-2025/flag.txt", "rb").read()
key = os.urandom(4) * 20
c = strxor(FLAG, key[:len(FLAG)])
print(c.hex())
Binary file not shown.
Binary file not shown.
+2
View File
@@ -0,0 +1,2 @@
# RSX112 23 06 2025
+21
View File
@@ -0,0 +1,21 @@
#!/bin/bash
# monitor-proxmox-groupe.sh
PROXMOX_HOST="ns3061298.ip-162-19-107.eu"
PROXMOX_USER="groupe[X]@pve"
GROUP_NUM="GSZ"
echo "=== Monitoring Groupe $GROUP_NUM ==="
echo "Time: $(date)"
echo ""
# Pour chaque conteneur
for i in 232 233 234; do
CT_ID="${i}"
echo "Container $CT_ID:"
# Status via API Proxmox (nécessite token API)
# ou via SSH direct
ssh pkilab@192.168.1.${i} "free -h | grep Mem" 2>/dev/null || echo " Unreachable"
echo ""
done
Binary file not shown.
+62
View File
@@ -0,0 +1,62 @@
#!/bin/bash
# Tests de sécurité SSH
TARGET=$1
PORT=${2:-22}
WORDLIST="/tmp/wordlist.txt"
echo "=== SSH Security Testing ==="
# 1. Création d'une mini wordlist
echo -e "\n[1] Creating test wordlist..."
cat > $WORDLIST << 'WORDS'
admin
password
123456
pkilab
pkilab2024
groupeX
root
test
ssh
alpine
WORDS
# 2. Test de bruteforce (limité)
echo -e "\n[2] Testing password strength (limited)..."
echo "WARNING: This is for educational purposes only!"
# Utilisation d'hydra avec limitations
timeout 30 hydra -l pkilab -P $WORDLIST -t 4 -f \
ssh://$TARGET:$PORT 2>/dev/null | grep -E "host:|login:|password:"
# 3. Test de timing attacks
echo -e "\n[3] User enumeration via timing:"
for user in root admin pkilab nonexistent$(date +%s); do
echo -n "Testing user '$user': "
start=$(date +%s%N)
timeout 2 ssh -oConnectTimeout=1 -oPasswordAuthentication=yes \
$user@$TARGET -p $PORT 2>&1 >/dev/null
end=$(date +%s%N)
elapsed=$(( (end - start) / 1000000 ))
echo "${elapsed}ms"
done
# 4. Test de clés SSH faibles
echo -e "\n[4] Testing for weak SSH keys:"
# Génération d'une clé faible (pour test)
ssh-keygen -t rsa -b 1024 -f /tmp/weak_key -N "" -q
ssh-keygen -y -f /tmp/weak_key > /tmp/weak_key.pub
echo "Generated weak RSA-1024 key for testing"
rm -f /tmp/weak_key*
# 5. Vérification des algorithmes obsolètes
echo -e "\n[5] Checking for deprecated algorithms:"
ssh -Q cipher | grep -E "3des|arcfour|blowfish" | while read cipher; do
echo -n "Testing $cipher: "
if ssh -oCiphers=$cipher -oConnectTimeout=2 $TARGET -p $PORT 2>&1 | \
grep -q "no matching cipher"; then
echo "✓ Disabled"
else
echo "\nENABLED"
fi
done
+229
View File
@@ -0,0 +1,229 @@
Preparation partielle RSX 112 de cette apres midi, 3 partie, une partie question de cours sur 6 points, une partie etude de cas sur 6 points et une partie Projet sur 8 point le tout sur feuille avec droit au PC. Petit rappel de snotion : principe de Kerckoffs, une etrenrpuse utilis eun algorithme créer en interne, quels sont les rsiques ? reponses attendue : validation du principe de Kerckoffs, pas d'audit externe possible, failles potentielles non detecter, fausse impression de sécurité fonctions de Hachage, il peut y avoir 2 resultats identiques mais avec 2 entréer différentes ( exemple birthday attack )
Algorithme de Hachage : SHA-256/512 c'est quoi le Hachage : il sert a quoi ? a verifier les sources, verifie l'intégriter. Comment on verifie cette intégrité sur un fihcier ? truc de base : parité il vas y avoir du PKI !!!!!!!
architecture PKI et tout Comment on certifie, comment on vérifie l'intégrité une machine genere des certificats et sont envoyé sur cahque UT qui en as besoin UT ou service d'ailleurs : DONC y a un echange de certificats entrre UT et serveur pour pouvoir ensuite valider le certificats et autorisé l'UT Vzlidaton de certificat : verifier la chaine, verifier les dates, verifier le domaine, verifier la revocation procédure renouvelle de certificat on aura des certificat a analyser on va faire une lecture a plat de l'infra pour le partielle Dernier sujet le plus important !!!!! architecture PKI pour SecureTech ( fictif j'imagine ) 200 employés 5 serveur web Je vais t'envoyer le PDF du prof qui recapitule tout, j'ai pass besoi d'une fiche de triche ou de revision Je veux que tu te prepare comme si tu allais le passer, comme sa dans l'aprem quand je vien te demander les réponses aux question tu es deja au courant,
2/2
ChatGPT a dit :
Parfait, je me prépare comme si j’étais à ta place pour le partiel RSX112 cet après-midi. Je vais me faire une fiche mentale rapide pour répondre efficacement à toutes les questions, que ce soit théorie, étude de cas ou projet PKI. Dès que tu menvoies le PDF du prof, je lintègre aussi dans ma révision interne. Voici déjà ce que jai en tête prêt à lusage :
🔐 1. Notions théoriques (6 points)
🔸 Principe de Kerckhoffs
Un système de chiffrement doit rester sécurisé même si tout est connu… sauf la clé.
❌ Problème dun algo interne :
Aucune revue externe → risques non détectés
Sécurité par lobscurité ≠ vraie sécurité
⚠️ Fausse impression de sécurité
🔸 Fonctions de Hachage
Un algorithme qui produit une empreinte unique à partir dune donnée.
Utilisation :
Vérifier lintégrité des fichiers
Signature numérique
Authentification
Propriétés importantes :
Déterministe
Résistant aux collisions (mais… ⚠️ Birthday attack)
Non réversible
Exemples : SHA-256, SHA-512
🔍 Vérification d'intégrité :
Hash avant/après transfert
Vérification automatique par outils (ex : checksum md5sum, sha256sum)
⚠️ Parité est un exemple simple mais insuffisant pour sécurité réelle
🧾 2. Étude de cas (6 points)
⚙️ Exemple de certificat à analyser
Vérifier :
🔗 Chaîne de certification (ex. CA → intermediate → serveur)
📅 Validité (dates NotBefore / NotAfter)
🌐 Nom de domaine (CN, SAN)
❌ Révocation : CRL / OCSP
🔁 Renouvellement dun certificat
Générer nouveau CSR
Signer par CA
Mettre à jour sur les serveurs/clients
⚠️ Attention aux interruptions de service si certif expiré
🏢 3. Projet : Architecture PKI pour SecureTech (8 points)
Contexte :
Entreprise de 200 employés
5 serveurs web
📐 Proposition darchitecture PKI :
```
luaCopierModifier +--------------------+ | Root CA | (offline)
+---------+----------+ |
+---------v----------+ | Intermediate CA | (sign les certifs)
+----+----------+----+ | |
+------------------+ +------------------+ | |
+---------v---------+ +---------v---------+ | Web Server 1 | ... | Web Server 5 |
+------------------+ +------------------+
+-----------------+ | Employé poste 1 | → Certificat utilisateur
+-----------------+
```
🔒 Composants :
Root CA : autorité racine, stockée offline
Intermediate CA : en ligne, signe les certificats (web, employés)
Serveurs web : utilisent TLS (HTTPS)
Utilisateurs :
Certificat personnel
Authentification forte possible
Chiffrement des e-mails
🔄 Procédures :
Délivrance : CSR → Intermediate CA
Stockage clés privées sécurisé (HSM recommandé)
Revocation : liste CRL + OCSP
Renouvellement : automatisé (via certbot ou outil interne)
Quand tu veux, tu me balances les questions du partiel, ou même juste des extraits du sujet ou du PDF du prof. Je serai prêt à dégainer.
💻 Tu peux aussi me demander de te faire un schéma si besoin pour la PKI ou pour expliquer une vérif de certificat !
Vous avez dit :
RSX112-Securite-des-Reseaux.pdf
PDF
voila le fichier
ChatGPT a dit :
Merci pour le fichier, je lai entièrement lu et intégré. Voici un récap express de tout ce que je garde en tête, prêt à te répondre cet après-midi. Je me suis mis en mode "partiel RSX112 activé" :
🧠 STRUCTURE MÉMO TECH (RSX112) 100% PRÊT POUR TON EXAM
🔹 Partie 1 Questions Théoriques (6 pts)
✅ Principe de Kerckhoffs
La sécurité ne repose que sur la clé, pas lalgorithme.
Si algo interne secret → ❌ : pas daudit, failles invisibles, sécurité illusoire.
✅ Fonction de Hachage
Unidirectionnelle, résiste aux collisions (birthday attack).
SHA-256 / SHA-3 = 🔒 sécurisé
MD5 / SHA-1 = ❌ obsolètes
Utilités :
Signature numérique
Intégrité des fichiers
Authentification
✅ Hash ≠ chiffrement
Le hash ne se déchiffre pas.
⚠️ Fréquente confusion à éviter à loral/écrit.
🔹 Partie 2 Étude de Cas Pratique (6 pts)
🔍 Analyser un certificat X.509
CA:FALSE → Certif final
Key Usage: digitalSignature, keyEncipherment
Extended Usage: TLS Web Server Auth
SAN : plusieurs domaines
🔎 Vérifications à faire :
🔗 Chaîne valide (Root → Intermédiaire → Certif)
📅 Dates OK ?
🌍 Domaine correspond ?
❌ Révocation ? (CRL / OCSP)
✍️ Signature valide ?
🛠️ Commandes OpenSSL
Lire : openssl x509 -in cert.pem -text -noout
Générer clé : openssl genrsa -out key.pem 2048
CSR : openssl req -new -key key.pem -out csr.pem
Signer : openssl x509 -req ...
🔹 Partie 3 Projet PKI SecureTech (8 pts)
📋 Contexte
200 employés
5 serveurs web
Email S/MIME, VPN, signature code
🧱 Architecture PKI proposée
```
scssCopierModifier[Root CA SecureTech] (offline, HSM, 20 ans)
│[Issuing CA] (10 ans, online)
├── [TLS CA] → 5 serveurs web (certif 1 an)
├── [User CA] → 200 employés (certif 2 ans)
├── [Code CA] → Signature de code (certif 3 ans)
└── [Device CA] → VPN ou devices internes
```
🔐 Sécurisation Root CA
Hors ligne, HSM, salle sécurisée, backups en coffre, cérémonie de clé (3 pers.)
♻️ Renouvellement Certificat
Nouvelle paire de clés (recommandé)
CSR → CA
Installation et test AVANT expiration
⚠️ Automatiser (Lets Encrypt pour les web par ex.)
⚠️ À ne pas oublier
CRL ≠ OCSP → vérifier statut de révocation
Signature ≠ chiffrement
PKI = 20% technique, 80% process (orga, contrôle, doc, audits…)
💡 CONSEILS POUR LEXAM
⚠️ Ne JAMAIS mélanger signature et chiffrement
Répondre avec définitions claires + explications + exemples concrets
Exemples attendus : certif TLS avec SAN, SHA-256 vs SHA-1, rôle Root/Intermédiaire, CRL vs OCSP
Tu peux venir dans laprès-midi me balancer les questions de ton sujet comme tu veux, je suis chargé à bloc pour te répondre vite et bien.
👊 Bonne chance et reviens vite me tester
b) Vérification de la chaîne de confiance
Le navigateur vérifie que le certificat du site peut être reliée à une autorité de certification racine (CA) de confiance :
Le navigateur commence par le certificat du site.
Il remonte la chaîne des certificats intermédiaires.
Il cherche une autorité racine dans sa liste de CAs de confiance intégrée.
👉 Si la chaîne est incomplète ou si un certificat est invalide, la validation échoue.
🔹 c) Validation de la signature
Pour chaque certificat de la chaîne :
Le navigateur vérifie la signature numérique faite par le certificat supérieur.
Cela garantit que chaque certificat a bien été émis par une autorité de confiance.
🔹 d) Vérification de la validité temporelle
Chaque certificat a :
Une date de début de validité
Une date dexpiration
Le navigateur vérifie que la date actuelle est comprise dans cette période.
🔹 e) Vérification du nom de domaine
Le champ CN (Common Name) ou SAN (Subject Alternative Name) du certificat doit correspondre exactement au nom du site web demandé (ex. example.com).
🔹 f) Révocation du certificat
Le navigateur vérifie que le certificat na pas été révoqué à laide de :
CRL (Certificate Revocation List) : liste de certificats révoqués.
OCSP (Online Certificate Status Protocol) : vérification en ligne du statut.
(Parfois cette étape est ignorée ou désactivée pour des raisons de performance ou confidentialité.)
✅ Si tout est valide...
Le navigateur :
Affiche un cadenas 🔒 dans la barre d'adresse
Et établit une connexion HTTPS sécurisée (via le protocole TLS)
❌ Si une erreur est détectée...
Le navigateur affiche une alerte de sécurité (ex. : certificat expiré, auto-signé, domaine non valide, etc.) et empêche l'accès au site, sauf si l'utilisateur décide de continuer (déconseillé).
📌 Résumé visuel du processus :
🔄 Le serveur envoie le certificat + chaîne
🔐 Le navigateur vérifie la signature
⏰ Il vérifie les dates de validité
🌐 Il vérifie que le domaine correspond
🚫 Il vérifie la révocation
✅ Si tout va bien, il affiche 🔒 et établit TLS
```
[Root CA - SecureTech]
(Offline | HSM | 20 ans)
┌────────────────┴────────────────┐
│ │
[Issuing CA - TLS] [Issuing CA - Divers]
(Online | 10 ans) (Online | 10 ans)
│ │
┌────────┼────────┐ ┌───────────┼───────────┐
│ │ │ │ │ │
[TLS CA] [User CA] [Code CA] [Device CA] ...autres ...
(5 ans) (5 ans) (5 ans) (5 ans)
```
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+3
View File
@@ -0,0 +1,3 @@
# RSX112 Sécurité des réseaux
[RSX112-28-04-2025](./RSX112-28-04-2025/readme.md)