hexo

2021第四届“强网”拟态防御国际精英挑战赛-部分WP

Web

zerocalc

源码中发现用readFile()函数读取了./src/index.js
notion image
所以我们只需构造Payload如下,即可读取flag:
notion image

ezPickle

参考链接:
https://xz.aliyun.com/t/7012#toc-10
使用pker.py生成payload,然后将生成的payload进行base64加密
notion image
将加密后的payload发送后,执行命令反弹shell
notion image
notion image

new_hospital

首先进行目录扫描,发现有一个flag.php文件,并且有old目录(历史网站版本)。
notion image
在主页点击功能进行抓包分析
notion image
在Cookie中存在API参数,base64解密后发现是调用的.js文件名,尝试直接读flag不成功,因为会自动加上.js后缀。
notion image
想到还有一个old目录,尝试在旧版本中尝试漏洞,可以成功,直接读取../flag.php即可。
notion image

Give_me_your_0day

题目为Typecho安装页面,因为可以配置数据库,所以想到可以搭建恶意mysql服务器,进行本地文件读取。
使用Rogue-MySql-Server一类的工具搭建恶意mysql服务器。
工具地址:https://github.com/allyshka/Rogue-MySql-Server
服务器python2运行,进行监听,多次尝试发现都无法成功。
notion image
直接去Typecho的官方Github仓库查看install.php部分的代码,发现有以下几种数据库模式
notion image
尝试将dbAdapter改为mysqli,即可成功读取。
notion image

EasyFilter

题目代码:
简单分析,传入/?action=w&c=payload,即可将payload写入,不过是经过base64加密后的。
notion image
由于我们写入的文件是经过base64加密的,所以需要使用convert.base64-decode构造Payload读取并解码写入的文件,然后程序会包含进去。
notion image

Misc

BlueWhale

压缩包伪加密,使用winrar修复一下即可。
wireshark打开数据包,跟踪TCP数据流,找到一个密码。
notion image
由于还有一个压缩包,尝试密码不对,看到压缩包里有一个password.txt文件,想到明文攻击。
新建一个password.txt文件,填入找到的密码,并将password.txt文件压缩,查看CRC32校验码,发现一致。
notion image
直接明文攻击得到密码。
notion image
解压缩发现一张png图片,使用StegSolve软件打开,LSB模式最低位有隐藏数据。
notion image

WeirdPhoto

解压压缩包发现一张CRC32校验错误的图片,网上有现成的脚本可以爆破CRC32验证码和修复图片。
打开修复后的照片,有字符串,栏杆密码得到压缩包密码。
notion image
解压压缩包,out文件无后缀,使用Hxd打开发现应该是pdf文件,需要修复一下文件头。
notion image
PDF隐写,使用wbs43open-win32工具解密,获得隐藏信息。

mirror

图片挺大,划到末尾发现是png图片头
notion image
观察了一会,发现这张png中藏了两个png图片,只不过后面那张png图片需要按每16个字节为一组进行反转拼接。
notion image
反转后又得到一张一样的图片,接下来尝试修复高度。
脚本参考:https://www.cnblogs.com/vict0r/p/13258286.html
爆破得高度为0x505,与原图片中不一致
notion image
将两张图片的高度都修复下
notion image
然后两张图片,想到解一下盲水印
工具地址:https://github.com/chishaxie/BlindWaterMark
notion image
根据提示:2-5 e-6 9-a p-b q-d替换字母,得到最终flag。
2022第十五届全国大学生信息安全竞赛创新实践能力赛-初赛部分WP2021-长安杯-部分Web题解