2024年春秋杯网络安全联赛冬季赛wp-1.17
[TOC]
web
easy_flask
考点:ssti 注入
打开网页,发现有个登录,试试直接登录
看到 url 处是进行 get 传参,试试 111
联想到 ssti 漏洞,于是用9验证一下,发现就是 ssti 模板注入
进行 ssti 模板注入漏洞一系列,构造 payload:
1 | {{cycler.next.__globals__.__builtins__.__import__('os').popen('cat flag').read()}} |
flag{48ad0cde8345c8b2608933ac4e85147e}
file_copy
考点:无回显,filter协议
根据代码,可以看到是post传参,参数是path。(抓包也可以看)
flag{894272cc-8e8d-47f7-9565-39636508492a}
Misc
简单算数
考点:异或
直接进行字符串异或,得到 flag
flag{x0r_Brute_is_easy!}
See anything in these pics
考点:文件分离
解压后是一个二维码和一个压缩包
扫描二维码,得到解压缩包的密码
解压后得到一张 jpg 图片。先放进 010editor 看一下,发现隐藏了文件
用 binwalk 探测,然后提取,得到一张 png 图片
放进 010editor 查看,可能宽高被修改过,于是修改宽高得到原图
flag{opium_00pium}
简单提取镜像
考点:流量分析,数据修复
解压文件得到一个流量包,进行流量分析,导出文件,得到一个 zip 文件
解压 zip 文件,得到一个破损的 img 文件,根据提示,可能可以使用 RR-Studio 工具修复。
可以直接进行文件分离,得到一个 excl 表格,得到 flag
flag{E7A10C15E26AA5750070EF756AAA1F7C}
压力大,写个脚本吧
考点:脚本编写能力
很明显是有密码的套娃压缩包,直接编写脚本解密
1 | import zipfile |
提示是 png,然后我们将 password_0.txt 的密码进行 base64 解密
1 | 89504E470D0A1A0A0000000D494844520000019000000190 |
发现是个 png 文件头,所以这些密码应该组合在一起就是一张 png 图片。脚本直接放
1 | import base64 |
得到一张二维码,直接扫,就得到了 flag
flag{PASSWORDs_is_fl@g!}
ez_forensics
考点:镜像取证
下载附件解压,先文件扫描一下看看,查找一下关键词
将这两个文件(压缩包和txt)提取出来,发现压缩包解压需要密码。查看hint.txt
60 = 13 +47,想到用rot13和rot47解密,得到
可以知道,压缩包的解压密码需要进行hashdump。
然后找到用户密码
解压后得到文件
结合提示搜索,发现了
结合用户名,可以知道使用的试MobaXterm,所以ini文件是其配置文件
网上搜索其密码解密,找到一篇博客,知道可以使用脚本解密
master password就使用文件名 flag_is_here
最后解密得到
将flag内的内容进行base64解密得到flag。
flag{you_are_a_g00d_guy}
crypto
通往哈希的旅程
考点:哈希
根据提示得到一个哈希密文
直接哈希爆破或者在线解密得到
flag{18876011645}