Maison Problème commun Quelles connaissances de base sont requises pour pénétrer le Web ?

Quelles connaissances de base sont requises pour pénétrer le Web ?

Jul 24, 2020 pm 01:18 PM
web渗透

Quelles connaissances de base sont requises pour pénétrer le Web ?

Bases de la pénétration du Web

Bases du réseau

Protocole IP

Le protocole IP est défini dans la troisième couche d'OSI-RM——Couche réseau

Le protocole IP est sans connexion. Les routeurs des nœuds du réseau IP sont adressés en fonction de l'adresse IP de l'en-tête de chaque paquet IP. De cette manière, les paquets IP appartenant au même message envoyés par le même hôte. peut emprunter un chemin différent jusqu'à l'hôte de destination.

Le protocole TCP/IP n'est pas entièrement conforme au modèle de référence OSI à sept couches.

Les 7 couches de bas en haut :

1 couche physique, 2 couches liaison de données, 3 couches réseau, 4 Transport couche, 5 couches de session, 6 couches de présentation, 7 couches d'application.

Les couches supérieures (c'est-à-dire 7, 6, 5 et 4) définissent les fonctions de l'application

Les 3 couches inférieures (c'est-à-dire 3, 2 et). 1 couches) sont principalement destinées au flux de données de bout en bout du réseau.

Le protocole de communication TCP/IP adopte une structure hiérarchique à 4 couches. Chaque couche appelle le réseau fourni par la couche suivante pour répondre à ses propres besoins.

Les 4 couches sont :

couche d'application, couche de transport, couche de réseau d'interconnexion et couche d'interface réseau.

Protocole UDP

UDP est un protocole de datagramme utilisateur, qui est un type de modèle de référence OSISans connexionProtocole de couche de transport.

UDP présente les inconvénients de ne pas assurer le regroupement de paquets, l'assemblage et ne peut pas trier les paquets, c'est-à-dire lorsqu'un message une fois envoyé , il n'y a aucun moyen de savoir s'il est arrivé sain et sauf et intact.

Protocole TCP

TCP est un orienté connexion, fiable, basé sur Couche de transportprotocole de communication pour les flux d'octets, défini par la RFC 793 de l'IETF.

La couche application envoie un flux de données représenté par des octets de 8 bits pour la transmission inter-réseau à la couche TCP, puis TCP divise le flux de données en segments de longueur appropriée (généralement affectés par le réseau auquel le l'ordinateur est connecté) La limite maximale de l'unité de transmission (MTU ) de la couche liaison de données).

Ensuite, TCP transmet le paquet résultat à la couche IP, qui transmet le paquet à la couche TCP de l'entité réceptrice via le réseau. Afin de garantir qu'aucune perte de paquets ne se produise, TCP attribue à chaque paquet un numéro de séquence. En même temps, le numéro de séquence garantit également que les paquets transmis à l'entité finale réceptrice sont reçus dans l'ordre .

Ensuite, l'entité réceptrice renvoie un

accusé de réception correspondant (ACK) pour le paquet reçu avec succès si l'entité émettrice se trouve dans un délai raisonnable aller-retour (RTT) ; si aucun accusé de réception n'est reçu, le paquet de données correspondant est supposé perdu et sera retransmis. TCP utilise une fonction de somme de contrôle pour vérifier s'il y a des erreurs dans les données calcule la somme de contrôle lors de l'envoi et de la réception.

Une brève description de la poignée de main à trois voies TCP et de la vague à quatre voies

Poignée de main à trois voies

Première poignée de main :

Pour communiquer avec le serveur, le client doit d'abord informer le serveur, puis envoyer un signal de demande de connexion de SYN=1, "Frère, serveur , je veux te donner Parler."

Deuxième poignée de main :

Lorsque le serveur reçoit la demande de connexion du client , il doit donner au client un message de confirmation, "Je comprends (ACK ), je suis prêt , pouvez-vous vous connecter maintenant (SYN ) ».

La troisième poignée de main :

Lorsque le client reçoit les informations de confirmation de connexion du serveur , il doit informer poliment le serveur : "D'accord, démarrons la connexion (ACK )".

L'ensemble du processus d'établissement d'une connexion est maintenant terminé et la prochaine étape est le processus de communication et de transmission d'informations les uns aux autres en même temps.

Agitez quatre fois

Agitez pour la première fois : les deux parties ont presque communiqué,

A ce moment-là, le client a également terminé, qu'est-ce que ensuite ? Déconnectez la connexion de communication, alors dites au serveur "J'ai terminé (FIN )". À ce moment, il est en attente de mettre fin à la connexion.

Salut pour la deuxième fois : le serveur sait que le client n'a rien à dire Le serveur a encore deux choses à dire au client à ce moment, "Je sais que tu as fini de parler( ACK), laissez-moi vous dire encore quelques mots, &*……%¥ ».

Sauve une troisième fois : A ce moment, le client est tout ouïe et continue d'attendre la fin, et le serveur a fini de parler Il est maintenant en état d'attente. pour fermer la connexion et dira au client : "J'ai terminé, rompons (FIN )".

La quatrième vague : Le client sait que le serveur a fini de parler, et il doit également le dire au serveur (ACK), car la connexion et la déconnexion nécessitent que les deux parties appuient sur la fermeture opération. On, le client définit également une minuterie pour lui-même, car il ne sait pas si la phrase qui vient d'être prononcée peut atteindre avec précision le serveur (instabilité du réseau ou autres raisons du réseau causées par d'autres facteurs),

L'heure par défaut. est défini C'est la somme du temps maximum des deux communications. Au-delà de ce temps, on suppose que le serveur a reçu ses propres informations de confirmation A ce moment, le client fermera sa propre connexion. reçoit la notification de confirmation du client, fermez immédiatement la connexion côté serveur. À ce stade, tout le processus de communication entre les deux parties se termine.

Une déclaration doit être faite ici :

Ce n'est pas nécessairement le client qui déconnecte le lien. N'importe qui peut lancer la commande de déconnexion en premier. De plus, il n'y a pas de norme fixe entre le client et. le serveur. Qui l’initie en premier ? Celui qui fait la demande est le client.

Pourquoi utiliser le mécanisme de poignée de main à trois ?

Supposons la situation anormale suivante :

Le client a envoyé le premier message de requête au serveur, mais le message n'a pas été rejeté sur le réseau, mais il est bloqué quelque part pendant longtemps et le client ne peut pas recevoir de confirmation du serveur. Il pense que le message est perdu, il renvoie donc le message cette fois-ci avec succès au serveur. Si la négociation à trois n'est pas utilisée, le serveur. il suffit de le faire. Le message est acquitté et une connexion est établie.

Après l'établissement et la libération de la connexion, le premier message envoyé et bloqué sur le réseau est arrivé au serveur. Le serveur pensait que le client avait renvoyé une demande de connexion (en fait, côté client, la connexion a été établie). déjà expiré), et une autre confirmation est envoyée au client.

Mais le client pensait qu'il n'avait pas envoyé le message de demande, il a donc ignoré la confirmation envoyée par le serveur, et le serveur a pensé qu'une nouvelle connexion était établie, il a donc continué à attendre que A envoie des données, causé Il s'agit d'un gaspillage de ressources du serveur et peut entraîner des risques de sécurité.

Par conséquent, si le mécanisme de prise de contact à trois voies est utilisé, une fois que le serveur a envoyé la confirmation, il ne reçoit pas la confirmation du client, il sait donc que la connexion n'a pas été établie, donc les ressources ne seront pas gaspillées dans cette attente insensée.

TCP/IP fait-il référence à ces deux protocoles ?

TCP/IP (Transmission Control Protocol/Internet Protocol) est un protocole de communication réseau qui régule tous les équipements de communication, notamment le format et méthode de transmission d'échange de données entre un hôte et un autre hôte.

Sliding Window Protocol

Sliding Window Protocol est une application du protocole TCP et est utilisé pour Contrôle de flux lors de la transmission des données du réseau pour éviter les encombrements.

Ce protocole permet à l'expéditeur d'envoyer plusieurs paquets de données avant de s'arrêter et d'attendre un accusé de réception. Étant donné que l'expéditeur n'a pas besoin de s'arrêter et d'attendre une confirmation à chaque fois qu'un paquet est envoyé, ce protocole peut accélérer la transmission des données et améliorer le débit du réseau.

HTTP

HTTP est un Protocole de transfert hypertexteC'est le protocole réseau le plus utilisé sur Internet. Tous les fichiers WWW doivent être conformes à cette norme.

Habituellement, le client HTTP initie une demande pour établir un TCPla valeur par défaut est 80port ) >Connecter. HTTPLe serveur écoute les requêtes envoyées par le client sur ce port. Une fois reçoit la requête, le serveur renvoie (au client) une ligne de statut, telle que "HTTP/1.1 200 OK", et un message (de réponse), dont le corps du message may Est le fichier demandé, un message d'erreur ou d'autres informations.

