android常见高频漏洞小结

admin 2023年3月6日19:45:13评论47 views字数 2097阅读6分59秒阅读模式






程序可被任意调试漏洞






漏洞风险:安卓应用APP的配置文件Android Manifest.xml中android:debuggable=true,调试开关被打开。


危害情况:app可以被调试分析。


修复建议:把AndroidManifest.xml配置文件中调试开关属性关掉,即设置android:Debugable="false"。



 



Activity组件暴露漏洞




 

漏洞风险:Activity组件的属性exported被设置为true或是未设置exported值但IntentFilter不为空时,activity被认为是导出的,可通过设置相应的Intent唤起activity。


危害情况:攻击者可能构造恶意数据针对导出activity组件,对APP实施越权攻击。


修复建议:如果组件不需要与其他APP共享数据或交互,就将AndroidManifest.xml 配置文件中设置该组件为exported = “False”。

如果组件需要与其他APP共享数据或交互,那么做好对组件进行权限控制和参数校验。

 



Service组件暴露漏洞




 


漏洞风险:Service组件属性exported被设置为true或未设置exported值但IntentFilter不为空时,Service被认为是导出的,因此可通过设置相应的Intent唤起Service。


危害情况:攻击者可能构造恶意数据针对导出Service组件,对APP实施越权攻击。


修复建议:如果组件不需要与其他APP共享数据或交互,就将AndroidManifest.xml 配置文件中设置该组件为exported = “False”。如果组件需要与其他APP共享数据或交互,对组件进行权限控制和参数校验。





ContentProvider组件暴露漏洞 




 


漏洞风险:ContentProvider组件的属性exported被设置为true或Android API<=16时,Content Provider被认为是导出的。


危害情况:攻击者可能访问到应用本身不想共享的数据或文件。


修复建议:如果组件不需要与其他APP共享数据或交互,请将AndroidManifest.xml 配置文件中设置该组件为exported = “False”。如果组件需要与其他APP共享数据或交互,请对组件进行权限控制和参数校验。


 



BroadcastReceiver组件暴露漏洞




 


漏洞风险:BroadcastReceiver组件的属性exported被设置为true或未设置exported值但IntentFilter不为空时,BroadcastReceiver被认为是导出的。


危害情况:导出的广播可以导致数据泄漏或者是越权。


修复建议:如果组件不需要与其他APP共享数据或交互,将AndroidManifest.xml 配置文件中设置该组件为exported = “False”。

如果组件需要与其他app共享数据或交互,对组件进行权限控制和参数校验。





Provider文件目录遍历漏洞 




漏洞风险:当Provider被导出且覆写了openFile方法时,没有对Content Query Uri进行有效判断或过滤。


危害情况:攻击者可以利用openFile()接口进行文件目录遍历以达到访问任意可读文件的目的。


修复建议:一般情况下无需覆写openFile方法,如果必要,对提交的参数进行“../”目录跳转符或其他安全校验。


 



unzip解压缩漏洞




 


漏洞风险:解压APP包的zip文件,使用getName()获取压缩文件名后未对名称进行校验。


危害情况:攻击者可构造恶意zip文件,被解压的文件将会进行目录跳转被解压到其他目录,覆盖相应文件导致任意代码执行。


修复建议:解压文件时,判断文件名是否有../特殊字符。



 



SSL通信服务端检测信任任意证书漏洞




 

漏洞风险:自定义SSLx509 TrustManager,重写checkServerTrusted方法,方法内不做任何服务端的证书校验。


危害情况:黑客可以使用中间人攻击获取加密内容。


修复建议:严格判断服务端和客户端证书校验,对于异常事件禁止return 空或者null。


 



SSL通信客户端检测信任任意证书漏洞




 


漏洞风险:自定义SSLx509 TrustManager,重写checkClientTrusted方法,方法内不做任何服务端的证书校验。


危害情况:黑客可以使用中间人攻击获取加密内容。


修复建议:严格判断服务端和客户端证书校验,对于异常事件禁止return 空或者null。



 



DEX文件动态加载漏洞




 

漏洞风险:使用DexClassLoader加载外部的 apk、jar 或 dex文件,当外部文件的来源无法控制时或是被篡改,此时无法保证加载的文件是否安全。


危害情况:加载恶意的dex文件将会导致任意命令的执行。


修复建议:加载外部文件前,必须使用校验签名或MD5等方式确认外部文件的安全性。


 

android常见高频漏洞小结
end
android常见高频漏洞小结

 【推荐阅读】


android安全攻防之hook初探


Android的Service漏洞挖掘


Android的Activity漏洞挖掘探索

原文始发于微信公众号(迪哥讲事):android常见高频漏洞小结

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2023年3月6日19:45:13
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   android常见高频漏洞小结https://cn-sec.com/archives/1255453.html

发表评论

匿名网友 填写信息