Vous êtes sur la page 1sur 21

Université Abdelmalek Essaadi

Ecole Nationale des Sciences Appliquées Al-Hoceima

Rapport
Première Année Transformation Digitale et
Intelligence Artificielle

Chrome DevTools
Owasp
Évolution de HTTP
Réalisé par :
- Allali Mohamed Amin

Encadré par : Pr. Mohamed CHERRADI

Année Universitaire : 2023/2024


Table des matières
I. OWASP : .......................................................................................................... 3
1. C’est quoi owasp ? ...........................................................................................................3
2. Top 10 de L’owasp ?.........................................................................................................3
1.1. Injection : ......................................................................................................................................... 3
1.2. Authentification incorrecte : ............................................................................................................ 4
1.3. Exposition de données sensibles : .................................................................................................... 4
1.4. Entités XML externes (XEE) :......................................................................................................... 5
1.5. Contrôle d’accès rompu : ................................................................................................................. 5
1.6. Mauvaise configuration de la sécurité : ........................................................................................... 5
1.7. Script de site a site : ......................................................................................................................... 6
1.8. Désérialisation non sécurisée : ......................................................................................................... 6
1.9. Utilisation de composants aux vulnérabilités connues : .................................................................. 7
1.10. Journalisation et surveillance insuffisants : ..................................................................................... 7

II. Chrome Dev Tools : .......................................................................................... 8


1. C’est quoi Chrome Dev Tools ? ........................................................................................8
2. Fonctionnalité de Chrome Dev Tools : .............................................................................8
2.1. Panneau Éléments : .......................................................................................................................... 8
2.2. Panneau Console : ............................................................................................................................ 9
2.3. Panneau Sources : .......................................................................................................................... 10
2.4. Panneau Network : ......................................................................................................................... 10
2.5. Panneau Performance : .................................................................................................................. 11
2.6. Panneau Memory : ......................................................................................................................... 13
2.7. Panneau Application : .................................................................................................................... 13
2.8. Panneau lighthouse : ...................................................................................................................... 16

III. L'évolution du protocole http : ................................................................... 17


1. C’est quoi le protocole HTTP ? .......................................................................................17
2. Évolution de protocole http : .........................................................................................17
2.1. HTTP 0.9 : ..................................................................................................................................... 17
2.2. HTTP 1.0 : ..................................................................................................................................... 18
2.3. HTTP 1.1 : ..................................................................................................................................... 18
2.4. HTTP 2 : ........................................................................................................................................ 19
2.5. HTTP 3 (avenir) : ........................................................................................................................... 20

IV. Références : ................................................................................................ 21

Ecole Nationale des Sciences Appliquées d’Al-Hoceima

2
I. OWASP :

1. C’est quoi owasp ?


L'Open Web Application Security Project, ou OWASP, est une organisation
internationale à but non lucratif qui se consacre à la sécurité des
applications web. L'un des principes fondamentaux de l'OWASP est que
tout son contenu soit disponible gratuitement et facilement accessibles sur
son site web, ce qui permet à chacun d'améliorer la sécurité de ses
propres applications web. Le contenu qu'elle propose comprend de la
documentation, des outils, des vidéos et des forums. Leur projet le plus
connu est peut-être le Top 10 de l'OWASP.

2. Top 10 de L’owasp ?
Le Top 10 de l'OWASP est un rapport régulièrement mis à jour qui identifie
les 10 principales préoccupations en matière de sécurité des applications
web. Rédigé par des experts mondiaux en sécurité, il sert de guide de
sensibilisation et est recommandé aux entreprises pour minimiser et
atténuer les risques de sécurité.

1.1. Injection :
Les attaques par injection surviennent lorsqu'une application web traite des
données non fiables envoyées par l'utilisateur, souvent via des formulaires
ou d'autres mécanismes de soumission de données. Par exemple, un
attaquant pourrait insérer du code SQL malveillant dans un champ de
formulaire destiné à un nom d'utilisateur. Si l'application ne sécurise pas
correctement ces données, le code SQL peut être exécuté, ce qui conduit à
ce qu'on appelle une injection SQL.

