安卓逆向_20 --- 模拟器检测、反调试检测、ELF动态调试、__libc_init 下断

 

From( 模拟器检测实战分析 ):https://www.bilibili.com/video/BV1UE411A7rW?p=65

怎样过 app 的模拟器检测:https://bbs.pediy.com/thread-249759.htm

Android 模拟器如何不被检测思路:https://bbs.pediy.com/thread-227050.htm

Android 模拟器检测常用方法:https://blog.csdn.net/sinat_33150417/article/details/51320228

如何判断 Android 设备是真机还是模拟器?:https://www.zhihu.com/question/21355176/answer/272069337

检测 Android 模拟器的方法和代码实现:https://blog.csdn.net/earbao/article/details/82746605

一行代码帮你检测Android模拟器(更新至1.1.0):https://www.jianshu.com/p/434b3075b5dd

过 apk 模拟器检测,关于特定模拟器检测蓝叠模拟器:https://www.52pojie.cn/thread-1039699-1-1.html

android-模拟器检测方法:https://www.jianshu.com/p/ec99371f00ed

 

模拟器检测

 

 

 

使用 AndroidStudio 动态调试 smali 代码 查找 检测模拟器 代码

 

入口点入口页面 看下 ,分析有没有模拟器检测。。。

使用 AndroidStudio 动态调试 smali 代码 查找 检测模拟器 代码:https://www.bilibili.com/video/BV1UE411A7rW?p=65

 

 

反调试检测手段

( 其实有好多种检测,这里只列举了:关键文件检测、端口检测、进程名检测  来进行简单说明。。。)

IDA Pro 动态调试,分析检测( 这里分析的是 " 可执行文件 ",不是 so 库 )

1. 关键文件检测( 例如:android_server 文件检测 ):https://www.bilibili.com/video/BV1UE411A7rW?p=66

libc_init

 

相关端口检测,例如 23946 

 

进程名称检测

 

2. 动态轮询检测( 使用 ptrace ):https://www.bilibili.com/video/BV1UE411A7rW?p=67

libc_init 下断点

源码:

 

trackpid  ( cat /proc/进程id/status  、cat /proc/进程id/cmdline )

 

 

 

动态调试 进程名称 检测( 调试 可执行程序 【不是 apk )

 

Android反调试方法总结以及源码实现之检测篇(一):https://blog.csdn.net/feibabeibei_beibei/article/details/60956307

安卓常见的反调试与对抗方案:https://www.52pojie.cn/thread-709669-1-1.html

视频地址( 动态调试 ELF ):https://www.bilibili.com/video/BV1UE411A7rW?p=68

安卓 反调试

可执行文件源码( 编译成可执行文件之后,adb push 传到 手机上执行,然后 动态调试进程 ):

上传可执行文件到手机,并运行程序:

运行 android_servers 

端口转发( 在打开一个 cmd 窗口,运行 端口转发命令 ):

执行转发命令

使用 IDA Pro 调试

注意:

  • 调试 可执行程序 是 Debugger ---> run 
  • 调试 so 是 Debugger ---> attach

调试可执行程序:

填写可执行文件路径、IP、和 端口号

点击 OK 之后,会挂起程序,然后勾选 三项

因为是从 libc.so 加载的,所以直接点击是跳转不过来的,如图所示:

点击运行加载 libc.so 

点击进入 libc.so ,然后再 libc.so  里面搜索 libc,找到 libc_init,点进去,下断点

然后再点击 "运行",让程序运行到断点处。。。

 

可执行文件 的 导出函数 只有一个 main,点击去,可以找到 __libc_init ,这个函数有 4 个参数,这4个是固定的

但是怎么找一个可执行文件一开始执行的地方,其实就是 __libc_init 的第 3 个参数,

即 R2 ,指向 main 函数,即就是程序的入口点。。。

分析 main 函数即可看到 检测逻辑代码

 

 

libc_init  下断点

 

libc_init  下断点:https://www.bilibili.com/video/BV1UE411A7rW?p=65

 

 

 

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/495353.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2017-2018中国机器人创新Top100榜单深度分析

来源:产业创新创投数据平台Innov100摘要:人类和机器人由相互隔离、保持距离发展到充分的人机交互,融合共生。一、2017-2018年中国机器人创新Top100榜单二、中国机器人创新Top100数据分析(一)机器人创新Top100产业生态分…

[SCM]源码管理 - perforce快速入门

Perforce是目前比较流行的集中式的源代码管理工具,在很多的欧美跨国公司被广泛的使用。他能够运行于Windows,Linux,Mac几乎所有的平台,支持客户端,命令行,IDE集成,操作系统shell,API…

揭秘:机器究竟是怎么学习的?

来源:雪球摘要:从算法的角度看,机器学习有很多种算法,例如回归算法、基于实例的算法、正则化算法、决策树算法、贝叶斯算法、聚合算法、关联规则学习算法和人工神经网络算法。从算法的角度看,机器学习有很多种算法&…

安卓逆向_21 --- Java层和so层的反调试( IDA 动态调试 JNI_OnLoad、init_array下断)

1. 安卓程序动态调试条件 安卓程序动态调试条件 ( 2个满足1个即可 ): 1. 在 AndroidMainfest.xml ---> application 标签下,设置或者添加属性 android:debuggable"true" 2. 系统默认模式,在 build.prop(boot.img),…

JavaScript MSN 弹出消息框

** 类名:CLASS_MSN_MESSAGE ** 功能:提供类似MSN消息框 ** 示例: ** 作者:ttyp ** 邮件:ttyp21cn.com ** 日期:2005-3-18 ** **/ JS 代码: // JScri…

一文读懂:深扒人脸识别60年技术发展史

