hook通杀手机助手是干什么的的

Frida——多平台Hook框架
官网:www.frida.re
Frida是一款基于python + javascript 的hook与调试框架,通杀android\ios\linux\win\osx等各平台,相比xposed和substrace cydia更加便捷。
入门实战文章《Instrumenting Android Applications with Frida》:http://blog.mdsec.co.uk/2015/04/instrumenting-android-applications-with.html ,里面以暴力破解Lollipin锁屏密码作为示例,使用相当方便,几行代码就可以搞定,还免编译。
我另外写了个shell程序去启动Frida,以省去输一堆命令麻烦,有需要的朋友可以试用下。
adb forward tcp:27042 tcp:27042
adb forward tcp:27043 tcp:27043
expect -c&
spawn adb shell
expect \&shell@*\&
send \&su\r\&
expect \&root...
本站内收录的所有文章及其中资源(图片、视频等)均来自于互联网,其版权均归原作者及其网站所有。
若发现bug或建议,欢迎当十位出现5第二天通杀9_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
当十位出现5第二天通杀9
阅读已结束,下载文档到电脑
想免费下载本文?
定制HR最喜欢的简历
你可能喜欢查看: 5779|回复: 41
D3D hook 通杀所有系统win xp -win 8.1 通杀所有DirectX版本
阅读权限30
本帖最后由 cmc5410 于
13:24 编辑
[C++] 纯文本查看 复制代码BOOL
bCompare ( const BYTE* pData, const BYTE* bMask, const char* szMask )
for ( ;*szM ++szMask, ++pData, ++bMask )
if ( *szMask == 'x' && *pData != *bMask )
return (*szMask) == NULL;
DWORD FindPattern ( DWORD dwStartAddress,DWORD dwSize, BYTE *bMask, char * szMask, int codeOffset, BOOL extract )
for ( DWORD i = 0; i & dwS i++ )
if ( this-&bCompare((BYTE*)(dwStartAddress + i),bMask,szMask) )
if ( extract )
return *(DWORD*)(dwStartAddress+i+codeOffset);
(DWORD)(dwStartAddress+i+codeOffset);
return NULL;
void __cdecl nReset ( void )
_asm pushad
_asm popad
至于过不过检测& &试试不就知道了?
(1.8 KB, 下载次数: 380)
12:41 上传
点击文件名下载附件
阅读权限: 10下载积分: 吾爱币 -1 CB
→ → 第一次听说HOOKD3D会被检测 得看你得到对象是干嘛去了 HOOK Z轴做透视去了么&
我很赞同!
能否定做防封。
我很赞同!
我很赞同!
我很赞同!
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限10
不想开就不想开,发个部分代码,连需要什么库和什么文件都不知道,怎么去用。
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限25
看起来就很牛!
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限20
大牛!!!!
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限25
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限10
完全看不懂,只有大神才懂的
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限10
这么牛啊?
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限10
不明觉厉啊
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限25
- -通杀是通杀 不过检测
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限35
看起来很牛逼的样子!
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限10
我想要成品,.,,
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
免责声明:吾爱破解所发布的一切破解补丁、注册机和注册信息及软件的解密分析文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。
( 京ICP备号 | 京公网安备 87号 )
Powered by Discuz!
Comsenz Inc.3309人阅读
Android-HOOK(18)
承《》,这次用模拟器来使用XPOSED框架,目前比较优秀的模拟器当属bluestacks,而靠谱助手又是集成得较好的一个。&
截止目前为止,最新版本的靠谱助手(2.5.1143)在最新的引擎中就默认集成了2.6.1的XPOSED框架,而且默认是激活状态。这就少了许多麻烦的操作,在早期的靠谱助手版本中安装XPOSED,要么无法激活,要么激活后模块并不能有效工作。
开发模块时请使用XposedBridgeApi-42.jar。
注:靠谱助手升级到V3.0以上版本后,任何一个版本的引擎中xposed均失效,虽然0.8的引擎默认是安装有xposed,但是无法激活。
V2.5.1143版本靠谱助手下载地址:
V3.0以上版本界面和操作上有很大改观:
把ga.apk安装进去并运行,因为插件当初是写在ga里面,并由ga自动释放出来的。安装xposedemo.apk,并在XPOSEDInstaller中激活xposedemo,重启后运行helloapplication:
优化完善:
直接对GA进行修改,除了加载叉叉助手的插件外,拦截获取MAC的函数:
package&com.netease.&import&android.app.A&import&android.content.Cimport&android.content.SharedP&import&android.os.B&importandroid.os.B&import&android.util.L&import&java.io.BufferedR&importjava.io.F&import&java.io.FileNotFoundE&import&java.io.FileOutputSimport&java.io.FileR&import&java.io.IOE&importjava.lang.reflect.M&import&com.netease.ga.view.MainA&importdalvik.system.DexClassL&import&de.robv.android.xposed.IXposedHookLoadPimport&de.robv.android.xposed.XC_MethodH&importde.robv.android.xposed.callbacks.XC_LoadP&import&staticde.robv.android.xposed.XposedHelpers.findAndHookM&import&staticde.robv.android.xposed.XposedHelpers.findC&/**&* Created by sing on 14-9-17. * desc:&*/&public&class&XposedXXHook&implements&IXposedHookLoadPackage {&private&staticfinal&String TAG = &XposedXXHook&;&//private static final String TARGET_PACKAGE = &com.example.helloapplication&;&//private static final String TARGET_CLASS = &com.example.helloapplication.MainActivity&;&private&static&final&String TARGET_FUNCTION = &onCreate&;&//private SharedP&/**&* *&@param&param *@throws&Throwable&*/&@Override&public&voidhandleLoadPackage(XC_LoadPackage.LoadPackageParam param)&throws&Throwable { Log.d(TAG,&&handleLoadPackage: & +&param.packageName);&final&String packageName =getHookPackage(); Log.d(TAG,&&handleLoadPackage-getHookPackage: & +&packageName);&if(packageName.equals(param.packageName) ==&false) {&return; } String hookmainclass&=getHookActivity(); Log.d(TAG,&&handleLoadPackage-hookmainclass: & +&hookmainclass); Log.d(TAG,&&handleLoadPackage: star hook&);findAndHookMethod(&android.net.wifi.WifiInfo&, param.classLoader, &getMacAddress&,new&XC_MethodHook() { @Override&protected&void&beforeHookedMethod(MethodHookParam param)&throws&Throwable { Log.d(TAG,&&[getMacAddress]beforeHookedMethod&); } });XC_MethodHook.Unhook unhook&= findAndHookMethod(hookmainclass, param.classLoader, TARGET_FUNCTION, Bundle.class,&new&XC_MethodHook() { @Override&protected&voidbeforeHookedMethod(MethodHookParam param)&throws&Throwable { Log.d(TAG,&&[handleLoadPackage]beforeHookedMethod&); } @Override&protected&voidafterHookedMethod(MethodHookParam param)&throws&Throwable { Log.d(TAG,&&[handleLoadPackage]afterHookedMethod: & +&param.thisObject.toString()); String plugApkPath&= &/data/data/com.netease.ga/app_plugin/lianmengplug.apk&; String plugSoPath&= &/data/data/com.netease.ga/app_plugin/libxxlianmeng_mm.so&; String dexOutputDir&= &/data/data/& + packageName + &/cache&; ClassLoader localClassLoader&=ClassLoader.getSystemClassLoader(); DexClassLoader localDexClassLoader&=&newDexClassLoader(plugApkPath, dexOutputDir,&null, localClassLoader); java.lang.Class&?& plugClass = localDexClassLoader.loadClass(&com.xxAssistant.UI.UniversalUI&); Method mInit&= plugClass.getDeclaredMethod(&init&, Activity.class, String.class); mInit.invoke(null, param.thisObject, plugSoPath); } });&if&(unhook!=null) { Log.d(TAG,&&handleLoadPackage: hook ok&); }else{ Log.d(TAG,&&handleLoadPackage: hook failed&); } }&public&static&String getHookPackage() {&boolean&bok =&false; String strContent&= &&;&try&{ FileReader reader&=&newFileReader(&/data/data/com.netease.ga/app_plugin/config.cfg&); BufferedReader br&=new&BufferedReader(reader); strContent&=&br.readLine(); }&catch(FileNotFoundException e) { e.printStackTrace(); }&catch(IOException e) { e.printStackTrace(); }&returnstrC }&public&static&String getHookActivity() {&boolean&bok =&false; String strContent&= &&;&try&{ FileReader reader&=&newFileReader(&/data/data/com.netease.ga/app_plugin/config.cfg&); BufferedReader br&=new&BufferedReader(reader); strContent&=&br.readLine(); strContent&=&br.readLine(); }catch(FileNotFoundException e) { e.printStackTrace(); }&catch(IOException e) { e.printStackTrace(); }&return&strContent.replace('/', '.'); } }
重启模拟器,在GA里面选择:
然后运行目标程序:
显示插件已经装载成功,再点击“显示当前信息”log输出:
10-28 13:58:19.170: D/XposedXXHook(1536): [getMacAddress]beforeHookedMethod
也可以在initZygote中就设置好HOOK,需要再实现一个接口:IXposedHookZygoteInit,如下:
public&class&XposedXXHook&implements&IXposedHookZygoteInit, IXposedHookLoadPackage
具体HOOK代码和上面的不太一样:
/**&* *&@param&startupParam *&@throws&Throwable&*/&@Override&public&voidinitZygote(StartupParam startupParam)&throws&Throwable { Log.d(TAG,&&initZygote: & +startupParam.toString());&try&{ Class&?& cSystemServer = Class.forName(&android.net.wifi.WifiInfo&); Method getMacAddress&= cSystemServer.getDeclaredMethod(&getMacAddress&); XposedBridge.hookMethod(getMacAddress,&new&XC_MethodHook() { @Override&protected&voidbeforeHookedMethod(MethodHookParam param)&throws&Throwable { Log.d(TAG,&&initZygote-getMacAddress-beforeHookedMethod: & +&param.toString()); } @Override&protected&voidafterHookedMethod(MethodHookParam param)&throws&Throwable { Log.d(TAG,&&initZygote-getMacAddress-afterHookedMethod: & +&param.toString());super.afterHookedMethod(param); } }); }&catch&(Throwable ex) { } }
存在的问题:
测试到含有so文件的APK时,会有一些打不log,如hellojni,anep,易信等。追踪logcat显示如下错误信息:
10-28 10:51:55.240: I/ActivityManager(571): ARM Package com.example.hellojni doesn't have services
10-28 10:51:55.370: D/dalvikvm(3719): Trying to load lib /data/data/com.example.hellojni/lib/libhello-jni.so 0x31956f10
10-28 10:51:55.370: D/dalvikvm(3719): Added shared lib /data/data/com.example.hellojni/lib/libhello-jni.so 0x31956f10
10-28 10:51:55.370: D/dalvikvm(3719): No JNI_OnLoad found in /data/data/com.example.hellojni/lib/libhello-jni.so 0x31956f10, skipping init
10-28 10:57:07.710: I/ActivityManager(571): package `com.netease.anep` whitelisting status = false
10-28 10:57:07.710: I/ActivityManager(571): Attempting to launch an arm app com.netease.anep
10-28 10:57:07.710: I/ActivityManager(571): ARM Package com.netease.anep doesn't have services
更多错误:
也并不是所有的包含so文件的APK都不可以拦截,某些还是可以的,例如网易邮箱:
&&相关文章推荐
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:1000143次
积分:9914
积分:9914
排名:第1737名
原创:245篇
转载:117篇
评论:171条
(1)(6)(2)(3)(5)(1)(1)(2)(3)(4)(14)(7)(43)(21)(41)(4)(7)(5)(4)(13)(28)(2)(3)(4)(3)(3)(6)(4)(36)(27)(13)(2)(12)(16)(16)}

我要回帖

更多关于 柠檬助手 是干什么的 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信