HTTPLa raison de l'utilisation de TCP au lieu d'UDP est que (ouverture) une page Web doit transmettre beaucoup de données, et le protocole TCP assure le contrôle de la transmission, l'organisation des données dans l'ordre et correction des erreurs.

Les ressources demandées via les protocoles HTTP ou HTTPS sont identifiées par l'Uniform Resource Identifier (ou, plus précisément, par des URL).

HTTPS

HTTPS est le Secure Sockets Layer Hypertext Transfer Protocol, un canal HTTP ciblant la sécurité, tout simplement, c'est la version sécurisée de HTTP.

Protocole de transfert hypertexte Le protocole HTTP est utilisé pour transférer des informations entre les navigateurs Web et les serveurs de sites Web. Le protocole HTTP envoie le contenu en texte brut et ne fournit aucune forme de cryptage des données Si un attaquant intercepte le message de transmission entre le navigateur Web et le serveur du site Web, il peut le lire. Comprendre directement les informations qu'il contient, le protocole HTTP n'est donc pas adapté à la transmission de certaines informations sensibles, telles que les numéros de carte de crédit, les mots de passe, etc.

Afin de résoudre cette lacune du protocole HTTP, un autre protocole doit être utilisé : Secure Sockets Layer Hypertext Transfer Protocol HTTPS. Pour la sécurité de la transmission des données, HTTPS ajoute le protocole SSL à HTTP SSL s'appuie sur des certificats pour vérifier l'identité du serveur et assurer la communication entre le navigateur et le serveur. Cryptage des communications.

