您的位置:首页 > 文旅 > 旅游 > CTFShow的RE题(二)

CTFShow的RE题(二)

2024/10/6 18:24:30 来源:https://blog.csdn.net/2302_79135465/article/details/140230753  浏览:    关键词:CTFShow的RE题(二)

逆向5

附件无后缀,查一下是zip,解压得到一个exe一个dll文件。
在这里插入图片描述
往下继续看
在这里插入图片描述
但也根进去看看
在这里插入图片描述
发现是在加载的dll文件
还有一个返回时调用的函数
在这里插入图片描述
发现是打印函数
根据以往的经验应该是要跳转到这里,动调一下。
发现exe链接了dll,再看一下dll,发现有Aspack壳,不知道有没有工具()

在这里插入图片描述
试一下,应该就是flag

所以前面第一个函数给各个变量赋值就i是障眼法,不要害怕,不会就先往后看。

红包题 武穆遗书

在这里插入图片描述
估计前面三个函数里有反调试吧,继续看
第一个就是反调试函数

第二个:调用链接库函数
在这里插入图片描述
第三个:有问题
在这里插入图片描述
在这里插入图片描述
总体:
在这里插入图片描述
应该就是看Src了:
在这里插入图片描述
但不知道了,
对呀,可以直接调试出来、
Src与input比较,Src肯定是已知的,试试
1.直接 nop debugger 函数
不行,还是会直接退出
2.修改 EIP 跳过函数
也是不行,跳过去了,f8继续执行时退出了
3. X32dbg 有隐藏调试器功能
但是不能开地址随机化,不然不好找
成功
在这里插入图片描述
4,最笨方法也是最可靠的:跳进函数,每次跳转时改寄存器

红包六

Jar逆向?不就是一个压缩包吗?这能算逆向? “压缩包”算是半个hint

可以修改后缀为 zip ,解压缩得到 java 文件

在这里插入图片描述
应该就是一个 base64 和 DES 加密

在这里插入图片描述
不对,也有提示前面:
//hint: flag not here
那就只能返回去看看最初的 jar 文件了
丢进 010,
在这里插入图片描述
在这里插入图片描述
说前两个是解压出来了,第三个就是未解压的了
查了一下正常是一个 zip 压缩包一个 PK… 50 4B 03 04
但有一个 zip 是两个,估计最多就是两个吧
ctf-wiki-zip学习
我想可以先手动分成两个zip文件
在这里插入图片描述
不行好像,
只能试试网上那个脚本了

# -*- coding: gb2312 -*-
import zlib
inflator = zlib.decompressobj(-zlib.MAX_WBITS)
f=open("D:\ctf附件2\EzJar.jar",'rb')
f.seek(659)
a=f.read(3248)
f.close()
x = inflator.decompress(a)
f=open('EzJar.class','wb')
f.write(x)
f.close()

得到EzJar.class文件,用 jd 打开
最后分析可知算法为DES,密钥为Ctf3r_me 密文为Dg/TZuRXF4+UwSZ8Dpwgw8+VOoHVl1YlPL1QRVhroCy4ptnKEcdC05iXcpLyDnuR

总结:

jar逆向,可以先当成 zip 解压缩,java 文件可以直接看,class 文件可以用jd分析或者 jadx (好看一些)
没有给 iv 的 DES 加密,一般是 ECB mode

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com