OWASP TOP 10漏洞及防范

A1 注入 Injection

Web安全头号大敌。注入攻击漏洞往往是应用程序缺少对输入进行安全性检查所引起的。攻击者把一些包含攻击代码当做命令或者查询语句发送给解释器,这些恶意数据可以欺骗解释器,从而执行计划外的命令或者未授权访问数据。注入漏洞通常能SQL查询、LDAP查询、OS命令、程序参数等中出现。

SQL注入实例

防范:

1.使用安全的API,避免使用解释器或提供参数化的接口(prepared statements,or stored procedures)

2.使用白名单来规范化的输入验证方法

3.对输入的特殊字符进行Escape转义处理

4.权限最小化,减轻被注入的影响

A2 失效的身份认证和会话管理  Broken Authentication and Session Management

与认证和会话管理相关的应用程序功能往往得不到正确管理,这就导致攻击者破坏密码、密匙、会话令牌或利用实施漏洞冒充其他用户身份。

案例

防范:使用强大的认证和会话管理控制-OWASP的应用安全验证标准。

1.使用简单集中标准化的认证方式;

2.确保SSL在任何时候都会保护会话;

3.使用会话管理功能;

会话管理:当用户不操作时,系统必须自动终止超时会话,必须有时间限制;必须提供退出功能,允许用户强制退出会话;会话标识足够随机,防止攻击者猜测到标识;用户登录后必须分配新的会话标识,不使用用户未登录前所使用的标识,防止会话攻击

A3 跨站脚本-XSS

XSS的出现时间跟SQL差不多,是最普遍的web应用安全漏洞。当应用程序在发送给浏览器的页面中包含用户提供的数据,但没有经过适当验证或转译,就会导致跨站脚本漏洞。XSS允许攻击者在受害者的浏览器中执行脚本,这些脚本可以劫持用户会话,破坏网站,或将用户重定向到恶意站点。

XSS案例

防范:

1.对所有不可信的输入数据进行恰当的转义escape

2.使用白名单的具有恰当的规范化解码功能的输入验证方法

3.使用内容安全策略(CSP)来抵御整个站点的攻击

A4 不安全的直接对象引用 Insecurity Direct Object Reference

当开发人员公开对内部实现对象(如文件、目录或数据库键)的引用时,就会出现直接对象引用。如果没有访问控制检查或其他保护,攻击者可以操纵这些引用来访问未经授权的数据。

案例

防范:

1.使用基于用户或会话的间接对象访问, 防止攻击者直接攻击未授权资源.

2.访问检查:对任何来自不受信源所使用的所有直接对象引用都进行访问控制检测,确保用户对要求的对象有访问权限

A5 安全配置错误 Security Misconfiguration

良好的安全性需要为应用程序、框架、应用服务器、web服务器、数据库服务器和平台定义和部署安全配置。默认值通常是不安全的。另外,软件应该保持更新。攻击者通过访问默认账户、未使用的网页、未安装补丁的漏洞、未被保护的文件和目录等,以获得对系统未授权的访问。

没有考虑安全配置的案例

防范:

1.及时了解并部署每个环境的软件更新和补丁信息,包括所有的代码库。(自动化安装部署)

2.统一出错处理机制,错误处理会向用户显示堆栈跟踪或其他过于丰富的错误消息信息。

3.使用提供有效分离和安全性强大的应用程序架构。

A6 敏感信息泄露 Sensitive Data Exposure

保护与加密敏感数据已经成为网络应用的最重要的组成部分。最常见的漏洞是应该进行加密的数据没有进行加密。使用加密的情况下常见问题是不安全的密钥和使用弱算法加密。

敏感信息泄露案例

防范:

1.加密存储和传输所有的敏感数据

2.确保使用合适强大的标准算法和密钥,并且密钥管理到位

3.确保使用密码专用算法存储密码

4.及时清除没有必要存放的重要的/敏感数据

5.禁用自动收集敏感数据,禁用包含敏感数据的页面缓存

加密方法:采用非对称加密算法管理对称加密算法密钥,用对称加盟算法加密数据。

对称、非对称算法对比

A7 缺少功能级访问控制

大多数web应用程序在实现UI中可见的功能之前,都要验证功能级别的访问权限。但是,当访问每个函数时,应用程序需要在服务器上执行相同的访问控制检查。如果请求没有得到验证,攻击者将能够伪造请求,以便在没有适当授权的情况下访问功能。

防范:

1.检查管理权限的过程并确保能够容易进行升级和审计,切忌硬编码。

2.默认缺省情况下,应该拒绝所有访问的执行权限。

3.对于每个功能的访问,需要明确的角色授权。检查每个功能分配的权限合理有效。

A8 跨站请求伪造 CSRF

利用了网站允许攻击者预测特定操作的所有细节这一特点。由于浏览器自动发送会话cookie等认证凭证,导致攻击者能够创建恶意的web页面来伪造请求。这些伪造的请求很难和合法的请求区分开。CSRF通过伪装来自受信任用户的请求来利用受信任的网站。

CSRF案例

1.给每个HTTP请求添加一个不可预测的令牌,并保证该令牌对每个用户会话来说是唯一性。最好是将独有的令牌包含在隐藏字段中,通过HTTP请求发送,避免在URL中暴露出来。

2.要求用户重新认证或者判断他们是一个真实的用户。

A9 使用含有已知漏洞的组件

开发人员使用的组件也会含有漏洞,这些漏洞能够被自动化工具发现和利用。然后攻击者根据需要定制攻击代码并实施攻击。

防范:

1.标识正在使用的所有组件和版本,包括所有依赖项

2.及时关注这些组件的安全信息并保证他们是最新的。

3.建立使用组件的安全策略,禁止使用未经安全评估的组件。

4.在适当情况下,对组件进行安全封装,精简不必要的功能,封装易受攻击部分

A10 未验证的重定向和转发

应用程序经常将用户重定向到其他网页,或以类似的方式进行内部转发。当目标网页是通过一个未验证的参数来指定时,就容易被攻击者利用。攻击者通过诱使受害人去点击未经验证的重定向链接,从而利用不安全的转发绕过安全检测。攻击者通过重定向可以试图安装恶意软件或者诱使受害人泄露密码等敏感信息,通过转发可以绕过访问控制。

案例

防范:

1.避免使用重定向和转发

2.如果使用了重定向和转发,则不要在确定目标时涉及到用户参数。

3.如果无法避免使用目标参数,则应确保目标参数值对于当前用户是有效的并已授权。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 151,688评论 1 330
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 64,559评论 1 273
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 101,749评论 0 226
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 42,581评论 0 191
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 50,741评论 3 271
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 39,684评论 1 192
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,122评论 2 292
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 29,847评论 0 182
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 33,441评论 0 228
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 29,939评论 2 232
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 31,333评论 1 242
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 27,783评论 2 236
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 32,275评论 3 220
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 25,830评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,444评论 0 180
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 34,553评论 2 249
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 34,618评论 2 249

推荐阅读更多精彩内容