Bugku Web题

  1. Web2 听说聪明的人都能找到答案

    进入题目看到满天滑稽,然后一脸懵逼

    按F12查看源码,在Body下面找到被注释的Flag,20分到手

     

  2. 计算器

    进入题目可以看到一个输入框,尝试输入图片的答案,但发现只能够输入一位。F12查看源码,找到input输入框。

    发现使用maxlength属性限制了我们输入的位数,我们手动将其改为3。

返回界面重新输入答案,拿到Flag

 

  1. Web基础$_GET

    进入题目看到4行php代码

    Get请求是直接在url后加?参数和值。根据代码我们在后面添加?what=flag拿到Flag

    http://123.206.87.240:8002/get/?what=flag

     

  2. Web基础$_POST

    与上题相同,不过换成了POST请求,不能直接在Url中添加,我们需要通过抓包或者用浏览器插件添加参数和值。

    使用火狐的HackBar插件,拿到Flag

  3. 矛盾

    代码中提示不能为数值型,但值必须要等于1才能拿到Flag

     

    is_numeric() //判断是否是数字        在前面加!则相反,判断是否不为数字

    但我们值如果是1加上任何大小写字母都可以返回Flag,if($num==1)似乎没有作用

    最后发现,php是一种弱类型语言,例如下面两个例子,分别定义变量a=1asd

    将变量a转换为int数值型,a返回的结果为1,只将a字符串中的前面的数字1转换出来,后面的asd被省略

     

 

 

 

将变量a与数值1进行相等对比,返回结果为1,布尔类型中0=false,其他任意数字均为ture,即a最后的值为1

 

 

 

网上还有其他方法:来源:https://blog.csdn.net/xuchen16/article/details/82735533

num=1%00(%00为截断符)

  num=1x(X还可以是任何字母或者字符串)  php判断字符串以1开头即可判断等值

    num=1e0.1   用科学计数法表示数字1,既不是纯数字,其值又等于1

猜你喜欢

转载自www.cnblogs.com/hmomeng/p/11640897.html
今日推荐