发表于 2019-11-29 15:59

申请会员ID:talentvictor【未报到,已注销】

1、申 请 I D:talentvictor
2、个人邮箱:49220598@qq.com
3、原创技术文章:juicessh2.1.4版本解锁端口转发功能,实现socks5动态端口转发
自从在pc上实现了通过ssh的方式科学上网之后,一直也想在手机上实现,毕竟蹲马桶的时候不能搬电脑。然而好用的bitvise并没有安卓客户端。后来了解到了juicessh,口碑都不错,于是应用商店下载安装,发现ssh功能能用,端口转发功能却出现在了高级版功能中。曾经也想过购买,然而客户端里面的购买不好使,于是想到破解,百度搜索之后就被引导到了本站。看到了两篇关于juicessh破解的文章,一篇是解锁了菜单上的灰色功能按钮,一篇是作者看了上一篇文章受启发解锁了全部功能。第一篇有效性没有考证,第二篇跟着实践了,发现客户端版本和作者的不一样,无论是smali代码还是反编译的java代码,和作者发上来的都不一样。没有现成的解决方案,只好自己动手。使用工具android killer。直接打开apk安装文件。全局搜索“端口转发是高级版功能之一”,得到对应name属性为“port_forwarding_is_part_of_our_pro”。全局搜索这个name值,得到很多结果,观察名称,打开port_forwards.xml文件,发现该布局应该就是之前手机上看到的页面。观察port_forwards.xml文件,发现里面有两个并列的relativeLayout,id分别为list_container和problock,再看problock的内容,正式我们看到的提示端口转发是高级功能之一的界面,右下角解锁的按钮就是这个id为fab_purchase的按钮了。那么上面的raletiveLayout哪儿去了?上面的layout里面,有一个叫fab_new_portforward的按钮,名字看着就让人兴奋。看来高级功能解锁之后,这个界面看到的就应该是第一个layout了。接下来定位这个layout在代码中出现的位置。锁定了位置,再分析逻辑,大概率能够成功。和前面一样,全局搜problock,找到对应id为0x7f0e0124,搜索这个id出现的位置,锁定在了ty.smali。查看其对应的java代码。这里不得不吐槽一下,android killer自带反编译出来的java代码真是没法读,也不知道前面两篇文章的作者是怎么克服这个困难读懂的。上来就是无条件的for循环,for循环进来就是return,难道只有我的工具反编译出来的是魔鬼的语言吗,为什么你们俩的java代码都可读。。。0x7f0e0124转为10进制2131624228,在java代码里面搜索,找到了localRelativeLayout对象。看到下面,将其设置成了可见,对应的,list_container被设置成了不可见。(android的api里面有,view可见的三种状态,分别对应0,4,8)。第一次尝试,将这两个赋值颠倒,这里要注意v0的参数类型。保存,编译,安装后测试,发现没有成功。再回头看java代码,发现设置完可见之后,涉及到这两个layout的代码只剩这个if了。于是找到smali对应位置,把eqz改为nez。再测,成功。安卓手机上原生支持socks5的火狐浏览器测试,成功。

宿醉只为伊人 发表于 2019-11-30 09:12

给楼主点赞

Hmily 发表于 2019-12-2 10:47

I D:talentvictor
邮箱:49220598@qq.com

申请通过,欢迎光临吾爱破解论坛,期待吾爱破解有你更加精彩,ID和密码自己通过邮件密码找回功能修改,请即时登陆并修改密码!
登陆后请在一周内在此帖报道,否则将删除ID信息。

Hmily 发表于 2019-12-10 10:28

未报到,账号注销。
页: [1]
查看完整版本: 申请会员ID:talentvictor【未报到,已注销】