关闭 More 保存 重做 撤销 预览

   
关闭   当前为简洁模式,您可以更新模块,修改模块属性和数据,要使用完整的拖拽功能,请点击进入高级模式
OD体育 OD体育
重播

上一主題 下一主題
»
黑哥
LV1 初心者
帖子    13
新博币    1 提现
提现    0
TA的勋章:勋章中心
     
    4212 7 | 显示全部楼层 |正序浏览
    管理员留:感谢您分享的内容,此内容已被收录至 博牛社区首页奖励 20新博币新博币 0积分
    Andorid项目入门篇
    近年来,随着市场android应用越来越多,android本身的问题也越来越多。android知识分块也非常多,
    既然说到android,那么肯定要说到的一款工具和集成的系统:drozer和Androl4b。对于drozer来讲,是android的一个综合渗透测试工具。在渗透测试业界相当metasploit地位,所以用的人还是相当多,一般提起来andorid安全,大部分人都听说过drozer。本次课程主要讲解利用
    drozer下载地址:(https://github.com/mwrlabs/drozer)[https://github.com/mwrlabs/drozer]
    drozer评估文章:使用Drozer对Android应用进行安全评估(http://www.droidsec.cn/%E4%BD%BF ... %E8%AF%84%E4%BC%B0/)[http://www.droidsec.cn/%E4%BD%BF ... %E8%AF%84%E4%BC%B0/]Androl4b下载地址:(https://github.com/sh4hin/Androl4b)[https://github.com/sh4hin/Androl4b]Androl4b百度云下载地址:链接: (https://pan.baidu.com/s/1i5kRdpb)[https://pan.baidu.com/s/1i5kRdpb] 密码: iade
    利用虚拟机最主要作用就是快速、可以提高效率,里面已经集成了大部分渗透测试工具,可以直接使用进行评估就可以。还有一些其它虚拟机也可以进行漏洞挖掘,但是我们就不涉及了,打造一个属于自己的渗透测试工具箱就可以了。另外如果你不想用这个虚拟机,你还有选择,对于windows主机,有人组建了一个window的andorid工具箱。
    吾爱破解:http://www.52pojie.cn/thread-510960-1-1.html
    • 工具箱主要分为五个模块,分别是开发,逆向,调试,编辑和抓包工具
      • 抓包:
        • 1.Charles 3.11.5破解版
        • 2.BurpSuite 1.6.39破解版
      • 逆向:
        • 1.GDA 2.4
        • 2.jd-gui
        • 3.SO helper 1.2

          • 4.JEB 1.5.2
          • 5.Android ToolBox 1.5.2
          • 6.BytecodeViewer 2.9.8
          • 7.Android killer 1.3.1

      • 编辑:
        • 1.010Editor
          • 2.sqlitebrowser
        • 调试:
          • 1.ddms
          • 2.hiearchyviewer
          • 3.dnspy 2.0.2.0
          • 4.gdb 7.6
          • 5.IDA 6.8



    介绍差不多,可以开始我们讲解项目了,首先drozer需要将agent.apk文件装到模拟器当中
    模拟器中开启该server端
    连接客户端成功
    这里我们使用apktool进行反编译
    F:\Apktool\tool>apktool.jar d 路径\InsecureBankv2.apk
    可以看到该app的目录结构
    然后使用dex2jar将apk反编译成Java源码(classes.dex转化成jar文件) 使用解压功能打开apk,将classes.dex文件取出,编译为java源代码
    d2j-dex2jar.bat C:\Users\Administrator\Desktop\安卓汇总\classes.dex/
    使用jd-gui工具查看APK中classes.dex转化成出的jar文件,即源码文件
    下面使用run app.package.list查看包列表
    查看insecurebankv2.apk查看该APP的可攻击点
    run app.package.attacksurface com.android.insecurebankv2
    activity组件
    应用程序中,一个Activity通常就是一个单独的屏幕,它上面可以显示一些控件也可以监听并处理用户的事件做出响应。应用程序中,一个Activity通常就是一个单独的屏幕,它上面可以显示一些控件也可以监听并处理用户的事件做出响应。
    Activity之间通过Intent进行通信。在Intent 的描述结构中,有两个最重要的部分:动作和动作对应的数据。
    可以发现activity存在问题,我们查看下反编译出的AndroidManifest.xml文件,可看到将activity的exported设置为true。说明存在被导出的分险
    查看对外的activity组件信息
    run app.activity.info -a com.android.insecurebankv2
    使用app.activity.start进行漏洞测试
    越权漏洞
    绕过登录界面导致可直接访问,说明存在越权漏洞
    run app.activity.start --component com.android.insecurebankv2 com.android.insecurebankv2.PostLogin
    Broadcast组件
    BroadcastReceive广播接收器:应用可以使用它对外部事件进行过滤只对感兴趣的外部事件(如当电话呼入时,或者数据网络可用时)进行接收并做出响应。广播接收器没有用户界面。然而,它们可以启动一个activity或serice 来响应它们收到的信息,或者用NotificationManager 来通知用户。通知可以用很多种方式来吸引用户的注意力──闪动背灯、震动、播放声音等。一般来说是在状态栏上放一个持久的图标,用户可以打开它并获取消息。
    下面使用fourgoats.apk测试Broadcast
    查看fourgoats该APP的可攻击点,可以看到存在broadcast广播问题
    run app.package.attacksurface org.owasp.goatdroid.fourgoats
    查看对外的broadcast组件信息
    run app.broadcast.info -a org.owasp.goatdroid.fourgoats
    查看反编译出的AndroidManifest.xml文件,可看到将receiver的exported设置未进行设置。说明存在越权问题,可发送恶意广播,伪造消息等等
    反编译查看源代码,发现需要两个参数phoneNumber和message
    漏洞利用,发现可可发送恶意广播包
    run app.broadcast.send --action org.owasp.goatdroid.fourgoats.SOCIAL_SMS --extra string phoneNumber 1234 --extra string message pwnd!
    尝试拒绝服务攻击检测,向广播组件发送不完整intent使用空extras,可看到应用停止运行
    run app.broadcast.send --action org.owasp.goatdroid.fourgoats.SOCIAL_SMS
    Services组件安全
    一个Service 是一段长生命周期的,没有用户界面的程序,可以用来开发如监控类程序。
    较好的一个例子就是一个正在从播放列表中播放歌曲的媒体播放器。在一个媒体播放器的应用中,应该会有多个activity,让使用者可以选择歌曲并播放歌曲。然而,音乐重放这个功能并没有对应的activity,因为使用者当然会认为在导航到其它屏幕时音乐应该还在播放的。在这个例子中,媒体播放器这个activity 会使用Context.startService()来启动一个service,从而可以在后台保持音乐的播放。同时,系统也将保持这个service 一直执行,直到这个service 运行结束。另外,我们还可以通过使用Context.bindService()方法,连接到一个service 上(如果这个service 还没有运行将启动它)。当连接到一个service 之后,我们还可以service 提供的接口与它进行通讯。拿媒体播放器这个例子来说,我们还可以进行暂停、重播等操作。
    intent-filter未将exported设置为false,默认是导出的
    org.owasp.fourgoats.goatdroid.LocationService服务被导出,不需要任何权限。所以这意味着任何与FourGoats应用程序安装在设备上的恶意应用程序可以访问设备的位置。这是非常危险让我们尝试启动特定服务
    Run app.package.attacksurface org.owasp.goatdroid.fourgoats
    run app.service.start --action org.owasp.goatdroid.fourgoats.services.LocationService --component org.owasp.goatdroid.fourgoats org.owasp.goatdroid.fourgoats.services.LocationService
    观察状态栏中的位置标志和GPS位置正在由FourGoats应用程序访问
    android平台提供了Content Provider使一个应用程序的指定数据集提供给其他应用程序。这些数据可以存储在文件系统中、在一个SQLite数据库、或以任何其他合理的方式,
    其他应用可以通过ContentResolver类(见ContentProviderAccessApp例子)从该内容提供者中获取或存入数据.(相当于在应用外包了一层壳),
    只有需要在多个应用程序间共享数据是才需要内容提供者。例如,通讯录数据被多个应用程序使用,且必须存储在一个内容提供者中
    它的好处:统一数据访问方式。
    Content组件安全
    信息泄露利用
    获取Content Provider信息
    run app.provider.finduri jakhar.aseem.diva
    发现存在数据泄露问题,访问uri,可看到一些敏感信息
    run app.provider.query content://jakhar.aseem.diva.provider.notesprovider/notes
    SQL注入漏洞
    同样content可能导致注入问题
    使用以下语句进行测试发现报错,说明存在SQL注入漏洞
    run app.provider.query content://jakhar.aseem.diva.provider.notesprovider/notes --selection "'"
    run app.provider.query content://jakhar.aseem.diva.provider.notesprovider/notes --projection "'"
    1.列出所有表信息
    run app.provider.query content://jakhar.aseem.diva.provider.notesprovider/notes --projection "* FROM SQLITE_MASTER WHERE type='table';--"
    2.获取具体表信息
    run app.provider.query content://jakhar.aseem.diva.provider.notesprovider/notes --projection "* FROM sqlite_sequence;--"
    同时也可是有扫描功能对该app注入点位置进行扫描
    run scanner.provider.injection -a jakhar.aseem.diva
    3.列出该app的表信息
    基本信息介绍完以后,我们在介绍一些其它关于Android项目事情,可以更全面的进行项目挖掘。简单问题也总结如下
    明文数据发送
    通过捕获 tcp 连接的三次握手对传输的数据进行分析,传输信息没有严格的加密,发现问题。大家直接进行截图就可以。
    登陆次数进行验证
    通过对密码错误的输入判断密码对登录次数是否做了严格的限制,并进行截图。

    敏感信息泄漏
    此部分测试通过对整个客户端的使用,进行日志抓取.发现大量问题: 可能你通过反编译等活着传输抓包过程中,都可以看到有一些敏感信息,今天讲解都是在没有加密情况下,如果加密情况,我们另外讨论。

    键盘记录
    通过对键盘事件的监听,得知键盘的输入通过该通道响应通过,能够截获密码 adb shell mkdir /dev/kindsjay adb push hello /dev/kindsjay/hello adb shell chmod 777 /dev/kindsjay/hello

    本次课程就给大家讲到这里,下次我们会给大家介绍,andorid逆向,andorid截取https数据包,以及app应用安全。


    • 1

      评分
    • +20

      博币
    在下头很硬 + 20 好贴录用

    查看全部评分 我要评分

    个人签名

    老人
    LV3 流浪的疾风
    帖子    79
    新博币    0 提现
    提现    0
    TA的勋章:勋章中心
       

      哈哈哈
      个人签名

      小熊
      LV3 流浪的疾风
      帖子    17
      新博币    0 提现
      提现    0
      TA的勋章:勋章中心
         
        是Android哦 老哥
        个人签名

        shiheng
        LV1 初心者
        帖子    0
        新博币    0 提现
        提现    0
           
          6666
          个人签名

          shiheng
          LV1 初心者
          帖子    0
          新博币    0 提现
          提现    0
             
            666
            个人签名

            莫积德
            LV1 初心者
            帖子    3
            新博币    0 提现
            提现    0
               
              标题 安卓的英文都拼错了
              个人签名

              simoabc
              LV1 初心者
              帖子    0
              新博币    0 提现
              提现    0
                 
                asdadasdasdasdad
                个人签名

                3189356237
                LV1 初心者
                帖子    0
                新博币    0 提现
                提现    0
                   
                  牛逼了。学习
                  个人签名

                  点击按钮快速添加回复内容: 支持 高兴 激动 给力 加油 淡定 生气 回帖 路过 感动 感恩
                  您需要登录后才可以回帖 登录 | 立即注册

                  本版积分规则

                  关闭

                  博牛推荐上一条 /2 下一条

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