第一题:view_source


根据题目描述,查看源代码ctrl+u

发现flag
cyberpeace{aa33e5cf6a924396964615dc5acc854f}
第二题:robots


根据题目描述查看robots协议内容,访问/robots.txt

发现flag地址,根据robots协议里获得的地址,访问flag文件

发现flag
cyberpeace{92aae6dbae2e0846fd2ec37f5926a469}
第三题:backup


根据题目描述,在index.php文件后面添加常用备份文件拓展名 .bak

下载备份文件查看
发现flag
Cyberpeace{855A1C4B3401294CB6604CCC98BDE334}
第四题:cookie


根据提示得知cookie里有东西,打开浏览器开发者工具,并重新载入抓包获取cookie

发现一个地址,访问此地址

访问后页面回显 See the http response 查看http响应
利用开发者工具重新抓包查看响应包

发现flag
cyberpeace{c37de51af970335a2b92bc5742a8fc82}
第五题:disabled_button


根据题目描述猜测本题考点是前端知识,首先查看源代码

发现disabled元素,删除此元素,发现按钮可以点击。点击按钮。
发现flag

cyberpeace{71dcd5db7f61196f70f22d11de844e87}
第六题:weak_auth


发现一个没有验证码的登录窗口,弱密码猜测一下,admin/111111

使用bp抓包,并将密码设置成参数,导入字典爆破。


爆破成功,密码是123456,在页面输入账号密码:admin/123456

发现flag
cyberpeace{0c7d10a91ed6138d90216b8c2c47d49c}
第七题:simple_php


发现一段php代码,进行代码审计
<?php
show_source(__FILE__);
include("config.php"); /*包含config.php文件*/
$a=@$_GET['a'];
$b=@$_GET['b'];
if($a==0 and $a){
echo $flag1;
}
if(is_numeric($b)){
exit();
} /*检测变量b是否为数字或数字字符串*/
if($b>1234){
echo $flag2;
}
?>
通过代码审计得出payload
http://111.200.241.244:64291/?a=0asd&b=2345 a

得出flag
Cyberpeace{647E37C7627CC3E4019EC69324F66C7C}
第八题:get_post


根据页面提示,以get方式传参变量a=1

同时以post方式传参变量b=2

得到flag
cyberpeace{263c60dd6d3627805309b962262f104d}
第九题:xff_referer


页面显示ip地址必须为123.123.123.123
通过bp抓包伪造xff

页面回显必须来自www.googie.com
修改数据包伪造referer

得到flag
cyberpeace{5754ee4e7789af3878dcc28f1a3901f1}
第十题:webshell


题目描述得知,index.php里存在一句话木马
直接post方式调用

发现有个flag.txt文件,查看文件内容。

发现flag
cyberpeace{2765ff4db8bda09b272ff0518654df3d}
第十一题:command_execution


输入127.0.0.1|find / -name “flag.txt”

输入127.0.0.1|cat /home/flag.txt

得到flag
cyberpeace{cd5ede8e07747afc4fa495ac618f6e6b}
第十二题:simple_js


输入弱密码测试

发现无论输入什么密码显示结果都一样
查看源码

发现这段JS代码表示完全无论我们输入的什么内容,结果都是一样的,所以判断这段代码无用。
有用的是
String["fromCharCode"](dechiffre("\x35\x35\x2c\x35\x36\x2c\x35\x34\x2c\x37\x39\x2c\x31\x31\x35\x2c\x36\x39\x2c\x31\x31\x34\x2c\x31\x31\x36\x2c\x31\x30\x37\x2c\x34\x39\x2c\x35\x30"));
写python脚本进行转码即可:
string = "\x35\x35\x2c\x35\x36\x2c\x35\x34\x2c\x37\x39\x2c\x31\x31\x35\x2c\x36\x39\x2c\x31\x31\x34\x2c\x31\x31\x36\x2c\x31\x30\x37\x2c\x34\x39\x2c\x35\x30"
s = string.split(",")
c = ""
for i in s:
i = chr(int(i))
c = c+i
print(c)
结果为:786OsErtk12
得到flag
Cyberpeace{786OsErtk12}