Lec1 - Introduction

CIA

  1. Confidentiality: Preserving authorized restrictions on information access and disclosure, including means for protecting personal privacy and proprietary information. 保护用户隐私
  2. Integrity: Guarding against improper information modification or destruction, including ensuring information nonrepudiation and authenticity. 确保信息的可依赖性和真实性
  3. Availability: Ensuring timely and reliable access to and use of information. 及时可靠地获取信息。

Terminology

System Resource (Asset):

What assets do we need to protect?

Hardware, Software, Data, Communication facilities and networks

Security Policy 安全策略: 一组规则和实践,指定或规范系统或组织如何提供安全服务来保护敏感和关键的系统资源。比如:“Only authorized user may access this file.”
Vulnerability 弱点: 系统设计、实现或操作和管理中的缺陷或弱点,可被利用来违反系统的安全策略。比如:A weakness in a firewall that can lead to malicious hackers getting into a computer network
Exploit: Term also refers to the code or methodology used to take advantage of a vulnerability.
Threat: A potential for violation of security, which exists when there is a circumstance, capability, action, or event, that could breach security and cause harm.

vulnerability和threat比较:

  1. Vulnerabilities are not introduced to a system; rather they are there from the beginning
  2. Threats are introduced to a system like a virus download or a social engineering attack
  3. a threat is a possible danger that might exploit a vulnerability.

Attack: ·实施的威胁,如果成功,将导致不想见到的安全违规 violation of security 或威胁后果 thread consequence。
Attacker: The agent carrying out the attack

攻击的类别:

  1. Active attack 主动攻击: 试图改变系统资源或影响其运行。An attempt to alter system resources or affect their operation.
  2. Passive attack 被动攻击: 试图从系统中学习或利用不影响系统资源的信息。An attempt to learn or make use of information from the system that does not affect system resources

攻击还可以被分类为:

  1. Inside attack: Initiated by an entity inside the security perimeter (an “insider”). The insider is authorized to access system resources but uses them in a way not approved by those who granted the authorization
  2. Outside attack: Initiated from outside the perimeter, by an unauthorized or illegitimate user of the system (an “outsider”).

对策 countermeasure:一种动作、装置、程序或技术,通过消除或预防威胁、漏洞或攻击,将其可能造成的伤害降至最低,或通过发现并报告威胁、漏洞或攻击,从而采取纠正措施。
比如:Report to website’s administrator there is DoS attack, Adding randomness to cryptographical algorithms to prevent timing side-channel attack

How are assets threatened?

Threat Consequences

  1. Unauthorized disclosure 未经授权的暴露: 一个实体获得未经授权的数据访问的情况或事件。(违反了C)
    Result: Exposure 暴露(将敏感数据暴露给未经授权的实体), Interception 拦截(未经授权的实体直接访问在授权源和目的地之间传输的敏感数据。), Inference 推理(未经授权的实体从特征和副产物推理得到的敏感数据), Intrusion 入侵(未经授权的实体通过绕过系统的安全保护来访问敏感数据。)

  2. Deception 欺骗:可能导致授权实体收到虚假数据并认为其为真实的情况或事件。(违反了I)
    Result: Masquerade 伪装(未经授权的实体获得对系统的访问权,假扮成被授权的实体进行恶意行为), Falsification 伪造(虚假数据欺骗授权实体) , Repudiation 否认(一个实体通过错误地否认某一行为的责任来欺骗另一个实体)

  3. Disruption 中断:中断或阻止系统服务和功能正常运行的情况或事件。(违反了A)
    Result: Incapacitation 使无资格(通过禁用系统组件来阻止或中断系统运行。),Corruption 破坏(通过不利地修改系统功能或数据,不希望地改变系统操作),Obstruction 干扰(通过阻碍系统运行而中断系统业务交付的威胁行为)

  4. Usurpation 篡位:由未经授权的实体控制系统服务或功能的情况或事件。
    Result: Misappropriation 盗用(一个实体对系统资源进行未经授权的逻辑或物理控制),Misuse 滥用(导致系统组件执行不利于系统安全的功能或服务)

硬件受到的主要威胁:availability,Confidentiality
软甲受到的主要威胁:availability,Confidentiality, integrity

What can we do to counter those threats?

  1. Economy of mechanism:安全措施的设计应在开发、使用和验证方面经济。要尽可能的简单并且小
  2. Fail-safe designs:访问决策应该基于许可而不是排除,默认为缺乏访问因此,如果出了什么问题,或者忘记了什么,或者没有做什么,也不会失去安全。
  3. Complete mediation:在对受保护对象的每次访问中应用安全,每次访问都必须根据访问控制机制进行检查
  4. Open design:安全机制的设计应该是开放的,而不是的秘密。假设所有潜在的攻击者都知道设计的一切并且完全理解它,这并不一定意味着要发布有关安全系统的所有重要信息
  5. Separation of privileges:提供将用于一个目的的特权与用于另一个目的的特权分开的机制。允许安全系统的灵活性减轻计算机安全攻击的潜在损害。例子:一个程序被分成若干部分,这些部分被限制为执行特定任务所需的特定权限。zoom需要使用您的摄像机和麦克风进行视频会议。
  6. Least privilege:系统的每个进程和每个用户都应该使用执行任务所需的最小权限集进行操作
  7. Least common mechanism:设计应尽量减少不同用户共享的功能,提供相互的安全性。耦合可能会导致安全漏洞
  8. Psychological acceptability:机制必须易于使用简单到人们不假思索就会使用它。必须很少或从不阻止允许的访问

