首页
社区
课程
招聘
[原创]使用Unicorn Engine分析so
发表于: 2019-3-1 00:08 30723

[原创]使用Unicorn Engine分析so

2019-3-1 00:08
30723
收藏
免费 13
支持
分享
打赏 + 60.00雪花
打赏次数 2 雪花 + 60.00
 
赞赏  mb_bjvhnggy   +50.00 2019/09/16
赞赏  mb_bjvhnggy   +10.00 2019/09/10
最新回复 (102)
雪    币: 281
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
76
还有一处不明白,这里面的参数构造的规则是什么呢?猜不出来 ::>_<::
2019-9-10 16:43
0
雪    币: 2286
活跃值: (6663)
能力值: ( LV7,RANK:102 )
在线值:
发帖
回帖
粉丝
77
定格
2019-9-10 17:09
0
雪    币: 387
活跃值: (897)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
78
mb_bjvhnggy 感谢前辈提供的开源项目,受益匪浅。我在导入其他so学习的过程中,遇到这样的问题,就是提示is missing relocationAddr,这个提示不太明白其中含义,希望大佬有空帮我指点一番。 ...
依赖的so加载不了,一般没问题
2019-9-11 12:02
0
雪    币: 387
活跃值: (897)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
79
mb_bjvhnggy 还有一处不明白,这里面的参数构造的规则是什么呢?猜不出来 ::&gt;_&lt;::
这是jni规范的东西
2019-9-11 12:02
0
雪    币: 281
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
80
铭天星 这是jni规范的东西
谢谢,之前是有一些so没有导入,现在已经按照它需要的库都添加进来了;然后试了两个不同应用的so,又发现了这样的错误,这大概又是什么引起地呢?正艰难地debug ┭┮﹏┭┮

另一个错误so的错误是,这个so的jni方法名经过了混淆

2019-9-11 17:21
0
雪    币: 281
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
81
已经解决上面的问题,部分函数可以直接调,有一些无法返回有效值,可能当中有依赖了上下文,正继续排查,谢谢大佬提供这么变态的工具 O(∩_∩)O
2019-9-12 17:48
0
雪    币: 281
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
82
还有一个问题,当执行到方法:AbstractJni.newObjectV 时,找不到对应的函数签名类型。
issues:https://github.com/zhkl0228/unidbg/issues/55  大神有空帮我看下,谢谢!


2019-9-16 20:02
0
雪    币: 281
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
83
这个框架可以直接调用apk中的方法吗?
2019-9-20 17:31
0
雪    币: 4065
活跃值: (3457)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
84
这么牛X的项目, 为什么不是精华?
2019-9-21 13:11
0
雪    币: 190
活跃值: (194)
能力值: ( LV3,RANK:31 )
在线值:
发帖
回帖
粉丝
85
请问这个项目是如何处理syscall的呢
2019-10-5 20:14
0
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
86
java.lang.NegativeArraySizeException: -2157
       at cn.banny.unidbg.linux.file.SimpleFileIO.read(SimpleFileIO.java:100)
       at cn.banny.unidbg.unix.UnixSyscallHandler.read(UnixSyscallHandler.java:139)
       at cn.banny.unidbg.linux.ARMSyscallHandler.read(ARMSyscallHandler.java:1729)
       at cn.banny.unidbg.linux.ARMSyscallHandler.hook(ARMSyscallHandler.java:112)
       at unicorn.Unicorn.invokeInterruptCallbacks(Unicorn.java:123)
       at unicorn.Unicorn.emu_start(Native Method)
       at cn.banny.unidbg.AbstractEmulator.emulate(AbstractEmulator.java:272)
       at cn.banny.unidbg.AbstractEmulator.eFunc(AbstractEmulator.java:371)
       at cn.banny.unidbg.arm.AbstractARMEmulator.eFunc(AbstractARMEmulator.java:201)
       at cn.banny.unidbg.linux.LinuxModule.emulateFunction(LinuxModule.java:205)
       at cn.banny.unidbg.linux.android.dvm.DvmClass.callStaticJniMethod(DvmClass.java:191)

