网安导论&攻防理论笔记

本文最后更新于:2024年7月2日 上午

第一章 网络空间安全概述

信息与信息技术

信息是数据经过加工和组织后,对决策或行动有用的知识。它可以以多种形式存在,包括文本、数字、图像、声音等。

信息技术(Information Technology, IT)是指用于创建、存储、检索、处理和分发信息的硬件、软件、网络资源和系统。它包括计算机硬件、操作系统、应用程序、数据库、网络通信设备等,以及相关的管理和应用知识。信息技术在现代社会中扮演着核心角色,影响着教育、商业、政府和日常生活的各个方面。

  • 我国已经成为信息技术与产业大国,正逐步成为世界信息技术与产业强国
  • 我国的超级计算机技术居世界领先水平,超级计算机荣登世界第一的次数居世界第一
  • 我国的量子信息技术在一些领域居世界领先水平

信息安全

黑客(Hacker)一词最初指的是对计算机系统和网络有深刻理解并善于探索和解决问题的人。黑客文化强调知识分享、自由探索和创新精神。然而,随着时间的推移,这个词也与那些利用计算机技术进行非法活动的人联系在一起。

黑客攻击(Hacking Attack)是指黑客利用计算机系统或网络的安全漏洞,未经授权地访问、破坏、盗取或篡改数据的行为。

计算机病毒(Computer Virus),指编制者在计算机程序中插入的破坏计算机功能或者破坏数据,影响计算机正常使用并且能够个人复制的一组计算机指令或程序代码。

  • 计算机病毒可以成为软件形式,也可以成为硬件形式。与软件病毒相比,硬件病毒更难检测,而且无法清除。

隐私数据(Personal Data 或 Sensitive Data)指的是任何可以用于识别、定位、追踪或了解一个人身份、行为、偏好、健康状态或其他个人特征的信息。

信息战(Information Warfare)和网络战(Cyber Warfare)是两个相关但有所区别的概念,它们都涉及到利用信息和通信技术进行战略性操作,但侧重点和实施方式有所不同。两者的共同点在于都利用信息技术作为实现战略目标的手段,但网络战更侧重于通过网络手段直接对敌方的信息系统进行攻击,而信息战则可能包括更广泛的信息操作手段,包括心理战和电子战等。

  • 信息战是一种通过控制、操纵、保护和破坏信息和信息基础设施来影响对手决策过程的军事行动。
  • 网络战则更专注于利用网络空间作为战场,通过攻击敌方的计算机系统和网络来达到战略目的。

我国重视信息安全

  • 2002年,党的十六大文件已经把信息安全作为我国国家安全的重要组成部分。
  • 2012年,党的十八大文件进一步明确指出,要“高度关注海洋、太空、网络空间安全”。
  • 2013年底,中央网络安全与信息化领导小组成立,负责统一领导我国网络安全与信息化工作。
  • 2014年,习近平总书记在中央网络安全与信息化领导小组第一次会议上指出:“没有网络安全,就没有国家安全。没有信息化,就没有现代化。”
  • 2016年11月7日,我国颁布了《中华人民共和国网络安全法》,这是确保我国网络安全的基本法律。
  • 2016年12月27日,国家互联网信息办公室和中央网络安全与信息化领导小组办公室联合发布了我国的《国家网络空间安全战略》。文件明确了确保我国网络空间安全和建设网络强国的战略目标。
  • 2017年3月1日,外交部和国家互联网信息办公室共同发布了《国家网络空间国际合作战略》。文件明确规定了我国在网络空间领域开展国际交流合作的战略目标和中国主张。
  • 2017年10月18日,习近平总书记在十九大报告中再次强调,“加快建设创新型国家和网络强国,确保我国的网络空间安全”。
  • 2018年3月21日,中央决定:中央网络安全与信息化领导小组改组为中央网络安全与信息化委员会,负责相关领域重大工作的顶层设计、总体布局、统筹协调、整体推进、监督落实。这一变动意味着,其指导网络安全和信息化的职能将进一步加强。
  • 2018年4月20日,习近平总书记在网络安全与信息化委员会工作会议上指出:“要主动适应信息化要求,强化互联网思维,不断提高对互联网规律的把握能力、对网络舆论的引导能力,对信息化发展的驾驭能力、对网络安全的保障能力。核心技术是国之重器。没有核心技术,只能受制于人。要下决心、保持恒心找准重心,加速推动信息领域核心技术突破。”

网络空间安全

网络空间(Cyberspace)是信息时代人们赖以生存的信息环境,是所有信息系统的集合。

网络空间安全学科是研究信息存储、信息传输和信息处理中的信息安全保障问题的一门新兴学科。网络空间安全学科是融合计算机、通信、电子,数学、物理、生物、管理、法律和教育等学科,并发展演绎而形成的交叉学科。网络空间安全学科与这些学科既有紧密的联系和渊源,又具有本质的不同,从而构成了一个独立的学科。网络空间安全学科具有自己特有的理论,技术和应用,并服务于信息社会。

早期传统的信息安全强调信息(数据)本身的安全属性,认为信息安全主要研究确保信息的以下属性:

  • 秘密性:信息不被未授权者知晓的属性。
  • 完整性:信息是正确的、真实的、未被篡改的、完整无缺的属性。
  • 可用性:信息可以随时正常使用的属性。

从纵向来看,信息系统安全主要包括以下4个层面:

  • 设备安全
  • 数据安全
  • 行为安全
  • 内容安全

其中,数据安全即是早期的信息安全。

设备安全

信息系统设备(硬设备和软设备)的安全是信息系统安全的首要问题。这里包括三个方面:

  • 设备的稳定性:设备在一定时间内不出故障的概率。
  • 设备的可靠性:设备能在一定时间内正确执行任务的概率。
  • 设备的可用性:设备随时可以正确使用的概率。

数据安全

数据安全指采取措施确保数据免受未授权的泄露、篡改和毁坏。

  • 数据的秘密性:数据不被未授权者知晓的属性。
  • 数据的完整性:数据是正确的、真实的、未被篡改的、完整无缺的属性。
  • 数据的可用性:数据可以随时正常使用的属性。

行为安全

行为安全从主体行为的过程和结果来考察是否会危害信息安全,或者是否能够确保信息安全。从行为安全的角度来分析和确保信息安全,符合哲学上实践是检验真理唯一标准的基本原理。

  • 行为的秘密性:行为的过程和结果不能危害数据的秘密性,必要时行为的过程和结果也应是保密的。
  • 行为的完整性:行为的过程和结果不能危害数据的完整性,行为的过程和结果是预期的。
  • 行为的可控性:当行为的过程偏离预期时,能够发现、控制或纠正。

内容安全

内容安全是信息安全在政治、法律、道德层次上的要求,是语义层次的安全。

  • 信息内容在政治上是健康的。
  • 信息内容符合国家法律法规。
  • 信息内容符合中华民族优良的道德规范。

信息安全三大定律

  • 信息安全的普遍性定律:哪里有信息,哪里就有信息安全问题。
  • 信息安全的中性定律:安全与方便是一对矛盾。
  • 信息安全的就低性定律(木桶原理):信息系统的安全性取决于最薄弱部分的安全性。

信息论的基本观点还告诉我们:信息只有存储、传输和处理三种状态。因此,要确保信息安全,就必须确保信息在存储、传输和处理三种状态下的安全。

主要研究方向

理论基础

法律法规

刑法

三次改变:从20世纪90年代计算机犯罪(computer crime)到21世纪初的网络犯罪(cyber crime),再转变为当前的网络空间犯罪(crimes in cyberspace)。

网络安全法

《中华人民共和国网络安全法》已由中华人民共和国第十二届全国人民代表大会常务委员会第二十四次会议于2016年11月7日通过,自2017年6月1日起施行。

密码法

《中华人民共和国密码法》由中华人民共和国第十三届全国人民代表大会常务委员会第十四次会议于2019年10月26日通过,自2020年1月1日起施行。

信息安全标准

  • 标准是通过标准化活动,按照规定的程序经协商一致制定,为各种活动或其结果提供规则指南或特性,供共同使用和重复使用的文件。
  • 标准化是为了在既定范围内获得最佳秩序,促进共同效益,对现实问题或潜在问题确立共同使用和重复使用的条款以及编制、发布和应用文件的活动。标准化以制定、发布和实施标准达到统一,确立条款并共同遵循,来实现最佳效益。

国家标准

  • 依据《中华人民共和国标准化法》将标准划分为国家标准行业标准地方标准企业标准四个层次级别。
  • 依据《中华人民共和国标准化法》的规定,国家标准、行业标准均可分为强制性推荐性两种属性的标准。
    • 保障人体健康、人身、财产安全的标准和法律、行政法规规定强制执行的标准是强制性标准,其他标准是推荐性标准
    • 省、自治区、直辖市标准化行政主管部门制定的工业产品安全、卫生要求的地方标准,在本地区域内是强制性标准
  • 强制性标准是由法律规定必须遵照执行的标准。强制性标准以外的标准是推荐性标准,又叫非强制性标准。
    • 推荐性国家标准的代号为“GB/T”
    • 强制性国家标准的代号为“GB”
    • 行业标准也是类似,推荐加“T”

国际标准化组织

  • 1906 年,根据国际电工会议的决议,创立了世界范围的标准化组织——国际电工委员会(International Electrotechnical Commission, IEC),它是世界上最早的国际性电工标准化机构。
  • 1926年,国际标准化协会(ISA)成立,并于同年成立了国际标准化组织(International Organizationfor Standardization, ISO)。
  • ISO 组织成立后即同 IEC 达成协定,由国际电工委员会担负电气与电子工程领域的标准化工作,并由国际标准化组织担负包括除电气与电子工程以外所有技术领域的标准化工作。

信息系统分级保护

  • 国家秘密:所谓国家秘密是指关系国家的安全和利益,依照法定程序确定,在一定时间内只限一定范围的人员知悉的事项(《保密法》第二条)
    • 绝密级:最重要的国家机密,泄露会使国家安全和利益遭受特别严重的损害
    • 机密级:重要的国家秘密,泄露会使国家安全和利益遭受严重的损害
    • 秘密级:一般的国家秘密,泄露会使国家安全和利益遭受损害
    • 解密期:绝密级不超过三十年,机密级不超过二十年,秘密级不超过十年(《保密法》第十五条)
  • 工作秘密:是各级国家机关产生的事项。工作秘密的主体是各级国家机关。工作秘密是涉及机关单位的公务活动和内部管理的事项。工作秘密是不属于国家秘密,又不宜公开的事项。
  • 商业秘密:是指不为公众所知悉,能为权利人带来经济利益,具有实用性并经权利人采取保密措施的技术信息和经营信息。
  • 个人秘密:个人隐私

国家保密局是涉密信息系统分级保护工作的主管部门。国家保密工作部门负责全国涉密信息系统分级保护工作的指导、监督和检查;地方各级保密工作部门负责本行政区域涉密信息系统分级保护工作的指导、监督和检查。涉密信息系统的建设使用单位则负责本单位涉密信息系统分级保护的具体实施工作。

安全等级保护

信息系统安全等级保护的内容可分为系统定级系统备案建设整改等级测评监督检查五个方面。

系统定级

信息系统的安全保护等级由低到高划分为五级

  • 第一级是信息系统受到破坏后,会对公民、法人和其他组织的合法权益造成损害,但不损害国家安全,社会秩序和公共利益;
  • 第二级是信息系统受到破坏后,会对公民、法人和其他组织的合法权益产生严重损害,或者对社会秩序和公共利益造成损害,但不损害国家安全;
  • 第三级是信息系统受到破坏后,会对社会秩序和公共利益造成严重损害,或者对国家安全造成损害;
  • 第四级是信息系统受到破坏后,会对社会秩序和公共利益造成特别严重损害,或者对国家安全造成严重损害;
  • 第五级是信息系统受到破坏后,会对国家安全造成特别严重损害。
系统备案

《信息安全等级保护管理办法》的第八条对不同级别的信息系统做了明确的定级工作要求说明:

  • 第一级信息系统由使用单位自行保护;
  • 第二级信息系统由使用单位自行保护的同时,要在公安机关备案;
  • 第三级以上的信息系统要由使用单位依据要求进行保护、由公安机关进行监督管理,并且由有资质的机构进行定期测评。
建设整改

信息系统使用单位应对照《信息系统安全等级保护基本要求》中的内容,开展信息系统的信息安全等级保护安全建设整改,双路并行,坚持管理与技术并重,从物理安全主机安全应用安全网络安全数据备份与恢复五个安全技术相关方面进行建设整改。同时也要从安全管理人员安全管理机构安全管理制度系统建设管理系统运维管理五个安全管理相关方面开展进行。技术与管理要进行协调融合发展,从而建立起一套完整的信息系统安全防护体系。

等级测评

测评机构按照规定程序对信息系统进行等级测评,测评后会按照公安部制定的《信息系统安全等级测评报告模板》出具定级测评报告,包括报告摘要测评项目概述被测信息系统情况等级测评范围与方法单元测评整体测评测评结果汇总风险分析和评价等级测评结论安全建设整改意见等内容。

监督检查