Ecole Nationale des Sciences Appliquées d’Al-Hoceima

3
1.2. Authentification incorrecte :
Les vulnérabilités des systèmes d'authentification (login) peuvent donner
aux pirates l'accès à des comptes d'utilisateurs et même la possibilité de
compromettre un système entier en utilisant un compte administrateur. Par
exemple, un attaquant peut prendre une liste contenant des milliers de
combinaisons connues de noms d'utilisateur/mots de passe obtenues lors
d'une violation de données et utiliser un script pour essayer toutes ces
combinaisons sur un système de connexion afin de voir si certaines
fonctionnent.

1.3. Exposition de données sensibles :


L'exposition de données sensibles est l'une des principales vulnérabilités
répertoriées dans le Top 10 de l'OWASP. Elle survient lorsque des
informations confidentielles sont divulguées de manière inappropriée ou
non autorisée, généralement à cause de lacunes dans la conception ou la
mise en œuvre de la sécurité d'une application web.

Cette vulnérabilité peut prendre plusieurs formes, notamment :

 Exposition directe : Les données sensibles sont directement


accessibles à des tiers sans authentification ou autorisation
appropriées. Par exemple, un fichier contenant des informations de
carte de crédit est accessible via une URL publique.

 Exposition indirecte : Les données sensibles peuvent être


indirectement exposées à travers des canaux non sécurisés. Par
exemple, des informations confidentielles peuvent être transmises en
clair sur un réseau non sécurisé.

Ecole Nationale des Sciences Appliquées d’Al-Hoceima

4
 Configuration incorrecte : Les paramètres de sécurité mal configurés
peuvent rendre involontairement accessibles des données sensibles.
Par exemple, des répertoires de fichiers peuvent être laissés en
accès libre sans contrôles adéquats.

1.4. Entités XML externes (XEE) :

Il s'agit d'une attaque contre une application web qui analyse les contenus
XML*. Ce contenu peut faire référence à une entité externe, en essayant
d'exploiter une vulnérabilité dans l'analyseur. Une "entité externe" dans ce
contexte fait référence à une unité de stockage, comme un disque dur. Un
analyseur XML peut être utilisé pour envoyer des données à une entité
externe non autorisée, ce qui peut transmettre des données sensibles
directement à un pirate.

1.5. Contrôle d’accès rompu :


Le contrôle d'accès désigne un système qui contrôle l'accès aux
informations ou aux fonctionnalités. Les contrôles d'accès rompus
permettent aux pirates de contourner l'autorisation et d'effectuer des tâches
comme s'ils étaient des utilisateurs privilégiés tels que les administrateurs.
Par exemple, une application web pourrait permettre à un utilisateur de
modifier son compte en modifiant simplement une partie de son url, sans
autre vérification.

1.6. Mauvaise configuration de la sécurité :


La mauvaise configuration de la sécurité est la vulnérabilité la plus
courante sur la liste, et résulte souvent de l'utilisation de configurations par
défaut ou de l'affichage d'erreurs excessivement verbeuses. Par exemple,
une application peut présenter à l'utilisateur des erreurs trop descriptives
qui peuvent révéler des vulnérabilités dans l'application. Il est possible

Ecole Nationale des Sciences Appliquées d’Al-Hoceima

5
d'atténuer ce problème en supprimant toute fonctionnalité inutilisée dans le
code et en veillant à ce que les messages d'erreur soient plus généraux.

1.7. Script de site a site :


