Maison  >  Article  >  cadre php  >  Comment Laravel corrige les vulnérabilités des sites Web

Comment Laravel corrige les vulnérabilités des sites Web

藏色散人
藏色散人avant
2020-06-12 15:11:503794parcourir

La colonne tutorielle suivante développée par Laravel vous présentera la méthode de Laravel pour réparer les vulnérabilités des sites Web. J'espère qu'elle sera utile aux amis qui en ont besoin !

Comment Laravel corrige les vulnérabilités des sites Web

Le framework Laravel est un framework de développement actuellement utilisé par de nombreux sites Web et opérateurs d'APP. Parce que de nombreux sites Web sont utilisés, de nombreux attaquants sont constamment Nous avons effectué des tests de vulnérabilité sur le site Web. Lorsque nous avons effectué des tests de vulnérabilité sur le système, nous avons découvert qu'il existait une vulnérabilité REC. Il s'agissait principalement d'une vulnérabilité XSRF. Analysons la vulnérabilité en détail, comment l'exploiter et comment la corriger.

L'utilisation de cette vulnérabilité Laravel REC nécessite des conditions. L'APP_KEY doit être divulguée avant de pouvoir être exploitée et déclenchée avec succès. Notre technologie de sécurité SINE a découvert au total deux endroits où des vulnérabilités de site Web peuvent se produire. Le premier est le champ des cookies. le paquet Post, et l'autre est le champ d'en-tête HTTP qui peut insérer du code malveillant dans le backend du site Web

Construisons-le. Jetons un coup d'œil à l'environnement pour les tests de vulnérabilité des sites Web. Nous utilisons le système Linux Centos, PHP5. .5, la base de données est MySQL et elle est construite à l'aide de l'environnement Apache. La version de Laravel utilisée est la 5.6.28. Tout d'abord, nous allons sur le site officiel pour télécharger la version et la décompresser dans le chemin du répertoire du site Web Apache. Tout d'abord, dans nos données de publication, nous pouvons voir que dans notre code, nous appellerons plus d'une douzaine de classes, appellerons des objets dans les classes et attribuerons des paramètres dans les cookies et vérifierons les valeurs csrftoken, nous avons constaté que app_key peut être utilisé. pour l'exploitation de la vulnérabilité. Nous utilisons d'abord des cookies pour le reproduire :

Comment Laravel corrige les vulnérabilités des sites Web

Le code est le suivant :

POST / HTTP/1.2
Host: 127.0.0.2:80
Cookie: safe_SESSION=PHPSTORM; 5LqG5L+d6K+B5omA6L6T5Ye655qE57yW56CB5L2N5Y+v6K+75a2X56ym77yMQmFzZTY05Yi25a6a5LqG5LiA5Liq57yW56CB6KGo77yM5Lul5L6/6L+b6KGM57uf5LiA6L2s5o2i44CC57yW56CB6KGo55qE5aSn5bCP5Li6Ml42PTY077yM6L+Z5Lmf5pivQmFzZTY05ZCN56ew55qE55Sx5p2l44CCDQoNCkJhc2U2NOe8lueggeihqA==;
Content-Type: application/x-www-form-
Connection: open
Content-Length: 1

Dans le code ci-dessus, il est dans les cookies La valeur cryptée est ce que nous voulons. Le code d'attaque falsifié soumet la requête POST au site Web. Il déchiffrera d'abord la clé APP et lui attribuera une valeur. Si le décryptage réussit, il vérifiera la valeur dans les cookies et la désérialisera. , puis si la vulnérabilité se produit, la vulnérabilité RCE sera déclenchée.

Utilisez la vulnérabilité dans la méthode d'en-tête http. Testons la vulnérabilité. Tout d'abord, nous allons construire un code similaire aux cookies, comme suit : 🎜>
POST / HTTP/1.2
Host: 127.0.0.2:80
X-XSRF-TOKEN: +B5omA6L6T5Ye655qE57yW56CB5L2N5Y+v6K+75a2X56ym77yMQmFzZTY05Yi25a6a5LqG5LiA5Liq57yW56CB6KGo77yM5Lul5L6/6L+b6KGM57uf5LiA6L2s5o2i44CC57yW56CB6KGo55qE5aSn5bCP5Li6Ml42PTY077yM6L+Z5Lmf5pivQmFzZTY05ZCN56ew55qE55Sx5p2l44CCDQoNCkJhc2U2NOe8lueggeihqA==;
Content-Type: application/x-www-form-
Connection: open
Content-Length: 1

Comment Laravel corrige les vulnérabilités des sites WebRegardez cette valeur X-XSRF-TOKEN : ici. Le framework Laravel jugera et vérifiera cette valeur pendant le processus de soumission. Si le décryptage est réussi, l'opération de désérialisation. sera effectué. Je ne les passerai pas en revue un par un ici. Introduction et explication.

Comment corriger la vulnérabilité dans Laravel ?

Notre technologie de sécurité SINE a mis à niveau la version de Laravel et a trouvé. que la dernière version 5.6.30 présente la vulnérabilité rce. Des réparations ont été effectuées. D'après notre comparaison des codes, nous pouvons voir que les opérations de décryptage et d'analyse des cookies ont été jugées et que la valeur static::serialized() a été écrite. plus Ceci est également ajouté à X-XSRF-TOKEN Value. Si vous ne savez pas grand-chose sur le code, vous pouvez également trouver une société de sécurité de site Web professionnelle pour le réparer. J'espère également que grâce à ce partage, davantage de personnes pourront comprendre les vulnérabilités du site Web, les causes des vulnérabilités et comment les corriger. Ce n'est que lorsque le site Web est sûr que nous pourrons explorer librement le marché et faire du bon travail en marketing.

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:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer