![]()
内容推荐 本书介绍信息系统的安全原理。作为一本原理类的教材,全文已统筹梳理成合理而又容易理解和掌握的体系。全书共12章,共分为如下4篇:第1篇介绍窃听、恶意代码和黑客三种攻击风险,使读者对信息系统安全产生紧迫感;第2篇先介绍数据加密、消息认证、身份认证和安全传输协议,奠定与信息系统安全有关的信任体系基础。此后介绍区块链中的安全技术,着重探讨在分布式系统中,如何建立基于去中心的自信任机制;第3篇介绍信息系统安全防卫技术,内容包括访问控制、网络隔离(防火墙、物理隔离、VPN和沙箱)、入侵威慑(信息系统安全卫士、IDS、网络陷阱、数字取证、审计、日志和法治)和应急处理;第4篇从系统工程的高度,介绍开放系统互连安全体系结构、信息系统安全测试准则和信息系统工程方法。 本书深入浅出、结构新颖、紧扣本质,适合教学,可以激发读者的求知欲。书中除了配有丰富的习题供读者验证和自测外,还提供了几十个知识链接,以丰富和拓展读者视野。 本书适合作为计算机科学与技术专业、信息管理与信息系统专业、网络专业和信息安全专业的“信息系统安全概论”课程的教材或教学参考书,也可供有关技术人员参考。 目录 目??录 第1篇 信息系统安全威胁 第1章 窃听型攻击\t3 1.1 窃听技术及其发展概况\t3 1.1.1 声波窃听\t3 1.1.2 电气时代的窃听器\t5 1.1.3 纳米窃听与激光窃听\t6 1.2 通信信号截获(信息窃听新动向之一)\t7 1.2.1 电磁波窃听\t7 1.2.2 通信电缆监听和光缆监听\t8 1.2.3 共享网络窃听\t10 1.3 手机监听(信息窃听新动向之二)\t11 1.3.1 手机监听的基本技术\t11 1.3.2 GSM手机监听\t12 1.3.3 CDMA手机监听\t13 1.3.4 NFC泄露\t14 习题1\t14 第2章 恶意代码攻击\t16 2.1 病毒\t16 2.1.1 计算机病毒的特征与存在状态\t16 2.1.2 病毒分类\t18 2.1.3 病毒的逻辑结构\t22 2.1.4 引导区病毒解析\t24 2.1.5 Win32 PE文件病毒解析\t25 2.1.6 计算机病毒检测方法\t27 2.2 蠕虫\t28 2.2.1 蠕虫及其特征\t28 2.2.2 蠕虫代码的功能结构\t30 2.3 特洛伊木马\t31 2.3.1 特洛伊木马及其特征\t31 2.3.2 特洛伊木马分类\t33 2.3.3 木马的功能与结构\t35 2.3.4 木马植入技术\t36 2.3.5 木马隐藏技术\t36 2.3.6 木马的连接与远程控制\t38 2.4 陷门\t40 2.4.1 陷门及其特征\t40 2.4.2 陷门分类\t40 2.5 其他恶意代码\t43 习题2\t44 第3章 黑客攻击\t47 3.1 黑客攻击的基本过程与常用工具\t47 3.1.1 黑客进行网络攻击的一般过程\t47 3.1.2 黑客常用工具\t48 3.2 系统扫描攻击\t49 3.2.1 网络扫描\t49 3.2.2 漏洞扫描\t55 3.2.3 口令攻击\t59 3.3 欺骗型攻击\t61 3.3.1 ARP欺骗——交换网络监听\t61 3.3.2 IP源地址欺骗\t65 3.3.3 路由欺骗\t67 3.3.4 TCP会话劫持\t68 3.3.5 DNS欺骗\t69 3.3.6 Web欺骗\t70 3.3.7 伪基站攻击\t74 3.4 数据驱动型攻击\t76 3.4.1 缓冲区溢出攻击\t76 3.4.2 格式化字符串攻击\t78 3.5 拒绝服务攻击\t80 3.5.1 拒绝服务攻击及其基本方法\t80 3.5.2 分布式拒绝服务攻击\t83 3.5.3 僵尸网络\t87 习题3\t91 第2篇 信息系统信任认证 第4章 数据保密\t97 4.1 数据加密基础\t97 4.1.1 加密、解密与密钥\t97 4.1.2 基本加密算法\t98 4.2 密钥管理\t99 4.2.1 基于密钥安全的加密体制\t99 4.2.2 密钥管理的一般内容\t100 4.3 对称密钥加密体制\t101 4.3.1 对称密钥加密常用算法概述\t101 4.3.2 AES算法\t102 4.3.3 单钥分发\t106 4.4 非对称密钥加密体制\t108 4.4.1 非对称密钥加密概述\t108 4.4.2 RSA算法\t109 4.4.3 公开密钥基础设施\t111 4.4.4 CA\t112 4.4.5 公钥数字证书与X.509\t113 4.4.6 公钥分发\t114 4.4.7 PKI信任模型\t115 4.4.8 非对称密钥加密的用途\t117 4.5 几种数据加密新技术\t118 4.5.1 流密码\t118 4.5.2 同态加密\t120 4.5.3 量子加密通信\t121 4.6 信息隐藏\t123 4.6.1 数据隐藏处理过程\t123 4.6.2 信息隐藏技术分类\t124 习题4\t124 第5章 信任认证\t128 5.1 消息摘要\t128 5.1.1 数据的完整性保护与消息摘要\t128 5.1.2 报文摘要算法\t130 5.1.3 安全哈希算法\t131 5.2 消息认证码\t132 5.2.1 MAC函数\t132 5.2.2 安全MAC函数的性质\t132 5.2.3 CBC-MAC\t133 5.3 数字签名\t133 5.3.1 数字签名及其特征\t133 5.3.2 直接数字签名\t134 5.3.3 有仲裁的数字签名\t135 5.3.4 数字签名算法\t136 5.4 基于凭证比对的身份认证\t137 5.4.1 生物特征身份认证\t137 5.4.2 静态口令\t139 5.4.3 动态口令\t141 5.5 基于密钥分发的身份认证\t143 5.5.1 公钥加密认证协议\t143 5.5.2 单钥加密认证协议\t145 5.5.3 Kerberos认证系统\t146 5.5.4 X.509证书认证过程\t150 5.6 基于共识的信任机制——区块链安全技术\t151 5.6.1 区块链与区块\t151 5.6.2 区块链架构\t152 5.6.3 Merkle树\t154 5.6.4 共识机制\t155 5.6.5 智能合约\t162 5.6.6 区块链特征小结\t163 5.7 互联网中的认证——Internet安全协议\t164 5.7.1 IPSec\t165 5.7.2 SSL\t169 习题5\t172 第3篇 信息系统安全防卫 第6章 信息系统访问控制\t179 6.1 自主访问控制策略\t179 6.1.1 自主访问控制及其特点\t179 6.1.2 访问控制矩阵模型\t179 6.1.3 访问能力表模型\t180 6.1.4 访问控制表模型\t180 6.2 强制访问控制策略\t181 6.2.1 强制访问控制及其工作流程\t181 6.2.2 强制访问控制中的访问规则\t182 6.2.3 BLP模型\t182 6.2.4 Biba模型\t183 6.2.5 DTE模型\t184 6.3 基于角色的访问控制策略\t185 6.3.1 基于角色的访问控制及其特点\t185 6.3.2 基于角色的访问控制模型\t186 6.4 基于属性的访问控制策略\t188 6.4.1 ABAC中的访问实体、安全属性与策略\t188 6.4.2 ABAC授权过程\t189 习题6\t190 第7章 系统隔离\t191 7.1 网络防火墙\t191 7.1.1 静态包过滤技术\t191 7.1.2 动态包过滤——状态检测技术\t195 7.1.3 网络地址转换技术\t197 7.1.4 屏蔽路由器\t199 7.1.5 双/多宿主主机网关防火墙\t199 7.1.6 堡垒主机\t200 7.1.7 屏蔽子网 序言 前??言(一) 信息系统是重要的系统,重要的系 统需要特别保护;信息系统是复杂的系统,复杂的系统是脆 弱的,脆弱的系统需要特别保护;信息系统是虚拟的系统, 虚拟的系统给安全保护带来很大的难度;现代信息系统是开 放的,开放的系统会带来更多的风险。重要、复杂、虚拟和 开放,也给人们带来研究的乐趣和商业机会。现在信息系统 安全技术和产品已经大量涌现,并且还在不断发展。 本 书主要介绍信息系统的安全原理。作为一本原理类的教材, 关键的问题是要梳理成合理而又容易理解和掌握的体系。在 教学实践中,笔者反复探索,将安全理论梳理成如下4大类 。 (1)信息系统安全威胁。 (2)信息系统信任 认证。 (3)信息系统安全防卫。 (4)信息安全 系统工程。 这样的梳理基本上囊括了几乎所有的安全技 术。 在内容的安排上,则考虑了如下原则。 (1) 尽量把与其他技术或概念相关的内容排在后面,即与其他内 容相关最少的排在最前面。 (2)将能引起兴趣的内容 排在前面,以使读者能有成就感。 (3)把安全体系结 构和安全等级放在最后,这样不仅使其内容容易理解,而且 也是对前面内容的总结和提高。 在内容的取舍上采取的 原则是:重点内容详细介绍,次要内容只做一般介绍。 本书每章最后都配备了较多的习题,这些习题有如下不同的 类型。(1)有些要思考、总结。(2)有些要进一步理解 。(3)有些要自己想象。(4)有些要查找资料。(5)有 些要动手实验。 本书的前几版正是基于这些考虑逐步演 进的。(二) 常言道:“道高一尺,魔高一丈。”信息 系统安全是针对入侵和攻击威胁采取的一系列安全策略和技 术。然而,按照木桶原理,当最短的一块木板被加长后,另 一块次短的木板就变成最短的木板了;而一种攻击被防御之 后,新的攻击又会出现。在这个充满竞争的世界里,攻击与 防御相伴而生并且永远不会完结,攻与防的博弈将在竞争中 永无止境。一般说来,防御往往要比攻击付出更多的代价, 原因如下。(1)攻击可以择机发起,防御必须随时警惕。 (2)攻击可以选择一个薄弱点实施,防御必须全线设防。 (3)攻击一般使用一种或几种技术,防御则需要考虑已知 的所有技术。(4)攻击可以肆意进行,防御必须遵循一定 的规则。 社会总在发展,技术总在进步,攻击与防御也 在博弈中相互促进。信息系统安全作为一门新兴的技术和学 科,在本书第3版出版后的近5年间,又有了长足的发展。 在读者和出版社的不断呼吁下,笔者下大力气进行全面修订 ,并在内容上进行了增删,除删除了已经不再使用的技术之 外,还增添了新技术的内容,如同态加密、区块链安全技术 、沙箱、ISSE、SSE-CMM等。(三) 本书的修订永远是 进行时。在本书第4版即将出版之际,衷心地希望读者和有 关专家不吝指正,以便适当的时候进一步修订。 本书在 编写过程中还参考了大量文献资料。这些资料有的引自国内 外论文,有的引自其他著作,有的引自网站。虽编者尽心在 参考文献中予以列出,但仍会有许多疏漏,同时也受篇幅所 限,未能将所有参考资料一一列出。在此谨向有关作者致谢 。 张基温 2023年6月 信息系统安全教程(第 4版) ·II· ·I· 导语 本书前三版得到大家认可,这次改版更新了内容,本书深入浅出,结构新颖,紧扣本质,适合教学,可以激发读者的求知欲。 精彩页 第3章 黑 客 攻 击 “黑客”一词是对于网络攻击者的统称。一般说来,黑客是一个精通计算机技术的特殊群体。从攻击的动机看,可以把黑客分为3类:一类称为“侠客”(hacker),他们多是好奇者和爱出风头者;一类称为“骇客”(crackers),他们是一些不负责的恶作剧者;一类称为“入侵者”(intruder),他们是有目的的破坏者。随着Internet的普及,黑客的活动日益猖獗,对社会造成巨大损失。 黑客形式多样,技术不断更新。下面仅介绍其中影响较大的几个。 3.1 黑客攻击的基本过程与常用工具 3.1.1 黑客进行网络攻击的一般过程 黑客进行网络信息系统攻击的主要工作流程是:收集情报、远程攻击、远程登录、取得权限、留下后门、清除日志,主要内容包括目标分析、文档获取、破解密码、日志清除等。这些内容都包括在黑客攻击的3个阶段——准备阶段、实施阶段和善后阶段中。 1.攻击的准备阶段 (1)确定目的。一般说来,入侵者进行攻击的目的主要有3种类型:破坏型、获取型和恶作剧型。破坏型攻击指破坏攻击目标,使其不能正常工作,主要的手段是拒绝服务攻击(DoS)。获取型主要是窃取有关信息,或获取不法利益。恶作剧型则是进来遛遛,以显示自己的能耐。目的不同,但所采用的手段大同小异。 (2)踩点,即寻找目标。 (3)查点。搜索目标上的用户、用户组名、路由表、SNMP信息、共享资源、服务程序及旗标等信息。 (4)扫描。自动检测计算机网络系统在安全方面存在的可能被黑客利用的脆弱点。 (5)模拟攻击。进行模拟攻击,测试对方反应,找出毁灭入侵证据的方法。 2.攻击的实施阶段 (1)获取权限。获取权限往往是利用漏洞进行的。系统漏洞分为本地漏洞和远程漏洞两种:本地漏洞需要入侵者利用自己已有的或窃取来的身份,以物理方式访问机器和硬件;相比本地漏洞,攻击者往往只需要向系统发送恶意文件或者恶意数据包就能实现入侵。这就是远程漏洞比本地漏洞更危险的原因。因此,黑客的攻击一般都是从远程漏洞开始的。但是利用远程漏洞获取的不一定是最高权限,往往只是一个普通用户的权限,这样常常没有办法做黑客们想要做的事。这时就需要配合本地漏洞来把获得的权限进行扩大,常常是扩大至系统的管理员权限。 (2)权限提升。有时获得了一般用户的权限就足以达到修改主页等目的了,但只有获得了最高的管理员权限之后,才可以做诸如网络监听、清理痕迹之类的事情。要完成权限的扩大,不但可以利用已获得的权限在系统上执行利用本地漏洞的程序,还可以放一些木马之类的欺骗程序来套取管理员密码,这种木马是放在本地套取最高权限用的,而不能进行远程控制。 (3)实施攻击。如对一些敏感数据的篡改、添加、删除和复制,以及对敏感数据的分析,或者使系统无法正常工作。 3.攻击的善后阶段 (1)修改日志。如果攻击者完成攻击后就立刻离开系统而不做任何善后工作,那么他的行踪将很快被系统管理员发现,因为所有的网络操作系统一般都提供日志记录功能,会把系统上发生的动作记录下来。为了自身的隐蔽性,黑客一般都会抹掉自己在日志中留下的痕迹。为了能抹掉痕迹,攻击者要知道常见的操作系统的日志结构以及工作方式。 (2)设置后门。一般黑客都会在攻入系统后不止一次地进入该系统。为了下次再进入系统时方便一点,黑客会留下一个后门,特洛伊木马就是后门的最好范例。 (3)进一步隐匿。只修改日志是不够的,因为百密必有一疏,即使自认为修改了所有的日志,仍然会留下一些蛛丝马迹。例如,安装了某些后门程序,运行后也可能被管理员发现。所以,黑客经常通过替换一些系统程序的方法来进一步隐藏踪迹。这种用来替换正常系统程序的黑客程序称为rootkit,这类程序在一些黑客网站可以找到,比较常见的有LinuxRootKit,现在已经发展到了5.0版本了。它可以替换系统的ls、ps、netstat、inetd等一系列重要的系统程序,当替换了ls后,就可以隐藏指定的文件,使得管理员在使用ls命令时无法看到这些文件,从而达到隐藏自己的目的。 3.1.2 黑客常用工具 一般说来,众多的恶意代码都是黑客的帮凶,或者是黑客利用的工具。不过有一些恶意代码是黑客利用最多的工具,陷门就是其一。此外还有一些是黑客刻意研发出来的工具,例如下列一些。 (1)僵尸网络。僵尸网络与后门类似,也允许攻击者访问系统。但是所有被同一个僵尸网络感染的计算机将会从一台控制命令服务器接收到相同的命令。有关作用将在3.5.3节介绍。 (2)下载器。这是一类用来下载其他恶意代码的恶意代码。下载器通常是在攻击者获得系统的访问时首先进行安装的。下载器程序会下载和安装其他的恶意代码。 (3)间谍软件。这是一类从受害计算机上收集信息并发送给攻击者的恶意代码。例如嗅探器、密码哈希采集器、键盘记录器等。这类恶意代码通常用来获取E-mail、在线网银 |