androguard安装和体验
安装步骤按照官方教程https://code.google.com/p/androguard/wiki/Installation,下面记录下无法在ubuntu下apt-get的模块:
python模块:
在https://pypi.python.org/pypi查找需要的python模块并下载解压,用命令 " sudo python setup.py install "按照模块
zlib:
参考http://jingyan.baidu.com/article/29697b91321e2eab20de3c0d.html
chilkat:
在http://www.chilkatsoft.com/python.asp下载系统和python对应版本的zip,解压并把吃chilkat.py和_chilkat.pyd复制到python的"site-packages"目录下
编译elsim:
在正式编译之前,要修改一下elsim下面的formula和libelsign的Makefile文件。
打开elsim/elsign/formula/Makefile,添加上包含目录,从而使编译器能够找到muParser.h,例如:
CFLAGS += -I/usr/include/muParser打开elsim/elsign/libelsign/Makefile,添加上包含目录,从而使编译器能找到muParser.h和Python,例如:
CFLAGS += -I/usr/include/muParser -I/usr/include/python2.7
最后在androguard目录下make,在此过程中如果出现.h找不到。请看下面的字符是否有对应的,直接apt-get
python-dev python-bzutils libbz2-dev libmuparser-dev libsparsehash-dev python-ptrace python-pygments python-pydot graphviz liblzma-dev libsnappy-dev
Gephi:
在https://gephi.org/users/download/下载Gephi。ubuntu安装后没安装jdk,故先sudo apt-get install openjdk-7-jdk。安装好java环境后,运行"update-alternatives ---config java" and "update-alternatives --config javac"(若这2个命令没成功说明java环境没安装成功)。系统没设置java_home则直接在Gephi/bin/gephi文本中修改javahome字符串值为java主目录;接着运行"./gephi"运行Gephi
jdkhome="/usr/lib/jvm/java-7-openjdk-amd64"
以上关于androguard的基本模块和功能都以安装完毕,下面简单介绍下androguard的模块功能(androguard-19版本):
androapkinfo.py: 查看apk文件信息:
./androapkinfo.py -i crackme0502.apk > output/apkinfo.txt (该模块输出信息较多,使用重定向到文档;下同)
androxml.py: 解密并输出apk包中AndroidManifest.xml文件:
./androaxml.py -i crackme0502.apk >output/Manifest.xml (该模块输出的xml中,图片资源路径没修复只用id表示)
androcsign.py: 添加apk文件的签名信息到数据库文件
androdd.py: 生成apk文件中每个类方法的调用流程图:
./androdd.py -i crackme0502.apk -o ./output -d -f jpg
androdiff.py: 比较两个apk文件的差异
androdump.py: dump一个linux进程的信息
androgexf.py: 生成apk的GEXF格式的图形文件,可搭配Gephi查看:
./androgexf.py -i crackme0502.apk -o ./output/apk.gexf
androlyze.py: 提供交互环境方便分析人员静态分析android程序
andromercury.py: 原为Mercury(先改名为drozer,可看我前面对其源码分析)工具框架,最新版androguard已没有该模块;
androrisk.py: 评估apk文件中潜在的风险:
./androrisk.py -m -i crackme0502.apk > output/risk.txt
androsign.py: 检测apk的签名信息是否存在数据库中,与androcsign.py相反
androsim.py: 计算2个apk文件的相似度
androxgmml.py: 生成apk/jar/class/dex文件的控制流程及功能调用图:
./androxgmml.py -i crackme0502.apk -o output/apk.xgmml
apkviwer.py: 为apk文件中每一类生产独立的graphml图像文件:
./apkviewer.py -i crackme0502.apk -o output/viewer/
参考资料:
android软件安全与逆向分析
androguard安装和体验的更多相关文章
- Nginx unit 源码安装初体验
Nginx unit 源码安装初体验 上次介绍了从yum的安装方法(https://www.cnblogs.com/wang-li/p/9684040.html),这次将介绍源码安装,目前最新版为1. ...
- Windows Server 2012 R2部署--安装桌面体验
Windows Server 2012 R2部署(3)---安装桌面体验 1) 打开服务器管理器 2) 选择所有服务器 3)添加角色和功能 4)下一步 5)下一步 6)下一步 ...
- PHP 7安装使用体验,升级PHP要谨慎
一.发挥PHP 7高性能的几个要点 PHP 7相对于之前的PHP版本来说可以说性能有了质的飞跃,但是所谓“好马配好鞍,好车配风帆”,想要发挥PHP 7的性能优势,还需要从以下几个方面做准备:(此部分引 ...
- Emacs 安装与体验
Emacs 安装与体验 下载与安装 首先是下载最新的x64版本的Emacs. 将下载下来的文件解压到你喜欢的磁盘目录下,我选择的是C:\Program Files.放在D盘可能是更好的选择,因 ...
- WPS Office 2012专业版与WPS2019政府云办公增强版下载安装与体验
WPS Office 2012专业版与WPS2019政府云办公增强版下载安装与体验 一.WPS Office 2012专业版. 优点:没有广告,很清爽,界面很人性化.是我于2019年11月找出来安装测 ...
- Kylin 初入门 | 从下载安装到体验查询
本文旨在为 Kylin 新手用户提供一份从下载安装到体验亚秒级查询的完整流程.文章分为两个部分,分别介绍了有 Hadoop 环境(基于 Hadoop 环境的安装)和没有 Hadoop 环境(从 Doc ...
- ansible2.4安装和体验
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...
- 20天等待,申请终于通过,安装和体验IntelliJ IDEA新UI预览版
欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos 关于IDEA的预览版 IDEA会启用新的UI,这事情之 ...
- 一起学微软Power BI系列-使用技巧(3)Power BI安卓手机版安装与体验
Power BI有手机版,目前支持安卓,苹果和WP,不过没有WP手机,苹果在国内还不能用,要FQ和用就不测试了.安卓的我也也是费了九牛二虎之力才把app下载下来,把方法分享给大家. FQ太麻烦,所以建 ...
随机推荐
- PAT-1147(Heaps)最大堆和最小堆的判断+构建树
Heaps PAT-1147 #include<iostream> #include<cstring> #include<string> #include<a ...
- CCF(管道清洁):最小费用最大流
管道清洁 201812-5 需要清洁的管道下界为1, 不需要清洁的管道下界为0, 可重复经过的管道上界为正无穷, 不可重复经过的管道上界为1. 这属于无源无汇的有容量下界的最小费用可行流.解决的方法就 ...
- 辨析js遍历对象与数组的方法
1 遍历对象的方法? (1) for-in(也可遍历数组,但效率较低,一般用来遍历对象) 示例: // 生成一个原型上有属性并且有可枚举属性与不可枚举属性的对象 const data = Ob ...
- Java 常见对象 02
常见对象·String类 Scanner 的概述和方法介绍 * A:Scanner 的概述 * B:Scanner 的构造方法原理 * Scanner(InputStream source) * Sy ...
- JAVA_标识符、数据类型、变量
标识符和关键字 所有的标识符否应该以字母a ~ z和 A ~Z ,美元符($).下划线(_)开始. 首字符之后可以是字母a ~ z和 A ~Z ,美元符($).下划线(_)的任意字符组合. 注 ...
- 测试工程师Docker进阶
学习整理来源 B站 狂神说Java https://space.bilibili.com/95256449/ 四.docker镜像 1.镜像是什么 镜像是一种轻量级.可执行的独立软件包,用来打包软件运 ...
- python面试题,print写在for循环内和外的区别
1.统计列表中正数和负数的数量a = [1,3,5,7,0,-1,-9,-4,-5,8]b = []c = []for i in a : if i>0: b.append(i) elif i&l ...
- LNMP配置——Nginx配置 —— Nginx的访问日志
一.配置 先来看看Nginx的日志格式 #grep -A2 log_format /usr/local/nginx/conf/nginx.conf log_format combined_realip ...
- editplus更改编码
1.在Tools下拉后选择Configure User Tools 2.在左边导航菜单找到File,对应右边视图中的Default encoding 3.将编码更改为utf-8,点击底部的OK保存.
- 卷积神经网络学习笔记——轻量化网络MobileNet系列(V1,V2,V3)
完整代码及其数据,请移步小编的GitHub地址 传送门:请点击我 如果点击有误:https://github.com/LeBron-Jian/DeepLearningNote 这里结合网络的资料和Mo ...