南邮/x00(ereg和strpos)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/destiny1507/article/details/86629434

题目
点开题目链接后发现是代码审计;
这道题有两种思路:

-利用%00截断
这个也是ereg函数一个漏洞,类似于0x00截断,都是因为这些函数遇到ASCII码为0的字符时,会自动默认到了结尾而停止;
这里有一个需要注意的:我们构造的flag是需要一层url解码的,#在url中是特殊字符,因此我们需要先将#编码为%23
结果

  • 利用ereg和strpos函数处理数组的特性
    当ereg函数处理数组时,会直接返回NULL,而===又是强判断,NULL自然不等于FALSE,因此绕过第一个条件;
    strpos函数也无法处理数组,直接返回NULL;
    因此构造?nctf[]=%23biubiubiu即可得到flag:
    结果

猜你喜欢

转载自blog.csdn.net/destiny1507/article/details/86629434