Mrli
别装作很努力,
因为结局不会陪你演戏。
Contacts:
QQ博客园

爬虫App——夜神模拟器xposed+inspeckage

2022/05/10 爬虫
Word count: 1,207 | Reading time: 4min

头一次接触到App参数加密的,因此需要对加密参数进行反编译,了解到有工具inspeckage可以方便的来找寻加密参数。而其使用的条件为

  • 手机已ROOT
  • 在Xposed框架下运行

于是开始在夜神模拟器上捣鼓安装xposed、inspeckage。

安装

xposed框架

在不少地方都下载了xposed框架,但都不太使用,后来了解到模拟器的xposed是专用的,根据夜神模拟器官网介绍的夜神模拟器如何安装xposed框架后,决定还是在模拟器的应用商店进行安装xposed,下载安装后的名称为"xposed 派大星"。

下载安装后立马打开还是会显示没安装,需要点击"安装/更新"下的选项进行安装才行。在安装完成后再选择重启模拟器

inspeckage模块

Inspeckage是一个用于提供Android应用程序动态分析的工具。通过对Android API的函数使用hook技术,帮助用户了解应用程序在运行时的行为——crypto菜单栏下会hook捕捉常见的加密,Hash菜单栏下会hook捕捉常见的hash。

原以为需要额外去搜寻下载,后来发现推荐的都是安装好xposed软件后,在其菜单栏的"下载"中搜寻"inspeckage"模块使用(搜索结果为Inspeckage-Andriod package inspector)后安装,安装成功切换到菜单栏的"模块"中,勾选"inspeckage"后重启模拟器

注:xposed的作用只是为了给inspeckage提供运行环境。

启动inspeckage

参考:Inspeckage插件的运用

  1. 打开模拟器的inspeckage程序,choose target:选择目标app程序

    模拟器inspeckage

  2. 点击"Lauch APP"打开要捕获程序

  3. 在宿主机cmd里面输入命令adb forward tcp:8008 tcp:8008,然后在浏览器里输入http://127.0.0.1:8008 就会看到Inspeckage的界面

inspeckage网页

注:得手动点击ON才能实时抓信息。

更多介绍见:Inspeckage使用笔记(app安全检测工具)

使用inspeckage

菜单页说明

模块名 功能
Logcat 查看该app的logcat输出
Tree View 浏览app的数据目录并直接下载文件到本地
Package Information 应用基本信息(组件信息、权限信息、共享库信息)
Shared Preferences LOG:app XML文件读写记录;Files:具体XML写入内容
Serialization 反序列化记录
Crypto 常见加解密记录,AES、DES、RSA(KEY、IV值)
Hash 常见的哈希算法记录
SQLite SQLite数据库操作记录
HTTP HTTP网络请求记录
File System 文件读写记录
Misc. 调用Clipboard,URL.Parse()记录
WebView 调用webview内容
IPC 进程之间通信记录
+Hooks 运行过程中用户自定义Hook记录

注:inspeckage主要是用来hook加密的,对hash检测的效果可能不是很好——AXHC

使用说明

如果是要参看加密前的数据(解密数据),可以直接查看Crypto菜单栏下的内容,搜索你所需要找的加密参数就可以得到原文和使用的加密、Hash类型,直接秒杀!

比如:Algorithm( MD5 ) [eexssdsd : zxcxzc],说明使用的算法为MD5, [plaintext : encrypted]

原理分析:那么这个效果是怎么做到的呢?其实很简单,就是直接将Java标准库中常见的被用于生成加密参数的方法给Hook了,监听它们的输入参数和返回值,这样就能直接得到加密、Hash前的原文、密钥、IV等内容了,怎么样?是不是很简单?——相对于反编译app,自己再看代码实现简单、快捷多了。

实战

附录

Mudule disabled

Module disabled表明测试环境中没有安装Xposed框架*,用户可以在没有Xposed的情况下运行Inspeckage*,但是绝大部分功能都要依赖Xposed框架,所以建议在测试环境中安装该框架。

如果安装Xposed后,并且inspeckage就是通过对应的Xposed软件下载的,那么检查"模块"中是否将"inspeckage"勾选,然后重启。

手机目录

MT管理器能看到

  • /data/data/ 下是手机系统文件和你安装软件的数据文件,不建议随便删除,或造成死机或开不了机。需要root
  • /etc/data

反编译

如果程序被加固(加壳,腾讯乐固、360加固),则需要去壳后反编译,比如脱壳工具FDex2,脱壳后得到多个dex文件,将其压缩成压缩包,再使用反编译如jadx导入分析。

Author: Mrli

Link: https://nymrli.top/2022/05/10/爬虫App——xposed-inspeckage/

Copyright: All articles in this blog are licensed under CC BY-NC-SA 3.0 unless stating additionally.

< PreviousPost
每周一个开源项目——ddt-sharp-shooter
NextPost >
toy reimplementation of an event loop in Python[翻译]
CATALOG
  1. 1. 安装
    1. 1.1. xposed框架
    2. 1.2. inspeckage模块
  2. 2. 启动inspeckage
  3. 3. 使用inspeckage
  • 附录
    1. 1. Mudule disabled
    2. 2. 手机目录
    3. 3. 反编译