备案单位按照相关要求,需定期对信息安全等级保护工作的落实情况进行自查,掌握信息系统安全管理和相关技术指标等,及时发现信息系统存在的安全隐患,并有针对性地采取正确的技术方法和管理措施。
公安机关依据有关规定,以询问情况、查阅核对资料、调看记录资料、现场查验等方式对使用单位的等级保护工作进行检查,对其等级保护建设的信息安全措施、相应信息安全管理制度的建立和落实、信息安全责任落实责任等方面进行督促检查。

商用密码标准

(Todo)

习题参考解答

1.根据自己的切身体会。阐述我国社会信息化的发展。

222

2.写一个小型调查报告,用实例说明确保信息安全的重要性。

3.什么是网络空间?为什么网络空间存在严峻的信息安全问题?

4.信息安全的三大定律是什么?对我们的学习和工作有什么作用?

5.什么是网络空间安全学科?学科与专业有什么区别?

6.网络空间安全学科的主要研究方向及内容是什么?

7.网络空间安全学科的理论基础是什么?这些理论基础对我们的专业学习和研究工作有什么指导意义?

8.网络空间安全学科的方法论是什么?在运用这一方法论分析和解决问题时,应当注意什么?

9.信息安全法律法规有几大类别?请举例说明。

10.《中华人民共和国网络安全法》哪一年开始实施?它的实施具有什么意义?

11.《中华人民共和国密码法》哪一年开始实施?

12.《中华人民共和国刑法》第二百八十五至二百八十七条的内容是什么?

13.互联网安全的刑事责任具体条款有哪些?

第二章 密码学

古典密码

(Todo)

现代密码学

保密通信系统的数学模型

信息隐藏与信息保密

信息隐藏和信息加密都是为了保护秘密信息的存储和传输,使之免遭敌手的破坏和攻击,但两者之间有着显著的区别。

  • 信息加密是利用单钥或双钥密码算法把明文变换成密文并通过公开信道送到接收者手中。由于密文是一堆乱码,攻击者监视着信道的通信,一旦截获到乱码,就可以利用已有的对各种密码体制的攻击方法进行破译了。由此可见,信息加密所保护的是信息的内容
  • 信息隐藏则不同,秘密信息被嵌入表面上看起来无害的宿主信息中,攻击者无法直观地判断他所监视的信息中是否含有秘密信息。换句话说,含有隐匿信息的宿主信息不会引起别人的注意和怀疑。信息隐藏的目的是使敌手不知道哪里有秘密,它隐藏了信息的存在形式

密码算法的设计

在古典密码学中,“代换”和“置换”是两个重要的加密变换。在此基础上,Shannon 对此做了进一步的发展,提出了“扩散”(Diffusion)和“混淆”(Confusion)两个重要概念,它们迄今仍然对现代密码的设计产生重要的影响。

  • 组合(Combine):由简单易于实现的密码系统进行组合,构造较复杂的、密钥量较大的密码系统。Shannon曾给出两种组合方式,即加权和法和乘积法。
  • 扩散(Diffusion):将每一位明文及密钥尽可能迅速地散布到较多位密文数字中去,以便隐蔽明文的统计特性。
  • 混淆(Confusion):使明文和密文、密钥和密文之间的统计相关性极小化,使统计分析更为困难。

云技术中的密码学

数据持有证明(Provable Data Possession, PDP)是一种机制,用于验证存储在远程服务器,如云存储服务上的数据的完整性和存在性。用户将数据外包给云服务提供商(CSP)后,由于缺乏对数据的直接控制,PDP机制允许用户验证其数据是否仍然安全、未被篡改或丢失

密码学基本概念

采用密码方法可以隐蔽和保护需要保密的消息,使未授权者不能提取信息。被隐蔽消息称作明文(Plaintext)。密码可将明文变换成另一种隐蔽的形式,称为密文(Ciphertext),这种变换过程称为加密(Encryption),与加密相对应的逆过程,即由密文恢复出原明文的过程称为解密(Decryption)。对明文进行加密操作的人员称为加密员密码员(Cryptographer)。密码员对明文进行加密时所采用的一组规则称为加密算法(Encryption Algorithm)。传送消息的预定对象称为接收者(Receiver),他对密文进行解密时所采用的一组规则称为解密算法(Decryption Algorithm)。加密和解密算法的操作通常都是在一组密钥(Key)控制下进行的,分别称为加密密钥和解密密钥。传统密码体制(Conventional Cryptographic System)所用的加密密钥和解密密钥相同,或实质上等同,即从一个易于得出另一个,称为单钥(One-key)或对称密码体制(Symmetric Cryptosystem)。若加密密钥和解密密钥不相同,从一个难以推出另一个,则称为双钥(Two-key)或非对称密码体制(Asymmetric Cryptosystem),这是1976年由 Diffie 和 Hellman 等人所开创的新体制。密钥是密码体制安全保密的关键,它的产生和管理是密码学中的重要研究课题。

在信息传输和处理系统中,除了意定的接收者外,还有非授权的攻击者,他们通过各种办法(如搭线窃听、电磁窃听、声音窃听等)来窃取机密信息,称为窃听者(Eavesdropper)。他们虽然不知道加密系统所用的密钥,但通过分析可能从截获的密文中推断出原来的明文或密钥,这一过程称为密码分析(Cryptanalysis)。从事这一工作的人称为密码分析员(Cryptanalyst)。如前所述,研究如何从密文推演出明文、密钥或解密算法的学问称为密码分析学。对一个保密系统采取窃听来截获密文进行分析的这类攻击称为被动攻击(Passive Attack)。现代信息系统还可能遭受另一类主动攻击(ActiveAttack),此类攻击是指非法入侵者(Tamper)、攻击者(Attacker)或黑客(Hacker)主动窜扰信息系统,采用删除增添重放伪造等窜改手段向系统注入假消息,达到利己害人的目的。这是现代信息系统中更为棘手的问题。

单钥密码体制

单钥密码体制(One-key Cryptosystem)的加密密钥和解密密钥相同,因此又称为对称密码体制(Symmetric Cryptosystem)、传统密码体制(Conventional Cryptosystem)或秘密密钥密码体制(Secret-key Cryptosystem)。当 Alice 和 Bob 进行保密通信时,双方必须采用相同的密钥 $k$ 对明文消息 $m$ 进行加密和对密文 $c$ 解密。然而,采用单钥密码体制进行保密通信时,必须在双方开始通信之前,将密钥 $k$ 安全地送达通信双方。在双钥密码体制发明之前,这项密钥传递的工作只能由信使来完成。一旦信使叛变,就会造成泄密。因此,单钥密码体制最大的问题是密钥的分发问题。

双钥密码体制

1976 年,Diffie 和 Hellman 首先提出了双钥密码体制(Two-key Cryptosystem)的思想。与单钥密码体制不同,采用双钥体制的每个用户都有一对选定的密钥:一个是可以公开的,称为公钥,以 $pk$ 表示,公钥可以像电话号码一样进行注册公布;另一个则是秘密的,称为私钥,以 $sk$ 表示,私钥必须要严格保密。因此,双钥体制又称为双钥体制。当 Alice 向 Bob 传送加密信息时,她必须用 Bob 的公钥加密,而 Bob 要用自己的私钥对密文解密,因此双钥体制也称为公钥密码体制( Public-key Cryptosystem)或非对称密码体制(Asymmetric Cryptosystem)。
双钥密码体制的主要特点是将加密和解密能力分开,因而可以实现多个用户加密的消息只能由一个用户解读,或只能由一个用户加密消息而使多个用户可以解读。前者可用于公共网络中实现保密通信,而后者可用于认证系统中对消息进行数字签名。

密码分析

密码分析学是研究分析解密规律的科学。密钥分析的实质就是在攻击者不知道密钥的情况下,对所截获的密文或明-密文对采用各种不同的密码分析方法试图恢复出明文或密钥。

密码的安全性有两种:一种是理论上绝对不可破译的密码,我们称其有理论上的安全性(Theoretical Security)。这种理论上安全的密码只有一种,就是前面曾介绍过的“一次一密”密码体制。由于“一次一密”密码要求加密密钥永不重复,存在密钥管理的困难性,因此“一次一密”密码在实际工作中不会采用。另一种密码具有实际上的安全性密码(Practical Security),或者称为计算上的安全性(Computational Security)。对于这种密码,只要给攻击者足够的时间和存储资源,都是可以破译的。

攻击类型

唯密文破译(Ciphertext-Only Attacks)

分析者从仅知道的截获密文进行分析,试图得出明文或密钥。攻击者手中除了截获的密文外,没有其他任何辅助信息。唯密文攻击是最常见的一种密码分析类型,也是难度最大的一种。

已知明文破译(Known-Plaintext Attacks)

分析者除了有截获的密文外,还有一些(通过各种手段得到的)已知的明文-密文对,试图从中得出明文或密钥。举例来看,如果是遵从通信协议的对话,由于协议中使用固定的关键字,如 login ,password 等,通过分析可以确定这关键字对应的密文。如果传输的是法律文件、单位通知等类型的公文,由于大部分公文有固定的格式和一些约定的文字,在截获的公文较多的条件下,可以推测出一些文字、词组对应的密文。

选择明文破译(Chosen-Plaintext Attacks)

分析者可以选定任何明文-密文对进行攻击,以确定未知的密钥。攻击者知道加密算法,同时能够选择明文并得到相应明文所对应的密文。这是比较常见的一种密码分析类型。例如,攻击者截获了有价值的密文,并获取了加密使用设备,向设备中输入任意明文可以得到对应的密文,以此为基础,攻击者尝试对有价值的密文进行破解。选择明文攻击常常被用于破解采用双钥密码系统加密的信息内容。

选择密文攻击(Chosen-Ciphertext Attack)

分析者可以利用解密机,按他所选的密文解密出相应的明文。双钥体制下,类似于选择明文攻击,他可以得到任意多的密文对密码进行分析。攻击者知道加密算法,同时可以选择密文并得到对应的明文。采用选择密文攻击这种攻击方式,攻击者的攻击目标通常是加密过程使用的密钥。基于双钥密码系统的数字签名,容易受到这种类型的攻击。

攻击方法

穷举攻击法

穷举破译法又称为强力攻击法(Brute-Force Attack Method),它是对截收的密报依次用各个可能的密钥试译,直至得到有意义的明文;或在密钥不变的情况下,对所有可能的明文加密直到所生产的密文与所截获的密报一致为止,此法又称为完全试凑法(Complete trial-and-error Method)。原则上,只要攻击者有足够多的计算时间和存储容量,穷举法总是可以成功的。但在实际工作中,任何一种能达到安全要求的实用密码都会
设计得使这一攻击方法在实际上不可行。

数学攻击法

所谓数学攻击,是指密码分析者针对加解密算法所采用的数学变换和某些密码字特性,通过数学求解的方法来获得明文或密钥。大部分现代密码系统以数字难题作为理论基础。数学分析法是指攻击者针对密码系统的数学基础和密码学特性,利用一些已知量,如一些明文和密文的对应关系,通过数学求解破译密钥等未知量的方法。对于基于数学难题的密码系统,数学分析法是一种重要的破解手段。
另一种数学攻击方法称为分析破译法。分析破译法是最早使用的一种数学分析攻击,在破译古典密码和二战时期各参战国使用的机械密码中发挥了很大作用。分析破译法又可以分为确定性分析法和统计性分析法两类。
确定性分析法是利用一个或几个已知量(例如已知密文或明文-密文对)用数学关系式表示出所求未知量(如密钥等)。已知量和未知量的关系视加密和解密算法而定,寻求这种关系是确定性分析法的关键步骤。
统计性分析法是利用明文的已知统计规律进行破译的方法。密码破译者对截收的密文进行统计分析,总结出其间的统计规律,并与明文的统计规律进行对照比较,从中提取出明文和密文之间的对应或变换信息。

物理攻击

所谓物理攻击,是指攻击者利用密码系统或密码芯片的物理特性,通过对系统或芯片运行过程中所产生的一些物理量进行物理和数学分析。物理攻击之所以可以得逞,主要是因为密码算法在硬件系统上运行时,所用的集成电路芯片的管脚电平是可以实时监测到的,而且存在一定的电磁辐射和泄露,也可能产生密码算法运行故障。此类信息称为侧信道信息,基于侧信道信息的密码攻击称为侧信道攻击侧信道分析
侧信道攻击技术能够通过物理信道直接获得密码运算的中间信息,也能够分段恢复较长的密钥,因而它比传统密码分析更容易攻击实际密码系统。目前国际主流的密码产品测评机构均把侧信道攻击的防护能力作为衡量设备或芯片安全性的主要指标,但产品即使取得了权威的安全认证,仍然可能会被侧信道攻击攻破。
狭义上讲,侧信道攻击特指针对密码算法的计时攻击、能量攻击、电磁攻击、故障攻击,缓存攻击等非侵入式攻击。但广义上讲,针对任何安全设备的侵入式、半侵入式、非侵入式攻击,这类“旁门左道”的攻击均属于侧信道攻击范畴。

密码学理论基础

(Todo)

常用密码算法

序列密码

