本帖最后由 satellite0226 于 2023-2-11 21:28 编辑
Android逆向之【春节】解题领红包之三 {Android 初级题}破解过程分享
一、前言
2023年春节期间如期上线了2023春节解题领红包活动,其中初三 1/24 10:00 上线了解题领红包之三 {Android 初级题},打开apk可以看到,需要点击999下能拿到口令:
二、破解工具
jadx-gui、Android Studio。
三、破解过程
3.1、先使用jadx-gui对apk进行反编译,再进行全局搜索关键字“999”,可以很明显的看到一个判断:
3.2、点击可以查看到jadx-gui反编译后的Java代码:
3.3、可以看到口令的核心逻辑即是对字符串进行解密:
public final String decrypt(String encryptTxt, int i) {
// Intrinsics.checkNotNullParameter(encryptTxt, "encryptTxt");
char[] charArray = encryptTxt.toCharArray();
// Intrinsics.checkNotNullExpressionValue(charArray, "this as java.lang.String).toCharArray()");
StringBuilder sb = new StringBuilder();
for (char c : charArray) {
sb.append((char) (c - i));
}
String sb2 = sb.toString();
// Intrinsics.checkNotNullExpressionValue(sb2, "with(StringBuilder()) {\n… toString()\n }");
return sb2;
}
3.4、将Java代码移步到Android Studio里面,并编译运行拿到了解密后的字符串:
四、附件以及参考链接
4.1、附件apk的百度网盘地址:链接:https://pan.baidu.com/s/1YaECruO-OC4MUm09A_0qSg 提取码:vers ,解压密码:52pj
4.2、正己大神的吾爱破解安卓逆向入门教程:《安卓逆向这档事》
|