全面的安全战略包括三个方面:

  • Specification/policy: What is the security scheme supposed to do?
  • Implementation/mechanisms: How does it do it?
  • Correctness/assurance: Does it really work?

安全策略 Security policies

安全策略描述了安全系统应该如何运行。
Policy says what should happen, not how you achieve that。

在制定安全策略时,安全经理需要考虑以下因素:
被保护资产的价值 The value of the assets being protected
系统的漏洞 The vulnerabilities of the system
潜在的威胁和攻击的可能性 Potential threats and the likelihood of attacks

权衡易用性vs .安全性安,全成本与故障和恢复成本的比较

安全实施包括四个相辅相成的行动方案:

  • Prevention: 加密数据,通过密码验证等。
  • Detection:入侵intrusion检测,检测DoS攻击
  • Response:停止攻击,防止进一步破坏
  • Recovery: backup system

保证和评估 Assurance and evaluation

保证处理以下问题:安防系统设计是否满足其要求?安全系统实现是否满足其规格?
保证被表达为一种信心的程度,而不是一个设计或实现是正确的正式证明。
评估是根据一定的标准对计算机产品或系统进行检查的过程。评估包括测试,也可能涉及形式分析或数学技术。

Tools:
• Cryptographic tools
• Encryption, message authentication code, digital signature, etc.
加密 Encryption:隐藏数据或通信内容的算法,只有那些知道秘密的人才能解密,保护计算机安全中最重要的工具之一
消息认证码 Message authentication code
数字签名 Digital signature
• Access control: Only let authorized parties access the system
• User authentication: 确保某人是他们所说的人的方法对访问控制至关重要,但对许多其他目的也至关重要,包括密码方法和非密码方法
• Intrusion detection/prevention
一种安全服务,用于监视和分析系统事件,以发现并提供实时或接近实时的警告当有人试图以未经授权的方式访问系统资源。
IDS: Intrusion detection system
Intrusion prevention system (IPS):也称为入侵检测和防御系统(IDPS)入侵检测和防御系统的扩展,包括试图阻止或阻止检测到的恶意活动的能力

• firewall
保护网络免受恶意外部攻击的机器。
通常位于LAN/WAN和Internet之间。
运行特殊软件来调节网络流量。

Lec2 - Fundamentals of cryptography (1)

古典和现代密码学

从历史上看,密码学只专注于确保事先共享秘密信息的双方之间的秘密通信(又名codes or private-key encryption)
专门负责确保通信秘密的:加密 encryption
完全依赖于通信双方共享的秘密信息(key)
Private-key cryptography
• AKA secret-key / shared-key / symmetric-key cryptography

Secure communication:
• Two parties share a key that they use to communicate securely

Secure storage:
• A single user stores data securely over time

私钥解密:

A private-key encryption scheme is defined by a message space M and algorithms (Gen, Enc, Dec):

  • Gen (key-generation algorithm): generates k (生成密钥k)
  • Enc (encryption algorithm): takes key k and message m ∈ M as input; outputs ciphertext c (给信息加密得到密文c)
    c ← Enc(m)
  • Dec (decryption algorithm): takes key k and ciphertext c as input; outputs m or “error” (解密)
    Dec © = m

    移位解密 The shift cipher:
    Caesar 凯撒密码 (我会,这里不再赘述)
    不够安全,因为只有26个密钥

充足键空间原理 Sufficient key space principle:
密钥空间应该足够大,以防止“暴力”穷尽搜索攻击
如果一个加密方案的密钥空间太小,那么它将容易受到耗尽搜索攻击 exhaustive-search attacks

The Vigenère cipher:
键现在是一个字符串 string,而不仅仅是一个字符
若要加密,请将明文中的每个字符移动由密钥的下一个字符指定的数量
根据需要把钥匙绕进去解密只是反转了这个过程
例子k =’cafe’

密钥空间的大小:

暴力破解几乎是不可能的,多年来相信是安全的

Symmetric encryption 对称加密:

Definition:

Stream ciphers 流密码:

