第九届御网杯网络安全大赛线下半决赛Writeup
一、Web_Writeup
1、Web-IP绕过
打开实例,下载附件源码
代码审计
判断了HTTP_CLIENT_IP的传入是否是1.2.3.4
用户名为admin,密码为admin123
1 |
|
打开burp抓包 然后添加HTTP头Client-IP: 1.2.3.4
得到flag
1 | flag{HNCTF219832818s} |
2、Web-命令执行
打开实例
发现需要进行代码审计
审计得出:
在进行操作时,可考虑使用 base64_encode 或 base64_decode,同时要额外留意服务器是否允许使用 file_get_contents。需满足以下条件:一是 GET 参数 cmd 中必须包含子串 “base”(不区分大小写),但禁止包含如 system、exec、flag、php、cat 等黑名单关键词;二是因为文件名 flag.php 包含禁止词 flag 和 php,所以要避免在 cmd 中直接出现这些词;三是可借助 Base64 编码 / 解码来绕过过滤。
Payload:
1 | ?cmd=$a=base64_decode(%27ZmxhZy5waHA=%27);echo%20base64_encode(file_get_contents($a)); |
base64解码
得到flag
1 | flag{HNCTFPDSGYJSJNB666} |
二、Misc-Writeup
1、文件隐写02
下载附件,解压得到一个jpg图片
拖入winhex
1 | 666c61677b7761736a5f303130315f7a6968616f7d |
得到一串字符然后进行16进制转文本
得到flag
1 | flag{wasj_0101_zihao} |
2、次数还原
分析每个字符频率的出现次数,进行排序后应该就是FLAG了
然后进行反转
得到flag
1 | FLAG{B8o6han} |
3、图片隐写02
下载附件
得到一半多的二维码
底部被隐藏,那么大概率是宽高修改了。
修改后 进行扫码
得到一串base64编码
然后解码
得到flag
1 | Flag{nisp_tupian12131} |
4、鼠标流量
下载附件得到一个流量分析文件
然后拖入工具
得到flag
1 | flag{a3h58fw7ex} |
三、Crypto_Writeup
1、Cyport_01
随波逐流直接得到flag
1 | flag{829_ji87_88pk} |
2、Cyport_02
丢入随波逐流发现是社会主义核心价值观解码
继续解码得到flag
3、Find_flag
下载附件解压到底一个html和js文件
打开js文件发现是混淆的MD5加密、特殊检查的js
exp如下
1 | a = [104, 104, 102, 120, 117, 108, 48, 75, 81, 70, 87, 73] |
得到flag
1 | flag{eecuri-HNCTF} |
4、ez_classical7
先反转一下
1 | mtjn{PWJBOeEHLAcL67PWJ} |
mtjn->flag
根据ascii码表
发现m->f 7 t->f 8 j->9 n->g 7
由此编写exp
得到flag
1 | def decrypt(s): |
1 | flag{HNCTFxWYEStE67HNC} |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 一只斑马兽の个人主页!