当前位置: 首页 > news >正文

虹口网站建设/国内设计公司前十名

虹口网站建设,国内设计公司前十名,自己有网站怎么赚钱,网站仿制 个人预估稿费:500RMB(不服你也来投稿啊!)投稿方式:发送邮件至linwei#360.cn,或登陆网页版在线投稿0x01 引子我们知道,具有静默安装应用能力的APP,一般默认是手机厂商的系统应用,这类应用天生就拥有s…

预估稿费:500RMB(不服你也来投稿啊!)

投稿方式:发送邮件至linwei#360.cn,或登陆网页版在线投稿

0x01 引子

我们知道,具有静默安装应用能力的APP,一般默认是手机厂商的系统应用,这类应用天生就拥有system权限,而第三方应用想要拥有静默安装app能力,只能在root后的手机上向su申请root权限,那么是否有非root权限下静默安装app的方法呢?

第三方应用中,有静默安装APP需求的一般是市场类应用,如360手机助手、百度手机助手和腾讯应用宝等,市场类应用为了让用户节约频繁点击操作的时间,提高用户体验,在安装和升级大量app不太希望有太多的弹框确认操作影响用户,而各家都独避蹊径实现了非root权限静默安装app,目前的方法都是使用AccessibilityService辅助服务进行自动点击,根据app的安装步骤来一步步实现app的静默安装。

AccessibilityService辅助服务是google为使用手机有障碍的用户提供的服务,第三方APP必须通过开启这个服务,才能让手机模拟用户点击,app使用这个功能会明确提示用户,如某流行的第三方市场应用。

另外还可以通过adb shell命令

”settings put secure enabled_accessibility_services /”和”settings put secure accessibility_enabled 1”

直接开启辅助服务,因为adb shell是具有”settings”的执行权限的:

0x02 另一种静默安装APP的方法

那既然拥有了adb shell的权限,除了开启辅助服务实现静默安装,我们还能不能使用一种更简单的方法呢?

大家知道,adb是能远程连接的,以前各种手机和智能设备都默认开启了adb的远程连接造成各种安全漏洞,如果安卓开启了调试模式,我们也可以事先通过USB调试使用tcpip命令开启这个远程调试功能,如“adb tcpip 5555”,开启5555端口的远程调试绑定,这时候不管是什么终端只要能使用合法的调试协议都是能使用adb的,所以手机上的app也能使用远程调试功能,这里我们不需要重复造轮子,直接使用Adblib这个开源库就能让app拥有adb远程调试的能力。无代码,不信服:

Socket socket = new Socket("127.0.0.1", 5555);

AdbCrypto crypto = AdbCrypto.loadAdbKeyPair(new AdbBase64() {

@Override

public String encodeToString(byte[] data) {

return Base64.encodeToString(data, Base64.DEFAULT);

}

}, keyPair);

connection = AdbConnection.create(socket, crypto);

connection.connect();

AdbStream stream = connection.open("shell:pm install -r /storage/emulated/0/ HookVulnerable.apk");

如图,APP在本地就具备了静默安装的能力

0x03 adb协议简要分析

目前安卓的adb调试协议启用了设备认证,并使用了RSA非对称加密!我来简单描叙下ADB协议的流程:

1.调试设备连接手机,手机向调试设备发送AUTH TOKEN报文,这里会包含源自/dev/urandom的20字节的随机token。

2.调试设备用自己的私钥对该随机token进行签名(SHA1+RSA),放在发往手机的SIGNATURE报文中。

3.手机检查签名,如果正确,响应以CONNECT报文,否则向主机发送新的AUTH TOKEN报文,提供新的随机token。

4.如果调试设备已经确认了所有公私钥对,则向手机发送AUTH RSAPUBLICKEY报文,包含一个调试设备公钥。

5.手机接收到调试设备公钥后弹出信息框,询问是否允许(或永久允许),该信息框中一般会显示调试设备公钥的指纹(MD5)

6. 调试设备的公钥最后保存在手机端的/data/misc/adb/adb_keys

看到这里我再把Adblib简要分析下,作者将adb源码里的几个重要的结构用JAVA实现,主要是

1.adb协议的标志头(OKAY,CLSE,OPEN,AUTH等)

2.adb消息的结构(命令、参数、payload长度,payload的checksum、magic以及payload)

3.adb加密方式(RSA加密消息)

大致通信过程如下:

因此,Adblib只是在APP端把adb协议调试设备端的流程重新实现了而已。

0X04安全思考

文章写到这里,我就不再做更深入的分析了。关于安全问题,每个人都会有自己的思考,也许产品人员想到的是用户体验,而安全人员希望寻找里面的漏洞,黑产木马病毒制造者想到的则是会是怎么作恶,

0x05 参考

http://www.jmfq.cn/news/5146381.html

相关文章:

  • 做电影网站怎么拿到版权/怎么建个人网站
  • 如何快速的建设网站/博客推广工具
  • 十堰市网站建设/b2b关键词排名工具
  • 怎么做自己的微信网站/大兴今日头条新闻
  • 衡阳网站备案/餐饮营销案例100例
  • 武汉app网站开发/东莞市网站seo内容优化
  • 京东网站建设/3小时百度收录新站方法
  • 自己做一个入库出库系统/宁波seo公司排名
  • 吸引企业做网站的文章内容/网站制作步骤流程图
  • 济南富腾网站建设/北京seo优化排名推广
  • 自己做发卡网站长/网站搜索排名靠前
  • 哪里可以接网站开发项目做/seo新手教程
  • 你博客使用的WordPress吧/seo点击排名
  • 做网站跟app需要多少钱/2345网址导航大全
  • 招远水利建设工程公司网站/寻找郑州网站优化公司
  • 信用卡申请网站建设/爱战网关键词挖掘查询工具
  • 如果想看网站的收费电影应该怎么做/东莞市网站seo内容优化
  • 微信做网站的弊端/seo提升排名
  • 查网站关键词工具/软文广告文案案例
  • 个人网站的制作论文/软文代写接单平台
  • 给网站做灰盒渗透测试需要哪些数据/太原首页推广
  • 网站制作复杂吗/现场直播的视频
  • 做整体衣柜宣传海报的网站/怎么找需要做推广的公司
  • 零用贷网站如何做/学生个人网页制作html
  • 江门网站建设设计/如何制作自己的网址
  • 网站如何加入流量统计/合肥网站推广电话
  • 付费做SPaSS统计分析的网站/网站快速刷排名工具
  • 找别人做公司网站第一步做什么/郑州互联网公司排名
  • 手机网站建设模板/爱链网中可以进行链接买卖
  • 电子行业网站建设/by72777最新域名查询