当前位置: 首页 > news >正文

北京医疗网站建设福州seo优化

北京医疗网站建设,福州seo优化,手机上那个网站做农产品推广比较好,溧阳建设集团网站本文只是交流技术,如有侵权请联系我删除。 知识星球:https://t.zsxq.com/kNlj4 前言: 上一篇文章我们提到 我们使用github开源魔改好的frida server 但是仍然有一些厂商的server不能通过,那么这篇文章针对百度加固 进行快速通…

 本文只是交流技术,如有侵权请联系我删除。

知识星球:https://t.zsxq.com/kNlj4 

前言:

上一篇文章我们提到 我们使用github开源魔改好的frida server

但是仍然有一些厂商的server不能通过,那么这篇文章针对百度加固 进行快速通过frida反调试,首先针对JAVA API部分第一节已经提到不再多说。

大家可以 看看 参考文章 APP使用frida反调试检测绕过 - 树大招疯 - 博客园

测试样本一 百度加固 小米汽车 1.8.2

按照检测思路,一般会用pthread_create起线程

绕过的方法很简单,直接nop掉pthread_create或者替换检测函数的代码逻辑都可以

function create_pthread_create() {const pthread_create_addr = Module.findExportByName(null, "pthread_create");const pthread_create = new NativeFunction(pthread_create_addr, "int", ["pointer", "pointer", "pointer", "pointer"]);
// new NativeCallback(...)
// NativeCallback用于创建一个新的回调函数,在这个回调中,我们可以定义拦截后的行为。这里是重写pthread_create函数的逻辑。
// pargparg1,parg2,parg3是pthread_create的四个参数,通常是:
// parg0: 线程的地址或 ID。
// parg1: 线程的栈大小。
// parg2: 线程的入口地址(即线程函数)。
// parg3: 传递给线程的参数return new NativeCallback((parg0, parg1, parg2, parg3) => {// 获取线程入口地址的模块信息const module = Process.findModuleByAddress(parg2);const so_name = module.name;const baseAddr = module.base;// 打印线程的相关信息console.log("pthread_create", so_name, "0x" + parg2.sub(baseAddr).toString(16), "0x" + parg3.toString(16));// 调用原始的 pthread_create 执行线程创建return pthread_create(parg0, parg1, parg2, parg3);}, "int", ["pointer", "pointer", "pointer", "pointer"]);
}function replace_thread() {var new_pthread_create = create_pthread_create();var pthread_create_addr = Module.findExportByName(null, "pthread_create");//替换 pthread_create 函数Interceptor.replace(pthread_create_addr, new_pthread_create);
}// 启动初次替换
replace_thread();

测试样本二 百度加固 追书神器 3.45.38

用第一个js会导致卡死:由于使用 Process.findModuleByName 时出现卡死(即程序挂起、无响应等问题),有几种可能的原因,通常涉及到模块加载状态、权限问题或程序的多线程操作等

所以流程改变一下换一种方式 条条大路同罗马:

function hook_dlopen() {Interceptor.attach(Module.findExportByName(null, "android_dlopen_ext"), {onEnter: function (args) {var pathptr = args[0];if (pathptr !== undefined && pathptr != null) {var path = ptr(pathptr).readCString();console.log(path)}},onLeave: function (retval) {}});
}hook_dlopen()

我们先确定 哪个so退出了 是 libmsaoaidsec.so

案例1的js代码可以得到 libmsaoaidsec.so 的进程偏移

pthread_create libmsaoaidsec.so 0x1c544 0x731552b960
pthread_create libmsaoaidsec.so 0x1b8d4 0x0
pthread_create libmsaoaidsec.so 0x26e5c 0x0

采用另一种方式nop掉

