Audit de code (plusieurs types) (2)

Problème d'espace blanc

Insérez la description de l'image ici

is_numeric () problème de saut d'espace blanc

Dans la fonction is_numeric (), il y a un problème de saut de caractère vide. L' Insérez la description de l'image ici
effet est le suivant.
Insérez la description de l'image ici
Ce qui peut être ajouté ici sont "", "\ r", "\ n", "\ t", "\ v", "\ f"

réduire()

Insérez la description de l'image ici
Ici, cette fonction supprimera "", "\ t", "\ n", "\ r", "\ 0", "\ x0B"
ci-dessus pour contourner la première condition afin de déterminer s'il s'agit d'une valeur.

Ci-dessous, nous continuons à regarder ce qui suit sinon, ce que nous voulons comprendre est intval () et strval ()

intval ()

Insérez la description de l'image ici
Il retourne la valeur int de var quand il réussit, et 0 s'il échoue. Un tableau vide renvoie 0 et un tableau non vide renvoie 1. Plus important encore, la valeur maximale d'intval dépend du système d'exploitation. La plage d'entiers signés maximale pour les systèmes 32 bits est de -2147483648 à 2147483647. Sur les systèmes 64 bits, la valeur d'entier signé maximale est 9223372036854775807.

La charge utile finale:? Number = 0,00% 00 ou? Number = 0,00% 00 ou? Number = 9223372036854775807% 00 Le% 00
derrière peut également être changé en% 20.
Je ne l'ai pas reproduit avec succès, je ne connais pas la raison. . . Mais l'idée est comme ça.

Nombre pseudo-aléatoire

mt_rand

Insérez la description de l'image ici

mt_srand

Insérez la description de l'image ici
Il y aura un problème de sécurité ici. Par exemple, après avoir utilisé la fonction mt_srand () pour semer des graines, les nombres aléatoires générés sont les mêmes. De cette façon, la valeur d'un autre nombre aléatoire peut être obtenue en inversant le germe de la fonction mt_rand (). L'outil recommandé ici est php_mt_seed, qui est disponible sur github, donc je ne mettrai pas le lien. Généralement, cela peut être fait conformément à l'inclusion du fichier. Pour plus de détails, veuillez cliquer sur

Opératrice

Insérez la description de l'image ici
Une logique très simple, nous donnons ici la table de priorité de l'opérateur
Insérez la description de l'image ici
puis regardons attentivement le contenu de la table, vous pouvez voir que la charge utile est construite, charge utile:? A = 1

Parse_url

Intime post syntaxe
Insérez la description de l'image ici
Notez la valeur de retour, null peut être utilisé dans les types faibles

Insérez la description de l'image ici
En regardant l'exemple,
Insérez la description de l'image ici
nous pouvons voir que les premier, deuxième et troisième si les jugements nous limitent à entrer _, 0, chiffres, lettres, etc. Voyons ce qui suit si les jugements, il est évident qu'il ne peut y avoir de nombres , Nous ne pouvons donc le contourner qu'en affectant null à la variable url. charge utile: _ = d ou. = d

Publié 25 articles originaux · A aimé 14 · Visites 5445

Je suppose que tu aimes

Origine blog.csdn.net/qq_40568770/article/details/102966856
conseillé
Classement