这道题思路很简单,但是有一些点需要注意,从头看起吧
题目中num和str两个变量都是以get方式提交的。str变量进行正则表达式匹配,规则”/\d+/sD
“的意思str匹配任一一个十进制的数字。preg_match
函数的作用是执行正则表达式,sD是修饰用的,那么我们可以确定str是字符串吧。然后题目又给了result变量,中间用and 连接,则两边只要一边为True即可执行下面的if语句从而输出flag.最后构建的payload为 :?Num=1&str=aaa
相关知识点链接:
正则表达式:https://www.cnblogs.com/dump/p/8269957.html
and && or ||的区别:https://blog.csdn.net/asty9000/article/details/80652064