Piratage HTTP

HttpsChiffré uniquement en transit, Httpscryptage par clé publique, Privé la clé de décryptage , la clé publique et la clé privée sont générées par un algorithme de chiffrement asymétrique .

Détournement HTTPS :

Le client envoie une requête au serveur, Le serveur renvoie un certificat CA de clé publiqueau client, et le client obtient le certificat de clé publique Générez aléatoirement une clé symétrique sur le client. Cette clé symétrique sera utilisée pour chiffrer tout le trafic de données ultérieur , puis la clé symétrique utilise la clé symétrique. clé publique Chiffrez et envoyez-la au serveur Le serveur possède la clé privée correspondant à la clé publique puis la déchiffre.

Les principales différences entre HTTPS et HTTP sont les quatre points suivants :

1 Le protocole https nécessite ca. Demander un certificat, il existe généralement peu de certificats gratuits et vous devez payer des frais.

2. http est un protocole de transfert hypertexte, et les informations sont transmission en texte clair, tandis que https est un protocole sslcrypté sécurisé.

3. http et https utilisent des méthodes de connexion complètement différentes et utilisent des ports différents Le premier est 80 et le second est 443.

4. La connexion http est très simple et est sans état ; le protocole HTTPS est construit à partir du SSL+HTTPprotocole et peut être apatride 🎜>Le protocole réseau de transmission cryptée et d'authentification d'identité

est plus sécurisé que le protocole http.

Remarque :

Apatride (le protocole n'a pas de mémoire pour le traitement des transactions, la vie n'est que comme la première fois) : Chaque communication entre le client et le serveur est un processus indépendant

. Les applications Web doivent suivre les sessions client (communication en plusieurs étapes). Pour les applications qui n'utilisent pas de cookies, le client doit se réauthentifier pour chaque demande (irréaliste). La session est utilisée pour suivre les traces du comportement de l'utilisateur après l'authentification de l'utilisateur (). expérience utilisateur améliorée, mais augmente le trafic d'attaque)

