●跨站脚本攻击(XSS)
●用户敏感数据(IMEI、GPS、MAC 地址、电子邮件等)泄露
●SQL 注入
●网络钓鱼攻击
●数据加密缺失
●OS 命令注入
●恶意软件
●任意代码执行
那么今天我们还是先开始谈谈Drozer这款APP安全性测试工具吧!一般只要把一种安全性测试工具弄透,剩下来的就很简单了!
特点:
●它是一个开源工具,可同时支持真实的 Android 设备和模拟器;
●通过自动化和开展复杂活动,它只需很少时间即可评估与 Android 安全相关的复杂性;
●它支持 Android 平台,并在 Android 设备自身上执行启用 Java 的代码。对于这款安全性测试工具来说,周老师是非常推崇的。
那么这款工具具体怎么用的呢?
首先是搭建drozer的运行环境:
01.Dorzer安装
安装Dorzer需要用到如下两个工具:(如以前安装过mercury,这两个工具应该已经有了)
●Java Runtime Environment (JRE) or Java Development Kit (JDK)
●Android SDK
下载安装后需要把adb和java工具路径写入PATH环境变量中
1)下载
打开此下载地址,windows环境选择drozer (Windows Installer)并下载
https://www.mwrinfosecurity.com/products/drozer/community-edition/
2)安装
解压zip文件并点击setup安装,一路默认安装就行;它会自动安装到C:\drozer文件夹下。
3)检测是否安装成功
打开cmd窗口,键入C:\drozer\drozer.bat , 如出现如下提示说明安装成功。
4)安装agent客户端到手机
确保手机debug模式开启,通过USB连接到PC上,通过如下命令安装agent.apk客户端。
adb install agent.apk
安装完成后启动drozerAgent
点击右下角“开启”按钮,开启Agent
5)建立session连接
保持手机与PC通过USB连接正常,然后通过cmd窗口键入如下命令
adb forward tcp:31415 tcp:31415
drozer console connect 或 C:\drozer\drozer.bat console connect(注:因为默认是安装在c盘的,目的是到根目录进行执行drozer.bat)
出现android头像及:
dz>
命令提示符表示连接成功
6)具体安装步骤和使用方法详见文件
https://www.mwrinfosecurity.com/system/assets/559/original/mwri_drozer-users-guide_2013-09-11.pdf
02.渗透测试
Drozer的环境搭建完成后,我们就开始做下一步的测试了。下面我就开始正式用drozer进行安全性的渗透测试了:
第一步:#dz> run app.package.list
使用这个命令显示出手机中的所有包名:明确攻击对象
一般来说都有乱码。
如果手机的包很多的话:
使用”-f”选项搜索特定的包名:
#dz> run app.package.list -f (package name)
第二步:在搜索到了攻击对象之后,我们就开始了解攻击对象的详细信息
使用以下命令查看制定包的详细信息,毕竟知己知彼百战百胜。
#dz> run app.package.info -a (package name)
第三步:识别攻击面
一般攻击面有四个方面:一个控件安全级别面,一个是广播接收面,第三个是内容暴露面,最后一个是服务暴露面
run app.package.attacksurface (package name)
然后我们根据暴露的面进行攻击(有哪些面我们就攻击哪些面),说白了就是有安全漏洞,我们就攻击那些漏洞
比如上图:四个层面都可以攻击
第四步:查看详细的攻击面
run app.activity.info -a (package name)
run app.broadcast.info -a (package name)
run app.provider.info -a (package name)
run app.service.info -a (package name)
第五步:根据具体的攻击面进行攻击
启动暴露的activity
run app.activity.start--component (package name) (component name)
启动暴露的broadcast
run app.broadcast.start --component (package name) (component name)
启动暴露的provider
run app.provider.query--content://com.mwr.example.sieve.DBContentProvider/Passwords
启动暴露的service
run app.service.start --component (package name) (component name)
经过这些操作之后我们就成功渗透进入app的内部了。后面可以根据实际情况继续深入。
比如:我们的sql注入就属于内容攻击的层面,这个时候我们在明确了内容暴露之后进行如下的攻击:
03.服务交互
到目前为止,我们几乎破坏了筛子。我们已经提取了用户的主密码,以及一些与他们的服务密码相关的密码文本。这很好,我们可以通过它导出的服务完全妥协。
本文内容不用于商业目的,如涉及知识产权问题,请权利人联系51Testing小编(021-64471599-8017),我们将立即处理