白帽子讲web安全-第一章笔记

第一章(世界观安全)

  1. 白帽子选择,是克服某种攻击方法,而并非抵御单次的攻击。

  2. 安全问题的本质是信任问题,通过安全检查(过滤、净化)的过程,划分信任域。

    (数据从高等级的信任域流向低等级的信任域,是不需要经过安全检查的,数据从低等级的信任域流到高等级的信任域,需要经过信任边界的安全检查)

  3. 安全是一个持续的过程,而不是一个一劳永逸的解决办法

  4. 安全三要素:

    1. 机密性:加密
    2. 完整性:认证
    3. 可用性:“随需而得”,占用了需求资源,让需不能得。例(Dos拒绝服务攻击)
  5. 安全评估过程:

    1. 资产等级划分

      1. 互联网安全的核心问题,是数据安全的问题。
      2. 互联网公司拥有的资产进行等级划分,就是对数据做等级划分。
      3. 完成资产划分后,开始对信任域和信任边界进行划分了。
    2. 威胁分析:威胁(可能造成危害的来源),风险(可能会出现的损失)

      1. 威胁建模方法:STRIDE模型 p13页

      2. 风险值判断:DREAD模型 p14页

        按照模型的等级DREAD,每一项的评分,计算总和判定

      3. 优秀方案的特点:

        1. 有效解决问题
        2. 用户体验好
        3. 高性能
        4. 低耦合
        5. 抑郁扩展和升级
    3. 风险分析

    4. 确认解决方案

  6. Secure By Default原则:

    1. 白名单、黑名单

      白名单优于黑名单,黑名单的受攻击面要大一些

    2. 最小权限原则

      最小权限原则要求系统只授予主题必要的权限,而不要过度授权,这样能有效的减小系统、网络、应用、数据库出错的机会

  7. 纵深防御原则:

    1. 在不同层面,不同方面实施安全方案

      例:在设计方案时,考虑到web应用安全、os系统安全等不同层面,共同组成防御体系。

    2. 在解决根本问题的地方实施有效的针对性方案

      不是解决单次攻击问题。如<>过滤,而是通过对攻击方法解决,例:从语法树上分析

  8. 数据与代码分离:

    用户不管输入什么数据,都不能当做代码执行。

    例:

    <body>
    	$var;
    </body>
    
    <body>
    	<script>
    		alert("$var");
    	</script>
    </body>
    
  9. 不可预测性原则(随机性):

    让一些数据具有随机性,使攻击者攻击成功但无效。

    例:1. id、tonken令牌等等(设置随机变化,不规律)

    ​ 2. 进程的栈基地址变化等

原文地址:https://www.cnblogs.com/kbhome/p/12819292.html