序列密码又称为流密码,是一种对称密码体系,它是对“一次一密”的一种效仿。“一次一密”密钥较长,实用性较差,于是人们便仿照“一次一密”的思路,通过利用较短的种子密钥来生成较长的密钥序列,来实现类似于“一次一密”的加密,并且达到较好的可用性。
序列密码的加密工作过程如图所示,已知明文序列,算法的关键部分是密钥流的生成。密钥流由密钥流发生器 $f$ 生成,可定义为 $z_{i}=f\left(k,\sigma_{i}\right)$ 的形式。其中,$\sigma_{i}$ 是加密器中存储器(记忆元件)在 $i$ 时刻的状态,$k$ 为种子密钥。密钥流和明文流进行异或运算,即输出密文流,解密过程同理。
序列密码具有实现简单、低错误传播等优点,适用于军事、外交等机密机构,能为保障国家信息安全发挥重要作用。

分组密码

不同于序列密码,另一种基于单密钥的对称加密体制是分组密码。分组密码是将明文消息编码后的序列划分成长度为 $n$ 的分组,通过密钥和算法对其加密运算,输出等长的密文分组。
不同的分组密码具有不同的结构,常见的有代替—置换网络、Feistel 网络等结构。代替-置换网络结构由混淆和扩散两个部分组成,混淆是将密文与密钥之间的统计关系变得尽可能复杂,使得对手即使获取了关于密文的一些统计特性,也无法推测密钥。扩散是让明文中的每一位影响密文中的许多位,或者说让密文中的每一位受明文中的许多位的影响。这样可以隐蔽明文的统计特性。分组密码的行为应当看起来是一个随机置换,重复使用混淆—扩散这一过程,就可以让明文 $1$ 比特的变化影响到全部密文,这也是随机置换所期望的形式。设计代换-置换网络时,只要选择 $S$ 盒、混合置换和密钥编排的时候足够谨慎,它就是构造伪随机置换的一个良好选择。

公钥密码

公钥密码体制的思想是 1976 年 Diffie 和 Hellman 在他们的论文“密码学的新方向”一文中首次提出的。其基本思路是:公钥密码算法加密和解密使用不同的密钥,其中,一个密钥是公开的,称为公开密钥,简称公钥,用于加密或者签名验证;另一个密钥是用户专有的,因而是保密的,称为私钥,用于解密或者签名。公钥密码算法的重要特性是已知密码算法和加密密钥,求解解密密钥在计算上不可行。这个特性的本质是一个单向陷门函数,定义如下:
设 $f$ 是一个函数,$t$ 是与 $f$ 有关的一个参数。给定任意的 $x$,则计算 $y=f_{t}(x)$ 容易。若参数 $t$ 未知时,则 $f$ 的逆函数是难解的;但当参数 $t$ 已知时,$f$ 的逆函数是容易求解的。
目前已有多种公钥密码算法,典型的有基于大整数分解的 RSA 算法及其变种 Rabin 算法,基于离散对数问题的 ElGamal 密码体制和基于椭圆曲线离散对数问题的椭圆曲线密码体制(Elliptic Curve Cryptography, ECC)。

国产密码

身份基公钥密码

身份基公钥密码(Identity-Based Cryptograph, IBC)是一种公钥密码体制,有效简化了公钥基础设施(Public Key Infrastructure, PKI)中证书权威(Certificate Authority, CA)对用户证书管理带来的复杂密钥管理问题。由 RSA 加密系统发明者之一 Shamir 于 1984 年首次提出。在身份基公钥密码体制中,Shamir 建议使用能唯一标识用户身份的信息作为公钥,例如电话号码或 E-mail 地址等,无须 CA 分发数字证书进行绑定,克服了传统公钥密码体系中管理用户证书带来的弊端。

身份基加密

一个身份基加密方案包含 4 个算法:

  • 系统建立算法:PKG 生成系统公开参数和主密钥。
  • 密钥提取算法:用户将自己身份 ID 提交给 PKG,PKG 生成 ID 对应的私钥
  • 加密算法:利用用户身份 ID 加密消息,生成加密密文。
  • 解密算法:利用身份 ID 对应的私钥解密密文,得到明文消息。

身份基签名

一个身份基签名方案包含 4 个算法:

  • 系统建立算法:PKG 生成系统公开参数和主密钥。
  • 密钥提取算法:用户将自己身份 ID 提交给 PKG,PKG 生成用户 ID 对应的私钥。
  • 签名算法:给定用户身份 ID 的私钥和消息,生成对应消息的签名。
  • 验证算法:给定用户身份 ID、签名和消息,验证是否为正确的签名。

身份基签名方案扩展了身份基公钥密码体制,但一般的身份基签名方案与传统的公钥签名方案相比并没有非常明显的优点,其主要原因在于传统公钥签名本身也同样能实现基于身份签名的功能。

身份基公钥密码的优缺点

身份基公钥密码与基于 PKI 的密码都属于公钥密码体制,身份基公钥密码体制与传统的公钥密码体制相比,存在以下优缺点:

  • 无需公钥证书,用户身份作为唯一识别其身份的公钥,加密或签名验证不需要知道除身份外的其他信息。
  • 无需证书机构,存在可信第三方私钥生成中心(PKG)向用户提供服务。用户向 PKG 提交自己的身份 ID,PKG 生成并颁发 ID 的私钥。与 PKI 机制相比,PKG 无须处理第三方的请求,降低了加密的开销和基础设施要求。
  • 密钥托管是身份基公钥密码的一个缺点。私钥生成过程中,用户将身份 ID 提交给 PKG,PKG 生成并颁发用户 ID 的私钥。恶意的 PKG 可能存储用户私钥的副本,使其有能力解密任何一个用户发送给用户 ID 的密文或伪造用户 ID 的数字签名。

属性基公钥密码

在传统的 IBE 体制中,发送方在加密消息前必须要获悉接收方的身份信息(公钥),用接收方的公钥对消息进行加密,接收方用自己的私钥解密。通信过程是一对一的,然而现实世界中更多的是一对多的通信模式。尽管可以通过多次的一对一模式来实现多对一通信模式,但是当接收方人数很多时,这种方法无疑非常低效。
属性基公钥密码(Attribute-Based Cryptography, ABC)是在身份基公钥密码的基础上发展起来的。2005 年,Sahai 和 Waters 提出的模糊身份基加密(Fuzzy Identity-BasedEncryption)中,首次引入了属性基加密(Attribute-Based Encryption, ABE)的概念。作为身份基密码体制的一种扩展,属性基密码将代表用户身份的字符串由一系列描述用户特征的属性来代替,例如,工作单位、职位、性别等。用户的公私钥均与属性相关。

(Todo)

同态密码

同态加密(Homomorphic Encryption),是一种特殊的加密方法,它允许用户对加密数据进行某些类型的计算,而无需解密数据,从而得到与对原始数据进行相同计算相同的结果。这种特性对于保护隐私和安全至关重要,特别是在云计算和大数据时代,用户可以委托第三方对加密数据进行处理,而不必担心数据泄露问题。

优点:

  • 实现无密钥方对密文的计算处理,密文计算无须经过密钥方
  • 可以减少通信代价
  • 可以避免每一个密文解密后再计算而花费高昂的计算代价
  • 对密文计算后解密的结果与明文进行同样运算的结果一致,保证了运算的正确性

缺点:

  • 同态密码技术只能实现单比特加密,效率较低
  • 大多数同态密码技术基于未论证的困难性假设,寻找可论证的困难问题依然是个摆在密码工作者面前的难题
  • 同态密码技术需要额外的消除噪音算法,依然不是自然同态,如何设计一个具有自然同态性的全同态加密方案依然是一个开放问题

抗量子密码

(Todo)

轻量级密码

(Todo)

密码学主要研究方向

  • 密码理论是解决密码编码、密码分析的基本理论,主要研究密码基础理论,对称密码设计与分析、公钥密码设计与分析、密码协议设计与分析和新型密码设计与分析。
  • 密码工程是密码编码、密码分析、密码协议的工程化与应用技术,本方向主要研究密码芯片设计,密码模块设计,密码技术应用,以及面向工程的攻击和攻击工程等问题。
  • 密码安全防护主要研究密码系统安全防护、抗攻击安全防护和密码系统测评,以及安全防护攻击技术与实现等方面。
  • 量子密码主要研究基于量子物理特性的密码设计与分析方法,主要包括量子计算、量子密钥分配、量子密码协议等多个研究方向。
  • 密码管理是在现代科学管理理论指导下密码领域的特殊管理实践活动,涵盖宏观层次和微观层次.基础研究与应用研究,主要包括密码管理理论与方法、密码管理工程与技术、密码管理政策与法治等研究方向。

习题参考解答

1.古典密码分哪些种类?哪些古典密码采用了移位代换?哪些古典密码采用了置换变换?通过查找资料,请尽可能多地列出来。

2.请比较恺撒密码、维吉尼亚密码、普莱费尔密码的异同点。

3.请比较古典密码的置换密码与移位代换密码之间的区别。

4.在何种情况下弗纳姆密码就变成了一次一密密码?

5.为什么说一次一密在理论上安全的?一次一密在实际应用中存在什么问题?

6.简述一个保密通信系统的数学模型由哪几部分组成。

7.信息隐藏和信息保密有何本质区别?

8.Shannon 所提出的设计强密码的思想主要包含哪两个重要的变换?

9.随着新技术的发展,密码学面临哪些新的安全挑战?

10.保密学(Cryptology)是研究信息系统安全保密的科学,它包含哪两个重要的研究分支?

11.密码体制从原理上可分为哪两大类?这两类密码体制在密钥的使用上有何不同?

12.密码分析学是研究分析解密规律的科学,密码攻击有哪些方法?

13.在密码学的专业课程学习中会用到哪些数学理论基础知识?

14.请按照密码算法的类型,列出你所知道的目前国内外知名的密码算法。

15.通过查资料,深入了解身份基密码、属性基密码、同态密码、抗量子密码、轻量级密码等最新研究进展。

16.密码学科有哪些主要研究方向?通过本书内容的学习,请读者思考一下对哪个研究方向最感兴趣。

第三章 网络安全

威胁的基本概念

  • 安全威胁,是指某个人、物,事件或概念对某―资源的保密性、完整性、可用性或合法使用所造成的危险。攻击就是某个安全威胁的具体实施。
  • 防护措施,是指保护资源免受威胁的一些物理的控制、机制、策略和过程。脆弱性是指在实施防护措施中或缺少防护措施时系统所具有的弱点。
  • 风险,是对某个已知的、可能引发某种成功攻击的脆弱性的代价的测度。当某个脆弱的资源的价值越高且成功攻击的概率越大时,风险就越高;反之,当某个脆弱资源的价值越低且成功攻击的概率越小时,风险就越低。风险分析能够提供定量的方法,以确定是否应保证在防护措施方面的资金投入。
  • 安全威胁有时可以分为故意(如黑客渗透)和偶然(如信息被发往错误的地方)两类。故意的威胁又可以进一步分为被动攻击主动攻击
    • 被动攻击只对信息进行监听(如搭线窃听),而不对其进行修改。
    • 主动攻击却对信息进行故意的修改(如改动某次金融会话过程中货币的数量)。

威胁的来源

基本安全威胁

在信息系统中,存在以下 4 种基本安全威胁:

  • 信息泄露:信息被泄露或透露给某个非授权的人或实体。这种威胁来自诸如窃听、搭线或其他更加错综复杂的信息探测攻击。
  • 完整性破坏:数据的一致性通过非授权的增删、修改或破坏而受到损坏。
  • 拒绝服务:对信息或资源的访问被无条件地阻止。这可能由以下攻击所致:攻击者通过对系统进行非法的,根本无法成功的访问尝试使系统产生过量的负荷,从而导致系统的资源在合法用户看来是不可使用的。拒绝服务也可能是因为系统在物理上或逻辑上受到破坏而中断服务。
  • 非法使用:某一资源被某个非授权的人或以某种非授权的方式使用。例如,侵入某个计算机系统的攻击者会利用此系统作为盗用电信服务的基点,或者作为侵入其他系统的“桥头堡”。

主要的可实现威胁

在安全威胁中,主要的可实现威胁应该引起高度关注,因为这类威胁一旦成功实施,就会直接导致其他任何威胁的实施。主要的可实现威胁包括渗入威胁植入威胁

渗入威胁

主要的渗入威胁有如下几种:

  • 假冒。某个实体(人或系统)假装成另外一个不同的实体。这是突破某一安全防线最常用的方法。这个非授权的实体提示某个防线的守卫者,使其相信它是一个合法实体,此后便攫取了此合法用户的权利和特权。黑客大多采取这种假冒攻击方式来实施攻击。
  • 旁路控制。为了获得非授权的权利和特权,某个攻击者会发掘系统的缺陷和安全漏洞。例如,攻击者通过各种手段发现原本应保密但又暴露出来的一些系统“特征”。攻击者可以绕过防线守卫者侵入系统内部。
  • 授权侵犯。一个授权以特定目的使用某个系统或资源的人,却将其权限用于其他非授权的目的。这种攻击的发起者往往属于系统内的某个合法的用户,因此这种攻击又称为“内部攻击”。

植入威胁

主要的植入类型的威胁有如下几种:

  • 特洛伊木马(Trojan Horse)。软件中含有一个不易觉察的或无害的程序段,当被执行时,它会破坏用户的安全性。例如,一个表面上具有合法目的的应用程序软件,如文本编辑软件,它还具有一个暗藏的目的,就是将用户的文件复制到一个隐藏的秘密文件中,这种应用程序就称为特洛伊木马。此后,植入特洛伊木马的那个攻击者就可以阅读到该用户的文件。
  • 陷门(Trapdoor)。在某个系统或其部件中设置“机关”,使在提供特定的输入数据时,允许违反安全策略。例如,如果在一个用户登录子系统上设有陷门,当攻击者输入一个特别的用户身份号时,就可以绕过通常的口令检测。

