安全攻防技能 30 讲
何为舟
前微博安全研发负责人
34680 人已学习
新⼈⾸单¥59
登录后,你可以任选4讲全文学习
课程目录
已完结/共 41 讲
开篇词 (1讲)
安全攻防技能 30 讲
15
15
1.0x
00:00/00:00
登录|注册

02 | 安全原则:我们应该如何上手解决安全问题?

日志
问责
审计
授权策略
自动化授权
授权机制
认证形式
身份认证
身份识别
审计和问责
授权
认证
安全规划
安全管理方式
黄金法则
推动安全建设
分析系统和应用中的工作
安全防御
安全保护措施
黄金法则的核心内容
企业安全建设管理
方法原则
可用性
完整性
机密性
思考题
总结
安全问题的解决思路
上一讲:拆解学习了CIA三元组
文章:我们应该如何上手解决安全问题?

该思维导图由 AI 生成,仅供参考

你好,我是何为舟。
上一讲,我们一起拆解学习了 CIA 三元组,也就是机密性、完整性和可用性。它们分别代表了数据的“不可见”“不可改”和“可读”。简单来说,以购买极客时间专栏为例,机密性就是未付费用户无法学习这个专栏,完整性就是这个专栏的内容不会变成别的其他方向的内容,可用性就是你作为付费用户,能够随时学习这个专栏。
理解了 CIA,上一节最后面试官问的“安全是什么”的问题,你现在一定可以回答出来了。面试官点点头,接着说道:“你觉得该怎么去解决安全问题呢?”
毫无疑问,不同的应用、不同的模块会受到不同的安全威胁,当然,我们面对这些威胁也会有不同的解决方案。万变不离其宗。正如安全威胁都是针对 CIA 三元组产生的攻击一样,安全解决方案在根本思路上也都是相通的。
今天,我就从方法原则这个层面上,来给你讲讲安全解决方案的主要思路。这块内容看起来比较偏理论,我尽量多从实践角度来给你讲我的理解,但是你一定要耐心看完,这样可以确保你对后面实践的内容能够理解得更加深入。

什么是“黄金法则”?

对于安全解决方案来说,不同的教材会有不同的解释。就我个人而言,我比较喜欢“黄金法则”这种理解方式。下面我就用这种方式来具体给你讲讲。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

本文介绍了解决安全问题的方法原则,以“黄金法则”为主要内容。黄金法则包含认证、授权、审计三部分,描述了用户在使用应用过程中的生命周期。身份识别和认证是认证的第一部分,强调主体如何声明自己的身份以及如何证明所声明的身份是合法的。授权确定了用户在系统或应用中的操作限制,包括对操作内容和数量的限制。审计记录用户的操作,为后续的问责提供基础。文章还介绍了不同的认证形式和授权策略,强调了安全保障体系的重要性。通过“黄金法则”,读者可以了解解决安全问题的主要思路和方法原则。文章还提到了企业安全建设管理的重要性,强调了安全问题需要自上而下的方式进行管理和推动。最后,总结指出安全没有“银弹”,并提出了两道课后思考题,鼓励读者分享思考和疑惑。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《安全攻防技能 30 讲》
新⼈⾸单¥59
立即购买
登录 后留言

