静态查看过app 的代码,但是有些app 非常复杂,页面好多,你根本找不到从何处下手。还有app 通过静态分析,发现有被加固(后续会讲如何砸壳),根本找不到,还有即便你搜索app界面上的文字,你也搜索不到,因为有些是H5写的,h5写的也有不同,有些是从服务器获取,有些是在压缩包里边。还有一种,把布局文件打包,变成so 后缀文件,总之很多种种困难,后续我一一解开。今天先把环境搭建起来。

1.3.1 Xposed

Xposed 绝对是动态开发,hook app 的神器,什么是hook,主要是我们可以动态改变app,比如修改微信的步数等等。

安装:之前版本的xposed 需要手机root 以后的版本不需要root ,是个安卓手机就可以用。

有个经验之谈,xposed 一定要保持最新版本,否则有很多问题,切记的一点。

下载地址:https://github.com/android-hacker/VirtualXposed

下载最新版本安装即可。主界面如图1

图 1

1,  查看已安装的app ,向上拖动中间白色按钮,出现如下界面,如图:

图2 。

2 ,安装自己的app,安装你要hook的app,比如要hook微信,你就安装微信,要hook 支付宝,就安装支付宝。

点击图1中的白色按钮,显示如下界面:

图3

点击图中的 添加应用,

图4

可以选择现有的app,或者从存储安装apk 都可以。

这样xpose 就配置好了。

1.3.2 安装inspeck

下载地址:https://github.com/ac-pm/Inspeckage

下载最新版本安装即可,安装运行起来的界面,如图

选择choose target,选择需要查看的app。

1.3.3 查看日志

电脑连接手机usb, 命令行 adb logcat > c:\1.txt

打开app 进行分析,我打开支付红包界面,看到了如下的输出:

10-07 23:25:45.614 19105-19105/? I/chatty: uid=10167(io.va.exposed) com.eg.android.AlipayGphone identical 3 lines

10-07 23:25:45.638 19105-19105/? D/IconCustomizer: Generate customized icon for com.eg.android.AlipayGphone.png

10-07 23:25:45.676 19105-19219/? I/ContentCatcher: Interceptor : Catcher list invalid for com.eg.android.AlipayGphone@com.alipay.android.phone.discovery.envelope.HomeActivity@163966357

Interceptor : Get featureInfo from config pick_mode

10-07 23:25:45.738 19105-19105/? W/id.AlipayGphone: type=1400 audit(0.0:1724): avc: denied { read } for name="version" dev="proc" ino=4026532324 scontext=u:r:untrusted_app_25:s0:c512,c768 tcontext=u:object_r:proc:s0 tclass=file permissive=0

10-07 23:25:45.758 19105-19105/? W/id.AlipayGphone: type=1400 audit(0.0:1725): avc: denied { read } for name="stat" dev="proc" ino=4026532322 scontext=u:r:untrusted_app_25:s0:c512,c768 tcontext=u:object_r:proc_stat:s0 tclass=file permissive=0

是不是,我就看到了打开了那个 界面,不用我去搜索了吧。直接看这个界面的代码即可。

