前言:
两个月前做完bugku的web入门题,一直没有什么时间总结,最近又在做buuctf的pwn题,抽出一点时间总结一下web。
1.web2
出来一张图片,我没直接F12,就能看到注释了的flag。
2.计算器
原本框中只能输入一位,我们F12后,改写js代码,输入正确结果即可得到flag。
3.web基础$_GET
题目给了php源代码,我们发现只要what为flag就可以得到flag了,所以我们就让what=flag。
4.web基础$_POST
与上题一样是给what传值,不过这次用的是POST传值,我们用burp即可。
5.矛盾
如题目所言,需要我们传值的是数字,题目检测的值又不能是数字,这样该怎么办呢?
php是一种弱类型语言,我们可以在数字后面加上一个字母,就可以使得类型改变,同时字母不会计入数字之中。
我们在1后面加入一个a,我们就可以绕过题目的检测了。
6.web3
打开此题发现有提示:
既然在这里,我们就想到页面源代码:
果然,源代码里有一段加密的字符串,分析一下,是HTML编码,解码就行。
7.域名解析
题目提示说把 flag.baidu.com 解析到123.206.87.240 就能拿到flag,我们就直接照做就行:
首先访问123.206.87.240,
然后用burp抓包,将host那一行改为flag.baidu.com即可。
8.你必须让他停下
题目已经说的很清楚了,必须停下来,那我们就让他停下即可:
怎么停下呢?这里我们可以用burp抓包,发到repeater里边,然后,多go几次,就会出现flag了:
9.变量1
打开题目看到一段PHP代码:
我们发现这里出现可变变量,可变变量是PHP中的一种特殊变量,可以联想成c语言中的双重指针,就是可以让一串字符串变成变量名。知道了这些,我们就可以让args=GLOBALS,这样就可以打印出全部内容了:
10.web5
打开题目,发现一个输入框:
先随便输入一点东西:
在好好看看?(错别字? 通假字?)我们查看源代码:
发现一堆奇怪的符号,这些是什么呢?有经验的web狗肯定知道,这么多括号啥的,肯定是js编码啥的,我们用js编一下,就知道了。
不用专门找js编译器,浏览器中就有:
按下F12,点开console,把这段括号复制进去就行:
出来了,但是根据题目提示,格式不对,我们把他放到输入框中看看:
这是什么意思?再看提示,貌似是大写的。。。
果然全部换成大写就行了。
11.头等舱
打开页面:
查看源代码也什么都没。。。
我们抓包看看:
12.网站被黑
打开题目看到灰客联盟,在查看源代码,burp抓包无果后,我们直接御剑扫描端口:
扫描出shell.php,我们点进去看看:
要输入密码,我们直接burp弱口令爆破就行。
爆破出密码为hack:
13.管理员系统
进去就看到要输入账号密码,我们查看页面源代码看看:
一直往下拖就会看到一串加密的字符串,一眼看出是base64加密,解密为:
test123,试着输入进去:
发现IP禁止访问,要本地登录,我们就联想到x-forwarded-for了。
burp抓包,加入x-forwarded-for:127.0.0.1:
14.web4
题目提示:看看源代码
我们就看看页面源代码:
发现一些加密字符串,一眼看出URL编码,burp中decord:
解码后出现一段代码,大致意思,把67d709b2b54aa2aa648cf6e87a7114f1输入框中即可出flag:
15.flag在index里
题目提示:flag在index里
打开index.php没有,查看源代码也没有,隐藏了,点击click:
非常明显的文件包含漏洞:改为index.php试试:
啥也没有,估计是代码,显示不了,我们加密输出:
我们在等于号后面加上php://filter/read=convert.base64-encode/resource=index.php,这样就会输出base64编码后的代码,再解码就行:
解码后:
16.输入密码查看flag
打开页面,发现要输入密码
要求输入五位数字密码查看,我们直接使用burp的暴力破解intruder选项即可:
接着点击start sttack即可,等待几分钟,获得答案:
17.备份是个好习惯
题目提示:备份
既然是备份,那么我们就在index.php后面加一个.bak,这样我们就可以下载备份文件了
下载好后直接删除bak后缀就可以查看了:
我们看到源码,大致意思是:输入key会置换为空,输入的key1和key2加密前的值不同,加密后的值相同就可输出flag。
输入key置换为空:我们可以用双写绕过,输入kekeyy1和kekeyy2绕过。
对于md5来说,我们知道md5不能处理数组,会返回NULL,这样就可以绕过检查了。
18.成绩单
打开页面:
发现sql注入漏洞:
接下来就是经典的数据泄露了
泄露表名
代码:
id=-1’ union select 1,2,3,group_concat(table_name) from information_schema.tables where table_schema=database()#
泄露列名
代码:
id=-1’ union select 1,2,3,group_concat(column_name) from information_schema.columns where table_name=‘fl4g’#
泄露内容
代码:
id=-1’ union select 1,2,3,group_concat(skctf_flag) from fl4g#