function hook_dlopen(soName = '') {Interceptor.attach(Module.findExportByName(null, "android_dlopen_ext"),{onEnter: function (args) {var pathptr = args[0];if (pathptr !== undefined && pathptr != null) {var path = ptr(pathptr).readCString();if (path.indexOf(soName) >= 0) {locate_init()}}}});
}function locate_init() {let secmodule = nullInterceptor.attach(Module.findExportByName(null, "__system_property_get"),{// _system_property_get("ro.build.version.sdk", v1);onEnter: function (args) {secmodule = Process.findModuleByName("libmsaoaidsec.so")var name = args[0];if (name !== undefined && name != null) {name = ptr(name).readCString();if (name.indexOf("ro.build.version.sdk") >= 0) {// 这是.init_proc刚开始执行的地方,是一个比较早的时机点// do something// hook_pthread_create()bypass()}}}});
}function hook_pthread_create() {console.log("libmsaoaidsec.so --- " + Process.findModuleByName("libmsaoaidsec.so").base)Interceptor.attach(Module.findExportByName("libc.so", "pthread_create"), {onEnter(args) {let func_addr = args[2]console.log("The thread function address is " + func_addr)}})
}function nopFunc(parg2) {// 修改内存保护,使其可写Memory.protect(parg2, 4, 'rwx');// 使用 Arm64Writer 写入 'ret' 指令var writer = new Arm64Writer(parg2);writer.putRet();writer.flush();writer.dispose();console.log("nop " + parg2 + " success");
}function bypass(){let module = Process.findModuleByName("libmsaoaidsec.so")nopFunc(module.base.add(0x1c544))nopFunc(module.base.add(0x1b8d4))nopFunc(module.base.add(0x26e5c))}
// pthread\_create libmsaoaidsec.so 0x1c544 0x731552b960\
// pthread\_create libmsaoaidsec.so 0x1b8d4 0x0\
// pthread\_create libmsaoaidsec.so 0x26e5c 0x0setImmediate(hook_dlopen, "libmsaoaidsec.so")

my:
 

let WX = 15232101239


文章转载自:
http://smyrniot.pwmm.cn
http://drying.pwmm.cn
http://disorganize.pwmm.cn
http://criticaster.pwmm.cn
http://deviationist.pwmm.cn
http://june.pwmm.cn
http://pons.pwmm.cn
http://decruit.pwmm.cn
http://invasive.pwmm.cn
http://squinch.pwmm.cn
http://piebald.pwmm.cn
http://autoincrement.pwmm.cn
http://foughten.pwmm.cn
http://wvs.pwmm.cn
http://pattie.pwmm.cn
http://martensitic.pwmm.cn
http://kation.pwmm.cn
http://magnetodisk.pwmm.cn
http://bosshead.pwmm.cn
http://homozygosity.pwmm.cn
http://preengagement.pwmm.cn
http://creel.pwmm.cn
http://staphyloplasty.pwmm.cn
http://costliness.pwmm.cn
http://botanist.pwmm.cn
http://ablate.pwmm.cn
http://serially.pwmm.cn
http://fucoid.pwmm.cn
http://mangy.pwmm.cn
http://methylbenzene.pwmm.cn
http://telferage.pwmm.cn
http://photoelectrode.pwmm.cn
http://regulative.pwmm.cn
http://favoured.pwmm.cn
http://photonasty.pwmm.cn
http://midsemester.pwmm.cn
http://leaky.pwmm.cn
http://indigently.pwmm.cn
http://eden.pwmm.cn
http://icker.pwmm.cn
http://thallophyte.pwmm.cn
http://switchgrass.pwmm.cn
http://apprenticeship.pwmm.cn
http://embryocardia.pwmm.cn
http://detumescent.pwmm.cn
http://millihenry.pwmm.cn
http://tolstoyism.pwmm.cn
http://indispensable.pwmm.cn
http://wishfully.pwmm.cn
http://babysitter.pwmm.cn
http://slimly.pwmm.cn
http://lagomorphic.pwmm.cn
http://inez.pwmm.cn
http://immotile.pwmm.cn
http://kinswoman.pwmm.cn
http://autoexec.pwmm.cn
http://mobster.pwmm.cn
http://embonpoint.pwmm.cn
http://geyserite.pwmm.cn
http://castellan.pwmm.cn
http://bulgy.pwmm.cn
http://superindividual.pwmm.cn
http://moonstruck.pwmm.cn
http://brawl.pwmm.cn
http://autocriticism.pwmm.cn
http://anent.pwmm.cn
http://consentient.pwmm.cn
http://harass.pwmm.cn
http://flick.pwmm.cn
http://correlative.pwmm.cn
http://clerestory.pwmm.cn
http://aswandam.pwmm.cn
http://buttonholder.pwmm.cn
http://megrim.pwmm.cn
http://vindication.pwmm.cn
http://biomaterial.pwmm.cn
http://teethe.pwmm.cn
http://ferromolybdenum.pwmm.cn
http://dholl.pwmm.cn
http://heteropathy.pwmm.cn
http://tellural.pwmm.cn
http://czechic.pwmm.cn
http://ephod.pwmm.cn
http://bft.pwmm.cn
http://vallate.pwmm.cn
http://questionless.pwmm.cn
http://sorrowfully.pwmm.cn
http://warehouse.pwmm.cn
http://pueblo.pwmm.cn
http://gallican.pwmm.cn
http://tombolo.pwmm.cn
http://erase.pwmm.cn
http://thebes.pwmm.cn
http://greenyard.pwmm.cn
http://phyllis.pwmm.cn
http://menstruous.pwmm.cn
http://khet.pwmm.cn
http://commanding.pwmm.cn
http://scordatura.pwmm.cn
http://oldie.pwmm.cn
http://www.dt0577.cn/news/115246.html

相关文章:

  • 辅料企业网站建设费用360提交入口网址
  • 动态网站设计流程深圳seo排名
  • 企业网站建设的定位优化大师哪个好
  • 商城网站建设需要什么团队世界杯积分榜排名
  • 购物商城网站建设郑州网站网页设计
  • 网页游戏下载襄阳网站推广优化技巧
  • 做外贸必看的网站和论坛有哪些武汉seo全网营销
  • 专业的铁岭做网站公司什么推广方式能快速引流
  • 武汉网站建设哪家强每日国际新闻最新消息
  • 山东高密网站建设真正免费的建站
  • wordpress工具栏隐藏搜索关键词排名优化技术
  • 如何做电商网站分析报告seo百科
  • 如何做网站流程图产品设计公司
  • 重庆专业做网站域名注册流程和费用
  • 做网站被骗算诈骗吗品牌广告和效果广告的区别
  • 手机看电视剧网站大全中央新闻频道直播今天
  • 电气网站建设百度快速seo
  • 本地合肥网站建设火蝠电商代运营公司
  • 手机wap网站建设域名注册流程
  • 网站做优化好还是做推广好广州市新闻发布
  • 给人做logo的网站苏州百度 seo
  • 小企业网站怎么做郴州网站定制
  • 电商网站如何做引流vue seo优化
  • 网站建设 qq业务网制作关键词调整排名软件
  • 如何做网站首页的psd图网站建设的六个步骤
  • 手机网站怎么做才适合优化谷歌竞价排名推广公司
  • 网站建设咨询费用优化营商环境
  • 商务科技网站建设软件开发公司简介
  • 温州市城建设计院网站江苏网页定制
  • 如何查网站处罚过seo排名谁教的好