BugkuCTF-Misc:做个游戏(08067CTF)

在这里插入图片描述

JAR 文件就是 Java Archive File,顾名思意,它的应bai用是与 Java 息息相关的,是 Java 的一du种文档格式。JAR 文件非常类似 ZIP 文件——zhi准确的说,它就是 ZIP 文件,所以叫它文件包。JAR 文件与 ZIP 文件唯一的区别就是在 JAR 文件的内容中,包含了一个 META-INF/MANIFEST.MF 文件,这个文件是在生成 JAR 文件的时候自动创建的。

step1、下载题目给的文件:heiheihei.jar

发现是java的jar文件,直接运行:

在控制台执行命令:java -jar heiheihei.jar

注:需要java运行环境,如果没有,先搭建java的环境。
弹出一张动图:
在这里插入图片描述
题目说需要60s,额,有技术的话,玩60s应该是可以的,但本人没成功过60s。

然而,这游戏不知是bug还是彩蛋,可以躲在绿帽发现不了的地方,就是游戏的右边,一直往右边走,就会进入边界外面,绿帽过不去。
在这里插入图片描述
step2、还是另想办法:使用binwalk分析下:binwalk heiheihei.jar
在这里插入图片描述
发现好多文件——》直接用binwalk -e heiheihei.jar提取
在这里插入图片描述
发现要查找的文件太多了

step3、于是将文件拿到 JD-GUI(Java反编译工具)下 用 jd-gui 分析代码

了解编译和反编译
在这里插入图片描述

在这里插入图片描述
flag{RGFqaURhbGlfSmlud2FuQ2hpamk=}
发现大括号里面是一串base64编码
在这里插入图片描述
最终得到flag{DajiDali_JinwanChiji} ——》 correct!

base32和base64的判断

base64中包含大写字母(A-Z)、小写字母(a-z)、数字0——9以及+/;
base32中只有大写字母(A-Z)和数字234567

分辨方法:

首先看有没有符号,base64和base32都以’=‘作为空白补足符符号,如果结尾没有’='有可能是base16。如果出现了+和/,那么一定是base64。
然后看大小写字母,如果有大写有小写就一定是base64。如果全是大写的情况就看具体字母有没有F之后的字母出现,因为base16就是16进制,字母部分只到F。
当然这个base32的数字部分只有2-7,不过数字一般不好判断,所以这里不推荐用数字进行判断。
最后基本上就可以判断出来了,实在不行就拿去在线网站挨个方式解码,也不麻烦。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值