首页 > 代码库 > 利用ADB和Settings命令行工具轻松的攻击Android手机
利用ADB和Settings命令行工具轻松的攻击Android手机
从4.2开始,Android提供了一个命令行工具settings。这个工具用于帮助构造SettingProvider的客户端代理,从而可以方便的进行系统设置项的读取和设置。
但是这个工具和adb配合起来,将对Android的安全构成极大的威胁。因为通过adb来执行settings时的时候,uid是shell,而shell拥有非常多的特权。
当然,问题的根源在于adb的shell权限太高,毕竟即使没有settings这个工具(或者说没有/system/framework/settings.jar文件),adb用户可以自己构造类似这样的程序/脚本。但是现在Android提供了该工具,这样的安全入侵将变得异常简单。
下面用几个例子来说明当用户开启adb后连接电脑,可能对用户手机造成的安全侵害。
注意1:这里针对Nexus手机的原生Android-5.0而言,不同的手机ROM有不同的设置项。
注意2:请先打开手机adb调试模式,并确保adb命令可以正常执行。
1) 修改是否“允许安装来自Play商店之外的其他来源的应用”。
在手机设置项中禁用该选项,操作路径是“设置”->“安全”->“未知来源”
然后执行如下命令:
2) 截取用户短信。
从Android 4.4开始,可以由用户设置默认的短信程序用于接管系统短信的收发。对于安装的第三方短信程序,必须用户手工指定才能工作。而利用这个漏洞,adb可以直接指定第三方短信应用程序而无须用户的确认。
然后执行如下命令:
在某些国家和地区,短信截取和诈骗是非常泛滥的事情,这样不得不说是一件非常危险的事情。
但是这个工具和adb配合起来,将对Android的安全构成极大的威胁。因为通过adb来执行settings时的时候,uid是shell,而shell拥有非常多的特权。
当然,问题的根源在于adb的shell权限太高,毕竟即使没有settings这个工具(或者说没有/system/framework/settings.jar文件),adb用户可以自己构造类似这样的程序/脚本。但是现在Android提供了该工具,这样的安全入侵将变得异常简单。
下面用几个例子来说明当用户开启adb后连接电脑,可能对用户手机造成的安全侵害。
注意1:这里针对Nexus手机的原生Android-5.0而言,不同的手机ROM有不同的设置项。
注意2:请先打开手机adb调试模式,并确保adb命令可以正常执行。
1) 修改是否“允许安装来自Play商店之外的其他来源的应用”。
在手机设置项中禁用该选项,操作路径是“设置”->“安全”->“未知来源”
然后执行如下命令:
$ adb shell settings put secure install_non_market_apps1退出设置,再次进入,发现“未知来源”已经启用。这样,第三方恶意应用程序就可能被安装成功。
2) 截取用户短信。
从Android 4.4开始,可以由用户设置默认的短信程序用于接管系统短信的收发。对于安装的第三方短信程序,必须用户手工指定才能工作。而利用这个漏洞,adb可以直接指定第三方短信应用程序而无须用户的确认。
在手机设置项中查看短信程序,操作路径是“设置”->“更多”->“默认短信应用”,如果没有修改过,应该是“环聊”。
比如先安装一个短信应用:GoSMSpro。然后执行如下命令:
$ adb shell settings put secure sms_default_applicationcom.jb.gosms退出设置,再次进入,发现“默认短信应用”已经成为“GO SMS Pro”。如果攻击者利用步骤1修改允许未知来源,然后通过ADB在后台偷偷安装一个截取短信或者滥发短信的程序,那么短信的收发都不受用户控制了。
在某些国家和地区,短信截取和诈骗是非常泛滥的事情,这样不得不说是一件非常危险的事情。
另外各种互联网的PC客户端也会经常利用adb监视和操控连接到该电脑的Android手机。即使是最出名的几家互联网公司也是这样,利用这样的工具,它们可以变换很多花样来操控用户的手机。
利用ADB和Settings命令行工具轻松的攻击Android手机
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。