一、引言

原文:Overview of Computer Security

译者:飞龙

1.1 概览

优秀的安全专业人员拥有两个重要的技能:(1)安全的感知,以及(2)安全原则的知识。我希望完成这门课的学生可以拥有二者。拥有不意味着“知道”;它意味着能够应用这些技能。

1.2 风险和威胁

  • 使用计算机系统时的风险:

    • 你正在公共图书馆中写你的大作业,并且远程登录到了你学院的 UNIX 服务器。你需要离开一分钟,并且有点懒,决定不锁上你笔记本的屏幕。如果恶意人员利用这个机会,最严重的后果是什么?恶意人员需要多少时间来造成最严重的后果?

    • 你来到公共图书馆,打算使用这里的电脑来远程登录到你学院的计算机,或者访问网上银行;你面临什么风险?

    • 你来到了一个不错的小区中的 ATM 机前来取款(即没有抢劫),你的风险是什么?

  • 配置计算机系统时的风险:

    • 你打算在家里访问你公司的电脑,所以你配置了公司的电脑,以便可以访问它的远程桌面,风险是什么?

    • 你在你的屋子里安装了一个无线接入点,来搭建无线网络,风险是什么?

    • 你是系统管理员,将多个程序变为特权程序,所以你就不会被一些任务困扰(用户可以使用这些特权程序来完成这些任务),风险是什么?

  • 开发计算机系统时的风险:

    • 你的程序有一些缓冲区溢出问题,但是你迫于压力要及时发布软件产品,并决定在这个发行版中不修复这些漏洞,风险是什么?

    • 你的公司刚刚赢得了政府的电子投票系统的投标。你的系统可能面临的风险是什么?

    • 你正在为一家商店开发在线商城的 Web 页面,你面临的风险的施恩么?

  • 安全的感知:看到和预测风险的能力。如果你不能系统的枚举上述例子中的风险,你就没有良好的安全感知。我希望在这门课之后,你可以获取良好的风险感知,并且能够在你使用、安装或开发计算机系统时评估你的风险。

  • 上一节课中学到的东西:这门课的学生之前没有足够重视培养安全意识。每个学期的大作业,我看到学生们(不是一小部分,而是大部分)演示它们系统的杰出功能,但是没有展示安全感知。它们将很多时间花在为它们的系统实现实用的功能上,但是没有花费任何时间来思考这些功能的安全后果(例如,我们是否应该访问控制,来防止功能被恶意用户滥用,来获取额外权限?)

1.3 应对策略

  • 方法:有三个预防措施:

    1. 预防:这门课的核心

      • 预防:使其不可能
      • 阻止:使其更困难
      • 转移“使其它目标更加有吸引力
    2. 检测

      • 监控
      • 入侵检测
    3. 恢复

      • 恢复数据
      • 识别损失
      • 寻找犯人:取证
  • 预防的工作方式

    • 策略(IST 课程)
    • 密码学
      • 密码学不仅仅是加密,它用于完成很多安全相关的目标,例如数字货币,时间戳,安全的分布式计算,电子投票,电子投标,等等。
      • 我们在这门课中只会涉及基本的密码学。
    • 控制(这门课的核心组件)
      • 示例:确保只有在安全区域内的人才能读取文件。
      • 硬件控制
      • 软件控制
  • 预防如何失效

    • 漏洞
    • 恶意程序:病毒、后门,等等。
    • 控制的不当使用
    • 用户的错误
  • 如何进行正确的预防?

    • 安全工程原则
    • 风险感知
    • 安全编程

1.4 计算机安全的意义

当我们讨论“计算机安全”,我们的意思是,我们强调任何计算机相关系统的三个重要的层面:

  • 保密性(C)
  • 完整性(I)
  • 可靠性(A)

这三个词(CIA)的含义十分广泛。对于不同的应用,CIA 的解释也不同。

  • 保密性:访问(读取、查看、打印、了解,以及其他)
    • 内容:加密(密码学)
    • 数据存放:隐写术。例如,股票投资、犯人、间谍、水印
    • 资源隐藏:操作系统信息和配置
    • 指纹识别
    • 身份(匿名)
  • 完整性:修改(包含编写、修改、状态修改、删除和创建)
    • 数据完整性
    • 程序完整性
    • 系统完整性
    • 身份完整性(不可复制)
    • 来源(位置)完整性(例如网络回溯)
  • 可靠性
    • 拒绝服务(DoS)
  • 示例:它们属于什么分类?
    • TCP SYN 泛洪
    • 嗅探
    • 身份伪造
    • ATM 机欺骗
    • 在纯文本文件中保存密码

书籍推荐