白帽子讲Web安全(第一章总结)

1.1实施安全评估的基本过程

安全问题的本质:信任问题

信任域,信任边界

安全三要素:机密性,完整性,可用性

如何实施安全评估?

资产等级划分------------------威胁分析------------风险分析---------------------确认解决方案

资产等级划分:明确目标是什么,要保护什么,互联网安全的核心问题,是数据安全的问题,对互联网公司拥有的资产进行等级划分,就是对数据做等级划分。例如有的公司最关心的是客户资料,有的公司最关注的员工资料信息,做等级划分的过程,需要同各个业务部门的负责人一一进行沟通,了解公司最重要的资产是什么。(公司拥有什么数据,数据的重要程度,为后续的安全评估过程指明方向),完成资产等级的划分,也就是对要保护的对象有个大致的了解,接下来就是划分信任域和信任边界。

威胁分析:如何确定威胁来自于哪里?在安全领域,所有能够造成危害的来源称为威胁,而把可能出现的损失成为风险,风险一定是和损失联系在一起的。

威胁分析就是将所有的威胁都找出来,怎么找?----------------威胁建模,在进行威胁分析的时候,要尽可能地不遗漏威胁。在维护系统安全的时候,有可能花费很多时间与精力实施安全方案,但是攻击者却利用了实现完全没有想到的漏洞,因此在确定攻击面的时候,应该尽可能的全面。

微软提出的STRIDE模型:分析威胁时,可以从以下6个方面去考虑。

威胁

定义

对应的安全属性

Spoofing(伪装)

冒充他人身份

认证

Tampering(篡改)

修改数据或代码

完整性

Repudiation(抵赖)

否认做过的事情

不可抵赖性

Information Dislosure(信息泄露)

机密信息泄露

机密性

Denial of Service(拒绝服务)

拒绝服务攻击

可用性

Elevation of Privilege(提升权限)

未经授权获得许可

授权

 

风险分析:Risk = Probability*Damage Potential

影响风险高低的因素,除了造成损失的大小外,还需要考虑到发生的可能性。

如何科学的衡量风险?微软提出的DREAD模型,指导我们应该从那些方面去判断一个威胁的风险程度。

等级

高(3)

中(2)

低(1)

Damage Potential

获取完全验证权限;执行管理操作;非法上传文件

泄露敏感信息

泄露其他信息

Reproducibility

攻击者可以随意再次攻击

攻击者可以重复攻击,但有时间限制

攻击者很难重复攻击过程

Exploitability

初学者在短期内能掌握攻击方法

熟练的攻击者才能完成这次攻击

漏洞利用条件非常苛刻

Affected users

所有用户,默认配置,关键用户

部分用户,非默认配置

极少数用户,匿名用户

Discoverability

漏洞很显眼,攻击条件很容易获得

在私有区域,部分人能看到,需要深入挖掘漏洞

发现该漏洞及其困难

 

确认解决方案:设计安全方案,安全评估的产物就是安全解决方案,解决方案一定具备针对性,其针对性是由资产等级划分,威胁分析,风险分析等阶段的结果给出的。

观点:很多人认为安全和业务是冲突的,因为往往为了安全,要牺牲业务。

安全确切的说,应该属于产品的一种属性

个好的安全方案应该对用户是透明的,尽可能的不要改变用户的使用习惯

一个优秀的安全方案具备哪些特点?

  • 能够有效的解决问题
  • 用户体验好
  • 高性能
  • 低耦合
  • 易于扩展与升级

1.2 设计具体安全方案的准则和技巧

1.2.1 Secure By Default原则

A:黑白名单原则

黑白名单思想,尽可能的多使用白名单,不使用黑名单

例1:在制定防火墙访问控制策略时,若网站只提供Web服务,那么正确的做法应该是只允许网站服务器的80端口和443端口对外提供服务,屏蔽除此之外的端口(白名单做法)。

若使用黑名单就会出现问题,假设黑名单的访问策略是:不允许SSH端口对Internet开放,那么就要审计SSH的默认端口:22端口是否开放了Internet。但在实际工作过程中,经常会发现有的工程师为了偷懒或图方便,私自改变了SSH的监听端口,比如把SSH的端口从22改到了2222,从而绕过了安全策略。

