OWASP移动安全漏洞Top 10
•脆弱的服务器端安全控制
在OWASP排第一的漏洞是“脆弱的服务器端安全控制”,顾名思义,就是没有以一个安全的方式从移动应用程序向服务器端发送数据,或在发送数据时暴露了一些敏感的API。
例如,考虑对一个Android应用程序登录服务器的凭据进行身份验证,而没有对输入进行验证。攻击者可以以这样一种方式修改凭证来获得服务器敏感的或未经授权的区域。
这是移动应用以及Web应用程序都存在的一个漏洞。
• 不安全的数据存储
在设备上存储任意用户都可以访问的与应用相关的信息。许多Android应用在shared preferences,SQLite(以明文形式)或外部存储器中存储着秘密的用户相关信息,或应用程序信息。
开发者应始终牢记,即使把敏感信息存储在/data/data/package-name目录中,但是只要手机root了,就能够被恶意应用/攻击者访问。
• 传输层保护不足
许多Android开发者使用不安全的方式进行数据传输,比如以HTTP的方式,或者没有正确实现SSL。这使得应用程序在网络上容易受到各种不同类型的攻击发生,例如从应用向服务器发送数据的时候进行数据包拦截,参数操作,修改响应数据,以便获得应用锁定区域的访问权限。
• 意外的数据泄露
当应用程序存储数据的位置本身是脆弱的时,这个漏洞就会产生。
这些位置可能包括剪贴板,URL缓存,浏览器的Cookies,HTML5数据存储,分析数据等等。
例如,一个用户在登录银行应用的时候已经把密码复制到了剪贴板,恶意应用程序通过访问用户剪贴板数据就可以获取密码了。
• 弱授权和身份认证
一个Android应用程序,如果它们试图在没有适当的安全措施的情况下通过客户端检测进行用户验证或者授权,那么就是存在风险的。应当指出的是,手机root后大多数客户端的保护都是可以绕过的。
因此,建议应用程序开发者使用适当的检测方法在服务器端进行身份验证和授权,然后,在移动设备上使用一个随机生成的令牌来验证用户。
• 密码破解
使用不安全的加密函数来加密数据组件,这可能包括一些已知的脆弱算法,如MD5, SHA1, RC2,甚至一个没有采取适当安全措施的定制开发的算法。
• 客户端注入
SQL注入:
run app.provider.query [Content Provider URI] --projection "* FROM SQLITE_MASTER WHERE type='table';- -"
• 通过不可信输入进行安全决策
在移动应用程序中,开发者应该清洗和检验用户输入或其它相关输入,不可信的输入可能会导致应用中的其它安全风险,如客户端注入。
• Session会话处理不当
在进行一个移动应用的session处理时,开发者需要关注很多的因素,比如适当过期的有效身份验证cookie,安全令牌创建,cookie生成和旋转,以及后台失败的无效session。
在Web应用和Android应用程序之间必须保持一个适当的安全同步。
• 缺乏二进制文件保护
不能够有效的阻止应用程序被逆向或者反编译。apktool,dex2jar等工具可以对Android应用进行逆向,从而使应用暴露出各种安全风险。为了防止应用被逆向,开发者可以使用proguardand和dasho等对应用进行加固。
OWASP移动安全漏洞Top 10的更多相关文章
- Web漏洞总结: OWASP Top 10
本文原创,更多内容可以参考: Java 全栈知识体系.如需转载请说明原处. 开发安全 - OWASP Top 10 在学习安全需要总体了解安全趋势和常见的Web漏洞,首推了解OWASP,因为它代表着业 ...
- OWASP Top 10 – 2013, 最新十大安全隐患(ASP.NET解决方法)
OWASP(开放Web软体安全项目- Open Web Application Security Project)是一个开放社群.非营利性组织,目前全球有130个分会近万名会员,其主要目标是研议协助解 ...
- ASP.NET Core中的OWASP Top 10 十大风险-失效的访问控制与Session管理
不定时更新翻译系列,此系列更新毫无时间规律,文笔菜翻译菜求各位看官老爷们轻喷,如觉得我翻译有问题请挪步原博客地址 本博文翻译自: https://dotnetcoretutorials.com/201 ...
- OWASP TOP 10 2017中文译文
说明:owasp top 10其实有中文官方版本:本文是按着英文版进行翻译而成. 官方中文版:http://www.owasp.org.cn/owasp-project/OWASPTop102017v ...
- OWASP TOP 10 详解
OWASP--开放式web应用程序安全项目 参考文献:袁鸣凯.OWASP Top 10十大风险 – 10个最重大的Web应用风险与攻防.2016-9-18. https://blog.csdn.n ...
- OWASP top 10
OWASP Top 10 A1: InjectionSolution+Validate User Input+Never concatenate queries and date+Parameteri ...
- OWAP Top 10
2013 Top 10 List A1-Injection Injection flaws, such as SQL, OS, and LDAP injection occur when untr ...
- 安全检测:2013 Top 10 List
转自:https://www.owasp.org/index.php/Top_10_2013-Top_10 Risk 2013 Table of Contents 2013 Top 10 List ...
- Favorites of top 10 rules for success
Dec. 31, 2015 Stayed up to last minute of 2015, 12:00am, watching a few of videos about top 10 rules ...
随机推荐
- 高性能JavaScript(DOM编程)
首先什么是DOM?为什么慢? DOM:文档对象模型,是一个独立于语言的,用于操作XML和HTML文档的程序接口(API) 用脚本进行DOM操作的代价很昂贵.那么,怎样才能提高程序的效率? 1.DOM访 ...
- 纯小白入手 vue3.0 CLI - 2.3 - 组件 home.vue 中学习指令和绑定
vue3.0 CLI 真小白一步一步入手全教程系列:https://www.cnblogs.com/ndos/category/1295752.html 我的 github 地址 - vue3.0St ...
- Windows上PostGIS(压缩版)安装
PostGIS安装 1.软件下载 postgresql-9.6.1-1-windows-x64-binaries.zip https://www.postgresql.org/download/win ...
- sql 经典面试题及答案(选课表)
SQL数据库面试题以及答案 Student(Sno,Sname,Sage,Ssex) 学生表 Sno:学号:Sname:学生姓名:Sage:学生年龄:Ssex:学生性别Course(Cno ...
- 使用postman给servlet传各种参数
web开发中经常会使用到postman软件,常用的方法涉及到get和post方法去获取对应json数据,get方法直接传url就可以,返回对应json数据.但是post请求就需要json数据提交,而且 ...
- [MySQL复制] SQL_ERROR 1032解决办法(non-gtid env)
一.缘由: 在主主同步的测试环境,由于业务侧没有遵循同一时间只写一个点的原则,造成A库上删除了一条数据,B库上在同时更新这条数据. 由于异步和网络延时,B的更新event先到达A端执行,造成A端找不到 ...
- python执行sql语句
dbname = 'db.sqlite3' dbpath = 'D:\\pyweb\\sf\\db.sqlite3' csvpath = pspath #custom thread number tn ...
- C# System.IO.Path
Path的常用方法 函数列表 对一个路径做相应操作,包括文件路径,目录路径,通常会用到Path这个类, 本文列举一些常用的操作. 获取指定路径字符串的目录信息 public static string ...
- Asp.net中DataTable的排序功能
DataTable里的数据,如果是从数据库中取得的数据,我们可以用order by排序,而从excel表格取得的数据,就需要自己进行操作了. 例如,Dt_Data2是读取Excel表格取到的数据 Da ...
- 【转】 android获取设备唯一标识完美解决方案
<p style="margin: 10px auto; padding-top: 0px; padding-bottom: 0px; color: rgb(51, 51, 51); ...