正文内容加载中...
posted @ 2018-08-21 21:09 bamb00 阅读(287) 评论(2) 编辑
摘要: 这个题目我以为是考的怎么进行提权,结果原来是这样的: 1. DexClassLoader 动态载入应用可写入的 dex 可执行文件 2. java.lang.Runtime.exec 方法执行应用可写入的 elf 文件 3. System.load 和 System.loadLibrary 动态载入阅读全文
posted @ 2018-08-16 21:36 bamb00 阅读(58) 评论(0) 编辑
摘要: 前文介绍了导入表hook,现在来说下导出表的hook。导出表的hook的流程如下。1、获取动态库基值 2、计算program header table实际地址 通过ELF文件头获取到程序表头的偏移地址及表头的个数 3、遍历program header table,找到类型为PT_DYNAMIC的区段阅读全文
posted @ 2018-07-15 13:05 bamb00 阅读(261) 评论(0) 编辑
摘要: 全局符号表(GOT表)hook实际是通过解析SO文件,将待hook函数在got表的地址替换为自己函数的入口地址,这样目标进程每次调用待hook函数时,实际上是执行了我们自己的函数。 GOT表其实包含了导入表和导出表,导出表指将当前动态库的一些函数符号保留,供外部调用,导入表中的函数实际是在该动态库中阅读全文
posted @ 2018-07-13 19:54 bamb00 阅读(363) 评论(0) 编辑
摘要: 以前对Android so的注入只是通过现有的框架,并没有去研究so注入原理,趁现在有时间正好拿出来研究一下。 首先来看注入流程。Android so的注入流程如下: attach到远程进程 -> 保存寄存器环境 -> 获取目标程序的mmap, dlopen, dlsym, dlclose 地址 -阅读全文
posted @ 2018-07-11 21:57 bamb00 阅读(261) 评论(0) 编辑
摘要: Android应用可能会使用sockets(TCP、UDP、UNIX)在应用间或者自身应用组件间进行通信,然而这种通信方式本身并没有提供任何身份认证。 ● 当开放端口绑定到0.0.0.0,那么任何IP都可以访问。 ● 当开放端口绑定到127.0.0.1,那么同一设备上的应用依然可以访问。一旦端口访问阅读全文
posted @ 2018-04-10 20:09 bamb00 阅读(381) 评论(0) 编辑
摘要: 在分析漏洞之前,我们先来了解两个相关知识点,跨域和URL scheme。 一、URL Scheme URL Scheme是一种页面内跳转协议,就是通过定义自己的scheme协议,可以非常方便跳转app中的各个页面;通过scheme协议,服务器可以定制化告诉App跳转那个页面,可以通过通知栏消息定制化阅读全文
posted @ 2018-04-08 23:22 bamb00 阅读(237) 评论(0) 编辑
摘要: 本文以乐固2.8.1(后面还有2.10.3.1)为例,介绍乐固壳的分析和脱壳过程。 一、绕过反调试首先,使用ida加载libshella-2.8.1.so后,出现以下section错误提示,点“OK”后仍然可以加载成功: 这说明“乐固”在section做了一些手脚。要解决这个问题,我们需要明白关于s阅读全文
posted @ 2018-03-28 20:53 bamb00 阅读(990) 评论(1) 编辑
摘要: 该crackme主要实现都在so中,用ida加载libqihoo.so,出现以下错误 第一个错误说明是节区头部表格的表项大小错误,第二个错误是指节区头部表格的大小或偏移值错误。不管它,点击“Yes”继续加载。找到JNI_OnLoad函数,发现该函数已经加密: 我们知道so 文件加载时首先会查看 .i阅读全文
posted @ 2018-01-31 22:53 bamb00 阅读(360) 评论(4) 编辑
摘要: 移动平台游戏框架主要有unity 3d和cocos 2d。我们首先得识别游戏使用的框架。 识别Unity游戏Android平台的apk包可以直接解压,看是否有./assets/bin/Data/Managed目录,也可以查看lib文件夹下面包含的一些so,如果有libmono,libunity等模块阅读全文
posted @ 2018-01-07 21:37 bamb00 阅读(874) 评论(2) 编辑