Les vulnérabilités du script de site à site se produisent lorsque des
applications web permettent aux utilisateurs d'ajouter un code personnalisé
dans un chemin d'accès ou sur un site Web qui sera vu par d'autres
utilisateurs. Cette vulnérabilité peut être exploitée pour exécuter un code
JavaScript malveillant sur le navigateur d'une victime. Par exemple, un
attaquant pourrait envoyer un courriel à une victime, qui semble provenir
d'une banque de confiance, avec un lien vers le site Web de cette banque.
Ce lien pourrait comporter un code JavaScript malveillant marqué à la fin
de l'url. Si le site de la banque n'est pas correctement protégé contre le
script de site à site, alors ce code malveillant sera exécuté dans le
navigateur web de la victime lorsqu'elle cliquera sur le lien.

1.8. Désérialisation non sécurisée :


La désérialisation non sécurisée est une vulnérabilité qui affecte les
applications web utilisant fréquemment la sérialisation et la désérialisation
des données. La sérialisation convertit des objets d'une application en un
format pouvant être stocké ou transmis, tandis que la désérialisation
reconvertit ces données en objets utilisables par l'application. Lorsque la
désérialisation n'est pas sécurisée, des données malveillantes peuvent être
exploitées par un attaquant pour exécuter du code arbitraire sur le serveur
ou manipuler des données sensibles. C'est pourquoi il est essentiel
d'appliquer une validation rigoureuse des données désérialisées pour
prévenir cette menace.

Ecole Nationale des Sciences Appliquées d’Al-Hoceima

6
1.9. Utilisation de composants aux vulnérabilités connues :
De nombreux développeurs web modernes utilisent des composants tels
que des bibliothèques et des cadres dans leurs applications web. Ces
composants sont des logiciels qui aident les développeurs à éviter le travail
redondant et à fournir les fonctionnalités nécessaires ; des exemples
courants sont les cadres de front-end comme React et les petites
bibliothèques qui avaient l'habitude d'ajouter des icônes de partage ou des
tests a/b. Certains pirates recherchent des vulnérabilités dans ces
composants qu'ils peuvent ensuite utiliser pour orchestrer des attaques.
Certains des composants les plus populaires sont utilisés sur des
centaines de milliers de sites Web ; un pirate trouvant une faille de sécurité
dans l'un de ces composants pourrait laisser des centaines de milliers de
sites vulnérables à une exploitation.

1.10.Journalisation et surveillance insuffisants :


De nombreuses applications web ne prennent pas suffisamment de
mesures pour détecter les violations de données. Le délai moyen de
découverte d'une violation est d'environ 200 jours après qu'elle se soit
produite. Cela donne aux pirates beaucoup de temps pour causer des
dommages avant qu'il n'y ait une riposte. L'OWASP recommande aux
développeurs web de mettre en place un système de journalisation et de
surveillance ainsi que des plans de réponse aux incidents afin de s'assurer
qu'ils sont informés des attaques dont leurs applications font l'objet.

Ecole Nationale des Sciences Appliquées d’Al-Hoceima

7
II. CHROME DEV TOOLS :

1. C’est quoi Chrome Dev Tools ?


Chrome Dev Tools est un ensemble d'outils de développement intégré
directement dans le navigateur Google Chrome. Ces outils permettent aux
développeurs web de déboguer, tester et optimiser leurs sites web et
applications web directement dans le navigateur, ce qui facilite le
processus de développement.

Comment ouvrir Chrome Dev Tools ?

 Effectuez un clic droit sur un élément de la page, puis


sélectionnez Inspecter.
 Cliquez sur le bouton à droite de la barre d'adresse, puis
sélectionnez Plus d'outils > Outils pour les développeurs.
 Appuyez sur un raccourci dans Chrome en fonction de votre
système d’exploitation :

2. Fonctionnalité de Chrome Dev Tools :

2.1. Panneau Éléments :


Le panneau éléments permet d'inspecter et de modifier le HTML et le CSS
d'une page web en temps réel. Cela permet aux développeurs de voir
comment une page est construite et de tester des modifications sans avoir

Ecole Nationale des Sciences Appliquées d’Al-Hoceima