潜在威胁

在某个特定的环境中,如果对任何一种基本威胁或主要的可实现的威胁进行分析,就能够发现某些特定的潜在威胁,而任意一种潜在的威胁都可能导致一些更基本的威胁发生。例如,在对信息泄露这种基本威胁进行分析时,有可能找出以下几种潜在的威胁:

  • 窃听(Eavesdropping)
  • 流量分析(Traffic Analysis)
  • 操作人员的不慎所导致的信息泄露
  • 媒体废弃物所导致的信息泄露

典型的网络安全威胁

  • 授权侵犯:一个被授权以特定目的使用系统的人,却将此系统用于其他非授权的目的
  • 旁路控制:攻击者发掘系统的安全缺陷或安全脆弱性,以绕过访问控制措施
  • 拒绝服务:对信息或其他资源的合法访问被无条件地拒绝
  • 窃听攻击:信息从被监视的通信过程中泄露出去
  • 电磁/射频截获:信息从电子或机电设备所发出的无线频率或其他电磁场辐射中被提取出来
  • 非法使用:资源被某个非授权的人或以非授权的方式使用
  • 人员疏忽:一个被授权的人为了金钱等利益或由于粗心,将信息泄露给非授权的人
  • 信息泄露:信息被泄露或暴露给某个非授权的人
  • 完整性侵犯:数据的一致性由于非授权的增删、修改或破坏而受到损害
  • 截获/修改:某一通信数据在传输过程中被改变、删除或替换
  • 假冒攻击:一个实体(人或系统)假装成另一个不同的实体
  • 媒体废弃物:信息从被废弃的磁带或打印的废纸中泄露出去
  • 物理入侵:入侵者通过绕过物理控制(如防盗门)而获得对系统的访问
  • 消息重发:对所截获的某次合法通信数据备份,出于非法的目的而重新发送该数据
  • 业务否认:参与某次通信交换的一方,事后错误地否认曾经发生过此次信息交换
  • 资源耗尽:某一资源(如访问接口)被故意地超负荷使用,导致其他用户服务中断
  • 服务欺骗:某一伪造的系统或部件欺骗合法的用户或系统,自愿放弃敏感的信息
  • 窃取:某一安全攸关的物品被盗,例如令牌或身份卡
  • 流量分析:通过对通信流量的模式进行观察,机密信息有可能泄露给非授权的实体
  • 陷门:将某一“特征”嵌入某个系统或其部件中,当输入特定数据时,允许违反安全策略
  • 特洛伊木马:一个不易察觉或无害程序段的软件,当其被运行时,就会破坏用户的安全性

安全措施

  • 一个安全系统的强度与其最弱链路的强度相同。
  • 安全防护措施:
    • 密码技术
    • 物理安全
    • 人员安全
    • 管理安全
    • 媒体安全
    • 辐射安全
    • 生命周期控制

攻击的分类

被动攻击

被动攻击的特性是对所传输的信息进行窃听和监测。攻击者的目标是获得线路上所传输的信息。

  • 被动攻击由于不涉及对数据的更改,所以很难被察觉
  • 通过采用加密措施,完全有可能阻止这种攻击
  • 处理被动攻击的重点是预防,而不是检测

主动攻击

主动攻击是指恶意篡改数据流或伪造数据流等攻击行为,分成4类:

  • 伪装攻击(Impersonation Attack):某个实体假装成其他实体,对目标发起攻击
  • 重放攻击(Replay Attack):指攻击者为了达到某种目的,将获得的信息再次发送,以在非授权的情况下进行传输
  • 消息篡改(Message Modification):指攻击者对所获得的合法消息中的一部分进行修改或延迟消息的传输,以达到其非授权的目的
  • 拒绝服务(Denial of Service)攻击:指阻止或禁止人们正常使用网络服务或管理通信设备。拒绝服务的另一种形式是破坏某个网络,使其瘫痪,或者使其过载以降低性能。

  • 被动攻击虽然难以检测,但采取某些安全防护措施就可以有效阻止;主动攻击虽然易于检测,但却难以阻止。

  • 对付主动攻击的重点应当放在如何检测并发现上,并采取相应的应急响应措施,使系统从故障状态恢复到正常运行。

网络攻击的常见形式

  • 口令窃取
  • 欺骗攻击
  • 缺陷和后门攻击
  • 认证失效
  • 协议缺陷
  • 信息泄露
  • 指数攻击——病毒和蠕虫
  • 拒绝服务攻击

安全体系架构

(Todo)

网络安全模型

一个网络安全模型通常由 6 个功能实体组成,它们分别是消息的发送方(信源)、消息的接收方(信宿)、安全变换、信息通道、可信的第三方和攻击者。

网络安全模型说明,设计安全服务应包含以下4个方面内容:

  • 设计一个算法,它执行与安全相关的变换,该算法应是攻击者无法攻破的。
  • 产生算法所使用的秘密信息。
  • 设计分配和共享秘密信息的方法。
  • 指明通信双方使用的协议,该协议利用安全算法和秘密信息实现安全服务。

防火墙

防火墙是由软件和硬件组成的系统,它处于安全的网络(通常是内部局域网)和不安全的网络(通常是 Internet,但不局限于 Internet)之间,根据由系统管理员设置的访问控制规则,对数据流进行过滤。
防火墙置于两个网络之间,因此从一个网络到另一个网络的所有数据流都要流经防火墙。根据安全策略,防火墙对数据流的处理方式有3种:

  • 允许数据流通过
  • 拒绝数据流通过
  • 将这些数据流丢弃

当数据流被拒绝时,防火墙要向发送者回复一条消息,提示发送者该数据流已被拒绝。当数据流被丢弃时,防火墙不会对这些数据包进行任何处理,也不会向发送者发送任何提示信息。丢弃数据包的做法加长了网络扫描所花费的时间,发送者只能等待回应直至通信超时。

由于防火墙是放置在两个网络之间的网络安全设备,因此以下要求必须得到满足:

  • 所有进出网络的数据流都必须经过防火墙
  • 只允许经过授权的数据流通过防火墙
  • 防火墙自身对入侵是免疫的

网络管理员在配置防火墙时所采用的默认安全策略是:凡是没有明确“允许的”服务,一律都是“禁止的”。

一般来说,防火墙由几个部分构成。

  • 过滤器用来阻断某些类型的数据传输
  • 网关则由一台或几台机器构成,用来提供中继服务,以补偿过滤器带来的影响
  • 把网关所在的网络称为“非军事区”(Demilitarized Zone, DMZ)
  • 网关通过内部过滤器与其他内部主机进行开放的通信
  • 一般来说,外部过滤器用来保护网关免受侵害,而内部过滤器用来防备因网关被攻破而造成恶果
  • 通常把暴露在外的网关主机称为堡垒主机

根据防火墙在网络协议栈中的过滤层次不同,通常把防火墙分为3种:包过滤防火墙电路级网关防火墙应用级网关防火墙。每种防火墙的特性均由它所控制的协议层决定。

防火墙对开放系统互连(Open System Interconnection, OSI)模型中各层协议所产生的信息流进行检查。防火墙工作于 OSI 模型的层次越高,其检查数据包中的信息就越多,因此防火墙所消耗的处理器工作周期就越长。防火墙检查的数据包越靠近 OSI 模型的上层,该防火墙结构所提供的安全保护等级就越高,因为在高层上能够获得更多的信息用于安全决策。

静态包过滤防火墙

静态包过滤防火墙主要实现如下 3 个主要功能:

  • 接收每个到达的数据包。
  • 对数据包采用过滤规则,对数据包的 IP 头和传输字段内容进行检查。如果数据包的头信息与一组规则匹配,则根据该规则确定是转发还是丢弃该数据包。
  • 如果没有规则与数据包头信息匹配,则对数据包施加默认规则。默认规则可以丢弃或接收所有数据包。默认丢弃数据包规则更严格,而默认接收数据包规则更开放。

通常,防火墙首先默认丢弃所有数据包,然后再逐个执行过滤规则,以加强对数据包的过滤。
静态包过滤防火墙是最原始的防火墙,静态数据包过滤发生在网络层,也就是 OSI 模型的第 3 层。

对于静态包过滤防火墙来说,决定接收还是拒绝一个数据包,取决于对数据包中IP头和协议头等特定域的检查和判定。这些特定域包括:

  • 数据源地址
  • 目的地址
  • 应用或协议
  • 源端口号
  • 目的端口号

在每个包过滤器上,安全管理员要根据企业的安全策略定义一个表单,这个表单也被称为访问控制规则库。该规则库包含许多规则,用来指示防火墙应该拒绝还是接收该数据包。在转发某个数据包之前,包过滤器防火墙将 IP 头和 TCP 头中的特定域与规则库中的规则逐条进行比较。防火墙按照一定的次序扫描规则库,直到包过滤器发现一个特定域满足包过滤规则的特定要求时,才对数据包做出“接收”或“丢弃”的判决。如果包过滤器没有发现一个规则与该数据包匹配,那么它将对其施加一个默认规则。该默认规则在防火墙的规则库中有明确的定义,一般情况下防火墙将不满足规则的数据包丢弃。

入侵检测系统

入侵检测系统(Intrusion Detection System, IDS)是一种用于检测网络或计算机系统中未授权或恶意活动的软件或硬件。它的主要目的是实时监控网络流量,分析数据包,以便发现可能的攻击行为或违反安全策略的行为。

分类

根据数据来源的不同,IDS 可以分为以下 3 种基本结构:

  • 基于网络的入侵检测系统(Network Intrusion Detection System, NIDS)。数据来源于网络上的数据流。NIDS 能够截获网络中的数据包,提取其特征并与知识库中已知的攻击签名相比较,从而达到检测目的。其优点是侦测速度快、隐蔽性好、不易受到攻击、对主机资源消耗少;缺点是有些攻击是由服务器的键盘发出的,不经过网络,因而无法识别,误报率较高。
  • 基于主机的入侵检测系统(Host Intrusion Detection System, HIDS)。数据来源于主机系统,通常是系统日志和审计记录。HIDS 通过对系统日志和审计记录的不断监控和分析来发现攻击后的误操作。优点是针对不同操作系统捕获应用层入侵,误报少;缺点是依赖于主机及其子系统,实时性差。HIDS 通常安装在被保护的主机上,主要对该主机的网络实时连接及系统审计日志进行分析和检查,在发现可疑行为和安全违规事件时,向管理员报警,以便采取措施。
  • 分布式入侵检测系统(Distributed Intrusion Detection System, DIDS)。这种系统能够同时分析来自主机系统审计日志和网络数据流,一般为分布式结构,由多个部件组成。DIDS 可以从多个主机获取数据,也可以从网络传输取得数据,克服了单一的 HIDS、NIDS 的不足。典型的 DIDS 采用控制台/探测器结构。NIDS 和 HIDS 作为探测器放置在网络的关键节点,并向中央控制台汇报情况。攻击日志定时传送到控制台,并保存到中央数据库中,新的攻击特征能及时发送到各个探测器上。每个探测器能够根据所在网络的实际需要配置不同的规则集。

根据入侵检测的策略,IDS 也可以分成以下 3 种类型:

  • 滥用检测(Misuse Detection):将收集到的信息与已知的网络入侵和系统误用模式数据库进行比较,从而发现违背安全策略的问题。该方法的优点是只须收集相关的数据集合,可显著减少系统负担,且技术已相当成熟。该方法存在的弱点是需要不断地升级以对付不断出现的黑客攻击手段,不能检测到从未出现过的黑客攻击手段。
  • 异常检测(Abnormal Detection):首先给系统对象(如用户、文件、目录和设备等)创建一个统计描述、统计正常使用时的一些测量属性(如访问次数、操作失败次数和延时等)。测量属性的平均值将被用来与网络、系统的行为进行比较,如果观察值在正常范围之外,就认为有入侵发生。其优点是可检测到未知的入侵和更加复杂的入侵。缺点是误报、漏报率高,且不适应用户正常行为的突然改变。
  • 完整性分析(Integrality Analysis):主要关注某个文件或对象是否被更改,这通常包括文件和目录的内容及属性,它在发现更改或特洛伊木马应用程序方面特别有效。其优点是只要成功的攻击导致了文件或其他对象的任何改变,它都能发现;缺点是一般以批处理方式实现,不易于实时响应。

基于网络的入侵检测系统主要有以下优点:

  • 拥有成本低。基于网络的 IDS 可以部署在一个或多个关键访问点来检测所有经过的网络通信。
  • 攻击者转移证据困难。基于网络的 IDS 使用活动的网络通信进行实时攻击检测,因此攻击者无法转移证据,被检测系统捕获的数据不仅包括攻击方法,而且包括对识别和指控入侵者十分有用的信息。
  • 实时检测和响应。一旦发生恶意访问或攻击,基于网络的 IDS 检测即可随时发现,并能够很快地做出反应。
  • 能够检测未成功的攻击企图。置于防火墙外部的 NIDS 可以检测到旨在利用位于防火墙后面的服务器等资源的攻击,尽管防火墙本身可能会拒绝这些攻击企图。
  • 操作系统独立。基于网络的 IDS 并不依赖于将主机的操作系统作为检测资源,而基于主机的系统需要特定的操作系统才能发挥作用。

