seoss-cn-shanghai.aliyuncs
申明
严正声明:原文中所涉及到的技术性、构思和专用工具仅作以安全性为目地的交流学习应用,所有人不可将其用以不法主要用途及其赢利等目地,不然不良影响自主担负!
序言
文中构思来着微信公众号小沙弥的安全性之途,菜狗的我被社会毒打了一顿,可是这东西我没触碰过,恰好今日见到一篇文章,学习培训一下
seoss.oss-cn-shanghai.aliyuncs.com/wp-content/uploads/1970/01/beepress-image-137889-1597635481.png" style="margin:10px 1080x;padding:1080x;box-sizing:border-box;border-width:1px;border-style:solid;border-color:#EEEEEE;image-rendering:-webkit-optimize-contrast;max-width:90%;max-height:90%;cursor:zoom-in;" />
最先准备工作
-
XposedInstaller(Xposed安装器)
-
JustTrustMe(禁止使用SSL)
-
ida pro(静态数据反向程序流程)
-
JEB(apk解包程序流程)
-
test.apk(目标程序)
所需文档部位免费下载
https://github.com/Ascotbe/virus/blob/master/HttpC ertificate
处理单边验证
一、安裝Xposed架构
一开始安裝好APK是显示信息架构未安裝的
点一下这一安裝
挑选安裝
然后点一下安裝
随后重新启动后就能见到安裝成功了
二、安裝JustTrusMe控制模块
点一下左上方的莱单
随后挑选控制模块
启用就好了,那样就解决了单边验证,能够 绕开手机客户端校检了
处理双重验证
大家来把目标程序抓个包
能够 见到网络服务器显示信息为400,抓包软件没法用了
一、找手机客户端的资格证书
接下去便是手机客户端的资格证书了,大家先缓解压力这一手机软件
随后全局性收拢这一手机软件的资格证书一般是.p12
或是.pfx
末尾的(假如这一版本号有壳你嫌不便不愿蜕壳得话能够 找以前的版本号试一下)
二、找资格证书登陆密码
最先必须设定jeb的较大运行内存要不然会出错,由于大的APK会造成 java内存溢出,更换jeb_wincon.bat文档中的內容,-Xmx8191m
表明运行内存的尺寸
%JAVA% -jar "%~dp0binappjebc.jar" %* //更换为 %JAVA% -Xmx8191m -XX:-UseParallelGC -XX:MinHeapFreeRatio=15 -jar "%~dp0binappjebc.jar" %*
开启test.apk,运用检索来找client.p12的值(或是关键词PKCS12,它是一般 载入资格证书必须采用的关键词)
对字符串数组的部位开展鼠标右键分析
往后面找找看有哪些open这类的涵数来开启资格证书的
这里意思差不多便是把开启的资格证书和数字能量数组中的字符串数组载入到v4_1
这一涵数中,随后自动跳转到label_27
中开展关掉开启的资格证书,因此 百分之二十80能够 判断v1
应当便是大家必须的登陆密码
跟踪v1
的值(双击鼠标就可以)
跟踪到这里发觉启用了很多值,因为我是菜狗对JAVA并不是很懂,就每一个值要看了一遍,发觉SoulNetworkSDK.b().a(SoulNetworkSDK.b().g())
中的b和g全是返回值而且不可以跟踪了,而a涵数能够 跟踪而且涵数名叫getStorePassword
,那百分之二十90能够 明确a涵数便是大家必须的涵数
再次跟踪它
再然后跟踪,看到了private native String getStorePassword(String arg1)
这一申明方式,wtf?案件线索断掉?然后我百度了一下native
方式发觉,native
关键词表明其装饰的方式是一个纯天然方式,方式相匹配的完成并不是在当今文档,只是再用别的語言(如C和C )完成的文档中。Java語言自身不可以对电脑操作系统最底层开展浏览和实际操作,可是能够 根据JNI插口启用别的語言来完成对最底层的浏览。随后来看下测试用例,原先 会载入一个文档一样的物品,大约的事例和下边相近,随后大家找这一类有哪些文档载入的
class HelloWorld{
public native void hello(String name);
static{
System.loadLibrary("hello");
}
public static void main(String[] args){
new HelloWorld().hello("jni");
}
}
最终在开始的地区找到
soul-netsdk便是启用的libsoul-netsdk.so文件,随后我们去缓解压力的文档中找这一姓名
大家用IDA开启它,随后全局搜索以前寻找的哪个涵数名getStorePassword
,为何要检索这一涵数名呢,由于.SO文档是Linux下的动态链接,其作用和功效相近与windows下.dll文档,而getStorePassword
就类似一个导出来涵数
随后F5就可以见到伪代码了,而且登陆密码也出来
运用这一登陆密码和以前哪个资格证书开展安裝
安裝取得成功
然后大家再度试着抓包软件,取得成功
参照文章内容
https://www.jianshu.com/p/042ce0b88f03 https://mp.weixin.qq.com/s/0uItUS5P8gFQ1Cu5-jkCgQ
文中创作者:ascotbe
文中为安全性脉率栏目创作者公布,转截请标明:https://www.secpulse.com/archives/137889.html
相关文章
- 2条评论
- 辙弃寺瞳2022-05-29 19:25:04
- 語言(如C和C )完成的文档中。Java語言自身不可以对电脑操作系统最底层开展浏览和实际操作,可是能够 根据JNI插口启用别的語言来完成对最底层的浏览。随后来看下测试用例,原先 会载入一个文档一样的物品,大约的事例和下边相近,随后大
- 晴枙羁拥2022-05-29 22:55:12
- 一、安裝Xposed架构 一开始安裝好APK是显示信息架构未安裝的 点一下这一安裝 挑选安裝 然后点一下安裝 随后重新启动后就能见到安裝成功了 二、安裝JustTrusMe控制模块 点一