极客挑战2021-misc-wp
前言
个人感觉有几题出的不是很合理,但还是有收获的
In the Air
Intro && Hint: 善于观察藏在身边的 flag, 提示:无线电会在空气中传播
没啥好说的,只有校内能做,WiFI名字就是flag
easysend
Intro && Hint: (区块链)描述:请发送0.1Rospten测试币到0x0b896c359adf4bb1c19c7dfd41dc35dc9216e470
使用metamask发送0.1测试币
复制hash值到题目连接中验证即可拿到flag
这是什么命令
Intro && Hint: 命令执行的vps ip为 110.42.233.91 执行的命令 cat flag.png | base64 | base64 | tac | nl | sort -k 2 > flag.txt ;rm -f flag.png & nohup php -S 0.0.0.0:2333 >> /dev/null 2>&1 &
分开来分析
第一部分cat flag.png | base64 | base64 | tac | nl | sort -k 2 > flag.txt
tac:文件内容倒序输出
nl:输出文件内容并加上行号
sort -k 2:将内容从a-z排序后输出
所以第一条命令的含义就是将flag.png两次base64的值倒序后按A-Z加上行号输出至flag.txt
第二部分rm -f flag.png & nohup php -S 0.0.0.0:2333 >> /dev/null 2>&1 &
rm -r:删除文件
nohup:不挂断地运行命令
php -S:启动内置的web服务器
所以第二条命令的含义是删除图片,并在后台不间断的运行web服务器,端口为2333
直接访问http://110.42.233.91:2333/flag.txt
,拿到数据直接上脚本
1 |
|
flag在解出来的图片上
官方wp:
1 |
|
easycreat
Intro && Hint: 描述:在Rospten测试链部署一个合约
单独拿出来写了一篇文章
提交hash验证即可
今天有被破防吗?
Intro && Hint: 每个人都有决定自己是谁的权力
三个一组的十六进制值,很容易想到RGB
因为一共有1166400行,是1080的平方数,得出原图片高宽为1080
脚本还原
1 |
|
可以使用gaps拼图,先用画图量出小区域的高宽
gaps --image=1.png --size=40 --save
最后垂直翻转一下图片得到flag
说实话挺好玩的,不是吗?
Intro && Hint: 你要是觉得好玩,那就玩玩这个
解压后是一个带密码的docx文件
压缩包中的提示
使用john爆破密码
结果是767675
,挺坑的,以为是8位数字,爆了两天没出
将docx内容复制到txt用十六进制查看,可能是snow加密snow.exe -C ans.txt
解密文本
SGA Character
Intro && Hint: 描述:神秘的语言……仿佛在Minecraft中见过
标准银河字母表
与题目图片一一对应,解出flag
圣嘉然
Intro && Hint: 描述:嘉然,带我走吧!|hints: 1. http://www.atoolbox.net/Category.php?Id=28
在十六进制下观察文件发现rar头被删了一半,补上52 61 72 21
用010打开,发现存在ntfs流隐写
导出结果文本
有很多emoji表情
1 |
|
将表情提取出来解密
得到s!yl}ce{gdniaa_nyam!_ye0rua_
,很明显的w型栅栏
每日一溜
Intro && Hint: 描述:BV1vK4y1p7F5|hints: 1. https://blog.csdn.net/huanghelouzi/article/details/88628590
数据包分析,使用wireshark
发现POST包,传输了一张png图片ctrl+alt+shift+t
追踪tcp流
转为原始数据后另存为png
用binwalk分离出一个文件
1 |
|
将第二个base64解密后得到一个base64表,那么第一个base64就是换表加密后的值
脚本如下
1 |
|
PANDORA PARADOXXX
Intro && Hint: 描述:为了防止它毁灭世界,我上了层层枷锁……
下载得到一张图片,发现文件中藏了压缩包,binwalk分离
第二层:标准伪加密,09
改成00
第三层:纯数字爆破,得到解压密码513692
第四层:发现压缩后hint.txt的crc值与2.zip内hint.txt的crc值一样,可以得出是明文攻击
解得口令为Maimai
第五层:这一个密码属实是没想到,密码为hint中的单词challenge
第六层:解压后就是flag
easyfound
Intro && Hint: 描述:flag在哪里 0xf8e8f25359bbbdea2187c34a8614dbedec083dbb@rospten
给了合约源码
1 |
|
这题涉及到区块链的变量存储机制,推荐一篇文章
代码中一共存储了8个变量,分别是owner
,a
,b
,0x77
,0x88
,0x99
,flag1
,flag2
在区块链浏览器中查看插槽
https://ropsten.etherscan.io/tx/0xcf7759b8d59b9c462c5c8a69a30e9b862bee3cbac995d896d58ba8ef592bdafe#statechange
第一个插槽存储的是地址owner
第二和第三个插槽存储的是bool变量a
和b
第四和第五个插槽存储的是strings类型的变量flag1
和flag2
,将两个变量连接到一起就是flag了,注意$
符号是连接符
第六七八存的是tuple
数组
三叶草聚会
Intro && Hint: 描述: 嘿,我们去聚会吧!拿着你的入门券! | hints: 1.注意题目名称
解压后得到一个key和hint.txt
从hint.txt中可以知道与git有关,既然知道了密钥,那么就用ssh连接
先创建一个.ssh文件夹,放入key,创建一个config文件
config文件内容如下
1 |
|
使用ssh -T syc
连接,获取到用户名为SycloverParty
在github上搜索该用户名,得知有一个私有的仓库cake
git clone syc:SycloverParty/cake.git
下载下来
有一个假的flag,使用git log --pretty=oneline flag
查看文件修改历史
git show 7226aee143cc7cd4095337fca6f994848bd9783a
查看历史记录
EzForensics
Intro && Hint: 简单取证,关键信息在压缩包里,一层一层找出来吧
简单取证题
先获取镜像信息
一: 查看默认浏览器访问过的一个 top后缀的域名 例如xxxxxx.top
先用了iehistory
命令查看无果
那么查文件
找到一个chrome的记录
下载下来搜索
得到域名为3v1l.rigelx.top
二: 另一个浏览器被用来下载了一个文件 找到这个奇怪的文件名 (很怪
查看下载文件夹
得到可疑文件L0v3r.f
三: 本机的hostname,(计算机名和hostname一般是相同的,但大小写不一样
先hivelist
看注册表信息地址
查看system
查看CurrentControlSet
的value
查看ControlSet001
的value
继续看ControlSet001
下的\services\tcpip\Parameters
得到主机名P0tt3r
四: 登录1里的站点,尝试从镜像中找到用户名和密码(与windows的一致)看看有什么秘密
最后使用mimikatz
拿到账户和密码
登录站点后自动下载得到一个secretword.wav
文件
大概听了一下,是拨号音,在线解密
得到10111011100000
转成摩斯,解密得到yyds
五:拼接后md5
SYC{md5(3v1l.rigelx.topL0v3r.fP0tt3ryyds)}
将上述字段拼接在一起后md5加密一下