主要功能

  • 网络流量的跟踪与分析功能。跟踪用户进出网络的所有活动,实时检测并分析用户在系统中的活动状态;实时统计网络流量,检测拒绝服务攻击等异常行为。
  • 已知攻击特征的识别功能。识别特定类型的攻击,并向控制台报警,为防御提供依据。根据定制的条件过滤重复警报事件,减轻传输与响应的压力
  • 异常行为的分析、统计与响应功能。分析系统的异常行为模式,统计异常行为,并对异常行为做出响应。
  • 特征库的在线和离线升级功能。提供入侵检测规则在线和离线升级,实时更新入侵特征库,不断提高 IDS 的入侵检测能力。
  • 数据文件的完整性检查功能。检查关键数据文件的完整性,识别并报告数据文件的改动情况。
  • 自定义的响应功能。定制实时响应策略;根据用户定义,经过系统过滤,对警报事件及时响应。
  • 系统漏洞的预报警功能。对未发现的系统漏洞特征进行预报警。
  • IDS 探测器集中管理功能。通过控制台收集探测器的状态和报警信息,控制各个探测器的行为。

系统模型

  • 数据收集器(又称探测器)。主要负责收集数据。探测器的输入数据流包括任何可能包含入侵行为线索的系统数据,如各种网络协议数据包、系统日志文件和系统调用记录等。探测器将这些数据收集起来,然后再发送到检测器进行处理。
  • 检测器(又称分析器或检测引擎)。负责分析和检测入侵的任务,并向控制器发出警报信号。
  • 知识库。为检测器和控制器提供必需的数据信息支持。这些信息包括:用户历史活动档案或检测规则集合等。
  • 控制器。根据从检测器发来的警报信号,人工或自动地对入侵行为做出响应。

通用入侵检测架构

通用入侵检测架构(Common Intrusion Detection Framework, CIDF)阐述了入侵检测系统的通用模型。它将一个入侵检测系统分为以下组件:

  • 事件产生器(Event Generators)
  • 事件分析器(Event Analyzers)
  • 响应单元(Response Units)
  • 事件数据库(Event Databases)

CIDF 将入侵检测系统需要分析的数据统称为事件(Event),它可以是基于网络的入侵检测系统中的网络数据包,也可以是基于主机的入侵检测系统从系统日志等其他途径得到的信息。它也对各部件之间的信息传递格式,通信方法和标准 API 进行了标准化。

一个入侵检测系统至少包含事件提取、入侵分析、入侵响应和远程管理四部分功能:

  • 事件提取功能负责提取与被保护系统相关的运行数据或记录,并负责对数据进行简单的过滤。
  • 入侵分析的任务就是在提取到的运行数据中找出入侵的痕迹,区分授权的正常访问行为和非授权的不正常访问行为,分析入侵行为并对入侵者进行定位。
  • 入侵响应功能在分析出入侵行为后被触发,根据入侵行为产生响应。
  • 由于单个入侵检测系统的检测能力和检测范围有限,入侵检测系统一般采用分布监视,集中管理的结构,多个检测单元运行于网络中的各个网段或系统上,通过远程管理功能在一台管理站上实现统一的管理和监控。

虚拟专网

虚拟专网(Virtual Private Network, VPN),是指将物理上分布在不同地点的网络通过公用网络连接而构成逻辑上的虚拟子网。它采用认证、访问控制、机密性、数据完整性等安全机制在公用网络上构建专用网络,使得数据通过安全的“加密管道”在公用网络中传播,这里的公用网通常指 Internet。
VPN 技术实现了内部网信息在公用信息网中的传输,就如同在茫茫的广域网中为用户拉出一条专线。对于用户来讲,公用网络起到了“虚拟”的效果,虽然他们身处世界的不同地方,但感觉仿佛是在同一个局域网里工作。VPN 对每个使用者来说也是“专用”的。也就是说,VPN 根据使用者的身份和权限,直接将其接入 VPN,非法的用户不能接入 VPN 并使用其服务。

特点

  • 费用低。由于企业使用 Internet 进行数据传输,相对于租用专线来说,费用极为低廉,所以 VPN 的出现使企业通过 Internet 既安全又经济地传输机密信息成为可能。
  • 安全保障。虽然实现 VPN 的技术和方式很多,但所有的 VPN 均应保证通过公用网络平台所传输数据的专用性和安全性。在非面向连接的公用 IP 网络上建立一个逻辑的、点对点的连接,称为建立了一个隧道。经由隧道传输的数据采用加密技术进行加密,以保证数据仅被指定的发送者和接收者知道,从而保证了数据的专用性和安全性。
  • 服务质量保证(Quality of Service, QoS)。VPN 应当能够为企业数据提供不同等级的服务质量保证。不同的用户和业务对服务质量(QoS)保证的要求差别较大。例如,对于移动办公用户来说,网络能提供广泛的连接和覆盖性是保证 VPN 服务质量的一一个主要因素;而对于拥有众多分支机构的专线 VPN,则要求网络能提供良好的稳定性;其他一些应用(如视频等)则对网络提出了更明确的要求,如网络时延及误码率等。
  • 可扩充性和灵活性。VPN 必须能够支持通过内域网(Intranet)和外联网(Extranet)的任何类型的数据流、方便增加新的节点、支持多种类型的传输媒介,可以满足同时传输语音、图像和数据对高质量传输及带宽增加的需求。
  • 可管理性。从用户角度和运营商角度来看,对 VPN 进行管理和维护应该非常方便。在 VPN 管理方面,VPN 要求企业将其网络管理功能从局域网无缝地延伸到公用网,甚至是客户和合作伙伴处。虽然可以将一些次要的网络管理任务交给服务提供商去完成,企业自己仍需要完成许多网络管理任务。因此,VPN 管理系统是必不可少的。VPN 管理系统的主要功能包括安全管理、设备管理、配置管理、访问控制列表管理、QoS 管理等内容。

分类

按协议工作在 OSI 7 层模型的不同层上分类,可以分为:

  • 第 2 层数据链路层中的 PPTP VPN、L2TP VPN、MPLS VPN
  • 第 3 层网络层的IPSec VPN、GRE VPN
  • 位于传输层与应用层之间的 SSL VPN

根据访问方式的不同,VPN可分为两种类型:

  • 移动用户远程访问VPN连接
  • 网关-网关VPN连接

IPSec VPN 原理

IPSec 的工作原理类似于包过滤防火墙,可以把它看作包过滤防火墙的一种扩展。IPSec 通过查询安全策略数据库(Security Policy Database,SPD)决定如何对接收到的 IP 数据包进行处理。但是 IPSec 与包过滤防火墙不同,它对 IP 数据包的处理方法除了丢弃和直接转发(绕过 IPSec)外,还可以对数据包进行 IPSec 处理。正是这种新增添的处理方法,使 VPN 提供了比包过滤防火墙更高的安全性。

IPSec 既可以对 IP 数据包只进行加密或认证,也可以同时实施加密和认证。但无论是进行加密还是进行认证,IPSec 都有两种工作模式:传输模式、隧道模式。

采用传输模式时,IPSec 只对 IP 数据包的净荷进行加密或认证。此时,封装数据包继续使用原 IP 头部,只对 IP 头部的部分域进行修改,而 IPSec 协议头部插入到原 IP 头部和传输层头部之间。

采用隧道模式时,IPSec 对整个 IP 数据包进行加密或认证。此时,需要产生一个新的 IP 头,IPSec 头被放在新产生的 IP 头和原 IP 数据包之间,从而组成一个新的 IP 头。

TLS VPN 与 IPSec VPN 的性能比较

TLS VPN IPSec VPN
身份验证 单向身份验证
双向身份验证
数字证书
双向身份验证
数字证书
加密 强加密
基于Web浏览器
强加密
依靠执行
全程安全性 端到端安全
从客户到资源端全程加密
网络边缘到客户端
仅对从客户到VPN网关之间的通道加密
可访问性 适用于任何时间、任何地点访问 限制适用于已经定义好受控用户的访问
费用 低(无需任何附加客户端软件) 高(需要管理客户端软件)
安装 即插即用安装
无需任何附加的客户端软、硬件
通常需要长时间的配置
需要客户端软件或硬件
用户易使用性 对用户非常友好,使用非常熟悉的 Web 浏览器
无需终端用户的培训
对没有相应技术的用户比较困难
需要培训
支持的应用 基于 Web 的应用
文件共享
E-mail
所有基于IP的服务
用户 客户、合作伙伴用户、远程用户、供应商等 更适合在企业内部使用
可伸缩性 容易配置和扩展 在服务器端容易实现自由伸缩,在客户端比较困难
穿越防火墙 可以 不可以

计算机病毒

  • 从广义上讲,能够引起计算机故障、破坏计算机数据、影响计算机正常运行的指令或代码,均统称为计算机病毒(computer virus)。
  • 《中华人民共和国计算机信息系统安全保护条例》中的第二十八条规定:“计算机病毒,是指编制或者在计算机程序中插入的破坏计算机功能或者毁坏数据,影响计算机使用,并能自我复制的一组计算机指令或者程序代码。”

特点

计算机病毒的主要特点如下:

  • 破坏性。破坏性是计算机病毒的首要特征,不具有破坏行为的指令或代码不能称为计算机病毒。任何病毒只要侵入系统,都会对系统及应用程序产生不同程度的影响,轻者占用系统资源、降低计算机工作效率,重者窃取破坏数据、破坏正常程序,甚至导致系统崩溃。
  • 传染性。计算机病毒同自然界的生物病毒一样具有传染性。病毒作者为了最大限度地达到其目的,总会尽力使病毒传播到更多的计算机系统上。病毒通常会通过网络、移动存储介质等各种渠道,从已被感染的计算机扩散到未被感染的计算机中,感染型病毒会通过直接将自己植入正常文件的方式来进行传播。
  • 隐蔽性。计算机病毒通常没有任何可见的界面,为了最大限度地提高自己在被攻击的系统上的生命周期,会采用隐藏进程、文件等手段,千方百计地隐藏自己的行迹,以防止被发现、被删除。

分类

计算机病毒的一些主要类型:

  • 木马型病毒(Trojan)。其名称来自于古希腊“特洛伊木马”的典故,是指通过隐藏、伪装等手段,以正常程序的面貌欺骗用户,来达到传播、执行的计算机病毒。
  • 感染型病毒(Virus)。是指将病毒代码附加到被感染的宿主文件中的计算机病毒,其通过这种手段进行传播和获得运行权。
  • 蠕虫型病毒(Worm)。是指利用系统的漏洞、邮件、共享目录、可传输文件的软件、可移动存储介质等,进行自我传播的计算机病毒。
  • 后门型病毒(Backdoor)。是指在受感染系统中隐蔽运行,并接收远程的命令,可以进行远程控制的计算机病毒。
  • 恶意软件(Malware)。是指具有一定正常功能,但以病毒手段进行传播、隐藏和防删除的软件,也常被称为“流氓软件”。

计算机病毒检测原理

计算机病毒检测的基本原理:通过对文件、代码、行为等进行数据采样,然后将采样结果和基准进行匹配,再根据匹配结果去判定病毒。

  • 采样。所谓采样是指对检测目标按特定位置进行一定大小的数据采集。
  • 匹配。所谓匹配是指将采样的数据与规则进行比较,以判别当前目标。
  • 基准。所谓基准是指预先通过对已知病毒样本进行分析处理而制作的病毒特征数据库或病毒样本算法模型,通常称为“病毒库”。

计算机病毒的主流检测技术

  • 基于特征码的传统检测技术
    • 特征码查杀技术是病毒检测最早采用的技术,采样和匹配方式相对简单。其采样多为固定位置的二进制数据,在匹配上基本都采用精确匹配方式。特征码查杀方式的优点是技术简单、易于实现、查杀精准,缺点主要是反应速度慢(需用户更新病毒库)、无法查杀未知病毒,病毒库较大。
  • 基于行为的动态检测技术
    • 动态检测是指针对病毒动态行为进行检测的技术。这种“行为”一般是通过对病毒运行后的系统功能调用和参数抽象得出,如“读写指定文件或注册表项””启动进程”等。动态检测技术一般与反病毒的主动防御(基于系统 API HOOK)、沙箱等技术结合使用。动态检测的主要优点是对在文件上与反病毒检测进行对抗的病毒有更好的检测能力,同时具有查杀未知病毒的能力。
  • 基于云技术的云查杀技术
    • 云查杀技术是随着互联网的发展以及云存储、云计算等技术的发展而出现的。将这些云技术与原有的病毒检测技术结合应用,反病毒技术实现了一次较大的飞跃。同时,基于云查杀的诸多优点,反病毒也很好地应对了互联网环境下出现的病毒快速产生和传播的挑战。云查杀技术的基本原理是将“匹配”和“基准”放在云端进行,比较常见的一种实现方式是以文件哈希值为采样数据和基准,客户端获取文件哈希值,然后上传到云端进行比较并返回结果
  • 基于大数据处理与人工智能学习算法的智能查杀技术
    • 随着大数据与人工智能技术的发展以及病毒数量的海量增长,这些技术也被应用到病毒检测之中。通过应用人工智能学习算法,对已知海量病毒样本的学习,可以获取对病毒的算法模型,从而根据模型匹配已知与未知的病毒。这种基于人工智能学习算法的病毒检测方法相较于其他检测方法,在应对未知病毒上具有极大优势。

