攻防世界web新手
view_source
F12看源码
get_post
进入链接后提示如下:
构造url
提交后提示如下:
再次构造url
提交得到flag
robots
进入链接后什么都没有
看看robots.txt
可以看到disallow的位置就是我们要找的flag
backup
看到index.php,我们看看
发现没有什么变化,那么根据提示,我们看看备份文件,一般备份文件的后缀是.bak
当我们输入index.php.bak时可以下载该文件,下载后打开,得到flag
cookie
抓包看看
那我们就看看cookie.php
提示我们看看响应包,得到flag
disabled_button
看看这个按钮
可以看到这个按钮的作用实际上就是post传递一个auth=flag,那么我们自己传这样一个参数,得到flag
weak_auth
进入后是一个登陆界面,随便输一个用户名密码
说明用户是admin
可以看到这个题就是暴力破解,那么放到burp suite里跑个字典
可以看到密码就是123456
得到flag
simple_php
看php代码说明我们要构造a和b,让a和b的值都满足条件,就可以获得flag
那么首先看a,要a=0为真,a为真,所以a不可能等于0,要想解决这个问题,首先我们要知道php的特性。
由于php为弱类型语言,因此当不同类型的值进行==比较的时候会发生类型转换。正常情况下不同类型的值是不能比较的,php 为了比较进行了数据类型转换。把不同类型的值转换为相同类型后再比较。
具体转换规则可以看这篇文章《彻底解决php判断a==0为真引发的问题-类型转换》,这里不再赘述。
知道了转换规则,那么我们就可以构造了,得到flag
xff_referer
进入后提示如下:
那么我们就在请求包中通过x-forwarded-for伪造ip
注意xff加入的位置,我之前加入到末尾发现页面一直在加载没有响应,我想xff写在请求头中间就好了。
然后发现提示变化:
那么在伪造referer
得到flag
webshell
php的一句话木马,使用中国菜刀连接,中国菜刀可以从这个地方下载,
即可进入服务器
获得flag
当然,如果没有工具,那就手动构造请求post包
一句话木马中的变量是shell,所以我们传的变量就是shell
可以看到返回了当前路径的所有文件,看到了flag.txt
得到flag
command_execution
尝试ping一下本机127.0.0.1
可以看到ping的结果返回到了页面,那么尝试命令注入
命令注入有很多种方法,可以参考这两篇文章:文章1,文章2,这里不再赘述
这道题比较简单,没有waf,不需要绕过,我使用 | 进行注入
command 1 | command 2 只执行command2
可以看到执行了ls命令,现在找flag
得到flag
simple_js
随便输一个
看看源码,调试一下js
发现不论输入的密码是什么,最后都会跳到假密码FAUX PASSWORD HAHA
而真密码是初始的pass_enc
那么就把pass的值改为pass_enc,执行一下,注意14行的tab2下标要改成10,因为默认的pass长度为18,而修改后的pass长度为11,所以要修改,否则最后执行的时候p加入的就不是pass的最后一个值了(这个地方坑了我好久)
把获取到的字符串加上题目要求的flag格式即可得到flag
Comments | NOTHING