赞
踩
一、基础知识
“Hacker“ :黑客
“exploit” :黑客们使用的漏洞利用代码
“Script kids”:脚本小子 ,只懂得编译别人的代码,自己没有动手能力
ACL:访问控制列表
XSS:跨站脚本攻击
安全问题的本质是信任问题,安全是一个持续的过程
二、安全三要素
安全三要素:机密性(Confidentiality)、完整性(Integrity)、可用性(Availability)。
机密性要求保护数据内容不能泄露,加密是实现机密性要求的常见手段。
完整性则要求保护数据内容是完整、没有被篡改的。常见的保证一致性的技术手段是数字签名。
可用性要求保护数据资源是“随需而得”。
三、如何实施安全评估
1.安全评估的过程(4个阶段):资产等级划分->威胁分析->风险分析->确认解决方案。
>威胁建模方法:STRIDE模型(6个单词首字母缩写)
威胁 | 定义 | 对应的安全属性 |
Spoofing(伪装) | 冒充他人身份 | 认证 |
Tampering(篡改) | 修改数据或代码 | 完整性 |
Repudiation(抵赖) | 否认做过的事情 | 不可抵赖性 |
InformationDisclosure(信息泄露) | 机密信息泄露 | 机密性 |
Denial of Service (拒绝服务) | 拒绝服务 | 可用性 |
Elevation of Privilege (提升权限) | 未经授权获得许可 | 授权 |
>风险分析:DREAD模型(5个单词首字母缩写)
等级 | 高(3) | 中(2) | 低(3) |
Damage Potential | 获得完全验证权限;执行管理员操作;非法上传文件 | 泄露敏感信息 | 泄露其他信息 |
Reproducibility | 攻击者可以随意再次攻击 | 攻击者可以重复攻击,但有时间限制 | 攻击者很难重复攻击过程 |
Exploitability | 初学者在短期内能掌握攻击方法 | 熟练的攻击者才能完成这次攻击 | 漏洞利用条件非常苛刻 |
Affected Users | 所有用户,默认配置,关键用户 | 部分用户,非默认配置 | 极少数用户,匿名用户 |
Discoverablity | 漏洞很显眼,攻击条件很容易获得 | 在私有区域,部分人能看到,需要深入挖掘漏洞 | 发现该漏洞极其困难 |
Risk = Probability * Damage Potential
2.一个优秀的安全方案应该具备以下特点:
四、白帽子兵法
白帽子兵法:Secure By Default原则、纵深防御原则(Defense in Depth)、数据与代码分离原则、不可预测性原则。
Secure By Default原则:是总则,①黑名单、白名单:黑名单是禁止的名单,白名单是只允许的名单;②最小权限原则:只授予主体必要的权限,不要过度授权。
纵深防御原则(Defense in Depth):更全面更正确的看问题,含义包括①要在不同层面、不同方面实施安全方案,避免出现遗漏,不同方案之间相互配合,构成一个整体;②要在正确的地方做正确的事情。
数据与代码分离原则:从漏洞成因上看问题,广泛适用于由于“注入”而引发安全问题的场景。
不可预测性原则:从克服攻击的角度看问题。
【安全是一门朴素的学问,也是一种平衡的艺术】
五、附录
---第一篇 世界安全观
---第1章 我的安全世界观
---第二篇 客户端脚本安全
---第2章 浏览器安全
---第3章 跨站脚本攻击(XSS)
---第4章 跨站点请求伪造(CSRF)
---第5章 点击劫持(ClickJacking)
---第6章 HTML 5安全
---第三篇 服务器端应用安全
---第7章 注入攻击
---第8章 文件上传漏洞
---第9章 认证与会话管理
---第10章 访问控制
---第11章 加密算法与随机数
---第12章 Web框架安全
---第13章 应用层拒绝服务攻击
---第14章 PHP安全
---第15章 Web Server 配置安全
---第四篇 互联网公司安全运营
---第16章 互联网业务安全
---第17章 安全开发流程(SDL)
---第18章 安全运营
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。