Résolution du nom de domaine DNS

Le client émet une requête DNS pour traduire l'adresse IP ou l'hôte name.DNS server Après réception de la demande du client :

1. Vérifiez le cache du serveur DNS

Si l'adresse ou le nom demandé est trouvé, un message de réponse est envoyé au client <.>

2. Si non trouvé, recherchez dans la base de données Si l'adresse ou le nom demandé est trouvé, un message de réponse est envoyé au client

3. Si non trouvé. , puis Envoyez la demande au serveur DNS du domaine racine , et séquentiellement recherchez le domaine de premier niveau à partir du domaine racine, puis recherchez le domaine de deuxième niveau à partir du haut- niveau, puis recherchez le domaine de troisième niveau à partir du domaine de deuxième niveau jusqu'à ce que vous trouviez celui que vous souhaitez résoudre. Adresse ou nom, c'est-à-dire envoyer un message de réponse au serveur DNS du réseau où se trouve le client. . Après avoir reçu la réponse, le serveur DNS la stocke maintenant dans le cache, puis envoie le résultat de l'analyse au client

4. S'il n'est pas trouvé, alors Renvoyer un message d'erreur

Pour plus de connaissances connexes, veuillez visiter : Site Web PHP chinois !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Recherche approfondie Entrée du site officiel Deepseek Recherche approfondie Entrée du site officiel Deepseek Mar 12, 2025 pm 01:33 PM

Au début de 2025, l'IA domestique "Deepseek" a fait un début magnifique! Ce modèle d'IA gratuit et open source a une performance comparable à la version officielle d'OpenAI d'Openai, et a été entièrement lancé sur le côté Web, l'application et l'API, prenant en charge l'utilisation multi-terminale des versions iOS, Android et Web. Recherche approfondie du site officiel de Deepseek et du guide d'utilisation: Adresse officielle du site Web: https://www.deepseek.com/using étapes pour la version Web: cliquez sur le lien ci-dessus pour entrer le site officiel Deepseek. Cliquez sur le bouton "Démarrer la conversation" sur la page d'accueil. Pour la première utilisation, vous devez vous connecter avec votre code de vérification de téléphone mobile. Après vous être connecté, vous pouvez entrer dans l'interface de dialogue. Deepseek est puissant, peut écrire du code, lire des fichiers et créer du code

Version Web Deepseek Entrée officielle Version Web Deepseek Entrée officielle Mar 12, 2025 pm 01:42 PM

La profondeur domestique de l'IA Dark Horse a fortement augmenté, choquant l'industrie mondiale de l'IA! Cette société chinoise de renseignement artificiel, qui n'a été créée que depuis un an et demi, a gagné des éloges des utilisateurs mondiaux pour ses maquettes gratuites et open source, Deepseek-V3 et Deepseek-R1. Deepseek-R1 est désormais entièrement lancé, avec des performances comparables à la version officielle d'Openaio1! Vous pouvez vivre ses fonctions puissantes sur la page Web, l'application et l'interface API. Méthode de téléchargement: prend en charge les systèmes iOS et Android, les utilisateurs peuvent le télécharger via l'App Store; Version Web Deepseek Entrée officielle: HT

Comment résoudre le problème des serveurs occupés pour Deepseek Comment résoudre le problème des serveurs occupés pour Deepseek Mar 12, 2025 pm 01:39 PM

Deepseek: Comment gérer l'IA populaire qui est encombré de serveurs? En tant qu'IA chaude en 2025, Deepseek est gratuit et open source et a une performance comparable à la version officielle d'Openaio1, qui montre sa popularité. Cependant, une concurrence élevée apporte également le problème de l'agitation du serveur. Cet article analysera les raisons et fournira des stratégies d'adaptation. Entrée de la version Web Deepseek: https://www.deepseek.com/deepseek serveur Raison: Accès simultané: des fonctionnalités gratuites et puissantes de Deepseek attirent un grand nombre d'utilisateurs à utiliser en même temps, ce qui entraîne une charge de serveur excessive. Cyber ​​Attack: Il est rapporté que Deepseek a un impact sur l'industrie financière américaine.