小试锋芒 发表于 2013-12-19 22:04

AndFTP 3.5 破解教程

这个程序的免费版有一些功能上的限制:


来到注册激活页面,输入任意的激活码,弹出如下提示:


下面开始破解过程:
1、APK反编译。

2、搜索字符串:“无效的激活密钥”,找到目录\res\values-zh-rCN\strings中,同时也发现“激活成功”


3、激活成功对应的string name为"options_activate_popup_success_label",因此搜索options_activate_popup_success_label,在public.xml中找到:


4、在smali文件中搜索"0x7f08018a",在\smali\lysesoft\andftp\ay.smali中找到:


5、对应的JAVA语句:


6、从上图分析可以看出,要想弹出成功激活,就必须满足两个条件:
if (!OptionsActivity.a(this.b).c(str)) 不成立并且if (bool == true)成立
而要满足这两个条件,对应到smali中,就要分别对应满足下面的两个方法的返回值不能为0




7、于是分别找到两个方法的定义的地方,强制其返回值为1即可。



8、保存修改,重新打包签名,测试运行,成功破解。




原版程序:

dryzh 发表于 2016-7-18 00:57

本帖最后由 dryzh 于 2016-7-18 01:42 编辑

楼主用的AndroidKiller,还是APKIDE改之理?
c(Ljava/lang/String;)Z 这个是正则表达式校验函数

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class RegexMatches {
       
        public static void main(String args[]) {
                String str = "";
                String pattern = "^[\\\\w\\\\.-]+@([\\\\w\\\\-]+\\\\.)+{2,4}$";

                Pattern r = Pattern.compile(pattern);
                Matcher m = r.matcher(str);
                System.out.println(m.matches());
        }



method public c(Ljava/lang/String;)Z
    .locals 3

    const/4 v0, 0x0

    if-eqz p1, :cond_0

    invoke-virtual {p1}, Ljava/lang/String;->length()I

    move-result v1

    if-lez v1, :cond_0

    const-string v1, "^[\\w\\.-]+@([\\w\\-]+\\.)+{2,4}$"

    const/4 v2, 0x2

    invoke-static {v1, v2}, Ljava/util/regex/Pattern;->compile(Ljava/lang/String;I)Ljava/util/regex/Pattern;

    move-result-object v1

    invoke-virtual {v1, p1}, Ljava/util/regex/Pattern;->matcher(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;

    move-result-object v1

    invoke-virtual {v1}, Ljava/util/regex/Matcher;->matches()Z

    move-result v1

    if-eqz v1, :cond_0

    const/4 v0, 0x1

    :cond_0
    return v0
.end method



飞龙使者 发表于 2015-11-19 16:22

YUEN 发表于 2013-12-20 09:42
是不是说,安卓类似情况的软件,都可以进行添加那句就解决网络验证等?

如果有这种函数 比如isRegistered 或者checkRegistration 可以这么玩

没有就没办法了

1354669803 发表于 2013-12-19 22:08

反正我看不懂什么什么语句 有点怪怪的

Hmily 发表于 2013-12-19 22:51

学习,安卓缺少基础入门教程,小试锋芒同学用的是虚拟机还是实体机?

淡然出尘 发表于 2013-12-19 23:00

Mark一下 今后好好看 (*^__^*)

sugie0708 发表于 2013-12-19 23:21

高手。膜拜,顶楼主

brack 发表于 2013-12-19 23:39

这是apk还是java?

小试锋芒 发表于 2013-12-20 06:38

Hmily 发表于 2013-12-19 22:51 static/image/common/back.gif
学习,安卓缺少基础入门教程,小试锋芒同学用的是虚拟机还是实体机?

虚拟机和实体机都有在用,逆向病毒类的时候就用虚拟机了,用老爷机的时候带不动就只能用真机。

小试锋芒 发表于 2013-12-20 06:40

淡然出尘 发表于 2013-12-19 23:00 static/image/common/back.gif
Mark一下 今后好好看 (*^__^*)

淡然,你就别谦虚啦,还是向你学习了。

小试锋芒 发表于 2013-12-20 06:40

brack 发表于 2013-12-19 23:39 static/image/common/back.gif
这是apk还是java?

APK                                 

NikolayD 发表于 2013-12-20 07:34

Good work. Thank you.
页: [1] 2 3 4 5 6 7 8
查看完整版本: AndFTP 3.5 破解教程