8
à éditer directement les fichiers sources.si vous souhaitez par exemple
effectuer un prototypage CSS, sélectionnez l'élément dans l'arborescence
du DOM et ajoutez des déclarations à cet élément dans le volet Styles.
Vous pouvez modifier les propriétés de police telles que la couleur, la taille
et la famille. Vous pouvez également modifier les images, les couleurs de
fond, les couleurs des boutons, etc.

C’est quoi le DOM :

 Le DOM, ou Document Object Model (Modèle d'Objet de Document),


est une représentation hiérarchique et structurée d'un document
HTML (ou XML) créé lors du chargement d'une page web dans un
navigateur web. Le DOM représente la structure logique de la page
et permet aux scripts, tels que JavaScript, de manipuler le contenu,
la structure et le style de la page web de manière dynamique.

2.2. Panneau Console :


Le panneau Console vous permet d'exécuter du code JavaScript sur votre
page. Avec la Console, vous pouvez tester des extraits de code ou
déboguer votre code.

Pour commencer avec le panneau Console, saisissez du JavaScript dans


la Console et appuyez sur "Entrée". La Console évaluera le code et
affichera le résultat. Vous pouvez également utiliser la Console pour
déboguer votre code. Pour cela, définissez un point d'arrêt dans votre code
avec le mot-clé "debugger". Lorsque l'exécution du code atteint le point
d'arrêt, la Console se mettra en pause et vous permettra de parcourir pas à
pas le code.

Ecole Nationale des Sciences Appliquées d’Al-Hoceima

9
2.3. Panneau Sources :
Le panneau Sources vous permet de visualiser et de modifier le code
JavaScript et CSS de votre page. Avec le panneau Sources, vous pouvez
définir des points d'arrêt, parcourir pas à pas le code et voir les valeurs des
variables. Sélectionnez un fichier dans le volet "Fichiers" pour commencer
avec le panneau Sources.

Cela affichera le contenu de ce fichier dans le volet "Éditeur". À partir de là,


vous pouvez apporter des modifications au code et voir ces modifications
immédiatement reflétées sur la page.

Vous pouvez également définir facilement des points d'arrêt dans votre
code avec le panneau Sources. Pour définir un point d'arrêt, cliquez sur le
numéro de ligne où vous souhaitez définir le point d'arrêt. Cela affichera
une boîte de dialogue où vous pouvez entrer les conditions du point d'arrêt.
Une fois que vous avez entré les conditions du point d'arrêt, cliquez sur
"OK" pour définir le point d'arrêt.

2.4. Panneau Network :


Le panneau Network vous permet de voir comment votre page se charge.
Avec le panneau Network, vous pouvez voir quels sont les ressources
chargées et combien de temps chaque ressource prend pour se charger.

Pour afficher l'activité réseau générée par une page:

On ouvre une page web, puis on ouvre les outils de développement


(DevTools), et ensuite on accède au panneau Network, par la suite on
actualise la page web Le panneau "Network" consigne toutes les activités
réseau dans le journal réseau.

Ecole Nationale des Sciences Appliquées d’Al-Hoceima

10
Chaque ligne du journal réseau représente une ressource. Par défaut, les
ressources sont répertoriées chronologiquement. La ressource supérieure
est généralement le document HTML principal. La ressource inférieure
correspond à celle demandée en dernier.

Chaque colonne représente des informations sur une ressource.

 État. Code de réponse HTTP.

 Type. Type de la ressource

 Initiateur. Raison pour laquelle une ressource a été demandée.


Cliquez sur un lien dans la colonne "Initiator" pour accéder au
code source à l'origine de la requête.

 Time. Durée de la requête.

 Waterfall : Représentation graphique des différentes étapes de la


requête. Survolez une cascade pour voir une répartition.

2.5. Panneau Performance :


Le panneau Performances vous permet de voir comment votre page se
comporte. Avec le panneau Performances, vous pouvez voir quelles

Ecole Nationale des Sciences Appliquées d’Al-Hoceima

11
ressources prennent du temps et où se produisent les goulots
d'étranglement.

Vous pouvez également utiliser le panneau Performances pour enregistrer


un profil de performances. Pour enregistrer un profil de performances,
cliquez sur le bouton "Enregistrer" en haut du panneau. Cela démarrera
l'enregistrement des informations sur les performances de votre page. Une
fois que vous avez terminé l'enregistrement, cliquez simplement sur le
bouton "Arrêter" pour sauvegarder le profil de performances.

Ecole Nationale des Sciences Appliquées d’Al-Hoceima

12
2.6. Panneau Memory :
Le panneau Memory (Mémoire) fournit des outils de diagnostic qui vous
permettent de visualiser la répartition de la mémoire des objets JavaScript,
de détecter et d'isoler les fuites de mémoire, d'obtenir le détail de
l'allocation de mémoire par fonction, etc.

Vous pouvez également utiliser le panneau Mémoire pour prendre un


instantané de l'utilisation de la mémoire de votre page. Pour prendre un
instantané, cliquez sur le bouton "Prendre un instantané" en haut du
panneau. Cela sauvegardera une copie de l'utilisation actuelle de la
mémoire de votre page. Une fois que vous avez pris un instantané, vous
pouvez naviguer à travers celui-ci pour voir quelles ressources
consomment de la mémoire.

2.7. Panneau Application :


Le panneau Application vous permet d'inspecter les ressources qui
composent votre application web. Avec le panneau Application, vous
pouvez voir quels fichiers sont chargés et quels cookies et stockage local
sont utilisés.

Le panneau Application est divisé en quatre sections contenant des sous-


menus. Voici les sections et sous-menus suivants:

Application: contient des informations générales sur l'application, y


compris son fichier manifeste, ses service workers et son
espace de stockage.

 L'onglet Manifest (Manifeste) affiche les informations


de manifest.json de manière conviviale. Il affiche également les
erreurs et les avertissements, le cas échéant, dans la section
correspondante.

Ecole Nationale des Sciences Appliquées d’Al-Hoceima

13
 L'onglet Service workers vous permet d'inspecter et de déboguer
les service workers en émulant des événements push, en mettant à
jour un service, etc.

 L'onglet Storage (Stockage) contient un graphique à secteurs


indiquant la répartition de la mémoire utilisée par le stockage en
cache, par IndexedDB et par les service workers. Vous pouvez
également effacer les données des sites et simuler un
quota de stockage personnalisé.

Stockage: affichez et modifiez les différentes méthodes de stockage


utilisées par une application Web.

 Les listes Local et Stockage de sessions vous permettent de


sélectionner une origine et de modifier les paires clé/valeur des
méthodes de stockage associées.

 La liste IndexedDB contient des bases de données et vous permet


d'inspecter les magasins d'objets à partir du navigateur.

 La liste Cookies vous permet de sélectionner une origine et de


modifier les paires clé-valeur.

 La liste Stockage partagé vous permet de sélectionner une origine,


ainsi que d'inspecter et de modifier les paires clé/valeur associées.

 La liste Espace de stockage du cache contient les caches


disponibles et vous permet d'inspecter, de filtrer et de supprimer les
ressources associées.

Services d'arrière-plan: inspectez, testez et déboguez les services


d'arrière-plan.

Ecole Nationale des Sciences Appliquées d’Al-Hoceima

14
 L'onglet Cache amélioré vous permet d'exécuter des tests sur le
cache amélioré dans le navigateur.

 L'onglet Récupération en arrière-plan vous permet d'enregistrer


l'activité de l'API de récupération en arrière-plan pendant trois jours
maximum.

 L'onglet Synchronisation en arrière-plan vous permet d'enregistrer


l'activité de l'API de synchronisation en arrière-plan pendant trois
jours maximum.

 L'onglet Mesures d'atténuation du suivi des rebonds vous permet


d'identifier et de supprimer l'état des sites qui semblent effectuer un
suivi intersites à l'aide de la technique de suivi des rebonds.

 L'onglet Notifications vous permet d'enregistrer les messages push


pendant trois jours maximum.

 L'onglet Gestionnaire de paiements vous permet d'enregistrer les


événements du gestionnaire de paiements pendant une durée
maximale de trois jours.

 L'onglet Synchronisation périodique en arrière-plan vous permet


d'enregistrer des événements clés pendant une durée maximale de
trois jours du cycle de vie de la synchronisation périodique en arrière-
plan, tels que l'enregistrement pour la synchronisation, l'exécution
d'une synchronisation en arrière-plan et l'annulation de
l'enregistrement.

 L'onglet API Reporting surveille votre site et signale les appels d'API
obsolètes et les violations de sécurité.

Ecole Nationale des Sciences Appliquées d’Al-Hoceima

15
Cadres: divise les pages et les ressources en plusieurs vues et affiche des
informations pertinentes, telles que Sécurité et
isolation, Content Security Policy, Disponibilité de l'API, etc.

2.8. Panneau lighthouse :


Le panneau Lighthouse dans Chrome DevTools est un outil d'audit de
performance et d'accessibilité. Il utilise Lighthouse, une bibliothèque open
source, pour générer des rapports détaillés sur divers aspects de la qualité
d'un site web, notamment les performances, l'accessibilité, les meilleures
pratiques, le référencement (SEO) et la PWA (Progressive Web App).

Ecole Nationale des Sciences Appliquées d’Al-Hoceima

16
III. L'EVOLUTION DU PROTOCOLE HTTP :

1. C’est quoi le protocole HTTP ?


L'Hypertext Transfer Protocol (HTTP) (Protocole de transfert hypertexte)
est un protocole de base qui autorise le transfert de fichiers sur le web,
typiquement entre un navigateur web et un serveur afin que des utilisateurs
puissent les consulter.

2. Évolution de protocole http :

2.1. HTTP 0.9 :


La version initiale de HTTP n'avait pas de numéro de version. Elle fut
appelée 0.9 pour la différencier des versions ultérieures. HTTP/0.9 est
extrêmement simple : la requête se compose d'une ligne unique et
commence par la seule méthode possible GET, suivie par le chemin pour
accéder à la ressource.

La version initiale d'HTTP était un protocole client-serveur simple, basé sur


le principe de requête-réponse, conçu pour être convivial avec Telnet.
Caractéristiques de la requête :

 Nature de la requête : simple ligne (méthode + chemin pour le


document demandé)
 Méthodes prises en charge : uniquement GET
 Type de réponse : uniquement hypertexte
 Nature de la connexion : immédiatement terminée après la réponse
Pas de headers HTTP (impossibilité de transférer d'autres types de
fichiers), pas de codes d'état/erreurs, pas d'URL.

Ecole Nationale des Sciences Appliquées d’Al-Hoceima

17
2.2. HTTP 1.0 :
HTTP/0.9 était très limité. Navigateurs et serveurs l'ont rapidement étendu
vers des usages plus polyvalents. Les caractéristiques de la requête :

 Dans chaque requête figurent les informations de version (HTTP/1.0


est ajouté à la ligne GET).
 Une ligne de code d'état est aussi envoyée au début de chaque
réponse. Elle permet au navigateur de prendre connaissance du
succès ou de l'échec de la requête.
 La notion d'en-tête HTTP a été mise en place à la fois pour les
requêtes et pour les réponses. Elle autorise la transmission de
métadonnées, et rend le protocole très flexible et extensible.
 Avec ces nouveaux en-têtes HTTP, il est désormais possible de
transmettre d'autres documents que des fichiers HTML bruts (grâce à
l'en-tête Content-Type.

2.3. HTTP 1.1 :


Parallèlement aux usages quelque peu chaotiques des différentes
applications HTTP/1.0, dès 1995 c'est-à-dire bien avant la publication du
document HTTP/1.0 l'année suivante, une standardisation appropriée se
trouvait sur les rails. HTTP/1.1, première version standardisée de HTTP,
fut publié seulement quelques mois après HTTP/1.0.

HTTP/1.1 dissipait des ambiguïtés et introduisait de nombreuses


améliorations.

 Connexion pouvant être ré-utilisée : économie du temps qu'il


faudrait pour en ouvrir plusieurs dans le but de présenter les
ressources constituant le document original récupéré.

Ecole Nationale des Sciences Appliquées d’Al-Hoceima

18
 Ajout du pipelining : permet d'envoyer une seconde requête avant
que la réponse de la première ne soit complètement transmise,
diminuant le temps de latence de la communication.
 Désormais les réponses par morceau sont aussi supportées.
 Mise en place de la négociation de contenu pour le langage,
l'encodage et le type : le client et le serveur peuvent ainsi se
mettre d'accord sur le contenu le plus adéquat à échanger.
 Grâce à l'en-tête Host, la capacité à héberger différents domaines
sur la même adresse IP autorise désormais une colocation de
serveurs.

2.4. HTTP 2 :
Les pages web sont devenues de plus en plus complexes quitte à devenir
des applications à part entière. La quantité de contenu multimédia ainsi
que le nombre de scripts permettant plus d'interactivité ont aussi
augmenté, ainsi de plus en plus de données sont transférées via des
requêtes HTTP. Les connexions HTTP/1.1 nécessite un ordre séquentiel
pour être correctement gérées. En théorie, il est possible d'utiliser plusieurs
connexions en parallèle (généralement entre 5 et 8), néanmoins, cela
implique beaucoup d'adaptation et apporte énormément de complexité.

Le protocole HTTP/2 diffère de HTTP/1.1 sur plusieurs aspects :

 Il est encodé en binaire plutôt qu'en texte. Il ne peut donc plus être lu
ou écrit à la main. Malgré cette difficulté, il est désormais possible
d'implémenter des techniques d'optimisation avancée.
 C'est un protocole multiplexé. Plusieurs requêtes en parallèle
peuvent être gérées au sein de la même connexion, supprimant ainsi
la limitation séquentielle de HTTP/1.x.

Ecole Nationale des Sciences Appliquées d’Al-Hoceima

19
 HTTP/2 compresse les en-têtes, étant donné que des en-têtes
similaires sont échangés lors d'une suite de requêtes, on supprime
ainsi la duplication et l'échange inutiles des données similaires.
 Il permet au serveur de remplir le cache du client avant qu'il ne soit
demandé par ce dernier, on parle alors d'évènements générés par le
serveur.

2.5. HTTP 3 (avenir) :


Une différence importante de HTTP/3 est qu'il fonctionne avec QUIC, un
nouveau protocole de transport. QUIC est conçu pour un usage intensif de
l'Internet mobile, où les gens ont des smartphones qui passent
constamment d'un réseau à l'autre au gré de leurs déplacements. Ce
n'était pas le cas lorsque les premiers protocoles Internet ont été
développés : les appareils étaient moins portables et ne changeaient pas
de réseau très souvent.

L'utilisation de QUIC signifie que HTTP/3 repose sur le protocole de


datagramme utilisateur (UDP), et non sur le protocole de contrôle de
transmission (TCP). Le passage à l'UDP permettra des connexions plus
rapides et une meilleure expérience utilisateur lors de la navigation en
ligne.

Ecole Nationale des Sciences Appliquées d’Al-Hoceima

20
IV. REFERENCES :

https://www.cloudflare.com/fr-fr/learning/security/threats/owasp-top-10/
https://owasp.org/www-project-top-ten/
https://owasp.org/Top10/fr/A00_2021_Introduction/

https://developer.chrome.com/docs/devtools/overview?hl=fr
https://www.headspin.io/blog/chrome-devtools-a-complete-guide
https://developer.mozilla.org/fr/docs/Glossary
https://developer.chrome.com/docs/lighthouse/overview?hl=fr

Evolution of HTTP — MDN Web Docs


https://hpbn.co/brief-history-of-http/

Ecole Nationale des Sciences Appliquées d’Al-Hoceima

21

Vous aimerez peut-être aussi