initial commit
This commit is contained in:
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,45 @@
|
||||
# UTC505 25/09/2024
|
||||
|
||||
## Le modèle ISO/OSI
|
||||
|
||||
Principe du modèle ISO -> 7 couches
|
||||
|
||||
Modèle TCP/IP -> 4 couches
|
||||
|
||||
### Modèle : Unités de données de Protocole
|
||||
|
||||
Types d'ulité de donnée de protocole
|
||||
|
||||
* pour l'ouverture d'une connexion
|
||||
* pour le transfert de données
|
||||
* pour la fermeture de connexion
|
||||
* pour les informations de service échangées entre entitées N
|
||||
|
||||
### Modèle en couches
|
||||
|
||||
>Notion Utile : Trame (accès réseau), Paquet (internet), Segment (transport)
|
||||
|
||||
[Entête|DATA] -> Segment
|
||||
|
||||
[IP|TCP|DATA] -> Patagramme
|
||||
|
||||
[Préanbule|AdresseDestinatère|AdresseSource|Donnée] -> Trame
|
||||
|
||||
4 éléments par paquet dans une trame réseau (exemple sur Wireshark)
|
||||
|
||||
### Rôle des 7 couches réseau
|
||||
|
||||
* Routage des paquets
|
||||
* Homogénisation de l'adressage
|
||||
* Adaptation à la Liaison de données utilisée
|
||||
* Contrôle d'erreur
|
||||
* Guérison de la congestion
|
||||
* Mutiplexage pour optimiser les ressources de communication utilisées
|
||||
|
||||
>Voir le tablaux d'auxy
|
||||
|
||||
Hexa -> binaire -> décimal
|
||||
TLC -> sécuriser l'echange entre application
|
||||
Tail d'une tram -> entre 46 et 8500
|
||||
|
||||
Etude de cas WireShark
|
||||
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,95 @@
|
||||
# UTC505 26-09-24
|
||||
|
||||
Shéma TCP IP :
|
||||
|
||||
[Applicatif] FTP/SSH/DNS/HTTP
|
||||
[Transport] TCP/UDP/ICMP
|
||||
[Resau] IPv4/IPv6/IPsec
|
||||
[Accès_reseau] Ethernet
|
||||
|
||||
Les couches communiquent entre elles en montant et en decendant.
|
||||
|
||||
1 octet -> 8bits
|
||||
1 octet -> 2 symbole hexadecimal
|
||||
|
||||
Maximun d'une tram 1518 et minumu 64 octets
|
||||
|
||||
|
||||
|
||||
Exemple d'une trame :
|
||||
|
||||
00: 0800 2018 ba40 aa00 0400 1fc8 0800 4500
|
||||
16: 0028 a3fc 4000 3f06 af63 a3ad 2041 a3ad
|
||||
32: 80d4 0558 0017 088d de7e ba77 66c9 5010
|
||||
48: 7d78 3c30 0000 0000 0000 0000 0000 0000
|
||||
|
||||
|
||||
0800 2018 ba40 -> adresse mac dst 6 octets
|
||||
aa00 0400 1fc8 -> adresse mac src 6 octets
|
||||
0800 -> types 2 octets
|
||||
|
||||
4500 0028 a3fc 4000 3f06
|
||||
|
||||
a3ad 2041 -> adresse IP dst 4 octets
|
||||
a3ad 80d4 -> adresse IP src 4 octets
|
||||
0558 -> port dst
|
||||
0017 -> port src
|
||||
|
||||
088d de7e ba77 66c9 5010 7d78 3c30
|
||||
|
||||
0000 0000 0000 0000 0000 0000 -> bourage d'octets
|
||||
|
||||
|
||||
Il faut 64 octet minimum donc utilisation des Bit de bourage pour complêter la tram (représenté par 0000)
|
||||
|
||||
|
||||
Petit exemple d'un scapy :
|
||||
|
||||
from scapy.all import IP, ICMP
|
||||
|
||||
# Create an IP packet with the correct parameters
|
||||
packet = IP(version=4, ihl=None, tos=0x00, id=1, flags=0, ttl=64, proto='icmp', src="192.168.10.10", dst="192.168.10.100")
|
||||
# Display the packet details
|
||||
packet.show()
|
||||
|
||||
nk@debian:~/Documents/UTEC/UTC505/UTC505-26-09-24$ scapy
|
||||
INFO: Can't import PyX. Won't be able to use psdump() or pdfdump().
|
||||
|
||||
aSPY//YASa
|
||||
apyyyyCY//////////YCa |
|
||||
sY//////YSpcs scpCY//Pp | Welcome to Scapy
|
||||
ayp ayyyyyyySCP//Pp syY//C | Version 2.5.0
|
||||
AYAsAYYYYYYYY///Ps cY//S |
|
||||
pCCCCY//p cSSps y//Y | https://github.com/secdev/scapy
|
||||
SPPPP///a pP///AC//Y |
|
||||
A//A cyP////C | Have fun!
|
||||
p///Ac sC///a |
|
||||
P////YCpc A//A | What is dead may never die!
|
||||
scccccp///pSP///p p//Y | -- Python 2
|
||||
sY/////////y caa S//P |
|
||||
cayCyayP//Ya pY/Ya
|
||||
sY/PsY////YCc aC//Yp
|
||||
sc sccaCY//PCypaapyCP//YSs
|
||||
spCPY//////YPSps
|
||||
ccaacs
|
||||
using IPython 8.5.0
|
||||
|
||||
>>> a = IP(version=4, ihl=None, tos=0x00, id=1, flags=0, ttl=64, proto='icmp', src="192.168.10.10", dst="192.168.10.100")
|
||||
>>> a.show()
|
||||
###[ IP ]###
|
||||
version = 4
|
||||
ihl = None
|
||||
tos = 0x0
|
||||
len = None
|
||||
id = 1
|
||||
flags =
|
||||
frag = 0
|
||||
ttl = 64
|
||||
proto = icmp
|
||||
chksum = None
|
||||
src = 192.168.10.10
|
||||
dst = 192.168.10.100
|
||||
\options \
|
||||
|
||||
>>> mon_ping = (Ether() / IP(dst="192.168.0.129")) /ICMP()dns
|
||||
>>> my_ping = (Ether(dst="14:18:c3:63:6a:14")) /IP(dst="192.168.0.129")) / ICMP()
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,72 @@
|
||||
# UTC505-15-10-24
|
||||
|
||||
### IPV4
|
||||
|
||||
* ICMP
|
||||
* ARP
|
||||
* RARP
|
||||
* IGMP
|
||||
|
||||
> anatomi
|
||||
|
||||
### IPV6
|
||||
|
||||
> RCF 2460
|
||||
|
||||
### L'internet Protocol (IP)
|
||||
|
||||
* Communications dans le mode minimal DATAGRAM (non Aqcuittés)
|
||||
* adressage internet et Routage entre réseau
|
||||
* adaptation à la liaison traversée
|
||||
* Encapsulation/désencapsulation par rapport à la couche transport
|
||||
|
||||
TTL -> temps de vie d'un paquets. (un retour négatif d'un ping par exemple.)
|
||||
|
||||
> Transmition d'un datagramme
|
||||
> Difference entre le routing et le switching
|
||||
|
||||
> /!\ Pour l'examun, calcul des adress IP /!\
|
||||
|
||||
Un mask est défini pour que checker chaque bit de l'adress IP.
|
||||
Adresse Ip de gauche a droit, du faible au plus fort.
|
||||
|
||||
Le Mask determine la limite à ne pas dépasser exemple :
|
||||
|
||||
IP 163.173.128.6 -> 10100011 10101101 10000000 00000110
|
||||
Mask 255.255.253.0 -> 11111111 11111111 11111100 00000000
|
||||
|
||||
Son adresse réseau c'est : 163.173.128.0
|
||||
|
||||
Son adresse Broadcast c'est : 163.173.131.255
|
||||
|
||||
On le sait car 163.173.128.6 c'est -> 10100011 10101101 10000000 00000110 pour calculer son BraodCast on prend tous se qui a derière le mask donc derrière **11111111 11111111 111111**00 00000000 et on le passe à 1 se qui donne 10100011 10101101 100000**11 11111111** donc reconvertie en octet ça donne 168.173.131.255
|
||||
|
||||
Nombre d'adresse de diffusion :
|
||||
|
||||
Pour calculer le nombre d'adresse de diffusions, on prend le NetID qui correspond à 22 bits, le HostId qui correspond à 10 bits, le tous fais bien 32 bits.
|
||||
On prend le HostId, on fait 2-2 = 1024 -2 = 1022 adresse de diffusion.
|
||||
|
||||
|
||||
Nombre de personne sur la terre c'est 8 milliard
|
||||
Nombre de personne utilisant internet c'est 5.5 milliard
|
||||
Donc besoin de 5,5 milliard d'IPv4.
|
||||
2^32 d'IPv4. 4.3 milliard donc pénuri d'IP, solution numéro 1, utiliser le NAT. Solution 2 les sous réseaux.
|
||||
|
||||
|
||||
|
||||
|
||||
exercice defragmentation :
|
||||
|
||||
>>> send( fragment(IP(dst="10.0.0.5")/ICMP()/("X"*1472)) )
|
||||
.
|
||||
Sent 1 packets. -> parce que 1480 bits + 20 bits = 1500 donc 1 seul packet
|
||||
>>> send( fragment(IP(dst="10.0.0.5")/ICMP()/("X"*1473)) )
|
||||
..
|
||||
Sent 2 packets.-> parce que 1481 bits + 20 bits = 1501 donc 2 packets car 1500 max par packet
|
||||
|
||||
|
||||
|
||||
____
|
||||
|
||||
MTU = charge utilse
|
||||
MSS =
|
||||
Binary file not shown.
@@ -0,0 +1,60 @@
|
||||
# Prise de note du 05/11/2024
|
||||
|
||||
>> Utilisation du document 9-1-4-IPEx.pdf
|
||||
|
||||
## Exercice 1 :
|
||||
|
||||
### Question 1
|
||||
|
||||
Sur Internet, on trouve des outils pour calculer des adresses, l'un de ceux-ci donne pour
|
||||
résultat si on lui fournit l'adresse d'interface 10.168.0.1 et le masque /20:
|
||||
|
||||
La conversion en binire de l'adresse est fausse :
|
||||
|
||||
10.168.0.1 00001010.10100100.00000000.00000001
|
||||
|
||||
168 c'est : 10101000
|
||||
donc l'adresse entière c'est : 00001010.10101000.00000000.00000001
|
||||
|
||||
Pour moi le masque n'est pas bon :
|
||||
|
||||
20 dans l'exercice donc 11111111.11111111.11010000.00000000
|
||||
|
||||
Car il ne peut pas avoir un 0 qui sépart les 1.
|
||||
Donc correction c'est 11111111.11111111.11110000.00000000
|
||||
|
||||
4096 - 2 = 4094
|
||||
|
||||
### Question 2 :
|
||||
|
||||
L'outil peut aussi proposer un calcul si on veut découper son réseau en sous réseaux. Si
|
||||
on indique un masque /21 voila les propositions qu'il fait pour 2 sous-réseaux :
|
||||
|
||||
Mask est pas bon : 11111111.11111111.11111000.00000000
|
||||
|
||||
### Question 3
|
||||
|
||||
Tout est bon.
|
||||
|
||||
## Exercice 2
|
||||
|
||||
### Question 1 :
|
||||
|
||||
On prend l'adresse 10.1.8.66, on obtient avec l'adresse 10.1.8.0/26
|
||||
|
||||
...
|
||||
|
||||
> Exercice 3, 4, 5 à faire sois même,
|
||||
|
||||
## Exercice 6 :
|
||||
|
||||
### Question 1 :
|
||||
|
||||
Savoir découper les paquets trop volumineux (plus de 1500 bit).
|
||||
|
||||
### Question 2 :
|
||||
|
||||
Fragmentation se fais au niveau du client,
|
||||
|
||||
16 bits son reservé pour l'entète, afin de savoir dans quelle ordre rassembler les paquet
|
||||
3 bits son reserver pour le flag mais seuelemnt 2 utilisés
|
||||
Binary file not shown.
@@ -0,0 +1,14 @@
|
||||
# UTC 505 07/11/24
|
||||
|
||||
## Introduction
|
||||
|
||||
## Matrice de risque
|
||||
|
||||
Mesure le niveau de risque en fonction de deux paramètres :
|
||||
|
||||
-
|
||||
-
|
||||
|
||||
## Mesure de sécurité :
|
||||
|
||||
Renf
|
||||
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,7 @@
|
||||
$ steghide embed -cf picture.jpg -ef secret.txt
|
||||
|
||||
$ steghide info picture.jpg
|
||||
|
||||
$ steghide extract -sf picture.jpg
|
||||
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
INSWG2K7MVZXIX3VNZPW2ZLTONQWOZK7ONSWG4TFOQFA====
|
||||
@@ -0,0 +1 @@
|
||||
Q2VjaV9lc3RfdW5fbWVzc2FnZV9zZWNyZXQK
|
||||
@@ -0,0 +1,6 @@
|
||||
-----BEGIN PUBLIC KEY-----
|
||||
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQ0GA5cksnkg+M6LViQQpnN121u/
|
||||
IWV20BFy/taJjvTsbKUn9nNAAYvdDw1o3VOun1akNWvKGT02rWIXzM3oX4uLuGEo
|
||||
RN+fq6l7qPAv3eq9jb/vkMDaOSEbH0/LAc09D/1EPAiocFPfQfsy6ZJe0rGDpvll
|
||||
9qkwdobLY8I1THnXowIDAQAB
|
||||
-----END PUBLIC KEY-----
|
||||
@@ -0,0 +1 @@
|
||||
Ceci_est_un_message_secret
|
||||
@@ -0,0 +1,4 @@
|
||||
│R▓^lФ Я┬шP╨K╩3╖nЕ╤'П`⌠hn77J╒В░н\фmм╩ю┤rm~▐╣█
|
||||
И%HйбZ`║УpВщ&гЮG┤О▐ф
|
||||
M©┌?$и╡[qcпoP:=y'x[уp<пУ╣(J√LщM /ёXВ┌C╧ц=⌡·┐┤
|
||||
╜
|
||||
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,55 @@
|
||||
# SUJET UTC505 : Réseaux et Sécurité
|
||||
|
||||
>Partie Réseaux (19 points noté sur 14)
|
||||
|
||||
## Exercice 1 :
|
||||
|
||||
### Question 1 :
|
||||
|
||||
Délimiter dans le trace hexadécimale l'entête de la trame Ethernet.
|
||||
|
||||
00 20 af 1b 07 fa 00 e0 29 68 8b fb 08 00
|
||||
|
||||
Délimiter dans le trace hexadécimale l'entête du datagramme IP.
|
||||
|
||||
45 00
|
||||
00 77 c1 e6 40 00 40 06 f7 46 c0 a8 00 01 c0 a8
|
||||
00 02
|
||||
|
||||
Délimiter dans le trace hexadécimale l'entête du segment.
|
||||
|
||||
5 -> pas d'option donc 20 octed TCP
|
||||
|
||||
0b fc 1f 40 ea 46 fc 03 08 c4 ec 75 50 18
|
||||
44 70 71 79 00 00
|
||||
|
||||
Délimiter dans le trace hexadécimale la partie HTTP
|
||||
|
||||
### Question 2 :
|
||||
|
||||
1 : 00 20 af 1b 07 fa
|
||||
2 : Une adresse destiné à une autre adresse présise
|
||||
3 : 00 e0 29 68 8b fb
|
||||
4 : 08 00 -> suivis du 4 -> ipv4 oui coérant
|
||||
5: 4 car ipv4
|
||||
6: c0 a8 00 01 192.168.0.1
|
||||
7: c0 a8 00 02 192.168.0.2
|
||||
8:
|
||||
9:
|
||||
10: 0b fc
|
||||
11: 1f 40
|
||||
12: 5 * 4 = 20, pas d'option
|
||||
13: ea 46 fc 03
|
||||
14: 18
|
||||
15: 08
|
||||
16:
|
||||
|
||||
|
||||
# Question 3
|
||||
|
||||
4 - 3 - 1 - 2 - 5
|
||||
|
||||
|
||||
1 - G - B - 4 - D - C - E - H - F - A
|
||||
|
||||
1 - G - B - 4 - E - D - F - C - H - A
|
||||
@@ -0,0 +1,9 @@
|
||||
00 20 af 1b 07 fa 00 e0 29 68 8b fb 08 00 45 00
|
||||
00 77 c1 e6 40 00 40 06 f7 46 c0 a8 00 01 c0 a8
|
||||
00 02 0b fc 1f 40 ea 46 fc 03 08 c4 ec 75 50 18
|
||||
44 70 71 79 00 00 47 45 54 20 2f 20 48 54 54 50
|
||||
2f 31 2e 30 0d 0a 55 73 65 72 2d 41 67 65 6e 74
|
||||
3a 20 57 67 65 74 2f 31 2e 35 2e 33 0d 0a 48 6f
|
||||
73 74 3a 20 31 39 32 2e 31 36 38 2e 30 2e 32 3a
|
||||
38 30 30 30 0d 0a 41 63 63 65 70 74 3a 20 2a 2f
|
||||
2a 0d 0a 0d 0a
|
||||
@@ -0,0 +1,37 @@
|
||||
# UTC505 25/11/24
|
||||
|
||||
Diamètre de connexion avec TCP en lien avec MSS. (Maximum Segment ...)
|
||||
|
||||
Le MSS c'est le diamètre de ségement qui va être envoyé.
|
||||
|
||||
## Entête d'un segment Segment TCP
|
||||
|
||||
TCP header format :
|
||||
|
||||

|
||||
|
||||
UDP header format :
|
||||
|
||||

|
||||
|
||||
TCP (Transport Control Protocol) assure un service de transmission de données fiable avec une détection et une correction d'erreurs de bout en bout. UDP (User Datagram Protocol) offre un service de transmission de datagrammes sans connection.
|
||||
|
||||

|
||||
|
||||
Automate protocolaire TCP :
|
||||
|
||||
Ouverture connexion tcp :
|
||||
|
||||

|
||||
|
||||
|
||||
## TP, TCP sys flooding attack
|
||||
|
||||
pour faire une attaque DDos :
|
||||
|
||||
```
|
||||
hping3 --syn --flood --rand-source -p 80 192.168.1.2
|
||||
```
|
||||
|
||||
Le moyen ce se defendre sur windows c'est Windows Defender. Il est paramétrable pour dire que si on reçois un nombre de segment sans possibilité de réponsee trop souvent, il stop la reception de ce segment.
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
After Width: | Height: | Size: 14 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 112 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 4.2 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 17 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 5.2 KiB |
@@ -0,0 +1,8 @@
|
||||
# UTC 505 Réseau
|
||||
|
||||
* [25/09/24](./UTC505-25-09-24/)
|
||||
* [26/09/24](./UTC505-26-09-24/)
|
||||
* [15/10/24](./UTC505-15-10-24/)
|
||||
* [05/11/24](./UTC505-05-11-24)
|
||||
* [07/11/24](./UTC505-07-11-24)
|
||||
* [25/11/24](./UTC505-25-11-24)
|
||||
Reference in New Issue
Block a user