开学第一天,除了准备一下下周信息安全实验班的考试,团队师傅告诉我还要准备启明星辰的答辩,貌似是全英答辩。。。。
晚上刷了一边bugku的题,准备写一下web题的题解。
1.web2
F12查看代码
KEY{Web-2-bugKssNNikls9100]
2.计算器
F12改一下maxlength值即可
flag{CTF-bugku-0032}
3.GET
这道题的考点就在于对GET的用法,GET和POST都是传入参数的两种方式,区别就在于GET变量可以直接从URL上体现,POST不可以。
因此直接在URL上构造what=flag
flag{bugku_get_su8kej2en}
4.post
POST传入参数可以通过火狐自带插件
flag{bugku_get_ssseint67se}
5.矛盾
这里面涉及到一个函数is_numeric,功能是内容验证是否为一个数字
题意就是$num=1但是num还不能是一个数字
因此想到了科学计数法 构造num=1e0意思是1*10的0次方 发现不成功
又想到了PHP有一个截断函数 %00 试了一下假如num=1%00 结果成功了
6.web3
点开页面 有两个页面来回闪
看代码也没什么发现
就用burpsuit抓一下数据包吧
发现根本抓不到数据包
再看一下网站代码
这个应该是一串加密字符。。。。解码之后
KEY{J2sa42ahJK-HS11III}
问了学长,他说不是所有这种情况都要用bp抓包
抓包适用于有数据或者流量负载到网站中,所以这个根本抓不到数据包的。
7.域名解析
很显然这是一个本地域名,直接是无法访问的 因此在本地C盘中host文件中添加一下这个域名就可以了。
再去访问这个域名就可以了
·8.本地包含
有include和Request 大概是PHP文件包含
可以用file_get_content函数将整个文件或者数据读到一个字符串中 hello=file_get_content("./flag.php")
就可以拿到flag了。