Android 程序分析环境搭建-动态分析环境搭建的更多相关文章

  1. Android 程序分析环境搭建-开发环境搭建

    1.1  JDK 安装 JDK 的配置,初学java 开发,那是必须会的. 下载,遇到的问题就是要注册oracle 的账号,还有你要下载特定版本,比如jdk 1.7,jdk 1.6,很难找到在哪里.解 ...

  2. Android程序分析环境(搭建步骤略)

    1:安装JDK JDK(Java Development Kit) 是 Java 语言的软件开发工具包(SDK).没有JDK的话,无法编译Java程序. 2:安装Android  SDK Androi ...

  3. Android 程序分析环境搭建-静态分析环境搭建

    1.2 静态分析环境搭建 这里主要讲一些用的比较顺手的工具,一并列出来,Uaa,等环境配置, 2,notepad++ ,everything , Jdgui ,idea, ida ,Fiddler , ...

  4. Android 程序分析环境搭建-Android 9 -代码下载编译

    Android 9 -代码下载编译 一,翻墙下载: 1.背景: 背景: 现在Android framework 开发的同学,整体在公司里面解一些无关痛痒的bug,对于Android framework ...

  5. 【定有惊喜】android程序员如何做自己的API接口?php与android的良好交互(附环境搭建),让前端数据动起来~

    一.写在前面 web开发有前端和后端之分,其实android还是有前端和后端之分.android开发就相当于手机app的前端,一般都是php+android或者jsp+android开发.androi ...

  6. 搭建Linux下Android程序开发环境

    从AndroidStudio中文社区下载SDK压缩包,http://dl.google.com/android/android-sdk_r24.2-linux.tgz. 解压到某个目录,比如我的~/p ...

  7. CAD控件,CAD插件使用教程:Android开发使用控件--开发环境的搭建

    Android开发使用控件入门--环境搭建 2014-12-24 09:57     14人阅读     评论(0)     收藏         编辑     删除 CAD控件.CAD三维控件,手机 ...

  8. Android开发使用控件入门--环境搭建

    Android开发使用控件入门--环境搭建 软件名称(,梦,,想.CAD  ,控件) 1. 环境搭建: 3 1.1. 安装Eclipse 3 1.2. 下载JDK 3 1.3. 下载Android S ...

  9. Android学习——windows下搭建Cygwin环境

    在上一篇博文<Android学习——windows下搭建NDK_r9环境>中,我们详细的讲解了在windows下进行Android NDK开发环境的配置,我们也讲到了在NDk r7以后,我 ...

随机推荐

  1. Internet History,Technology,and Security - Dawn of Electronic Computing(Week 1)

    一 War Time Computing and Communication 讲到电子计算机,你不得不提起第二次世界大战,虽说二战是人类历史上史无前例的大灾难,不过从某种程度来说,它确实促进了社会的发 ...

  2. javascript类数组

    一.类数组定义: 而对于一个普通的对象来说,如果它的所有property名均为正整数,同时也有相应的length属性,那么虽然该对象并不是由Array构造函数所创建的,它依然呈现出数组的行为,在这种情 ...

  3. 用Java编程语言对一个无序整形数组进行排序(冒泡排序,选择排序,插入排序)

    public static void main(String[] args) { /** * 冒泡排序 * 思路:每个轮次都让第一个数和其后所有的数进行轮比较,如果这轮的第一个数大则和其下一个数交换位 ...

  4. SpringBean生命周期及作用域

    bean作用域 在Bean容器启动会读取bean的xml配置文件,然后将xml中每个bean元素分别转换成BeanDefinition对象.在BeanDefinition对象中有scope 属性,就是 ...

  5. [TimLinux] JavaScript 引用类型——Date

    1. Date var now = new Date(); // 不传参数,获取当前日期.时间. now.getDay(); // 日期 now.getMonth(); // 月份 now.getFu ...

  6. python 列表越界

    data = [1,8,5,9,7,4,5] print(data[10:]) #返回空 print(data[10]) #出错,越界

  7. Asp.net Core 异常日志与API返回值处理

    需求: 1.对异常进行捕获记录日志 并且修改返回值给前端 解释: ILogger4是自定义的一个日志,更改它就好 解决方案1: 使用中间件进行异常捕获并且修改其返回值 public class Err ...

  8. docker-网络管理-桥接网络

    一.配置桥接网络   需求:为了使本地网络中的机器和Docker容器更方便的通信,我们经常会有将Docker容器配置到和主机同一网段的需求.这个需求其实很容易实现,我们只要将Docker容器和宿主机的 ...

  9. Python3 基本类型在64位上的占用内存情况

    基本类型占用的内存 类型 # -*- coding: utf-8 -*- # @Time : 2019-12-19 11:16 # @Author : binger import sys a = No ...

  10. Ubuntu 18.04 根目录只有 4G 大小

    其实准确点儿的描述应该是:Ubuntu Server 18.04 ,设置 LVM,安装完成后根目录的容量为什么只有 4G?只有 Server 版有问题,Desktop 版没有问题,Ubuntu 16. ...