全部留言(44)

  • 最新
  • 精选
  • ZeroIce
    老师,可否问个问题:一般登陆验证采用的是oauth2的验证码模式。但是在发送表单(登陆信息)的时候虽然是post,但是依然可以通过抓包获取,查看密码。请问一般怎样处理,即使被捕获了,密码还是看不到?前端那边加密的话,别人一看源码就知道了怎样加密或者获取密钥了。此问题比较困惑我,望老师解答一下。

    作者回复: 浏览器抓包其实是自己攻击自己,所以能看到很正常。实际上,黑客是在网络环境中抓包,经过https加密之后,是看不到数据的。另外,也可以使用非对称对密码进行加密,这样,即使别人知道加密密钥,也解不出明文来。

    2019-12-23
    6
    22
  • 小老鼠
    IAAAA与CIA有无对应关系?另外安全性与易用性永远是一对矛盾体吗?

    作者回复: IAAAA是用来保证CIA的。安全性和易用性,大部分情况下,是矛盾的,只是矛盾的程度有轻有重。

    2019-12-25
    7
  • niuniu
    为什么说“我知道什么”是强度最弱的认证手段?有些书认为这是最强的认证手段,而“我是什么”是最弱的。我觉得还是有道理的,因为“我是什么”是无法改变的,而我知道什么是变化莫测的,只要有共产党员钢铁般的意志,即使是严刑拷打也无法得到他知道的。

    作者回复: 你好,感谢你的留言。从个人角度来说,这么理解是没问题的。但对于普通应用来说,更多的是需要考虑普遍现象,即大多数用户不会设置强密码,也不会有较强的安全意识和坚定意志,对于这部分用户来说,“我是什么”是成本最低,安全性最高的解决方案。 对于比较专用的系统来说,比如军方系统,肯定还是会以“我知道什么”为准,因为军人安全意识高,不会泄漏密码。而“我是什么”作为一种半公开的信息,泄漏的可能性对于军人来说,更高一些。

    2019-12-17
    6
  • fgdgtz
    你好老师,关于APP与服务器沟通安全我有个问题,望老师能解答。 api请求认证或加密一般都有key等,硬编码在APP,而APP有被反编译的风险,放c++ 编译成SO库,虽加大了安全系数,但黑客可直接用这SO库即可,而调用的逻辑,反编译代码里也有,如何安全存储?

    作者回复: 你好,感谢你的留言。如果是加密数据的话,用非对称加密即可,公钥可以公开,直接存储到前端即可。如果是第三方api请求认证的key,一般是不在前端调用,而是后端去进行封装。

    2019-12-15
    7
    5
  • 攻城狮Ra
    目前公司主要是通过加密服务器进行进行认证和授权,通过企业微信在网上办公,工作文档也都是上锁的,由于职务限制审计目前还没接触到,可以说句题外话,公司今天正好停电了,发电机发电之后服务器还是一直连接不上,运维修了半小时才好,可能是服务器老式。 我觉得应该由部门BOSS跟上级反应,最好跟员工再简单培训下,公司现在纯IT的其实就2-3人,我实习进来的希望可以好好补补这方面知识

    作者回复: 断电恢复其实挺考验运维能力的,也是可用性需要考量的范围。除了引入断电保护的一些设备(如ups,发电机),最好还能够定期进行演练,来验证这些设备是不是真的有效,以及有哪些点是疏漏的。

    2019-12-11
    2
    5
  • link
    银弹效应:妄图创造某种便捷的开发技术,从而使某个项目的实施提高效率。又或者指摆脱该项目的本质或核心,而达到超乎想象的成功。银弹在现实生活中是指能够解决棘手项目或者一件不可能的事情的方法或者技术手段。

    作者回复: 你好,感谢你的留言。帮我解释了一下什么是银弹。首先,银弹是国外的说法,我知道的大概起源就是银弹可以打死所有吸血鬼,所以人们用银弹来比喻解决一切问题的方法。

    2019-12-10
    4
    4
  • JianXu
    老师,你怎么看谷歌BeyondCorp 项目,国内有公司搞零信任网络吗?如果不搞,那原因是什么呢?我很想知道哪里有类似于这样的分析:渗透类型1, 用A 这类方法做防御;渗透类型2, 用B这类方法做防御... 而现在我能看到的是 我们公司做了password less 的应用(这个我能理解)正在做IAM IDM 去apply 所有的应用,现在副总再说要做micro segmentation , 问题是我看到了一堆堆的工作,却不知道具体怎么来防治渗透。就跟让一个没有坏人道行高的人去抓坏人。

    作者回复: 我对零信任理解还不太深,简单回复下吧。国内目前应该处于零信任的早期阶段,而之所以推零信任的原因,我觉得是很多公司内部的权限管理机制做得很差,大量的网络、服务、应用等,要么没有授权直接信任内网,要么缺乏有效的管理,各种权限泛滥。对于黑客来说,进入内网基本就等于拥有全部数据。而零信任的目标应该也是建立一套相对完善的机制出来,当然,落地到具体实现上,如何实现对各种关键服务的有效权限管控,确实难度很高。

    2020-08-27
    2
    1
  • 吕作晶
    3A或者IAAAA原则是流程维度的东西,而CIA是目标维度的东西~两者是相互垂直的两个维度,相辅相成。而我现在所在的公司其实已经投入了大量的人力物力在做安全这块,每个季度都有培训和考试,每个月都有安全xxx的邮件提醒,所以感觉后续要做的事情不是如果让领导觉得我们需要做安全,而是让员工觉得这么多安全相关的动作是值得的。而不是疲于应付。目前其实没有很好的思路,因为感觉大家基本上都还是怕出事,那么跟着内部流程和标准来。而这样子的话,相当于把所有的事情都压给了安全人员,安全人员表示压力非常的大~

    作者回复: 能力越大,责任越大。责任越大,收益越大~

    2020-04-11
    1
  • 二马
    安全遵循“木桶理论”,这个在实践中有时候会被误解,安全涉及的领域很多,是无法做到每个场景都要把短板提高,有些做到基本防护已经可以解决安全问题。所以,安全加固,先做好安全威胁建模,把影响最大,最可能被利用的威胁降低,即把这些威胁的安全防护之板做到极致,而不是纠结于短板不够好。

    作者回复: 你好,感谢你的留言。确实,如果把每个短板都提高,肯定会出现贪多嚼不烂的情况,所以需要适当的取舍。但是,我认为在某一点做到极致,对于甲方安全来说,付出和收益是不成比例的,因为从0分到60分一般都比较简单,但从90分到99分,付出的成本会很高。因此甲方应该把影响最大的点,先做到及格。及格之后,影响最大的点就会发生改变,这个时候,就可以再投入去做新的方向了。最终不断调整方向,以起到全面提升安全能力的结果。

    2019-12-18
    1
  • 追风筝的人
    SSL VPN用户在访问虚拟站点的时候会被radius服务器进行AAA认证 授权 审计。radius认证方式有2种 PAP认证即用户名密码认证,用户名是明文保存的,密码是MD5加密的,第2种是challenge认证 会有2次认证第一次用户名密码认证,第2次challenge动态密码认证。2次认证的比只有1次的radius认证安全级别高。1812端口负责认证授权,1813端口负责审计,radius客户端充当NAS网络接入服务器和radius Server交互 对用户行为做出响应的响应 响应有Access-accept,Access-reject 等。 有个问题是radius服务器关键有2个核心配置文件clients.conf(保存客户端配置文件 有client IP,sharesecret:testing123支持自定义修改 还可以设置ACL), users保存用户信息。 老师问题关于这2个配置文件有最简单的配置方法没,我看虚拟机里的配置文件里信息很多 还有本地配置的radius Server进行radtest测试返回了Access accept但是把radius Server IP配置在web UI虚拟站点认证没生效 但是1812端口是开启的,远程北京radius Server环境是可以的。看了配置本地环境没有数据库,远程环境有MySQL和其他一些配置环境。是不是raddb目录下配置文件不全导致web端认证没生效但测试radtest 返回的响应确实Access accept 为什么呢 本地环境参考博客radtest后accept 但是web端认证相同的user 认证不通过

    作者回复: 不好意思,Radius认证只是学习过,并没有在工作中接触过。所以没办法回答你关于最佳实践的问题了。。。

    2019-12-10
    2
    1
收起评论
显示
设置
留言
44
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部