漏洞扫描技术

安全风险分类

按照 FAIR(Factor Analysis of Information Risk)方法,安全风险在一级层次可分解为价值资产脆弱性攻击威胁3个维度,这些维度的核心在于脆弱性即漏洞,整个风险管理围绕着漏洞展开,可以说没有漏洞就没有风险,风险量化的关键在于漏洞扫描和识别。

漏洞分类

漏洞按照被公布时间的不同阶段,可分为:

  • 1 Day 漏洞:被发现并且公布的最新漏洞;1 Day代表最新公布的,取决于发布路径和传播速度,实际上不一定是一天。
  • N Day 漏洞:被公布的历史漏洞;N Day 表示距离公布已经过了 N 天。
  • 0 Day 漏洞:未被公开的漏洞;0 是相对于 1 而言,实际上 0 Day 漏洞已经被发现了,只是没有公开,对公众仍然处于隐藏状态。

漏洞扫描定义

漏洞扫描作为一种网络安全防护技术,其目的是防患于未然。在安全风险被黑客发现和利用之前,由系统维护人员先行识别,对识别结果进行量化评定,依据结果对漏洞隐患实施有针对性的防护或修补,进而有效降低或清除系统(或应用)的安全风险。

影响扫描效果的因素

漏洞扫描即针对通用漏洞的检测,需要依据通用漏洞的形成原理和其造成的外部表现来判断。是否可以被检测,取决于形成漏洞的安全缺陷机制。并非所有的漏洞都可被准确无误地识别。漏洞扫描的具体实施效果一般依赖于如下几方面因素:

  • 漏洞 PoC(Proof of Concept)是否公开。
    • PoC 是通用漏洞存在的原理证明。漏洞标准组织收录漏洞时需要关联厂商核实提供。由于安全影响可能较大,标准组织公布漏洞后一般不会发布 PoC。外界得到的 PoC 是通过安全行业内的个人或组织非正式提供。代码形式的 PoC 中会存在一段二进制或其他格式的漏洞外部检测特征码,称为 payload。具有 PoC 甚至 payload 的漏洞,易于被外部精准识别。
  • 系统指纹信息采集准确度。
    • PoC 依赖于漏洞的形成机理,并非所有漏洞都具有 PoC,但是所有标准组织收录的通用漏洞都会记录漏洞存在的系统或应用类型和版本。一般系统或应用在修复特定漏洞后,会更新其版本号。因此只要具有标准漏洞库的数据,原则上只要识别出待检测目标系统或应用的类型、版本,就可判断相关的漏洞是否存在。
  • 漏洞 EXP(EXPloit)是否存在。
    • EXP 是指按照通用漏洞的缺陷原理,针对相应漏洞实例加以利用。EXP 不同于 PoC,PoC 重于检测和识别,而基于 EXP 可构建针对特定漏洞的攻击工具。从安全风险构成角度,具有 EXP 的漏洞往往风险程度极高,是黑客重点关注的对象。从漏洞扫描角度,有了 EXP,在漏洞被检出后,可以附加执行漏洞验证的环节,即通过对应的 EXP 进行漏洞利用和数据取证,从原理上核实漏洞的存在。但是 EXP 会使漏洞造成实质性的风险事件发生,具有高度的敏感性。

扫描器

随着信息领域技术的快速发展,各类漏洞标准组织收录的漏洞规模不断扩张,面对规模稍大一些的漏洞范围,使用传统手动方式逐个分析已不适合,因此各类漏洞检测仪器应运而生,这些仪器称为扫描器。扫描器以扫描任务的形式,封装检测目标空间,应用漏洞标准和范围,使用不同的检测技术手段,通过时间调度策略,最终结果以报表形式呈现,完成对扫描目标的漏洞风险评估。扫描器支持自动化方式执行大规模的漏洞识别,端到端检测业务和报表输出,提供结果的风险分析,支持升级漏洞库等功能。

类别划分

  • 黑盒扫描:即动态应用程序安全测试( Dynamic Application Security Testing, DAST),它整体上将扫描对象看成黑盒,不改变和深入其内部,仅从其外部正常工作流程中识别漏洞或者缺陷。
  • 交互式扫描:即交互式应用程序安全测试( Interactive Application Security Testing, IAST),它通过在被扫描目标内部植入扫描代理的方式,在扫描过程中与外部扫描设备实现互动,扫描设备通过改变输入参数触发对象的内部工作流程,执行模拟攻击场景,扫描代理在内部随流程监控被扫描对象的状态,并给予外部反馈。由于植入到扫描对象的内部,交互式扫描具有较高的精度,且能够定位导致漏洞的缺陷所在。
  • 白盒扫描:即静态应用程序安全测试(Static Application Security Testing, SAST),它采取代码审计方式,获取对象的源代码、二进制文件等,按编译器前端模式执行代码的词法、语法和语义分析,获取代码的数据流、控制流、调用栈等结构图,结合各种缺陷类型的原理规则,对可能导致漏洞的缺陷作出判断。SAST 不仅能够扫描漏洞,还有代码质量评估、编码规范符合度审查等功能。

漏洞扫描的步骤

  • 存活判断:在进行系统漏洞扫描时,输入的目标对象一般是网络空间范围。为保证扫描效率,启动扫描任务前会首先探测目标系统是否存活。主机存活性探测技术包括三种指令:ICMP Ping、UDP Ping、TCP/ACK Ping。
  • 端口扫描:对已经存活的主机,需要探测主机上开启了哪些端口。对于端口的探测,主要采用 TCP 连接的方式进行探测。包括完整的 TCP 连接、TCP半连接(TCP SYN)、非标准端口服务指纹识别。
  • 系统和服务识别:在进行操作系统版本识别时,需要根据各个操作系统在底层协议栈实现上的不同特点,采用黑盒测试方法,通过研究其对各种探测的响应形成识别指纹,进而识别目标主机运行的操作系统。其使用的采集技术主要包括:
    • 被动识别:通过流量侦听,对数据包的不同指纹特征(TCP Window-size、IP TTL、IPTOS、DF 位等参数)进行分析,来识别操作系统。
    • 主动识别:通过发特殊构造的包,从目标主机的应答指纹来识别操作系统。
  • 漏洞检测:完成主机存活发现、端口发现、系统和服务识别后,扫描器会根据识别的系统与服务信息调用内置或用户外挂的口令字典,对目标系统进行口令猜测,口令猜测成功后将启动授权登录扫描,并在开始口令猜测的同时启动远程非登录漏洞扫描。

漏洞检测分类

漏洞检测可分为两类:

  • 原理检测。原理检测一般也称为精确扫描或 POC 检测。该检测方式是对目标机的相关端口发送请求构造的特殊数据包。进而根据返回的结果信息,来判断漏洞是否存在。一般情况下,原理检测出来的漏洞,准确度很高,几乎没有误报。
  • 版本检测。系统扫描是依照漏洞库标准实施的,在标准的漏洞说明中,会详细说明该漏洞所在系统的身份信息。此外按照惯例,系统的升级一般会更改版本号,因此在漏洞与系统版本之间就存在了关联关系。

按照对扫描目标的影响,漏洞检测也可以分为有损检测和无损检测。

  • 有损检测插件在扫描目标系统中是否存在漏洞时,会影响目标系统的正常运行,这种插件的原理就是通过构造特殊包,造成目标系统异常,进而证明目标系统存在相应的漏洞。
  • 无损检测是指扫描插件在检测过程中,对目标系统正常运行无任何影响。实际扫描检测中,以无损扫描为主要方式。

网络安全管理

(Todo)

工业互联网安全

(Todo)

移动互联网安全

(Todo)

物联网安全

物联网(The Internet of Things, IoT)是指通过各种信息传感器、射频识别技术、全球定位系统、红外感应器、激光扫描器等装置与技术,实时采集需要监控、连接、互动的物体或过程,采集其声、光、热、电、力学、化学、生物、位置等需要的信息,通过各种可能的网络接入,进行物与物、物与人的泛在连接,实现对物品和过程的智能化感知、识别和管理。物联网是一个基于互联网、传统电信网等的信息承载体,它让所有能够被独立寻址的普通物理对象实现互联互通。

(Todo)

习题参考解答

1.填空题
(1) 安全性攻击可以划分为
(2) X.800 定义的 5 类安全服务是
(3) X.800 定义的 8 种特定的安全机制是
(4) X.800 定义的 5 种普遍的安全机制是
(5) 防火墙可以分为 7 种类型:
(6) 静态包过滤防火墙工作于 OSI 模型的 __ 层上,它对数据包的某些特定域进行检查,这些特定域包括:
(7) 根据数据的来源不同,IDS 可分为 3 种类型:
(8) 一个通用的 IDS 模型主要由 4 部分组成:
(9) 根据访问方式的不同,VPN 可以分为两种类型:
(10) VPN的关键技术包括 等。
(11) 移动互联网的组成结构主要包括
(12) 移动互联网安全主要包括
(13) 根据信息生成、传输、处理和应用的原则,物联网可以分为四层:
(14) 物联网网络构建层的安全架构主要包括 等,可通过跨域认证和跨网认证、端对端加密、支持组播和广播的密码算法和安全协议等技术保障。
2.思考题
(1) 基本的安全威胁有哪些?
(2) 主动攻击和被动攻击有何区别?请举例说明。
(3) 网络攻击的常见形式有哪些?请逐一加以评述。
(4) 请简述安全服务与安全机制之间的关系。
(5) 防火墙一般有几个接口?什么是防火墙的非军事区(DMZ)?它的作用是什么?
(6) 防火墙有什么局限性?只靠防火墙是否能确保某个单位的网络安全?
(7) 入侵检测系统的定义是什么?
(8) 人侵检测系统按照功能可分为哪几类?有哪些主要功能?
(9) 简述 NIDS、HIDS 和 DIDS 三种类型 IDS 之间的区别。
(10) IPSec VPN 有哪两种工作模式?如何通过数据包格式区分这两种工作模式?
(11) 请比较 TLSVPN 与 IPSecVPN 之间的异同点。
(12) 你认为 IPSec VPN 与 SSL VPN 可以相互替代吗?为什么?
(13) 《网络安全法》第二十一条规定,国家实行网络安全等级保护制度。我国的网络安全划分为哪几个安全等级?每个安全等级的划分依据是什么?
(14) 工业互联网属于第几次工业革命?工业互联网有哪些主要特点?
(15) 针对工业互联网的攻击发起点有哪些?有哪些具体威胁?
(16) 物联网感知识别层面临哪些安全挑战?

第四章 系统安全

相关定义

  • 一个系统(System)是由相互作用或相互依赖的元素或成分构成的某种类型的一个统一整体,其中的元素完整地关联在一起,它们之间的这种关联关系有别于它们与系统外其他元素之间可能存在的关系。

  • 可信计算基(Trusted Computing Base, TCB)指一个计算机系统中负责实现该系统的安全策略的所有软硬件资源的集合,它的重要特性之一是能够防止其他软硬件对其造成破坏。可信计算基思想的重要启示之一是通过硬件、固件和软件的统一体来构筑系统的安全性和可信性。

基本原则

在网络空间中,系统的设计与实现是系统生命周期中分量很重的两个阶段,长期以来受到了人们的高度关注,形成了一系列对系统安全具有重要影响的基本原则。这些原则可以划分成三类,分别是限制性原则、简单性原则和方法性原则。

限制性原则

限制性原则包括最小特权原则、失败保险默认原则、完全仲裁原则、特权分离原则和信任最小化原则。

  • 最小特权原则(Least Privilege):系统中执行任务的实体(程序或用户)应该只拥有完成该项任务所需特权的最小集合;如果只要拥有n项特权就足以完成所承担的任务,就不应该拥有 n+1 项或更多的特权。
  • 失败-保险默认原则(Fail-Safe Defaults):安全机制对访问请求的决定应采取默认拒绝方案,不要采取默认允许方案;也就是说,只要没有明确的授权信息,就不允许访问,而不是,只要没有明确的否定信息,就允许访问。
  • 完全仲裁原则(Complete Mediation):安全机制实施的授权检查必须能够覆盖系统中的任何一个访问操作,避免出现能逃过检查的访问操作。该原则强调访问控制的系统全局观,它除了涉及常规的控制操作之外,还涉及初始化、恢复、关停和维护等操作,它的全面落实是安全机制发挥作用的基础。
  • 特权分离原则(Separation of Privilege):对资源访问请求进行授权或执行其他安全相关行动,不要仅凭单一条件做决定,应该增加分离的条件因素;例如,为一把锁设两套不同的钥匙,分开由两人保管,必须两人同时拿出钥匙才可以开锁。
  • 信任最小化原则(Minimize Trust):系统应该建立在尽量少的信任假设的基础上,减少对不明对象的信任;对于与安全相关的所有行为,其涉及的所有输入和产生的结果,都应该进行检查,而不是假设它们是可信任的。

简单性原则

