在进行安卓安全研究时,hook技术是不可或缺的,常用的有Xposed:Java层的HOOK框架,由于要修改Zgote进程,需要Root,体验过Xposed,整个过程还是很繁琐的,并且无法hook,native层的.作为一名安卓菜鸟,Frida明显更方便,更适合我,结合现有的工具可以很容易的达到hook 的目的. 本篇文章为第一篇,初体验Frida. 学习的前提:安卓开发基础 ,推荐:https://www.runoob.com/w3cnote/android-tutorial-android-s…
1.关于使用frida遇到的一些问题 (1)如果出现以下错误: 可以通过以下方式关闭SELinux,在adb shell中执行: > /sys/fs/selinux/enforce 或者 setenforce (2)如果出现“frida.ServerNotRunningError: unable to connect to remote frida-server”的错误,试试端口转发: adb forward tcp:27042 tcp:27042 2.hook native函数 首先编写pyt…
运行环境 ● Python – latest 3.x is highly recommended ● Windows, macOS, or Linux安装方法使用命令 sudo pip install frida或从https://build.frida.re/frida/下载以cat命令为例,检查frida是否正确安装: $ cp /bin/cat /tmp/cat $ /tmp/cat 打开一个新的终端,创建example.py ,写入如下代码: import frida session =…
一.前言 在之前已经介绍过了Android中一款hook神器Xposed,那个框架使用非常简单,方法也就那几个,其实最主要的是我们如何找到一个想要hook的应用的那个突破点.需要逆向分析app即可.不了解Xposed框架的同学可以查看:Android中hook神器Xposed使用详解:关于hook使用以及原理不多解释了.今天我们再来看另外一个hook神器Cydia Substrate,关于这个神器网上也已经介绍了,应该有的同学已经使用过了,因为最近在破解一个游戏,奈何想hook他的一个so中的一…
安全研究做什么 从攻击角度举例,可以是:对某个模块进行漏洞挖掘的方法,对某个漏洞进行利用的技术,通过逆向工程破解程序.解密数据,对系统或应用进行感染.劫持等破坏安全性的攻击技术等. 而防御上则是:查杀恶意应用的方法,检测和防范漏洞利用,为增强系统和第三方应用的安全性提供解决方案等. 当然,通常情况下攻与防的概念是相对模糊的,一种安全技术往往在攻防两端都适用,也许更值得留意的是一种技术背后的思路和意识.研究员需要在新技术上倾注灵感,并且付出相当程度的汗水,才能换来某种成果--通过艰难的探索过程最终…
本文转载自:http://www.cnblogs.com/whp2011/archive/2015/01/26/4250875.html 一.安全研究做什么 攻击角度:对某个模块进行漏洞挖掘的方法,对某个漏洞进行利用的技术,通过逆向工程破解程序.解密数据,对系统或应用进行感染.劫持等破坏安全性的攻击技术等. 防御角度:查杀恶意应用的方法,检测和防范漏洞利用,为增强系统和第三方应用的安全性提供解决方案等. 通常,攻与防是相对模糊的,一种安全技术往往两端都适用,也许更值得留意的是一种技术背后的思路和…
原文地址:http://blog.csdn.net/luoshengyang/article/details/8452527 2012年的Android之旅:梦想.学习.坚持.自信.淡定.. ------------------------ 前段时间参加了2012年度IT博客大赛,进了前十强,写了一篇获奖感言,不过还没正式在CSDN发表出来.眼看2012年就要结束了,刚好借这个机会将2012年度IT博客大十强获奖感言发表出来,也算是对2012年博客的一个总结,关键字是“梦想”.“学习”.“坚持”…
在上一篇<Android多线程研究(5)--线程之间共享数据>中对线程之间的数据共享进行了学习和研究,这一篇我们来看看怎样解决多个线程之间的数据隔离问题,什么是数据隔离呢?比方说我们如今开启了两个线程,这两个线程都要同一时候给同一个全局变量data赋值.各个线程操作它赋值后的变量数据,这里就须要用到隔离.先看一段代码: import java.util.Random; public class ThreadLocalTest { private static int data = 0; pub…
1.下载地址 https://github.co/frida/frida/releases 2.另外两种安装方法 1.Install from prebuilt binaries This is the recommended way to get started. All you need to do is: pip install frida-tools # CLI tools pip install frida # Python bindings npm install frida # N…
Android M Permission 运行时权限 学习笔记 从Android 6.0开始, 用户需要在运行时请求权限, 本文对运行时权限的申请和处理进行介绍, 并讨论了使用运行时权限时新老版本的一些处理. Android应用权限简要介绍 一个Android应用默认情况下是不拥有任何权限的, 这即是说, 在默认情况下, 一个应用是没有权利去进行一些可能会造成不好影响的操作的. 这些不好的影响可能是对其它应用,操作系统,或者是用户. 如果应用需要一些额外的能力,则它需要在AndroidManif…