2.0

2.0使用更方便,提供了几个API进行扫描调用
具体参考:https://github.com/Rorschach123/DexScanner

1.0

之前由于工作需求,会分析大量APP的某些特殊API,对特殊API分析每次都需要打开JEB->查找特定API->分析流程…无奈APP是无穷的,而精力是有限的。于是发挥了人类最本能的天性——偷懒,既然想偷懒了,就让计算机帮助分析,于是写了个小工具来做上面的需求。

其实不外乎就是对Dex文件格式的解析,然后根据API特征进行扫描,把调用的类和方法输出,接下来就会针对输出的信息,在逐个分析利用。

既然是解析刚好理了一下Dex文件结构,网上各种分析过程,就不在这里详述了。这里我主要详述下如何获取API特征的。

Android Dalivk字节码生成的过程大致为Java->smali->dalivk字节码,现在拿到的最后一步的东西,开发看的都是Java层的代码,如何进行特征提取呢?显然中间层的smali就起了很重要的作用(自问自答的废话<( ̄_ ̄)>),因此需要看看dalivk字节码到smali的转换表,在后面会详述。
http://pallergabor.uw.hu/androidblog/dalvik_opcodes.html

说说提取的特征吧,做法是首先查看smali对应代码,这时候会用到上面的转换表,相应转出对dalivk字节码,然后在代码段中匹配到字节码后,开始对特征API的字符串查找,相应的做出匹配,基于此来确定是否包含此API,例如初始化DexClassLoader时:
CheckingInsAndClassValue(insNum,ins,dexHeader,0x70,"",“Ldalvik/system/DexClassLoader;”)

由于涉及相关信息,并没有把之前扫描的API接口加载代码里面,想扫描特殊的API的话请参照我的示例接口自行编写。当然,工具有很多地方待完善,也可以做成完全接口化的,目前只是够用而已。

扫描结果图:

附上工具地址:
https://github.com/Rorschach123/DexScanner

Dex文件格式扫描器:特征API的检测和扫描(小工具一枚)相关推荐

  1. Dex文件格式扫描器:特征API的检测和扫描-小工具一枚(转载)

    之前由于工作需求,会分析大量APP的某些特殊API,对特殊API分析每次都需要打开JEB->查找特定API->分析流程-.无奈APP是无穷的,而精力是有限的.于是发挥了人类最本能的天性-- ...

  2. 手写体识别代码_【玩转腾讯云】使用API快速构建文字识别小工具之唐诗识别

    本篇推文共计1500个字,阅读时间约3分钟. 腾讯云-腾讯倾力打造的云计算品牌,以卓越科技能力助力各行各业数字化转型,为全球客户提供领先的云计算.大数据.人工智能服务,以及定制化行业解决方案.具体包括 ...

  3. 内存泄漏检测C版小工具

    一 内存泄漏简介 内存泄漏(Memory Leak)是指程序中己动态分配的堆内存由于某种原因程序未释放或无法释放,造成系统内存的浪费,导致程序运行速度减慢甚至系统崩溃等严重后果. 内存泄漏分类: 1. ...

  4. CentOS下安装实时检测网络带宽的小工具bmon

    首先下载rpmforge-release扩展的rpm包 32位操作系统:wget http://www.sudu.us/Tools/bmon/rpmforge-release-0.3.6-1.el5. ...

  5. 基于ACF多通道特征的人脸检测——从原理到实现

    首先说明一下,这个项目并不是博主在实验室负责的项目,而是博主的一门两学分的课的大作业(张学工老师的模式识别基础,有兴趣的可以百度一下),所以并没有投入太多时间去弄,还有很多地方可以改进,后文会陆续提到 ...

  6. 顶象App加固技术解析:DEX文件格式的详解

    Android应用的源代码主要分为java与C/C++两部分,其中java编译后的文件是DEX文件,也是Android Dalvik虚拟机运行的程序,因此也是基于Android平台的虚机应用很难绕过的 ...

  7. Ubuntu Tensorflow object_detection API 目标检测环境搭建

    Ubuntu 16.04下安装TensorFlow Object Detection API(对象检测API) Ubuntu 16.04下搭建TensorFlow运行环境(用Anaconda)     ...

  8. ASM模型对人脸特征点的检测

    <span style="font-size:18px;">// Face_ASM.cpp : 定义控制台应用程序的入口点. ////#include "st ...

  9. 图像的全局特征--用于目标检测

    CNN广泛应用于目标检测的各个场景,残差网络在目标检测方面取得了领先结果.对于传统应用,使用全局特征+级联分类器的思路仍然被持续使用.常用的级联方法有haar特征+Adaboost决策树分类器级联检测 ...

最新文章

  1. C 一样快,Ruby 般丝滑的 Crystal 发布 1.0 版本,你看好吗?
  2. 项目管理九大知识体系:
  3. main函数的入口函数
  4. 拟合一条曲线_数据预测与曲线拟合
  5. ubuntu更改mysql编码格式_Ubuntu修改mysql编码格式
  6. HDU 1257 最少拦截系统【最长上升子序列】
  7. matplotlib tricks(关闭坐标刻度、坐标轴不可见)
  8. [BZOJ4810][Ynoi2017]由乃的玉米田 莫队+bitset
  9. 使用Movavi Video Editor如何做局部的影片放大特效
  10. mysql 新增字段时判断字段是否存在
  11. VS2019+OpenCV3.4.1_vc14vc15配置简介(防忘记)
  12. 霍尼韦尔发力中国互联市场
  13. 转:如何在Ubuntu系统下安装使用LaTeX
  14. 股票入门浅学20210721
  15. 十年饮冰鸿蒙将至,咕哒:十年饮冰难凉热血 十年头牌阿联可称忠烈
  16. 关于绝地求生某辅助白名单画中画逆向分析
  17. vue使用vue-ueditor-wrap集成秀米
  18. 邓凡平WIFI学习笔记4:WiFi Simple configuration
  19. 【纪中受难记】——Day10:逐渐自闭
  20. 51单片机实验——LED小灯的操作(一)

热门文章

  1. java做安卓文本编辑器,android文本编辑器
  2. LT8911EXB:MIPI CSI/DSI转EDP信号转换芯片-润百信科技提供技术批量支持
  3. 电力-二次融合FTU技术规范
  4. PDF转Word免费的软件有哪些?教给你三种转换方法
  5. HTML中的幽灵节点
  6. snipaste 方便快捷截图工具
  7. Unity:简单易懂小游戏
  8. 诺基亚WP7手机或10月发布 搭载新版系统
  9. java synchronized_Java中synchronized关键字理解
  10. 数据库锁与加锁情况介绍(记录锁、间隙锁、next-key锁)