题目附件:
476d9022bb0449c09c0b1e24f0686b66.zip
题目思路:
jeb打开查看源码,找到字符串列表,解密md5,结合word提示
解题过程:
用jeb打开,找到源代码.com.droider.crackme0201.MainActivity
public boolean checkSN(String userName, String sn) {//前面31行调用此函数
try {
if (userName.length() == 0 && sn.length() == 0) {
return true;
}
if (userName == null || userName.length() == 0) {
return false;
}
if (sn == null || sn.length() != 16) {
return false;
}
MessageDigest digest = MessageDigest.getInstance("MD5");//简单的md5
digest.reset();
digest.update(userName.getBytes());//输入用户名
String hexstr = toHexString(digest.digest(), BuildConfig.FLAVOR);
StringBuilder sb = new StringBuilder();
for (int i = 0; i < hexstr.length(); i += 2) {//取奇数位
sb.append(hexstr.charAt(i));
}
if (!sb.toString().equalsIgnoreCase(sn)) {
return false;
}
return true;
} catch (NoSuchAlgorithmException e) {
e.printStackTrace();
return false;
}
}
在右边的窗口中找到resources.values.strings.xml,可以看到md5字符串
md5:b3241668ecbeb19921fdac5ac1aafa69
解MD5为:YOU_KNOW_。结合word中的提示,出题人说他不懂安卓,就是你懂了
YOU_KNOW_ANDROID