吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 11729|回复: 15
收起左侧

[移动样本分析] 恶意软件分析工具-androguard的使用

  [复制链接]
BubblePig 发表于 2017-12-10 16:42
使用论坛附件上传样本压缩包时必须使用压缩密码保护,压缩密码:52pojie,否则会导致论坛被杀毒软件等误报,论坛有权随时删除相关附件和帖子!
病毒分析分区附件样本、网址谨慎下载点击,可能对计算机产生破坏,仅供安全人员在法律允许范围内研究,禁止非法用途!
禁止求非法渗透测试、非法网络攻击、获取隐私等违法内容,即使对方是非法内容,也应向警方求助!

写在前面:

因为windows下的python有一点问题,所以直接去找的santoku。
这一找就出事了,我找了一早上,本来想在早上写的,但是安装环境什么的,一直在浪费时间,网上对于这方面的资源又很少。而且安装的时候,有一个巨大的坑,就是不能用中文安装,不然会出莫名其妙的错误。之后使用英文版的直接成功。
然后使用tool安装,然后换成中文。于是乎大功告成的时候已经到下午四点了。
咳咳,扯远了。
这个是santoku的界面,如果想要镜像什么的,可以留言给我。
路过的免费评分可以评一评的哟~感谢- -。

这里写图片描述

这里是正式开始

由于androguard是一个个独立的.py文件,这里分开来进行展示。

1.androapkinfo.py 
2.androaxml.py 
3.androsign.py
4.androdd.py
5.androidiff.py
6.androgexf.py
7.androrisk.py
8.androsign.py 
9.androsim.py
10.androxgnnk.py
11.apkviewer.py

1.androapkinfo.py:

用来查看apk文件的信息,工具会输入apk文件的包、资源、权限、组件、方法等信息。使用时将信息重定向到文件后进行查看。

(1)直接输出内容

./androapkinfo.py -i ./name.apk

这里写图片描述

总结:该工具会输出非常详细的内容。

(2)查看全部功能

./androapkinfo.py -h

这里写图片描述

(3)把结果输出到一个文件里

./androapkinfo.py -i ./name.apk >name.txt

这里写图片描述

2.androaxml.py

用来解密APK包中的AndroidManifest.xml,也就是用来表示一些权限,还有Activity注册的xml文件。

(1)查看所有的使用方法

./androaxml.py -h 

这里写图片描述

(2)解密AndroidMainifest.xml

./androxml.py -i ./name.apk

这里写图片描述

(3)同样的可以输出的文本文件,这里就不再做重复了,有兴趣可以自己去尝试。参考androapkinfo.py

3.androcsign.py

androcsign.py用于添加apk文件的签名信息到一个数据库文件汇总。androguard工具目录下的signatures/dbandroguard文件为手机的恶意恶意软件信息数据库。首先要编写一个sign。
[
{
    "SAMPLE":"apks/crackme0502.apk" SMMPLE指定需要添加信息的apk文件。
},
{
    "BASE":"AndroidOS" //BASE指定文件运行的系统,固定为AndroidOS
    "NAME":"DroidDream" //NAME是该签名的名字
    "SIGNATURE":[   //具体的签名规则
        {
            "TYPE":"METHSIM" //指定签名的类型
            METHSIM //表示的是方法的签名,还有CLASSSIm表示为类签名;
    "CN":"Lcom/droider/crackme0502/MainActivity$SNChecker;", //CN用来指定方法所在的类。
            "MN":"isRegistered",//指定了方法名
            "D":"()Z" //指定了方法的签名信息。
        }
    ],
    "BF":"0" //指定签名的检测规则,可以同时满足1条或多条。
}
]
这里有原版的sgin下载:https://pan.baidu.com/s/1hr9imRa 密码:f032
使用指令:
./androcsign.py -i signatures/crackme0502.sign  -o signatures/dbandroguard

4.androdd.py

androdd.py用来生成apk文件汇总每个类的方法的调用流程图。
使用命令:
./androdd.py -i ./creackme0502.apk -o ./out -d -f PNG

5.androidiff.py

对比两个APK之间的差异。

使用命令:
./androdiff.py -i ./crackme0502.apk ./abc.apk

这里写图片描述

这里0,0,0,0说明是完全相同的两个APK。测试的时候使用的就是两个相同的APK,只是改了下名字。

6.androgexf.py

androgexf用来生成APK的GEXF格式的图形文件,可以使用Gephi查看。

命令:
./androgexf.py -i ./abc.apk -o ./abc.gexf

这里写图片描述

使用Gephi查看

这里写图片描述

7.androrisk.py

用于评估APK文件中潜在的风险。

命令:
./androrisk.py -m -i ./abc.apk

这里写图片描述

从输出结果来看,abc中没有发现风险,只有一项REFLECTION的表示程序中有使用到JAVA反射技术。

8.androsign.py

用于检测apk的信息是否存在于特定的数据库中。

命令:
./androsign.py -i apks/abc.apk -b signatures/dbandroguard -c signatures/dbconfig

9.androsim.py

androsim用于计算两个apk文件的相似度

命令:
./androsim.py -i ./abc.apk ./crackme0502.apk

这里写图片描述

10.androxgnnk.py

用来生成 apk/jar/class/dex文件的控制流程及功能调用图。

命令:
./androxgmml.py -i ./abc.apk -o abc.xgmml

这里写图片描述

11.apkviewer.py

为apk文件中每一个类生成一个地理的graphml图形文件。

命令:
./apkviewer.py -i ./abc.apk -o output

以上是对androguard的一个简单的应用以及对笔记的一个整理,大牛勿笑~

免费评分

参与人数 6吾爱币 +8 热心值 +6 收起 理由
plasd + 1 热心回复!
Hmily + 5 + 1 鼓励转贴优秀软件安全工具和文档!
Jacobax + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
snccwt + 1 + 1 热心回复!
610100 + 1 鼓励转贴优秀软件安全工具和文档!
lumou + 1 + 1 用心讨论,共获提升!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

longhai001 发表于 2017-12-10 17:26
感谢分享
头像被屏蔽
洛璃 发表于 2017-12-10 20:18
A00 发表于 2017-12-10 21:40
snccwt 发表于 2017-12-10 23:46
支持一个,分析的很好
 楼主| BubblePig 发表于 2017-12-11 00:07
snccwt 发表于 2017-12-10 23:46
支持一个,分析的很好

谢谢支持
HMRX123 发表于 2017-12-11 12:55
66666666
doctor66 发表于 2017-12-11 13:20
学习一波
andyzheng 发表于 2017-12-11 15:36
点赞,非常不错
guer 发表于 2017-12-11 16:48
学习使用
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-24 11:40

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表