JuiceSSH是一款免费的远程ssh客户端,感觉是一款挺优秀的软件,里边有一些高级功能需要购买高级版才能使用,这里便对其对高级功能的破解进行分析。

本文仅用于学习交流使用,请尊重作者,勿在网上肆意发布其破解版

这里以v2.12版为例,目的是解锁其代码片断的功能(可以把一些长的命令储存在里边,用的时候不用手打了)。

1、控制台代码片段功能解锁

未解锁之前代码片断是灰色的,无法点击。

首先通过“保持屏幕常亮”对此Dialog的代码进行定位

通过keep_screen_on再进行定位

通id定位到smali文件中

明显修改地方位于这个Activity里。然后打开此smali文件,可以看到id出现的地方

是创建一个ContextMenu,然后查阅java源码:

定位到onCreateContextMenu方法

接着看里边的内容

关键是这个setEnable方法,设置了菜单项不能点击,并且上边有个字符串拼接的句子拼接的结果是(XXXX)可以想到是未解锁前的(仅高级用户可用)这样就可以对这个if判断取反了,回到smali里边:

定位到onCreateContextMenu,然后向下找:

可以看到(和)并且有个if-eqz,直接取反改为if-nez.

然后还需要解锁管理代码片断的功能

没解锁的话点击会跳转到购买页面,那么就想到会有一个Activity的跳转,而且设置页面一般采取的是Preference。

直接去xml文件夹找,发现了setting.xml

很容易知道上边两个上锁的item是前两个,而且是自定义的Preference组件,俩个都是com.sonelli.juicessh.views.ActionPreference,直接用包名找到文件,查看源码:

看到里边有个onClick方法,并且会开启PurchaseActivity,所以对上边的if取反,回到smali文件:

把if-nez改为if-eqz,让它直接返回,不开启购买页面。

但是这样修改之后安装发现点击被锁住的菜单项不会弹出购买但是也没有反应,应该还有验证的地方,再回到ActionPreference的java源码:

发现他实现了一个接口,并且从名字就可以看出是与购买高级版有关、

进入接口发现只有一个方法,然后再回到PurchaseActivity里寻找:

看到上边有个判断,将点击的监听事件设置为了null,可以断定验证在这。

回到smali文件:

可以找到代码在这,然后修改if-eqz 为 if-nez;

这样就完成了所有的破解的工作。

JuiceSSh破解分析的更多相关文章

  1. [Android Pro] android root权限破解分析

    许 多机友新购来的Android机器没有破解过Root权限,无法使用一些需要高权限的软件,以及进行一些高权限的操作,其实破解手机Root权限是比较简 单及安全的,破解Root权限的原理就是在手机的/s ...

  2. CrackMe005-下篇 | 逆向破解分析 | 160个CrackMe(视频+图文)深度解析系列

    作者:逆向驿站微信公众号:逆向驿站知乎:逆向驿站 CrackMe005,上篇说了具体方法,下篇来发逆向分析过程,看看老夫是如何得到上篇的具体方法的! 准备 [环境和工具] win7/xp虚拟机环境 C ...

  3. (转)Android 系统 root 破解原理分析

    现在Android系统的root破解基本上成为大家的必备技能!网上也有很多中一键破解的软件,使root破解越来越容易.但是你思考过root破解的 原理吗?root破解的本质是什么呢?难道是利用了Lin ...

  4. Android 系统 root 破解原理分析

    现在Android系统的root破解基本上成为大家的必备技能!网上也有很多中一键破解的软件,使root破解越来越容易.但是你思考过root破解的 原理吗?root破解的本质是什么呢?难道是利用了Lin ...

  5. Android破解之北斗手机定位系统

    我想破解GIS相关的安卓程序,于是找到了这个北斗手机定位系统,且不论它是否能定位,定位精度有多高,本文件只进行破解分析. 在模拟器中安装,输入手机号码,点击"卫星定位",它会一级一 ...

  6. skin++ 终极破解之法

    *[标题]:Skin++通用界面换肤系统V2.0.1破解探讨 *[作者]:gz1X <gz1x(at)tom(dot)com> *[来自]:中国黑客联盟 *[前言]: skin技术,大家都 ...

  7. 爬虫破解js加密(一) 有道词典js加密参数 sign破解

    在爬虫过程中,经常给服务器造成压力(比如耗尽CPU,内存,带宽等),为了减少不必要的访问(比如爬虫),网页开发者就发明了反爬虫技术. 常见的反爬虫技术有封ip,user_agent,字体库,js加密, ...

  8. 非常漂亮滴皮肤skin++ 终极破解之法

    破解includeparametershook汇编windows *[标题]:Skin++通用界面换肤系统V2.0.1破解探讨 *[作者]:gz1X <gz1x(at)tom(dot)com&g ...

  9. M1卡破解(自从学校升级系统之后,还准备在研究下)【转】

    本文转载自: M1卡说明及使用proxmark3破解方法 看了网上写的一些关于M1卡的文章,多数有些误导之嫌.首先谈谈M1卡的规格,M1卡的容量为1KB,好多网上写8KB,这里其实是有个误区,应该是8 ...

随机推荐

  1. WPF Binding

    winform有binding, WPF也有binding,区别在哪呢?这里暂时不提.以前也检查接触WPF binding, 但为什么过段时间就忘记了呢? 可能主要原因自己的知识体系不够完善吧,下面我 ...

  2. 手把手教你DIY一个春运迁徙图(一)

    换了新工作,也确定了我未来数据可视化的发展方向.新年第一篇博客,又逢春运,这篇技术文章就来交给大家如何做一个酷炫的迁徙图(支持移动哦).(求star 代码点这里) 迁徙图的制作思路分为静态的元素和变换 ...

  3. Hibernate中分页

    query.setFirstResult(4);query.setMaxResults(5);       这两个方法就是hibernate的分页

  4. (转载)小课堂UI-Star Diamond Tutorial

  5. @font-face扒站的步骤

    今天模仿百度首页手机版的时候遇到的@font-face的问题,现在整理一下. 问题:图中红色区域,在拷贝F12样式的时候,并没有出现这些小图标.        图1:百度的效果             ...

  6. LIKE匹配关键字

    1.% 匹配任意数目字符(包括零个字符) SELECT * FROM edo_user WHERE true_name LIKE '王%' 应用:关键字查询 WHERE u.true_name lik ...

  7. Linux 搭建php扩展开发框架

    1.安装phpize(如果是使用php源码编译就免了,本身就有) 2.打开php源码,ext中有ext_skel工具,使用它可以方便 ./ext_skel --extname = myext 生成扩展 ...

  8. Sql 格式化工具

    SQL Pretty Printer:目前提供4种使用方式,桌面版本,SSMS(SQL Server Management Studio)插件,VS插件,和提供API接口. SQL Pretty Pr ...

  9. python运维开发之第八天(socket)

    什么是 Socket? Socket又称"套接字",应用程序通常通过"套接字"向网络发出请求或者应答网络请求,使主机间或者一台计算机上的进程间可以通讯. soc ...

  10. centos下安装cdh5

    http://www.aboutyun.com/thread-9075-1-1.html 基本参考这个   yum clean all yum update     1.保证selinux关闭  /e ...