easy-jni 解题报告
下载打开文件,发现是一个输入flag然后check的题目
JEB打开
发现调用了方法a
调用了class a中的方法,分析之后发现是变种之后的base64算法,然后调用了native层的ncheck方法,得到反回结果。
native 层分析
输入的base64两轮转换:
- 前16位和后16位换位置
- 奇数位置和偶数位置互换
然后和MbT3sQgX039i3g==AQOoMQFPskB1Bsc7
比较
写脚本如下:
1 | from hashlib import * |
总结
一个java层base64加一个native层简单的转换,没有太大难度,结果
flag{just_ANot#er_@p3}