简单性原则包括机制经济性原则、公共机制最小化原则和最小惊讶原则。

  • 机制经济性原则(Economy of Mechanism):应该把安全机制设计得尽可能简单和短小,因为,任何系统设计与实现都不可能保证完全没有缺陷;为了排查此类缺陷,检测安全漏洞,很有必要对系统代码进行检查;简单、短小的机制比较容易处理,复杂、庞大的机制比较难处理。
  • 公共机制最小化原则(Minimize Common Mechanism):如果系统中存在可以由两个以上的用户共用的机制,应该把它们的数量减到最少;每个可共用的机制,特别是涉及共享变量的机制,都代表着一-条信息传递的潜在通道,设计这样的机制要格外小心,以防它们在不经意间破坏系统的安全性,例如信息泄露。
  • 最小惊讶原则(Least Astonishment):系统的安全特性和安全机制的设计应该尽可能符合逻辑并简单,与用户的经验、预期和想象相吻合,尽可能少给用户带来意外或惊讶,目的是提升它们传递给用户的易接受程度,以便用户会自觉自愿、习以为常地接受和正确使用它们,并且在使用中少出差错。

方法性原则

方法性原则包括公开设计原则、层次化原则、抽象化原则、模块化原则、完全关联原则和设计迭代原则。

  • 公开设计原则(Open Design):不要把系统安全性的希望寄托在保守安全机制设计秘密的基础之上,应该在公开安全机制设计方案的前提下,借助容易保护的特定元素,如密钥、口令或其他特征信息等,增强系统的安全性;公开设计思想有助于使安全机制接受广泛的审查,进而提高安全机制的鲁棒性。
  • 层次化原则(Layering):应该采用分层的方法设计和实现系统,以便某层的模块只与其紧邻的上层和下层模块进行交互,这样,可以通过自顶向下或自底向,上的技术对系统进行测试,每次可以只测试一层。
  • 抽象化原则(Abstraction):在分层的基础.上,屏蔽每一层的内部细节,只公布该层的对外接口,这样,每一层内部执行任务的具体方法可以灵活确定,在必要的时候,可以自由地对这些方法进行变更,而不会对其他层次的系统组件产生影响。
  • 模块化原则(Modularity):把系统设计成相互协作的组件的集合,用模块实现组件,用相互协作的模块的集合实现系统;每个模块的接口就是一种抽象。
  • 完全关联原则(Complete Linkage):把系统的安全设计与实现与该系统的安全规格说明紧密联系起来。
  • 设计迭代原则(Design for Iteration):对设计进行规划的时候,要考虑到必要时可以改变设计;因系统的规格说明与系统的使用环境不匹配而需要改变设计时,要使这种改变对安全性的影响降到最低。

威胁建模

  • 安全(Security)的本意指某物能避免或抵御他物带来的潜在伤害。
  • 威胁(Threat)的本意指给某物造成伤害或损失的意图。意图表示事情还没有发生,伤害或损失还没有成为事实。
  • 风险(Risk)的本意指某物遭受伤害或损失的可能性。可能性有大有小,意味着风险具有大小程度指标。
  • 攻击(Attack)就是把威胁付诸实施的行为。
  • 威胁建模(Threat Modeling)就是标识潜在安全威胁并审视风险缓解途径的过程。威胁建模的目的是:在明确了系统的本质特征、潜在攻击者的基本情况、最有可能的被攻击角度、攻击者最想得到的好处等的情况下,为防御者提供系统地分析应采取的控制或防御措施的机会。

安全控制

访问控制需要确定主体的身份(Identity),确定主体身份的过程称为身份认证(Authentication)。身份认证最常用的方法是基于口令(Password)进行认证,主体向系统提供账户名和口令信息,由系统对这些信息进行核实。
系统中出现的各种访问要符合规矩,规矩的专业说法叫访问控制策略(Policy)。访问控制机制的另一项重要任务是定义访问控制策略,其中包含给主体分配访问权限。分配访问权限的过程称为授权(Authorization)。

安全监测

(Todo)

安全管理

(Todo)

硬件系统安全

(Todo)

操作系统安全

(Todo)

数据库系统安全

(Todo)

应用系统安全

(Todo)

安全生态系统

习题参考解答

1.为什么 Adept-50 安全操作系统只能在 CTSS 分时操作系统问世之后才会出现?请从技术角度加以分析。
2.无论是在技术方面还是在工具方面,与 20 世纪 60 年代相比,现在的情况都好得多,请分析为什么现在解决系统安全问题比 20 世纪 60 年代困难得多
3.操作系统通常由进程管理、内存管理、外设管理、文件管理、处理器管理等子系统组成,是不是把这些子系统的安全机制实现好了,操作系统的安全目标就实现了?为什么?
4.通过对操作系统内部的进程管理、内存管理、外设管理、文件管理、处理器管理等子系统的运行细节来分析操作系统的行为,这样观察系统的方法是否属于自内观察法?为什么?
5.涌现性和综合特性都是整体特性,但它们是不同的,请结合实例,分析说明两者的区别。
6.请以操作系统和机密性为例,分析说明为什么系统的安全性是不可能指望依靠还原论的方法建立起来的。
7.请分析说明如何借助对人的幸福感的观察去帮助理解操作系统安全性的含意,并以此解释系统化思维的含义。
8.请以桥梁的坚固性保障措施为启发,分析说明如何通过系统安全工程建立操作系统的安全性。
9.请分析说明“失败-保险默认原则”的名称与该原则的实际含义是否吻合,请给出你的理由。
10.请谈谈“公开设计原则”的利与弊,并分析说明如何衡量遵守该原则是否有利于提高系统的安全性。
11.请以 Adept-50 安全操作系统作为分析的例子,分析说明威胁、风险、攻击、安全之间存在什么样的关系。
12.请简要叙述 STRIDE 威胁建模方法的基本思路,并据此说明它属于以下哪种类型的威胁建模方法:以风险为中心、以资产为中心、以攻击者为中心、以软件为中心。
13.请从访问控制策略的分类角度,分析说明基于角色的访问控制应该划归自主访问控制类还是强制访问控制类。
14.访问控制策略⒉只考虑了给一个用户分配一个角色的情形,如果允许给一个用户分配多个角色,应该如何修改该策略?请给出你的修改方案。
15.请分析说明基于特征的入侵检测和基于异常的入侵检测各有什么优缺点,并说明机器学习技术更适合于其中哪类检测。
16.请对安全管理和风险的概念进行分析,以此为基础,说明在安全管理工作中为什么要遵循风险管理原则。
17.每个系统总会由多个子系统构成,请先举一个网络空间中的系统的例子,然后结合该例子,分析说明为什么安装和卸载子系统都要作为系统安全领域安全管理的重要工作。
18.请先给出用 SHA1 和 strcmp 函数检测操作系统代码是否被篡改过的方法,然后分析说明基于软件的这种检测方法主要存在什么不足。
19.请简要说明物理不可克隆函数(PUF)硬件器件主要能提供什么功能,并说说这种硬件器件可用于应对什么安全问题。
20.设计算机配有硬件加密解密功能,现需要一个给文件加密的应用程序,请分析说明如果不需要操作系统配合,实现这样的应用程序会遇到什么困难。
21.请分析说明操作系统提供的对文件进行的自主访问控制与对内存进行的访问控制有哪些相同之处和不同之处。
22.请结合例子说明基于内容的数据库访问控制的基本原理。
23.请结合例子说明针对数据库应用的 SQL 注入攻击的基本原理。
24.请分析说明跨站脚本(XSS)攻击威胁会给 Web 应用系统带来什么样的安全风险。
25.请简要说明访问网站时涉及的 cookie 是什么东西,并结合例子分析说明它是如何泄露个人敏感信息的。
26.请说出自然生态系统和互联网生态系统的组成部分分别有哪些,并说说如何通过观察前者的相互作用分析后者的相互作用。
27.请以跨站脚本(XSS)攻击威胁为例,设计一个运用安全生态系统思想实现 Web 应用环境下个人敏感信息保护的方案。

第五章 内容安全

信息内容安全(Content-based Information Security)作为对上述问题的回答,是研究利用计算机从包含海量信息并且迅速变化的网络中对特定安全主题相关信息进行自动获取、识别和分析的技术。根据它所处的网络环境,也称为网络内容安全(Content-basedNetwork Security)。信息内容安全是借助人工智能与大数据技术管理网络信息传播的重要手段,属于网络安全系统的核心理论与关键组成部分,对提高网络使用效率、净化网络空间、保障社会稳定具有重大意义。

(Todo)

习题参考解答

1.你认为信息内容安全的主要技术有哪些?
2.你认为信息内容安全技术上的发展能否解决所有的信息内容的安全问题?
3.你认为除计算机技术之外,还有哪些领域需要协同工作,才能更好地保障信息内容的安全?
4.对于信息内容安全,你认为有哪些方法(包括技术上、管理上、法律上等多个方面)可以对信息内容安全的隐患进行有效的疏导?
5.你认为信息内容安全威胁主要有哪些?
6.简要描述网络信息内容获取的理想流程。
7.网络信息内容的获取技术有哪些?简要说明每种网络信息内容获取技术的基本原理、主要流程。
8.典型的信息内容获取工具有哪些?并简要说明其原理。
9.试说明如何基于网络交互重构机制,实现需要身份认证的动态网页发布信息获取。
10.描述基于浏览器模拟技术进行网络媒体信息获取过程,分析通过网络交互重构实现网络媒体信息获取的局限性,以及浏览器模拟技术在网络媒体信息获取领域的优势。
11.简述文本信息的特征选取方式,以及常用的统计特征。
12.对于音频信息内容,基于帧的特征有哪些?简要说明每种基于帧的音频特征的定义与实际意义。
13.常见的基于片段的音频特征有哪些?并简要说明每种基于片段的音频特征的定义与实际意义。
14.简要说明常见的图像的特征抽取和选择。
15.对于图像信息内容,常见的颜色特征有哪些?并对每种图像颜色特征进行简要说明。
16.颜色直方图特征的主要优缺点是什么?如何改进该特征的局限性?简单描述该种改进方法的出发点和可能获得的效果。
17.简单比较颜色聚合矢量特征和颜色直方图特征在表达图像特点方面的优势和局限性。
18.简述纹理特征和边缘特征在图像特点表达上的异同。
19.简单比较最近邻分类法和线性分类法的异同。
20.请试着使用两种或多种分类方法提高分类精度。
21.请简要说明信息过滤技术有哪些分类与应用。
22.网络舆情监测与预警系统的核心功能主要包括哪几个方面?
23.为什么一般的大搜索技术无法完全满足网络舆情监测与预警系统的需求?
24.未来将影响网络舆情监测与预警系统的技术主要有哪些?
25.简述内容中心网络的架构有哪些基本组成,并对每一部分进行简要介绍。
26.简单比较内容中心网络中层次命名和扁平命名的异同,并分别说明这两种命名方式的优缺点。
27.与经典的 TCP/IP 网络架构相比,内容中心网络架构有哪些不同?又有哪些优势?
28.针对内容中心网络架构的常见攻击有哪些?简要说明每种攻击方式,并说明这些攻击方式中哪些是专门针对内容中心网络的。

第六章 应用安全

身份认证

身份认证一般分为验证方和证明方,证明方通过向验证方证明其拥有和其身份对应的某个秘密,来证明其身份。

主要方法

  • 用户名口令认证是目前最为常见的认证方法,其简单易用,不需要用户拥有任何硬件设备,只要牢记他的口令就可以。
  • 动态口令/一次性口令(One time password, OTP)是一种只能使用一次的密码,通常通过算法生成或由认证设备提供,以增强身份验证过程的安全性。
  • 挑战-应答认证方法是通过一轮应答实现验证者对证明者对认证,利用一次性随机数实现防止重放攻击。
  • 基于生物特征和物性特征的认证是一种利用个体独一无二的生理或行为特征进行身份验证的方法,如指纹、面部、虹膜、声纹等。
  • 图灵测试验证登录信息系统的是人或自动化执行的程序。
  • 单一的认证方法不足以保证身份认证的安全性。因此在实际应用当中,多采取多种认证方式结合,构成所谓的多因子认证方式。

主流标准

RADIUS

(Todo)

在线快速身份认证(Fast Identity Online, FIDO)

(Todo)

联盟身份管理
  • 联盟身份管理(Federated Identity Management, FIM) 可以使用户使用同一个身份在组成联盟的所有企业中访问相应的资源。这类系统也被称为身份联盟,其支持用户身份跨安全域链接,每个域拥有自己的身份管理系统。如果两个域组成联盟,那么用户在一个域中认证之后,不需要再进行独立的登录过程就可以访问另一个域的资源。
  • 单点登录(Single sign-on, SSO)是身份联盟的一个重要组件,但其与身份联盟不是一回事情。SSO 通常使用户可以使用同一组身份证明访问一个组织中的多个系统,而身份联盟使用户跨组织访问系统,因此身份联盟系统包含 SSO。身份联盟在浏览器层面和 SOA 层面都涉及大量用户—用户、用户—应用、应用—应用的应用场景。
  • OAuth(Open Authorization)是典型的 FIM 系统。OAuth 是一种行业标准的授权协议,允许用户授权第三方应用访问其在另一服务上存储的私有资源,而无需将用户名和密码提供给第三方。