Computer Systems Security相关推荐

  1. Computer Systems A Programmer’s Perspective ----阅读翻译日志

    2019独角兽企业重金招聘Python工程师标准>>> 借助google 翻译读一下这本书吧,做个记录 Computer Systems A Programmer's Perspec ...

  2. Machine Learning for Computer Systems and Networking:A Survey ---综述阅读 对于计算机系统和网络的机器学习

    摘要: Machine learning (ML) has become the de-facto approach for various scientific domains such as co ...

  3. 读《Computer Systems: A Programmer’s Perspective》

    1.x64的指针是64位的,想想就是. 2.c++中,>>操作,一般来讲,无符号整数是逻辑右移,有符号整数是算术右移. 3.计算机中是用补码计算的,符号位0表示正,1表示负,正数的补码等于 ...

  4. 数字输出模件4107-- TRICONEX卡件4119A-4200-Delta Computer Systems,Inc .宣布推出曲线工具功能,为自定义运动和凸轮轮廓提供图形易- 4210-4211

    数字输出模件4107-- TRICONEX卡件4119A-4200-4201- 4210-4211 Delta Computer Systems,Inc .宣布推出曲线工具功能,为自定义运动和凸轮轮廓 ...

  5. Computer Systems A Programmer's Perspective(深入理解计算机系统)第一章读书笔记

    第一章    计算机系统漫游 1.1信息就是位+上下文 源程序实际上就是一个由0和1组成的位(又称比特位)序列,这些位被组织成8个一组,称为字节.每个字节都表示程序中某个文本字符. 系统中的所有信息都 ...

  6. 区块链安全理论与实践(Blockchain for Distributed Systems Security)阅读笔记D1

    概述 区块链的前提 通过采用加密数据结构(不是加密数据),不需要一个可信中央机构就可以实现可信的去中心化的方式允许应用程序. 区块链具有容错机制,可以排除受损节点. 与中心化数据库相比的优势 1.在难 ...

  7. 【CSAPP:3e 深入理解计算机系统】课堂笔记 Computer Systems from a Programmer’s Perspective

    第一章 简介 「软件」如何由代码得到程序? 预处理阶段:将源程序test.c进行预处理成test.i,例如将头文件.宏命令补全等等 编译阶段:编译器将文本文件翻译成文本文件test.s包含了一个汇编语 ...

  8. Computer Systems A Programmer's Perspective

    阅读笔记 摘自 <深入理解计算机系统>仅记录了感兴趣的内容 计算机系统漫游 信息就是位+上下文 hello.c经历的四个阶段 shell命令解释器--运行程序 系统的硬件组成 操作系统管理 ...

  9. 区块链安全理论与实践(Blockchain for Distributed Systems Security)阅读笔记D2

    分布式共识协议和算法 容错共识(Fault-tolerant Consensus) 容错共识是分布式系统中广泛应用和研究的机制.容错共识旨在规范分布式系统内的信息传播方式,以在组件和通信出现故障的时候 ...

最新文章

  1. PTA基础编程题目集-7-3 逆序的三位数
  2. 华为手机业务网络推广外包持续受限,在当前市场下还能做些什么?
  3. 02-线性结构4 Pop Sequence
  4. python3命令记忆技巧_Python3学习笔记-回忆并复述是加强记忆的好方式!
  5. Linux下 ln 命令详解
  6. centos php 开启libgdgd_CentOS6.6下yum安装PHP的gd库失败?-问答-阿里云开发者社区-阿里云...
  7. mysql sql 检测磁盘_MySQL 数据库磁盘占用情况查询
  8. java sortedlist 固定容量_Java8 使用 stream().sorted()对List集合进行排序的操作
  9. 准确实用,7个优秀的开源中文分词库推荐
  10. 【Spring 工厂】注入详解 — Set注入(JDK内置类型,用户自定义类型)、构造注入(重载)
  11. No.4 - 第一章 启航 - 什么是事件驱动型应用 | Flink 知其然,知其所以然
  12. c语言仿qq截图源码,C#实现属于自己的QQ截图工具
  13. 一文读懂Hoo Smart Chain的可视化公链
  14. 当你感觉为时已晚的时候,恰恰是最早的时候。
  15. MySQL笔记(一)SQL基础
  16. 相机PHP,C/C++、C#、PHP相机开发实例 大恒相机SDK
  17. 化学计算机模拟计算,计算机化工辅助计算
  18. 利用python实现软考成绩实时监控+查询提醒
  19. Digilent Basys2开发板驱动安装失败
  20. 位运算:找出唯一成对的数、找出落单的数

热门文章

  1. postgresql数据库备份策略
  2. ncurses库的安装
  3. 安居客爬虫项目,爬取房源,保存mysql数据库,详细代码如下!!!
  4. Unity 通过TextMeshPro创建属于自己的字体库
  5. python大气校正_Python调用C2RCC实现批量数据的大气校正
  6. 萍果8html5测试跑分,iPhone 8/8 plus跑分测试结果出炉 打爆众多竞争对手
  7. 微.解析FoMo3D及其赝品(含智能合约解释)
  8. VS一行代码解决C++错误代码4096
  9. 用Python调教微信,实现自动回复 和 微信好友分布,好友性别图,好友标签
  10. C/C++杂志订阅管理系统[2022-12-31]