Maintenant, avant d'approfondir la façon d'exploiter et de découvrir les vulnérabilités, j'aimerais faire une pause et revenir une seconde en
arrière et voir ce qui se passe exactement lorsqu'un utilisateur clique sur un certain lien.
Nous avons donc ici le site client.
C'est donc votre ordinateur avec le site Web de messagerie qui s'affiche pour l'utilisateur.
Donc tout cela est chargé sur votre ordinateur, sur le client.
Et puis nous avons le serveur, qui contient le code qui s'exécute si le site Web est fonctionnel et s'il
utilise du code.
Ainsi, lorsque vous cliquez sur un lien.
Le site Web de courrier électronique ou le côté client, une partie de la page du site Web générera une demande de sorte
qu'il n'effectuera aucun calcul la plupart du temps.
Maintenant, il y a parfois du code côté client et nous le verrons.
Mais généralement, le code du site client générera une demande qui est envoyée au site Web, au serveur Web, et
le serveur Web aura un code fonctionnel tel que BHP ou Python, Ruby, n'importe quel langage de programmation.
Et c'est la plupart du temps que le code interagit avec la base de données,
obtient une sorte d'information, puis envoie l'information en réponse au site Web, au navigateur et le navigateur s'affichera
en HTML.
Ainsi, le code, le code fonctionnel ou le code de calcul est généralement stocké côté serveur.
Et la façon dont la plupart de ces sites Web fonctionnent est qu'ils génèrent une demande, qu'ils l'envoient au serveur, au
serveur, exécutent la demande et la renvoient.
Ainsi, lorsque nous essayons de pirater des sites Web et de les exploiter, nous jouons généralement avec les
demandes et essayons de modifier cette demande afin qu'elle effectue certaines actions qui nous aideraient à obtenir des informations ou à exécuter
un certain type de code qui nous donnerait une connexion inversée.
Maintenant, il y a deux types de demandes, il y a les demandes d'obtention et les demandes de publication.
Prenons un exemple, donc si nous allons ici sur l'inclusion finale, vous verrez que nous avons une
variable appelée Page et que la valeur de celle-ci est include that.
Donc ici, il s'agit d'une demande d'obtention car nous pouvons en voir les valeurs dans l'URL.
Nous pouvons donc voir que la page est égale à inclure cela.
Cette page demande donc à une autre page d'inclure une autre page appelée Index Dot.
Maintenant, nous n'entrerons pas dans les détails de ce que cela signifie.
Tout ce qui nous préoccupe, c'est d'avoir un exemple, et c'est l'exemple.
C'est donc la variable pour laquelle on nous donne une valeur, qui est Page, et nous lui
donnons une valeur d'include Dogpatch.
C'est donc une demande d'obtention.
Un exemple de demande de publication est le téléchargement de fichier, donc si nous allons au téléchargement de fichier lorsque vous téléchargez quelque chose
ici.
Alors permettez-moi de télécharger quelque chose.
Vous verrez que l'URL n'est pas modifiée, mais la demande, une idée du site Web, l'image est en fait
téléchargée sur le serveur et tout ça, mais l'URL a toujours la même apparence.
Mais le site Web a envoyé des informations.
Le site Web Hatami a donc envoyé des informations au serveur.
Vous n'avez tout simplement pas vu les informations ici, car elles ont été envoyées par courrier au lieu d'obtenir.
Donc.
Le premier problème maintenant est que nous ne pouvons pas voir les coûts des affiches, nous ne pouvons pas les modifier
car ils ne sont pas affichés ici dans l'URL dans le cas où nous pouvons les modifier directement à partir de l'URL.
Un autre problème est que beaucoup de ces sites Web à l'avenir seront utilisés pour la sécurité et
qu'ils utiliseront du code côté client.
Donc, si cela est utilisé, la demande est en fait modifiée avant d'être envoyée.
Il y aura donc des filtres et des trucs qui fonctionneront côté client qui modifieront notre code avant de l'envoyer.
Donc, la meilleure façon d'intercepter les requêtes et pour que nous puissions voir les requêtes de publication, nous allons utiliser
un proxy.
Le proxy que nous allons utiliser est le proxy de naissance.
Donc, comment la naissance va fonctionner, c'est que nous avons notre client ici et nous avons le serveur Web, comme nous
l'avons vu auparavant, et nous avons le site Web de courrier électronique chargé sur notre machine à bonbons.
Ainsi, lorsque nous envoyons la demande à la place, au lieu de l'envoyer directement au navigateur Web, nous allons en fait
configurer notre navigateur pour envoyer la demande à berp.
C'est donc notre proxy qui s'exécute ici.
Berp verra tous les paramètres qui sont affichés sur le site Web.
Nous allons donc voir les demandes de publication pour obtenir des demandes et nous les verrons.
Après tout, le code client a été appliqué.
Ainsi, certains sites Web appliquent le code Clydeside, comme je l'ai dit à la demande avant de l'envoyer.
Nous allons donc pouvoir voir les requêtes après l'application du code du site client.
Ceci est très important car de nombreux sites Web utilisent le filtrage côté client et nous
pourrons alors contourner tous ces filtres en interceptant la demande.
Ensuite, une fois que nous avons modifié la demande dans berp, nous allons la transmettre au site Web.
Le site Web l'exécutera et nous le rendra.
Tout cela deviendra plus clair dans la prochaine conférence car nous utilisons le proxy berp dans la pratique pour intercepter et
modifier les requêtes.