请问count 为负数怎么解决呢?
2019-12-11 16:36
0
雪    币: 387
活跃值: (897)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
87
雨来记挂 java.lang.NegativeArraySizeException: -2157 at cn.banny.unidbg.linux.file.SimpleFileIO.read(Simple ...
去github提issue
2019-12-11 17:19
0
雪    币: 824
活跃值: (51)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
88
特别感谢,这是一篇好文章,谢谢分享技术!
2019-12-12 01:13
0
雪    币: 231
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
89
楼主 Exception in thread "main" java.lang.UnsatisfiedLinkError: no unicorn_java in java.library.path 这是什么情况
2019-12-18 23:49
0
雪    币: 181
活跃值: (2948)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
90
You 叔 楼主 Exception in thread "main" java.lang.UnsatisfiedLinkError: no unicorn_java in java.libr ...
好好读读readme
2019-12-19 13:05
0
雪    币: 231
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
91
huaerxiela 好好读读readme
好的多谢
2019-12-20 00:44
0
雪    币: 0
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
BGM
92
小黄鸭爱学习 通过访问github的 issue ,已找到解决办法。只要复写`callObjectMethodV` 和 `callStaticObjectMethodV`两个方法即可
可以交流下吗? 我也在搞
2020-1-6 13:45
0
雪    币: 30
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
93
请问楼主unidbg 创建模拟器时 ro.build.fingerprint之类的硬件信息怎么构造?
2020-3-1 03:27
0
雪    币: 387
活跃值: (897)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
94
anhooker 请问楼主unidbg 创建模拟器时 ro.build.fingerprint之类的硬件信息怎么构造?
SystemPropertyHook可以解决
2020-3-3 13:27
0
雪    币: 2
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
95
大佬们能看看我这个是什么问题不
上传的附件:
2020-3-27 14:12
0
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
96
荧光之夏 大佬好 我导入到eclipse中有 有两个文件报错Bound mismatch: The generic method getObject(long) of type VM is not applic ...
你好,这个问题解决了吗?我也是这个问题
//好像是要jdk1.7版本
最后于 2020-4-14 14:29 被mb_wihisvab编辑 ,原因:
2020-4-13 21:36
0
雪    币: 101
活跃值: (486)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
97
请问楼主,cn.banny.emulator包在哪呢
2020-4-22 17:03
0
雪    币: 198
活跃值: (180)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
98
荧光之夏 大佬好 我导入到eclipse中有 有两个文件报错Bound mismatch: The generic method getObject(long) of type VM is not applic ...
你好 请问解决了吗 我也是这个问题
2020-6-29 23:40
0
雪    币: 583
活跃值: (429)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
99
[22:37:34 173]  WARN [com.github.unidbg.linux.ARM32SyscallHandler] (ARM32SyscallHandler:439) - handleInterrupt intno=2, NR=-1073744468, svcNumber=0x12d, PC=unicorn@0xfffe0364, syscall=null
java.lang.AbstractMethodError: java/lang/System->getProperty(Ljava/lang/String;)Ljava/lang/String;
       at com.github.unidbg.linux.android.dvm.AbstractJni.callStaticObjectMethodV(AbstractJni.java:314)
       at com.github.unidbg.linux.android.dvm.DvmMethod.callStaticObjectMethodV(DvmMethod.java:39)
       at com.github.unidbg.linux.android.dvm.DalvikVM$46.handle(DalvikVM.java:989)
       at com.github.unidbg.linux.ARM32SyscallHandler.hook(ARM32SyscallHandler.java:102)
       at unicorn.Unicorn$NewHook.onInterrupt(Unicorn.java:128)
       at unicorn.Unicorn.emu_start(Native Method)
       at com.github.unidbg.AbstractEmulator.emulate(AbstractEmulator.java:344)
       at com.github.unidbg.AbstractEmulator.eFunc(AbstractEmulator.java:423)
       at com.github.unidbg.arm.AbstractARMEmulator.eFunc(AbstractARMEmulator.java:206)
       at com.github.unidbg.Module.emulateFunction(Module.java:154)
       at com.github.unidbg.linux.LinuxModule.callFunction(LinuxModule.java:188)
       at com.github.unidbg.linux.LinuxSymbol.call(LinuxSymbol.java:27)
       at com.github.unidbg.linux.android.dvm.DalvikModule.callJNI_OnLoad(DalvikModule.java:30)
       at com.smile.gifmaker.KwaiApp.<init>(KwaiApp.java:44)
       at com.smile.gifmaker.KwaiApp.main(KwaiApp.java:58)
Find native function Java_com_kuaishou_android_security_mainplugin_JNICLibrary_doCommandNative(I[Ljava/lang/Object;)Ljava/lang/Object; => RX@0x4000b771[libkwsgmain.so]0xb771
JNIEnv->GetArrayLength(["/rest/n/tag/text/feed/hot1bf3710213ad409930cd91704d077aac", "d7b7d042-d4f2-4012-be60-d97ff2429c17", 0xffffffff, false, android.content.Context@7006c658, "", false] => 7) was called from RX@0x4001b293[libkwsgmain.so]0x1b293
JNIEnv->GetObjectArrayElement(["/rest/n/tag/text/feed/hot1bf3710213ad409930cd91704d077aac", "d7b7d042-d4f2-4012-be60-d97ff2429c17", 0xffffffff, false, android.content.Context@7006c658, "", false], 4) was called from RX@0x4000e6cd[libkwsgmain.so]0xe6cd
JNIEnv->GetObjectArrayElement(["/rest/n/tag/text/feed/hot1bf3710213ad409930cd91704d077aac", "d7b7d042-d4f2-4012-be60-d97ff2429c17", 0xffffffff, false, android.content.Context@7006c658, "", false], 1) was called from RX@0x40019829[libkwsgmain.so]0x19829
JNIEnv->GetStringUtfChars("d7b7d042-d4f2-4012-be60-d97ff2429c17") was called from RX@0x400165f3[libkwsgmain.so]0x165f3
JNIEnv->NewStringUTF("80014 [1] [p11] [0x0][123-533-]") was called from RX@0x40074917[libkwsgmain.so]0x74917
[22:37:34 221]  WARN [com.github.unidbg.linux.ARM32SyscallHandler] (ARM32SyscallHandler:439) - handleInterrupt intno=2, NR=-1073746308, svcNumber=0x136, PC=unicorn@0xfffe03f4, syscall=null
java.lang.AbstractMethodError: com/kuaishou/android/security/kfree/ExceptionProxy->nativeReport(ILjava/lang/String;)V
       at com.github.unidbg.linux.android.dvm.AbstractJni.callStaticVoidMethodV(AbstractJni.java:393)
       at com.github.unidbg.linux.android.dvm.DvmMethod.callStaticVoidMethodV(DvmMethod.java:229)
       at com.github.unidbg.linux.android.dvm.DalvikVM$55.handle(DalvikVM.java:1197)
       at com.github.unidbg.linux.ARM32SyscallHandler.hook(ARM32SyscallHandler.java:102)
       at unicorn.Unicorn$NewHook.onInterrupt(Unicorn.java:128)
       at unicorn.Unicorn.emu_start(Native Method)
       at com.github.unidbg.AbstractEmulator.emulate(AbstractEmulator.java:344)
       at com.github.unidbg.AbstractEmulator.eFunc(AbstractEmulator.java:423)
       at com.github.unidbg.arm.AbstractARMEmulator.eFunc(AbstractARMEmulator.java:206)
       at com.github.unidbg.Module.emulateFunction(Module.java:154)
       at com.github.unidbg.linux.android.dvm.DvmObject.callJniMethod(DvmObject.java:61)
       at com.github.unidbg.linux.android.dvm.DvmClass.callStaticJniMethod(DvmClass.java:222)
       at com.smile.gifmaker.KwaiApp.getSign3(KwaiApp.java:96)
       at com.smile.gifmaker.KwaiApp.main(KwaiApp.java:59)
2020-7-16 22:42
0
雪    币: 583
活跃值: (429)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
100
求教一下大神!!!
2020-7-16 22:42
0
游客
登录 | 注册 方可回帖
返回
//