例2:在网站的生产环境服务器上,应该限制随意安装软件,需要制定统一的软件版本规范。这个规范的制定也可以选择白名单的思想来实现。按照白名单的思想,应该根据业务需求,列出一个允许使用的软件以及软件版本的清单,在此清单外的软件则禁止使用和安装。如果允许工程师在服务器上随意安装软件的话,则可能会因为安全部门不知道、不熟悉这些软件而导致一些漏洞,从而扩大攻击面。

注:在使用白名单时,应当注意避免出现类似通配符“*”

B:最小权限原则:

即是要注意系统只授予主体必须的权限,而不过度授权。这样能有效减少系统,数据库,网络,应用等出错的机会。

很多时候,开发者不会意识到业务授予用户的权限过高,一定要反问,您确定您的程序一定需要访问Internet吗?

纯文本,富文本

纯文本,只能有文字,基本的标点符号,富文本可以有图,可以有各种特殊的标点符号、分段等格式

1.2.2 纵深防御原则

层含义:

A:在不同层面不同方面实施安全方案。

例如:在设计安全方案时,尽可能考虑到web应用安全,os系统安全,数据库安全,网络环境安全等不同层面。不同安全方案之间需要互相配合,构成一个整体,共同组成防御体系。

常见的入侵案例中,大多数是利用Web应用的漏洞,攻击者先获得一个低权限的webshell,然后通过低权限的webshell上传更多的文件,并尝试在服务器上提升权限为root;接下来攻击者再进一步尝试渗透内网,例如数据库服务器所在的网段。此类入侵案例中,若在攻击过程中任何一个环节设置有效的防御措施,都可能导致入侵过程失败,没有哪种方案能够解决所有问题,因此非常有必要将风险分散到系统的各个层面。

 

B:在正确的地方做正确的事情,要求我们深入理解威胁的本质,从而做出应对措施。即要在解决根本问题的地方实施有效的针对性的方案。

例:XSS防御技术发展过程

UTM产品Unified Threat Management 几乎集成了所有主流安全产品的功能,例如防火墙。VPN,反垃圾邮件,IDS,反病毒等

1.2.3数据与代码分离原则(适用于各种由于“注入”而引发安全问题的场景)

在Web安全中,由于“注入”引起额问题比比皆是,例如XSS,SQL Injection,CSRF Injection,X-Path Injection

1.2.4不可预测性原则

Secure by Default 是时刻要牢记的总则,纵深防御是要更全面、更准确的看待问题;数据与代码分离是从漏洞成因上看问题;不可预测性原则是从克服攻击方法的角度看待问题。

这是一种即使无法修复代码,但是让攻击变得无效的成功的防御。

比如:让程序的栈基址变得随机化,使攻击程序无法准确猜测到内存地址,而大大的提高攻击的门槛。再比如在一些应用系统中,使用随机的id。那么如果攻击者再

想使用类似于

for(int i=0;i<1000;i++){

delete(url="xxx?id="+i);

 

}

这种方法的攻击将无效,起码是先爬取id的值,再进行delet操作。同样的,现在利用token,利用加密算法,随机算法,哈希算法等,其实都可以找到这条原则的影子。

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
白帽子是指一类利用他们的技术知识和能力来保护网络系统安全的计算机专业人士。白帽子Web安全下载是指他们通过分享自己的经验和知识,为广大用户提供一些有关Web安全方面的学习资料的过程。 在当前互联网环境下,网络安全问题日益突出,黑客攻击、数据泄露等威胁层出不穷。白帽子作为互联网安全的守护者,致力于发现和解决网络系统中存在的安全漏洞,并提供相应的解决方案。 白帽子Web安全下载的内容主要包括以下几个方面: 首先,他们会分享一些关于Web安全的基础知识,如网络原理、Web应用的工作原理、常见的安全威胁等。这些知识对于了解Web安全的基本概念和背景非常重要。 其次,他们也会分享一些实战经验和技巧,包括漏洞扫描和渗透测试的方法、常见的安全漏洞以及相应的修复策略等。这些实战经验对于提高Web应用的安全性以及保护互联网用户的隐私和数据安全具有重要意义。 此外,白帽子还会分享一些最新的Web安全漏洞和攻击技术的研究成果,让广大用户及时了解和了解这些威胁,加强安全意识。 最后,白帽子还会推荐一些优秀的Web安全工具和学习资源,帮助用户更好地学习和提高自己的安全技能。 总之,白帽子Web安全下载旨在为广大用户提供有关Web安全方面的学习资料,帮助他们了解和掌握Web安全的基本知识和技能,提高网络系统的安全性。同时,也提醒用户加强自身的安全意识,共同构建一个更安全的网络环境。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值