OAuth 定义了 4 个角色,分别是:

  • 资源所有者:可以许可访问受保护的资源的实体。如果资源所有者是人,其指的是终端用户。
  • 资源服务器:运行受保护资源的服务器,可以接受和响应对受保护资源使用访问令牌的访问请求。
  • 客户:得到资源所有者授权并代表其产生受保护资源访问请求的应用。
  • 授权服务器:在成功认证资源所有者并获得授权后向客户颁发访问令牌。

OAuth 2.0 的工作流程:

  • 客户向资源所有者请求授权,授权请求可以直接向资源所有者提出,也可以通过授权服务器间接提出。
  • 客户收到授权许可,具体形式可以参看标准定义。
  • 客户请求授权服务器的认证,向授权服务器出示授权许可以请求访问令牌。
  • 授权服务器认证客户,并且验证授权许可的有效性,颁发访问令牌。
  • 客户向资源服务器出示访问令牌以请求受保护的资源。
  • 资源服务器验证访问令牌的有效性,如果有效,请求进行服务。

公钥基础设施

  • 公钥基础设施(Public Key Infrastructure,PKI)是支撑公钥应用的一系列安全服务的集合。
  • 数字证书(Digital Certificate)是一种电子文档,用于证明证书持有者的身份,并由可信的第三方机构(如证书颁发机构)签发,以确保网络通信的安全和数据的完整性。
    • 证书当中的版本号,用于实现不同版本证书的兼容
    • 序列号是证书的唯一标识
    • 签名算法标识符用于说明证书签名使用的算法
    • 颁发者名称是CA的名字
    • 有效期记载了证书颁发的时间和失效的时间
    • 主体名称记载了证书持有人的名称
    • 主体公钥信息记载了证书持有人的公钥
    • 颁发人唯一标识符用来防止颁发人有重名的情况
    • 最后是CA对证书的签名

PKI 的构成和工作流程如图所示。用户向注册权威机构 RA 申请证书,RA 验证用户的身份后向 CA 发出用户证书申请。RA 类似于现实生活中的派出所。CA 为用户生成证书后将证书颁发给用户,同时将证书放到公共存储服务当中。CA 还会维护一个证书撤销列表 CRL,用于存储在证书有效期内私钥丢失的证书序列号,并有 CA 的私钥签名。CA 会将 CRL 存储在公共服务中或者推送到使用证书的第三方用户。

X.509 标准采用树型的信任体系。根 CA 使用自身的私钥为自己签发证书,是整个信任体系的锚点。根 CA 为下级 CA 颁发证书,直到为用户颁发证书。用任何一个使用证书的第三方在验证证书有效性的时候,要执行以下验证操作:

  • 证书颁发机构是否是其信任的机构
  • 证书是否在有效期内
  • 证书是否在证书撤销列表当中
  • 证书的数字签名是否有效

所有上述验证通过以后,用户就可以从证书获得证书持有人的公钥,并信任这个公钥。

基于角色的访问控制模型

基于角色的访问控制(Role-Based Access Control, RBAC)中通过角色对访问控制策略进行描述,系统中的用户和权限均对应于某些特定的角色。角色的引入实现了用户与权限之间的分离,简化了授权管理。

RBAC 中相关的概念包括:

  • 主体:指可以主动对其他实体进行相关操作的实体。一般情况下,主体指的是系统用户或者代理用户行为的进程。
  • 客体:被动接受其他实体动作的实体,通常来说可以是系统的软件或硬件资源。
  • 用户:权限控制的访问人员,即系统的使用人员。每个用户都具有唯一的标识符。
  • 角色:是系统中一系列职责的集合。如何划分角色需要根据具体的问题来分析,安全策略也需被考虑其中。
  • 权限:规定了针对受保护客体操作的行为许可。客体可执行的操作与系统的设计有关。
  • 用户角色分配:指通过为用户分配角色来建立用户与角色的对应关系。
  • 角色权限分配:指通过为角色分配权限来建立角色与权限的对应关系。
  • 会话:指用户与系统的一次交互,用户与会话之间是一对多的关系。

零信任模型

2010年,Forrester 分析师 John Kindervag 提出了“零信任模型”(Zero TrustModel),其核心思想是网络边界内外的任何东西,在未验证之前都不予以信任。该模型放弃“边界防护”的思路,在“零信任”的发展过程中,国内外各厂商纷纷提出自己的解决方案,其中比较有影响的是谷歌 BeyondCorp 体系,具体包括以下特点。

  • 内网应用程序和服务不再对公网可见
    • 外部可见的组件只有访问代理、单点登录(SSO)系统、在公司内部的 RADIUS 组件,以及间接暴露的访问控制引擎组件。访问代理和访问控制引擎组件共同组成前端访问代理(GFE),集中对访问请求进行认证和授权。
  • 企业内网的边界消失
    • 发起连接的设备或终端所在网络位置和 IP 地址不再是认证授权的必要因素。无论设备或终端在哪里,所有对企业应用或服务的访问请求,都必须经过一个逻辑集中访问代理组件的认证和授权。
  • 基于身份、设备、环境认证的精准访问控制
    • 只有公司的设备清单数据库组件中的受控设备(公司购买并管控,对每台设备发放证书),并且用户必须在用户/群组数据库组件中存在,才能通过认证,然后经过信任推断组件的计算后,才会获得相应的授权。每个用户和/或设备的访问级别可能随时改变。通过查询多个数据源,能够动态推断出分配给设备或用户的信任等级。
  • 提供网络通信的端到端加密
    • 用户设备到访问代理之间经过 TLS 加密,访问代理和后端企业应用之间使用谷歌内部开发的认证和加密框架 LOAS(Low Overhead Authentication System)双向认证和加密。保证数据链路的机密性和完整性。

隐私保护

隐私的定义

隐私是指个体的敏感信息,群体或组织的敏感信息可以表示为个体的公共敏感信息。因此可以将信息分为公开信息、秘密信息、隐私信息三类;对组织而言,信息包括公开信息和秘密信息,对个人而言,信息包括公开信息和隐私信息。

(Todo)

云计算

架构

云计算是一种基于网络访问和共享使用的,以按需分配和自服务置备等方式对可伸缩、弹性的共享物理和虚拟资源池等计算资源供应和管理的模式。人们只需要为使用的云服务付费。云计算的优点是减少开销,按需快速提供服务,全球弹性伸缩,其效率和性能更高,且更安全、更可靠。

NIST 定义了云计算的 3 种服务模型,分别为基础设施即服务(infrastructure as a service, IaaS)、平台即服务(platform as a service, PaaS)和软件即服务(software as a service, SaaS)。

  • IaaS 可以提供硬件基础设施部署服务,通过引入虚拟化技术以提供硬件资源分配的优化。CPU、内存、硬盘存储和网络可以在云计算中心构成计算资源池,通过虚拟化控制软件给用户提供其需要的计算性能,其可定制性强、可靠性高、规模可扩展。
  • PaaS 在 IaaS 之上,可以向租户通过 Internet 交付应用开发所需的硬件和软件工具。为云计算应用开发者开发和运行新应用屏蔽了底层的存储、操作系统和网络的管理问题。PaaS 将现有的操作系统、服务器、数据库、中间件、网络设备和存储服务整合在一起,这些功能和组件都由服务提供商拥有、运行、配置和维护,PaaS 还提供额外的资源,例如数据库管理系统、编程语言、库和各种开发工具。许多 PaaS 产品是面向软件开发的,在提供计算和存储基础设施之外,还提供文本编辑、版本管理、编译和测试服务,帮助开发者更快和更有效地开发新软件。PaaS 还能帮助开发团队不用考虑地理位置协同工作。PaaS 的典型服务包括云应用容器、云数据库服务、云文件存储、内容分发、在线文本/图像/视频处理、云监控和云数据分析等。
  • SaaS 是用户通过 Internet 访问软件应用的一种云服务模式。用户可以通过标准的 Web 浏览器访问云服务提供商提供的软件应用,而不再需要在自己的计算机上安装软件。典型的 SaaS 服务包括文件共享、邮件、日历、客户关系管理(CRM)和人力资源管理等。

无服务器计算是传统的云计算平台延伸,是对特定 PaaS 功能的广泛使用,属于云原生(Cloud Native)架构,其目的是让用户能够将更多的运营职责转移到云服务上,从而专注于提高灵活性和创新能力。无服务器计算让用户可以在不考虑服务器的情况下构建并运行应用程序和服务,以消除基础设施管理任务,例如服务器或集群配置、修补、操作系统维护和容量预置。用户能够为几乎任何类型的应用程序或后端服务构建无服务器应用程序,并且运行和扩展具有高可用性的应用程序所需的所有操作都可由用户自己负责。

区块链安全

(Todo)

共识机制

POW(Proof Of Work)是应用于比特币系统的共识机制,网络中的节点需要通过不断计算寻找满足规则和小于难度目标的哈希值,并约定谁能优先算出正确答案,谁就可以获得比特币网络的奖励以及当前区块的记账权。获取到记账权的节点随后打包区块,并将打包好的区块广播给全网其他节点。全网节点接收到区块后,会对该区块进行验证,验证内容包括交易是否合法、难度值是否达到要求等。验证通过后,新区块将被添加到区块链中。这一机制实现了去中心化,具有较高的安全性。但是该机制也存在着缺点,挖矿的过程造成了大量资源的浪费,网络交易性能较低,区块确认共识达成周期较长。

POS(Proof Of Stake)试图解决POW机制中大量资源被浪费的缺点,根据节点持有代币的比例以及占有代币的时间来降低挖矿难度,进而提高寻找随机数的效率。POS 机制类似于当今社会中的股东机制,产生区块的难度与节点与在网络中占有的股份有关,挖矿产生区块的难度与所有者持有的权益成反比,即,股权越多得到记账权的概率就越大。相较于 POW,POS 机制在一定程度上减少了纯粹靠 Hash 运算来争夺记账权带来的资源损耗,缩短了全网共识的时间,安全性与性能均得到了提升,但仍然存在可监管性弱的缺点。

DPOS(Delegated Proof Of Stake)算法是由 Bitshares 为防止大矿池垄断全网算力而设计提出的。为了减少中心化带来的影响,该机制首次提出了权益代表的概念。网络中的所有股东节点都有投票权,通过民主的方式选出票数最多的节点作为代理节点进行共识、验证与记账。被选出的代理节点拥有相同的权限,每个节点都会被分配一个时间片来生成区块。若在这段时间内出现网络中断、故意作恶而导致区块生成失败或新区块未被广播,将会重新投票选举代理节点。该机制的优点在于可以有效减少参与共识节点的数量,缩短共识验证的时间,区块生成速度较快。

智能合约

智能合约早在 1995 年被 Nick Szabo 提出,他将智能合约定义为“一种无须中介、部署即可自动执行与验证的计算机协议。其总体目标是为了满足抵押、支付、保密等合约条件,最小化意外或恶意情况的发生并最小化信任中介的职能。利用智能合约可以降低仲裁以及强制执行的成本,并降低违约带来的损失等”。随着区块链的普及,智能合约逐渐得到实际应用。作为一种运行在链上并可针对区块链数据库进行读写操作的代码,智能合约可以自动执行参与方指定的数字契约。通过结合区块链以及相关编程范式,实现了具有校验简单、责任明确、逻辑清晰特点的简单合约,降低了指定与履行合约的成本。

智能合约具有如下优点:

  • 去中心化。智能合约被部署在去中心化的区块链上,无须中心化的权威机构来仲裁与监督合约是否有效运行。通常由网络中的节点共识选举出记账节点来判断合约是否按照规定执行,实现了去中心化的权威。
  • 较低的人为干预风险。在区块链系统中,智能合约的内容与执行过程都是事先制定好的。智能合约在基于沙箱技术的虚拟机中运行,被完全封装隔离,无法直接与网络、文件系统以及其他进程进行交互。区块链中的任意一方都不能单方面修改其中的内容或者干预合约的执行。这一方式保障了智能合约的安全性,实现了合约高效准确地运行,同时也减少了人为干预的风险。
  • 可观察性与可验证性。区块链通过数字签名以及时间戳保障智能合约的可溯源、不可篡改。合约方可观察合约的运行状态、执行记录等,确保执行过程具有可验证性。
  • 高效性与实时性。智能合约能够实时响应用户请求,具有较高的服务效率。
  • 低成本。智能合约具有自我验证与自我执行的特点,相较于传统合约,其成本较低,大大减少了合约执行、强制执行、裁决过程中的损耗。

人工智能安全

  • 对抗样本
  • 模型萃取
  • 投毒攻击
  • 训练数据窃取

(Todo)

习题参考解答

1.挑战应答认证协议为什么可以对抗重放攻击?
2.Web 登录认证中经常会碰到输入验证码,它起什么作用?你能否设计一种新的验证码方式?
3.简述数字证书有效性验证的步骤。
4.FIDO 认证协议的主要目的是什么?简述 UAF 认证的主要流程。
5.什么是 k-匿名?
6.如果针对差分隐私机制保护的一个统计查询,是否可以无限制地进行重复查询,为什么?
7.虚拟化主要有哪些方式?其面临的安全威胁是什么?
8.简述区块链的数据结构,说明其为什么具有不可篡改的特性。
9.分析比特币采用工作量证明的共识机制与安全性之间的关系。
10.举例说明人工智能对网络安全的影响。

总结:名词一览(含缩写)


本博客所有文章除特别声明外,均采用 CC BY-NC-ND 4.0 协议 ,转载请注明出处!