来源:与非网摘要: “他来听我的演唱会,门票换了手铐一对”。最近歌神张学友变阿SIR,演唱会上频频抓到罪犯,将人脸识别技术又一次推到了大众的视线中。“他来听我的演唱会,门票换了手铐一对”。最近歌神张学…

安卓逆向_22( 一 ) --- Xposed【 Android Studio + Xposed 实现简单的 hook 】

From:使用渗透测试框架 Xposed 框架 hook 调试 Android APP:https://www.freebuf.com/articles/terminal/56453.html Xposed框架分析:https://blog.csdn.net/zjx839524906/article/details/81046844 xposted框架 原理 Xposed框架之函数Hoo…

【数据采集】将16进制字符串转化为Double类型输出(依照IEEE754标准)

因为需要读取二进制文件中包含的数据&#xff0c;故需要这样一个转化过程。 鄙人功力太浅&#xff0c;主要参照http://www.cnblogs.com/xinjun/archive/2010/07/28/1787297.html&#xff0c;略有改动&#xff0c;以保证编译运行通过。 1 #include <iostream> 2 #include…

TED演讲 | 2100年,神经学家如何研究人类大脑?

“本文来源于药明康德微信公众号&#xff08;ID&#xff1a;WuXiAppTecChina&#xff09;”除非我们弄清楚如何在健康人体中获得神经元的电活动&#xff0c;否则不会在理解人类大脑或疾病方面取得任何进展。 Were not going to make any progress towards understanding the hu…

安卓逆向_24( 一 ) --- Hook 框架 frida( Hook Java层 和 so层) )

From&#xff1a;Hook 神器家族的 Frida 工具使用详解&#xff1a;https://blog.csdn.net/FlyPigYe/article/details/90258758 详解 Hook 框架 frida ( 信抢红包 )&#xff1a;https://www.freebuf.com/company-information/180480.html APP逆向神器之Frida【Android初级篇】…

VC 创建NT服务程序

VC 创建NT服务程序 #include "Windows.h" #include "Winsvc.h" #include "time.h" #include "stdio.h" SERVICE_STATUS m_ServiceStatus; SERVICE_STATUS_HANDLE m_ServiceStatusHandle; BOOL bRunningtrue; void WINAPI Servi…

安卓逆向_22( 二 ) --- Xposed 学习记录

转载&#xff1a;看雪论坛 堂前燕&#xff1a;https://bbs.pediy.com/thread-252153.htm Xposed 模块编写的那些事&#xff1a;https://www.freebuf.com/articles/terminal/114910.html 看了很多 xposed的教程&#xff0c;自以为掌握了个大概&#xff0c;直到今天整理&#xf…

最前线丨新零售结果、AT暗战,今年的618都讲了哪些故事

来源&#xff1a;36Kr今年的618成了巨头们验收新零售成果的好时机。618源于2010年&#xff0c;最初为京东店庆。2013年天猫加入618大促&#xff0c;苏宁、国美紧随其后。此后&#xff0c;618成为电商价格战的战场&#xff0c;也成为全网狂欢的节日。618今年已经走到底第9个年头…

什么是RUP

一、RUP产生的背景 UML能够用来为系统进行面向对象建模&#xff0c;但是并没有指定应用UML的过程&#xff0c;它仅仅是一种语言&#xff0c;它是独立于任何过程的。如果想要成功的应用UML一个好的过程是必要的。合理的过程能够有效的测度工作进度&#xff0c;控制和改善工作效率…

安卓逆向_24 ( 二 ) --- frida 学习记录

转载&#xff1a;看雪论坛 堂前燕 &#xff1a;https://bbs.pediy.com/thread-252319.htm apk 和 Python脚本 链接&#xff1a;https://pan.baidu.com/s/1KX1fY16NgaYB1FnCrpu0lQ 提取码&#xff1a;t38k 上次记录了下xposed hook java层的学习&#xff0c;这次记录下frid…

动态 | DeepMind 首次披露旗下专利申请情况

来源&#xff1a;AI科技评论摘要&#xff1a;作为一家顶尖的人工智能研究公司&#xff0c;DeepMind 近年来申请了一堆国际专利&#xff0c;但是具体到专利内容和申请数量就不得而知了。近日&#xff0c;DeepMind首次披露了一系列国际专利&#xff0c;这些专利涉及了现代机器学习…

JavaScript获取URL参数

文件1&#xff1a;realwall.js (function(window){var urltool {getUrlParameterByKey : function(url,key){var result "",start,parameterStr,len,paras,i;parameterStr url.split("?");if(parameterStr.length > 1){parameterStr parameterStr[…

Frida Android hook

From&#xff1a;https://eternalsakura13.com/2020/07/04/frida/ 开发环境配置 ( IDE 智能提示 frida )&#xff1a; 下载 nodejs&#xff1a; https://nodejs.org/zh-cn/download/npm install types/frida-gum 见过的较好的frida笔记&#xff1a; https://kevinspider.gith…

寒武纪宣布完成B轮融资 整体估值达25亿美元

来源&#xff1a;网易智能摘要&#xff1a;6月20日&#xff0c;芯片领域公司寒武纪宣布完成数亿美元的B轮融资&#xff0c;由中国国有资本风险投资基金、国新启迪、国投创业、国新资本联合领投。中金资本、中信证券投资&金石投资、TCL资本、中科院科技成果转化基金跟投。原…

安卓模拟器 Genymotion 安装

Form&#xff1a;https://www.runoob.com/w3cnote/android-tutorial-genymotion-install.html Linux (Ubuntu) 下的 Android 模拟器&#xff1a;Genymotion&#xff1a;https://blog.csdn.net/qq_25978793/article/details/49923579 Android 模拟器 Genymotion 安装使用教程详解…