




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
内容备注《网络攻防原理与技术》课程教案讲课题目:第一讲网络攻防原理概论目的要求:了解网络空间安全的发展历程和概念内涵;了解网络攻防技术的基本概念;掌握网络攻击的基本过程;了解黑客的概念。重点难点:网络攻击的基本过程;典型的网络攻防技术。方法步骤:理论讲授。器材保障:电脑、投影仪。主要教学内容:一、网络战时代(一)网络战的概念网络战是为干扰、破坏敌方网络信息系统,并保证己方网络信息系统的正常运行而采取的一系列网络攻防行动,正在成为高技术战争的一种日益重要的作战样式。它可以破坏敌方的指挥控制、情报信息和防空等军用网络系统,甚至可以悄无声息地破坏、瘫痪、控制敌方的商务、政务等民用网络系统,不战而屈人之兵。(二)各国网络战部队建设情况1、美国2009.06:美国国防部长盖茨宣布正式成立网络战司令部,将于2030年左右完成网络战部队的全面组建。由攻击代替防御,实现网络威慑战略;全面发展“先发制人”的网络攻击能力。2013.03:美国网络战司令部司令亚历山大在国会宣布,新增40支网络战部队。2018.05:隶属于美军战略司令部的网络战司令部正式升格为独立的作战司令部。2018.06:美军颁布了新的非保密版的《网络空间作战》联合条令(JointPublication3-12)。2018.06:特朗普宣布取消奥巴马时期的“网络中立(NetworkNeutrality)”原则。2020.09:美国空军正式对支撑美国网络司令部的部队进行了改组,并对任务重点进行了调整,主要的改组内容有:成立第67网络空间联队下设的第867网络空间作战小组;部分情报、监视和侦察(ISR)联队改编或迁移至网络联队,从而为美国网络空间作战提供更统一的作战部署,提升美国空军信息作战效能。英国英国于2020年6月1日正式成立首个专用网络军团(第13信号团),保护国防网络,并将与皇家海军和皇家空军合作,为所有军事通信提供安全的网络。英国政府2020年11月宣布成立“国家网络部队”(NCF),由攻击性黑客组成,计划在未来十年内将人员增加至3000人左右。3、俄罗斯2017年2月27日,俄国防部长绍伊古宣布组建信息作战部队。对网络作战行动进行集中统一管理;保护俄罗斯军用网络和节点、军事指挥系统和通信系统免受黑客攻击;确保实现可靠的信息传递通道;检验俄军的网络能力,拓展其在网络空间的行动能力;对抗西方的反俄信息/心理宣传和渗透等。二、网络空间与网络空间安全(一)网络空间的概念网络空间(Cyberspace)2008年1月,布什签署了两份与网络安全(cybersecurity)相关的文件:第54号国家安全政策指令和第23号国土安全总统指令(NSPD-54/HSPD23),其中对cyberspace的定义是:“网络空间是由众多相互依赖的信息技术(IT)基础设施网络组成,包括因特网、电信网、计算机系统和用于关键工业部门的嵌入式处理器、控制器。还涉及人与人之间相互影响的虚拟信息环境”。这个定义首次明确指出cyberspace的范围不限于因特网或计算机网络,还包括了各种军事网络和工业网络。俄罗斯:信息空间中的一个活动范围,其构成要素包括互联网和其它电信网络的通信信道,还有确保其正常运转以及确保在其上所发生的任何形式的人类(个人、组织、国家)活动的技术基础设施。按此定义,网络空间包含设施、承载的数据、人以及操作。著名网络安全专家方滨兴院士对给出的网络空间的定义是:网络空间是构建在信息通信技术基础设施之上的人造空间,用以支持人在该空间中开展各类与信息通信技术相关的活动。信息通信技术基础设施由各种支撑信息处理与信息通信的声光电磁设施(包括各类互联网、电信网、广电网、物联网、在线社交网络、计算系统、通信系统、工业控制系统等)及其承载的数据所构成。信息通信技术活动包括人们对数据的操作过程,以及这些活动对政治、经济、文化、社会、军事等方面所带来的影响。在上述定义中,网络空间包含四个基本要素:网络空间载体(设施),网络空间资源(数据),网络活动主体(用户),网络活动形式(操作)。网络空间安全网络空间中要保护的核心对象包括:设施、数据、用户、操作。设施,也就是“信息通信技术系统”,由各种支撑信息处理与信息通信的声光电磁设备所构成,如互联网、各种广播通信系统、各种计算机系统、各类工控系统等。数据,也就是“广义信号”,能够用于表达、存储、加工、传输的声光电磁信号。这些信号通过在信息通信技术系统中进行产生、存储、处理、传输、展示而成为数据与信息。用户,即“网络角色”,是指产生、传输“广义信号”的主体,反映的是人的意志。网络角色可以是账户、软件、网络设备等具有唯一性身份的信息收发源。操作,是指网络角色借助广义信号,以信息通信技术系统为平台,以信息通信技术为手段,从而具有产生信号、保存数据、修改状态、传输信息、展示内容等行为能力。网络空间中被保护对象是否安全主要通过“安全属性”来评估,最重要的安全属性包括:(1)机密性,也称为“保密性”。机密性对信息资源开放范围的控制,不让不应知晓的人知道秘密。机密性的保护措施主要包括:通过加密防止非授权用户知晓信息内容;通过访问控制阻止非授权用户获得信息,即对信息划分密级,对用户分配不同权限,对不同权限的用户访问的对象进行访问控制;通过硬件防辐射防止信息泄露等。(2)完整性。完整性包括系统完整性和数据完整性。系统完整性是指系统不被非授权地修改,按既定目标运行;数据完整性是指数据在生成、传输、存储、处理过程中是完整的和未被篡改的。完整性的保护措施主要包括:通过访问控制阻止非法篡改行为,只允许许可的当事人对信息或系统进行更改;通过完整性检验机制(如消息认证码MAC)来发现篡改的事实或篡改的位置。(3)可用性。是指资源只能由合法的当事人使用。资源可以是信息,也可以是系统。例如,勒索病毒将计算机中的用户文件加密,导致用户无法使用,就是破坏了信息的可用性;拒绝服务攻击导致信息系统瘫痪,正常用户无法访问系统,就是破坏了系统的可用性。大多数情况下,可用性主要是指系统的可用性。可用性的保护措施主要有:在坚持严格的访问控制机制的条件下,为用户提供方便和快速的访问接口,提供安全的访问工具。方滨兴院士对网络空间安全属性进行了系统总结,认为对信息通信技术基础设施的保护包括对信息的保护以及对信息系统的保护:保护信息的安全性与可信性,防止信息被非授权获取、篡改、伪造、破坏、抵赖;保护信息系统的安全性与可靠性,防止信息系统被非法控制或者致瘫。网络攻击(一)网络攻击的概念网络攻击是指采用技术或非技术手段,利用目标网络信息系统的安全缺陷,破坏网络信息系统的安全属性的措施和行为,其目的是窃取、修改、伪造或破坏信息或系统,以及降低、破坏网络和系统的使用效能。美军将计算机网络攻击(ComputerNetworkAttack,CNA)定义为:通过计算机网络扰乱(Disrupt)、否认(Deny)、功能或性能降级(Degrade)、损毁(Destroy)计算机和计算机网络内的信息或网络本身的行为。(二)网络攻击的类别从攻击对被攻击对象的影响来分,可分为被动攻击和主动攻击。被动攻击:攻击者监听网络通信时的报文流,从而获取报文内容或其它与通信有关的秘密信息,主要包括内容监听(或截获)和通信流量分析。主动攻击:指攻击者需要对攻击目标发送攻击报文,或者中断、重放、篡改目标间的通信报文等手段来达到欺骗、控制、瘫痪目标,劫持目标间的通信链接,中断目标间的通信等目的。(三)网络攻击的一般过程网络攻击过程传统上可以分成六个阶段,包括网络侦察(踩点)、网络扫描、网络渗透、权限提升、维持及破坏、毁踪灭迹等。网络侦察是指在网络中发现有价值的站点,收集目标系统的相关资料(如各种联系信息、IP地址范围等)。网络扫描则是检测目标系统是否与互联网相接以及可访问的IP地址(主机扫描)、所提供的网络服务(端口扫描)、操作系统类型(操作系统识别)、系统安全漏洞(漏洞扫描)等,需要说明的是,有时也将“网络扫描”归为“网络侦察”的一部分。网络渗透是基于网络侦察和扫描结果,设法进入目标系统,获取系统访问权。权限提升则是从攻击开始获得的普通用户权限提升到系统的管理员或特权用户权限,为后续攻击作铺垫。维持及破坏,则是指维持访问权限,方便下次进入系统,根据预定攻击目的和攻击时机,执行攻击动作。毁踪灭迹则指攻击者在完成攻击后需要清除相关日志、隐藏相关的文件与进程、消除信息回送痕迹等。2011年洛克希德马丁公司提出的“网络杀伤链(CyberKillChain)”模型将网络攻击过程分成7个阶段。第1步是目标侦察(Reconnaissance),主要是对目标网络进行扫描,从各种渠道收集与目标有关的信息;第2步是武器研制(Weaponization),根据侦察结果选择或定制开发具体的网络攻击武器;第3步则是载荷投递(Delivery),通过钓鱼邮件、移动存储设备、网站挂马、供应链投毒等手段将开发好的攻击武器(如恶意代码、控制软件)传播到目标网络;第4步是渗透利用(Exploitation),利用漏洞在受害主机上运行攻击代码;第5步是安装植入(Installation),在目标主机安装恶意软件(如后门、任务载荷软件等);第6步是命令控制(CommandandControl),为攻击者建立可远程控制目标系统的路径,以实现持久化控制和运行;最后一步是任务执行(Actiononobjectives),根据攻击者的要求执行各种攻击任务,如窃取数据或文件、破坏系统或业务等。2022年,提出了一个新的杀伤链模型:在线操作杀伤链模型(OnlineOperationsKillChain)。该模型将攻击分成十个阶段,分别是:获取资产,伪装资产,信息收集,协调和计划,测试防御,逃避检测,无差别投送,锁定目标,接管资产,实现驻留。网络防护(一)网络防护的概念网络防护是指为保护己方网络和系统正常工作以及信息的安全而采取的措施和行动,其目的是保证己方网络、系统、信息的安全属性不被破坏。(二)网络安全模型网络安全模型以建模的方式给出解决安全问题的过程和方法,主要包括:以模型的方式给出解决网络安全问题的过程和方法;准确描述构成安全保障机制的要素以及要素之间的相互关系;准确描述信息系统的行为和运行过程;准确描述信息系统行为与安全保障机制之间的相互关系。PDRR模型由美国国防部(DepartmentofDefense,DoD)提出,是防护(Protection)、检测(Detection)、恢复(Recovery)、响应(Response)的缩写。PDRR改进了传统的只注重防护的单一安全防御思想,强调信息安全保障的PDRR四个重要环节。P2DR(PolicyProtectionDetectionResponse)模型(也称为“PPDR模型”)是由美国互联网安全系统公司(InternetSecuritySystem,ISS)在20世纪90年代末提出的一种基于时间的安全模型——自适应网络安全模型(AdaptiveNetworkSecurityModel,ANSM)。P2DR模型以基于时间的安全理论(TimeBasedSecurity)这一数学模型作为理论基础。其基本原理是:信息安全相关的所有活动,无论是攻击行为、防护行为、检测行为和响应行为等都要消耗时间,因此可以用时间来衡量一个体系的安全性和安全能力。信息保障技术框架(InformationAssuranceTechnicalFramework,IATF)是美国国家安全局(NationalSecurityAgency,NSA)制定的,为保护美国政府和工业界的信息与信息技术设施提供技术指南。其前身是网络安全框架(NetworkSecurityFramework,NSF),1999年NSA将NSF更名为IATF,并发布IATF2.0,2000年9月、2002年9月分别发布了IATF3.0和3.1。直到现在,IATF仍在不断完善和修订。IATF从整体、过程的角度看待信息安全问题,认为稳健的信息保障状态意味着信息保障的策略、过程、技术和机制在整个组织的信息基础设施的所有层面上都能得以实施,其代表理论为“深度防护战略(Defense-in-Depth)”。IATF强调人(People)、技术(Technology)、操作(Operation)这三个核心要素,关注四个信息安全保障领域:保护网络和基础设施、保护边界、保护计算环境、支撑基础设施,为建设信息保障系统及其软硬件组件定义了一个过程,依据纵深防御策略,提供一个多层次的、纵深的安全措施来保障用户信息及信息系统的安全。(三)网络防护技术发展过程一般认为,网络安全防护技术的发展主要经历了三个阶段。20世纪80年代后期到90年代中期。这一阶段的网络安全技术,也称为“第一代安全技术”,以“保护”为目的,划分明确的网络边界,利用各种保护和隔离手段,如用户鉴别和授权、访问控制、多级安全、权限管理和信息加解密等,试图在网络边界上阻止非法入侵,从而达到确保信息安全的目的。第一代安全技术解决了许多安全问题。但并不是在所有情况下都能清楚地划分并控制边界,保护措施也并不是在所有情况下都有效。因此,第一代网络安全技术并不能全面保护信息系统的安全,于是出现了第二代网络安全技术。20世纪90年代中期到2010年。这一阶段的网络安全技术,也称为“第二代安全技术”或信息保障(InformationAssurance,IA)技术,以“保障”为目的,以检测技术为核心,以恢复技术为后盾,融合了保护、检测、响应、恢复四大类技术。信息保障技术的基本假设是:如果挡不住敌人,至少要能发现敌人或敌人的破坏。例如,能够发现系统死机、网络扫描,发现网络流量异常等。针对发现的安全威胁,采取相应的响应措施,从而保证系统的安全。在信息保障技术中,所有的响应甚至恢复都依赖于检测结论,检测系统的性能是信息保障技术中最为关键的部分。因此,信息保障技术遇到的挑战是:检测系统能否检测到全部的攻击?但是,几乎所有的人都认为,检测系统要发现全部攻击是不可能的,准确区分正确数据和攻击数据是不可能的,准确区分正常系统和有木马的系统是不可能的,准确区分有漏洞的系统和没有漏洞的系统也是不可能的。这一时期,出现了“入侵容忍技术”,也有人称之为第三代网络安全技术。入侵容忍这一概念于1982提出,但大量研究开始于2000年左右,以“顽存(survivable,也称为可生存、生存等)”为目的,即系统在遭受攻击、故障和意外事故的情况下,在一定时间内仍然具有继续执行全部或关键使命的能力。入侵容忍技术与前两代安全技术最重要区别在于设计理念上:我们不可能完全正确地检测、阻止对系统的入侵行为。容忍攻击的含义是:在攻击者到达系统,甚至控制了部分子系统时,系统不能丧失其应有的保密性、完整性、真实性、可用性和不可否认性。增强信息系统的顽存性对于在网络战中防御敌人的攻击具有重要的意义。近年来出现的“网络韧性或弹性(Resilience)”概念是对入侵容忍的进一步延伸,根据NISTSP800-160中的定义:韧性是指使用网络资源的系统,或者被网络资源使能的系统在面对不利条件、压力、攻击或者损害的时候所展现出来的预测、承受、恢复和适应能力。黑客(一)黑客的概念Hack:“劈,砍”,引伸为“干了一件非常漂亮的工作”Hacker:apersonwhousescomputersforahobby,esp.togainunauthorizedaccesstodata.起源:20世纪50年代MIT的实验室:早期MIT俚语:“恶作剧”,尤指手法巧妙、技术高明的恶作剧。60年代,极富褒义:独立思考、智力超群、奉公守法的计算机迷,“熟悉操作系统知识、具有较高的编程水平、热衷于发现系统漏洞并将漏洞公开与他人共享的一类人”日本的《新黑客字典》:“喜欢探索软件程序奥秘、并从中增长其个人才干的人。”(二)相关词汇飞客(Phreak):早期攻击电话网的青少年,研究各种盗打电话而不用付费的技术;骇客(Cracker):个闯入计算机系统和网络试图破坏和偷窃个人信息的个体,与没有兴趣做破坏只是对技术上的挑战感兴趣的黑客相对应;快客(Whacker):从事黑客活动但没有黑客技能的人,whacker是穿透系统的人中,在技术和能力上最不复杂的一类;武士(Samurai):被他人雇佣的帮助他人提高网络安全的黑客,武士通常被公司付给薪金来攻击网络;幼虫(Lara):一个崇拜真正黑客的初级黑客;欲望蜜蜂(Wannabee):处于幼虫的初始阶段的黑客的称呼,他们急于掌握入侵技术,但由于他们没有经验,因此即使没有恶意也可能造成很大危险;黑边黑客(Dark-Side):是指由于种种原因放弃黑客的道德信念而恶意攻击的黑客;半仙(Demigod):一个具有多年经验在黑客团体具有世界级声誉的黑客;入侵者(Intruder):有目的的破坏者。(三)黑客的未来根据黑客的行为特征可将黑客分成三类:“黑帽子黑客(BlackhatHacker)”、“白帽子黑客(WhitehatHacker)”和“灰帽子黑客(GrayhatHacker)”。“黑帽子黑客”是指只从事破坏活动的黑客,他们入侵系统,偷窃系统内的资料,非法控制他人计算机,传播蠕虫病毒等,给社会带来了巨大损失。“白帽子黑客”是指原本意义上的黑客,一般不入侵他人的计算机系统,即使入侵系统也只为了进行安全研究,在安全公司和高校存在不少这类黑客。“灰帽子黑客”指介于“黑”和“白”之间的,时好时坏的黑客。很多为政府和公司服务,提高单位网络的安全性;黑客的未来:被政府“招安”;成为有名的安全专家:ISS公司创始人ChristopherKlaus作为少年黑客,曾进入美国国防部和NASA;信息战需要更多高水平的“黑客”。作业与思考题:列出你所知道的网络攻击、网络防护方法或产品。查阅资料,简要分析各国网络战部队的建设情况。简述你认为网络攻防人员应遵循的道德准则。参考资料:吴礼发,洪征:《网络攻防原理与技术(第4版)》,机械工业出版社,2024年。本次课教学体会:可以结合俄乌冲突中的网络战案例进行分析,增强学生的学习兴趣。请学生说说自己所了解的各国在网络战方面的发展情况。针对网络战的案例,组织学生从法律及道德层面进行讨论及反思。引导学生分析“网络安全”需要包含哪些特性请学生阐述自己对于网络攻击的理解网络防护与网络攻击相对应,请学生阐述对于网络安全防护的理解,如何针对攻击行为,有效实施网络防护?强调不同阶段安全防护技术的思维差异先提问:学生眼中的“黑客”是什么样的一些人?黑客一词还有“侠”的含义。讲解这些词时要提起学生的兴趣课程思政:必须遵循《网络安全法》的要求,不能够随意在网络上进行攻击,国家有严格的监管。内容备注《网络攻防原理与技术》课程教案讲课题目:第二讲密码学基础知识目的要求:了解密码学的基本概念;掌握典型对称密码算法的工作原理;掌握典型公开密码算法的工作原理;掌握安全散列函数以及密钥管理的基本原理。重点难点:典型对称密码算法的工作原理;典型公开密码算法的工作原理。方法步骤:理论讲授。器材保障:电脑、投影仪。主要教学内容:一、密码学概述(一)密码技术的相关概念密码技术通过对信息的变换或编码,将机密的敏感信息变换成攻击者难以读懂的乱码型信息,以此达到两个目的:使攻击者无法从截获的信息中得到任何有意义信息;使攻击者无法伪造任何信息。密码技术不仅可以解决网络信息的保密性,而且可用于解决信息的完整性、可用性及不可否认性,是网络安全技术的核心和基石,是攻防都需了解的技术。密码系统(Cryptosystem),也称为密码体制,用数学符号描述为:S={M,C,K,E,D}。M是明文空间,表示全体明文集合。明文是指加密前的原始信息,即需要隐藏的信息;C是密文空间,表示全体密文的集合。密文是指明文被加密后的信息,一般是毫无识别意义的字符序列;K是密钥或密钥空间。密钥是指控制加密算法和解密算法得以实现的关键信息,可分为加密密钥和解密密钥,两者可相同也可不同。密码算法是指明文和密文之间的变换法则,其形式一般是计算某些量值或某个反复出现的数学问题的求解公式,或者相应的程序。E是加密算法,D是解密算法。解密算法是加密算法的逆运算,且其对应关系是唯一的。(二)密码系统的设计要求密码系统的设计要求主要包括:1.系统即使达不到理论上不可破译,也应该是实际上不可破译的(也就是说,从截获的密文或某些已知的明文和密文对,要决定密钥或任意明文在计算上是不可行的);2.加密算法和解密算法适用于所有密钥空间的元素;3.系统便于实现和使用方便;4.系统的保密性不依赖于对加密体制或算法的保密,而依赖于密钥(著名的Kerckhoff原则,现代密码学的一个基本原则)。(三)密码学发展简史一般来说,密码学的发展划分为三个阶段:第一阶段为从古代到1949年。这一时期可以看作是科学密码学的前夜时期,这阶段的密码技术可以说是一种艺术,而不是一种科学,密码学专家常常是凭知觉和信念来进行密码设计和分析,而不是推理和证明。第二阶段为从1949年到1975年。1949年Shannon发表的“保密系统的信息理论”为私钥密码系统建立了理论基础,从此密码学成为一门科学,但密码学直到今天仍具有艺术性,是具有艺术性的一门科学。这段时期密码学理论的研究工作进展不大,公开的密码学文献很少。第三阶段为从1976年至今。1976年diffie和hellman发表的文章“密码学的新动向”一文导致了密码学上的一场革命。他们首先证明了在发送端和接受端无密钥传输的保密通讯是可能的,从而开创了公钥密码学的新纪元。二、对称密码体制(一)基本概念对称密码体制(symmetriccryptosystem)的加密密钥和解密密钥相同,也叫单钥密码体制或者秘密密码体制。对称密码体制对明文加密有两种方式:序列密码(或流密码,StreamCipher)和分组密码(BlockCipher)。凯撒密码、维吉尼亚密码等古典密码算法具有相同的加密密钥和解密密钥,属于典型的对称密码系统。各类现代的对称密码系统都是以古典密码系统为基础发展而来,大多以代替(Substitution)和置换(Permutation)这两种基本运算为基础。“代替”指的是比特、字母、比特组合或者字母组合等明文中的元素,被映射成完全不同的另外一个元素,“置换”指的是将明文中的元素重新排列,或者说,打乱明文中各个元素的排列顺序。对称密码系统也存在一些难以解决的缺陷。最为突出的一个问题是双方如何约定密钥。通信中进行加密是为了确保信息的保密,采用对称密码系统,此目标的达成取决于密钥的保密。信息的发送方必须安全、稳妥地把密钥传递到信息的接收方,不能泄露其内容。通信双方为了约定密钥往往需要付出高昂代价。对称密码系统的另外一个问题是在加解密涉及多人时需要的密钥量大,管理困难。如果N个用户需要相互通信,则这些用户两两之间必须共享一个密钥,一共需要N(N-1)/2个密钥。当用户数量很多时,密钥数量会出现爆炸性的膨胀,给密钥的分发和保存带来巨大困难。主要类型1.序列密码序列密码常常被称为流密码,其工作原理是将明文消息以比特为单位逐位加密。与明文对应,密钥也是以比特为单位参与加密运算。为了保证安全,序列密码需要使用长密钥,密钥还必须具有较强的灵活性,保证其能够加密任意长度的明文。但是长密钥的保存和管理非常困难。研究人员针对此问题,提出了密钥序列产生算法,只需要输入一个非常短的种子密钥,通过设定的算法即可以产生长的密钥序列,在加密和解密过程中使用。2.分组密码分组密码是将明文以固定长度划分为多组,加密时每个明文分组在相同密钥的控制下,通过加密运算产生与明文分组等长的密文分组。解密操作也是以分组为单位,每个密文分组在相同密钥的控制下,通过解密运算恢复明文。典型算法数据加密标准(DataEncrytionStandard,DES)是美国国家标准局于1977年公布的由IBM公司研制的一种密码系统,它被批准作为非机要部门的数据加密标准,在民用领域应用广泛。DES是一种公认的安全性较强的对称密码系统。自问世以来,一直是密码研究领域的热点,许多科学家对其进行了研究和破译,但至今没有公开文献表明DES已经被破解。DES是一种分组密码,对二进制数据加密,明文分组的长度为64位,相应产生的密文分组也是64位。DES密码系统使用64位密钥,但64位中由用户决定的只有56位。DES密钥的产生通常是由用户提供由7个英文字母组成的字符串,英文字母被逐个按ASCII码转化为二进制数,形成总长56位的二进制字符串,字符串的每7位补充1位作为奇偶校验,从而生成总长64位的密钥。总体上看,加密流程可以划分为初始置换IP、子密钥的生成、乘积变换、逆初始置换IP-1等四个子步骤。按照DES加密算法的工作流程,输入的64位明文分组经过初始置换IP以后,在16个48位子密钥的控制下进行16轮迭代,最终通过逆初始置换IP-1得到64位的密文分组。DES加密算法的核心功能是扰乱输入,从安全性的角度看,恢复加密算法所做的扰乱操作越困难越好。此外,DES加密算法能够表现出良好的雪崩效应,当输入中的某一位发生变化时,输出中的很多位都会出现变化,这使得针对DES进行密码分析非常困难。DES的解密与加密使用的是相同算法,仅仅在子密钥的使用次序上存在差别。如果加密的乘积变换过程中依次使用K1、K2、K3、…K16作为子密钥,那么在解密时将64位的密文输入初始置换IP后,乘积变换的各轮迭代中将依次使用K16、K15、K14、…K1作为子密钥,完成迭代并将结果输入逆初始置换IP-1后可以恢复64位的明文。DES作为一种对称密码系统,系统的安全性主要取决于密钥的安全性。一旦密钥泄露,则系统毫无安全可言。由于S盒是DES系统的核心部件,而且其核心思想一直没有公布,一些人怀疑DES的设计者可能在S盒中留有陷门,通过特定的方法可以轻易破解他人的密文,但是这种想法一直没有被证实。DES系统目前最明显的一个安全问题是采用的密钥为56位,即密钥空间中只有256个密钥。以当前计算机的处理能力来看,这种短密钥很难抵御穷举攻击,直接影响到算法的安全强度。目前,对于DES算法都是通过穷举密钥的方式破解,还没有发现这种算法在设计上的破绽。在一些安全性要求不是特别高的场合,DES的应用还是比较多的。在DES的基础上,研究人员在1985年提出了3DES算法,增加了密钥长度。3DES算法在1999年被加入到DES系统中。3DES算法使用3个密钥,并执行3次DES运算。3DES遵循“加密—解密—加密”的工作流程。3DES的解密运算与加密运算的主体相同,只是密钥的使用顺序存在差异。在加密时如果依次使用k1、k2和k3作为密钥,则解密时将依次使用k3、k2和k1进行解密。DES的加密算法和解密算法相同,3DES算法在加密的第二步采用DES解密算法的主要目的是确保3DES能够支持DES,以往使用DES加密的信息也可以通过3DES解密。3DES算法的缺点是执行速度较慢,因为无论采用3DES算法进行加密还是解密,都需要执行3遍DES算法,因此,一个明文分组通过3DES加密需要的时间是使用DES算法加密所需时间的3倍。因为DES安全性不足,3DES效率低、小分组导致的安全性不足等问题,l997年4月美国国家标准与技术研究院公开征集高级加密标准(AdvancedEncryptionStandard,AES)算法,并成立了AES工作组。NIST指定AES必须是分组大小为128比特的分组密码,支持密钥长度为128、192和256比特。经过多轮评估、测试,NIST于2000年10月2日正式宣布选中密码算法Rijndael作为AES算法,并在2002年5月26日成为正式标准。因此,AES算法又称为Rijndael算法。公开密码体制(一)基本概念1976年,Diffie、Hellmann在论文“Newdirectionsincryptography”提出了双钥密码体制(奠定了公钥密码系统的基础),每个用户都有一对密钥:一个是公钥(PK),可以像电话号码一样进行注册公布;另一个是私钥(SK),由用户自己秘密保存。两个密钥之间存在某种算法联系,但由一个密钥无法或很难推导出另一个密钥。又称为公钥密码体制或非对称密码体制(asymmetriccryptosystem)。整个系统的安全性在于:从对方的公钥PK和密文中要推出明文或私钥SK在计算上是不可行的。公开密码体制的主要特点是将加密和解密能力分开,可以实现:多个用户加密的消息只能由一个用户解读:保密通信;只由一个用户加密消息而使多个用户可以解读:数字签名认证。根据公钥密码系统所依据的数学难题可分为3类:大整数分解问题类,椭圆曲线类,离散对数问题类。(二)典型算法1977年美国麻省理工学院的3位教授Rivest,Shamir和Adleman研制出了一种公开密码系统,该密码系统以三位教授姓氏的首字母命名,被称为RSA公开密码系统,简称为RSA。1978年介绍RSA的论文《获得数字签名和公开钥密码系统的方法》发表。RSA是目前应用最广泛的公开密码系统。RSA基于“大数分解”这一著名数论难题。将两个大素数相乘十分容易,但要将乘积结果分解为两个大素数因子却极端困难。举例来看,将两个素数11927和20903相乘,可以很容易地得出其结果249310081,但是要想将249310081分解因子得到相应的两个素数却极为困难。RSA的加密过程以指数计算为核心。需要加密的明文消息,一般首先划分为多个消息块,每个消息块由二进制形式转化为十进制数。在划分的过程需要保证每个消息块转化得到的十进制数都小于公钥中的数字n,同时,划分得到的每个十进制数的位数通常相同,位数不足的可以采用添加0的形式补足。在加密时每个消息块独立加密。RSA除了用于加密外,另一个重要应用是数字签名。考虑到效率,实际应用时,利用RSA进行数字签名往往针对消息的散列值进行。发送方在发送消息前,首先计算消息的散列值。而后,发送方使用自己的私钥对消息的散列值进行数字签名。对n进行因子分解是最直接有效的一种攻击RSA系统的方法。如果随着数学研究的发展,发现“大数分解”问题能够轻松解决,则RSA系统将不再安全。此外,RSA的破解是否与“大数分解”问题等价一直没有能够在理论上得到证明,因此并不能肯定破解RSA需要进行大数分解。如果能够绕过“大数分解”这一难题对RSA系统进行攻击,则RSA系统也非常危险。RSA的主要缺陷是:加密操作和解密操作都涉及复杂的指数运算,处理速度很慢。与典型的对称密码系统DES相比,即使在最理想的情况下,RSA也要比DES慢上100倍。因此,一般来说RSA只适用于少量数据的加密和解密。在很多实际应用中,RSA被用来交换DES等对称密码系统的密钥,而用对称密码系统加密和解密主体信息。这些应用系统通过混合使用RSA系统和DES系统,将两类密码系统的优点结合在一起。Diffie-Hellman密钥交换算法(简称为“DH算法”或“DH交换”)由WhitfieldDiffie和MartinHellman于1976提出,是最早的密钥交换算法之一,它使得通信的双方能在非安全的信道中安全的交换密钥,用于加密后续的通信消息。该算法被广泛应用于安全领域,如TSL和IPsec协议。Diffie-Hellman密钥交换算法的优点:仅当需要时才生成密钥,减小了将密钥存储很长一段时间而致使遭受攻击的机会。除对全局参数的约定外,密钥交换不需要事先存在的基础设施。缺点:没有提供双方身份的任何信息,因此易受中间人攻击。这一缺陷可以通过数字签名和公钥证书来解决。容易遭受阻塞性攻击。由于算法是计算密集性的,如果攻击者请求大量的密钥,被攻击者将花费大量计算资源来求解无用的幂系数而不是在做真正的工作。散列函数(一)基本概念散列函数(hashfunction),也称为“哈希函数”或“杂凑函数”,在应用于长度任意的数据块时将产生固定长度的输出。散列函数可以表示为:h=H(M)其中,H代表散列函数,M代表任意长度的数据(可以是文件、通信消息或其他数据块),h为散列函数的结果,称为“散列值”或“散列码”。当M为通信消息时,通常将h称为“报文摘要(MessageDigest)”或“消息摘要”。对于特定的一种散列函数,散列值的长度是固定的。对M的任意修改都将使M的散列值出现变化,通过检查散列值即可判定M的完整性。因此散列值可以作为文件、消息或其他数据块的具有标识性的“指纹”。采用散列函数来保证文件(或消息)的完整性,首先需要通过散列函数获得文件(或消息)的散列值,并将该值妥善保存。在需要对文件(或消息)进行检查的时候,重新计算文件(或消息)的散列值,如果发现计算得到的散列值与保存的结果不同,则可以推断文件(或消息)被修改过。具有单向性的散列函数可以应用于用户口令(或密码)存储。信息系统中如果口令以明文形式存储,存在很大的安全风险。一旦攻击者进入系统,或者系统由恶意的管理员管理,用户口令很容易泄露。而采用散列值来存储口令,散列函数的单向性可以确保即使散列值被攻击者获取,攻击者也无法简单地通过散列值推断出用户口令。同时,这种方法也不会影响对用户进行身份认证,用户在登陆时输入的口令通过散列函数计算,如果所得的散列值与系统中相应账号的散列值相同,则允许用户进入系统。(二)典型算法报文摘要(MessageDigest,MD)算法是由Rivest从20世纪80年代末所开发的系列散列算法的总称,历经的版本有MD2、MD3、MD4和最新的MD5。1991年DenBoer和Bosselaers发表文章指出MD4算法的第1步和第3步存在可被攻击的漏洞,将导致对不同内容进行散列计算却可能得到相同的散列值。针对这一情况,Rivest于1991年对MD4进行了改进,推出了新的版本MD5(RFC1321)。MD5的输入为512位分组,输出是4个32位字的级联(128位散列值)。主要过程如下:消息首先被拆成若干个512位的分组,其中最后512位分组是“消息尾+填充字节(100…0)+64位消息长度”,以确保对于不同长度的消息,该分组不相同。而4个32位寄存器字(大端模式)初始化为A=0x01234567,B=0x89abcdef,C=0xfedcba98,D=0x76543210,它们将始终参与运算并形成最终的散列结果。接着各个512位消息分组以16个32位字的形式进入算法的主循环,512位消息分组的个数决定了循环的次数。主循环有4轮,当所有512位分组都运算完毕后,ABCD的级联将被输出为MD5散列的结果。尽管MD5比MD4要复杂,导致其计算速度较MD4要慢一些,但更安全,在抗分析和抗差分方面表现更好。有关MD5算法的详细描述可参见RFC1321。MD5在推出后很长一段时间内,人们都认为它是安全的。但在2004年国际密码学会议(Crypto’2004)上,来自中国山东大学的王小云教授做了破译MD5、HAVAL-128、MD4和RIPEMD算法的报告,提出了密码哈希函数的碰撞攻击理论,即模差分比特分析法。王教授的相关研究成果提高了破解包括MD5、SHA-1在内的5个国际通用哈希函数算法的概率,给出了系列消息认证码MD5-MAC等的子密钥恢复攻击和HMAC-MD5的区分攻击。SHA(SecureHashAlgorithm)算法是使用最广泛的Hash函数,由美国国家标准与技术研究院(NIST)和美国国家安全局(NSA)设计,包括5个算法,分别是SHA-1、SHA-224、SHA-256、SHA-384和SHA-512,后四个算法有时并称为SHA-2。SHA在许多安全协议中广为使用,如SSL/TLS、PGP、SSH、S/MIME和IPsec等。SHA算法建立在MD4算法之上,其基本框架与MD4类似。SHA-1算法产生160bit的散列值,因此它有5个参与运算的32位寄存器字,消息分组和填充方式与MD5相同,主循环也同样是4轮,但每轮进行20次操作,非线性运算、移位和加法运算也与MD5类似,但非线性函数、加法常数和循环左移操作的设计有一些区别。SHA-2与SHA-1类似,都使用了同样的迭代结构和同样的模算法运算与二元逻辑操作。SM3是我国政府采用的一种密码散列函数标准,由国家密码管理局于2010年12月17日发布,相关标准为“GM/T0004-2012《SM3密码杂凑算法》”,其安全性及效率与SHA-256相当。密钥管理(一)密钥管理问题从技术上讲,密钥管理包括密钥的产生、存储、分发、组织、使用、停用、更换、销毁等一系列问题,涉及每个密钥的从产生到销毁的整个生命周期。对称密码体制和公开密码体制因采用的加密方式的不同,其密钥管理方式也有所不同。对称密码体制中,由于加密密钥等于解密密钥,因此密钥分发过程中,其机密性、真实性和完整性必须同时被保护。对于通信双方A和B而言,可以选择以下几种方式来得到密钥:1)A选择一个密钥后以物理的方式传送给B。2)第三方选择密钥后以物理的方式传送给A和B。3)如果A和B先前或者最近使用过一个密钥,则一方可以将新密钥用旧密钥加密后发送给另一方。4)如果A和B到第三方C有加密连接,C可以通过该加密连接将密钥传送给A和B。上述方式中,第1)和第2)种方式需要人工交付一个密钥,这在现代计算机网络及分布式应用中是不现实的,因为每个设备都需要动态地提供大量的密钥,单靠人工方式根本无法完成。种方式可用于连接加密或端到端加密,但是如果攻击者成功地获得一个密钥,将会导致随后的密钥泄露。目前端到端加密中,被广泛使用的是第4)种方式及其各种变种。在这种方式中,需要一个负责为用户(主机、进程或应用)分发密钥的密钥分发中心(KeyDistributionCenter,KDC),并且每个用户都需要和密钥分发中心共享唯一的密钥。公开密码体制同样存在密钥管理问题。但是,由于它们使用的密钥种类和性质不同,密钥管理的要求和方法也有所不同。在公开密码体制中,由于公钥是可以公开的,并且由公钥求解出私钥在计算上不可行,因此,公钥的机密性不需要保护,但完整性和真实性还是必须得到保护;私钥与对称密码体制中的密钥一样,其机密性、完整性和真实性都必须得到保护。(二)数字证书数字证书常常被类比为用户在网络上的身份证。现实生活中的身份证由公安局统一颁发。因为公安局在颁发身份证时会进行全面检查,人们可以根据身份证上的姓名、出生日期、住址等信息来辩识身份证所有者的身份。公钥证书主要用于确保公钥及其与用户绑定关系的安全,一般包含持证主体身份信息、主体的公钥信息、CA信息以及附加信息,再加上用CA私钥对上述信息的数字签名。目前应用最广泛的证书格式是国际电信联盟(InternationalTelecommunicationUnion,ITU)制定的X.509标准中定义的格式。目前,证书文件主要有三种:X.509证书、PKCS#12证书和PKCS#7证书。其中,X.509证书是最经常使用的证书,它仅包含公钥信息而没有私钥信息,是可以公开进行发布的,所以X.509证书对象一般都不需要加密。在Windows系统中,X.509证书文件的后缀名经常是DER、CER,都可以被文件系统自动识别。对于OpenSSL来说,证书文件的后缀通常为PEM。PKCS#12证书不同于X.509证书,它可以包含一个或多个证书,并且还可以包含证书对应的私钥。PKCS#12的私钥是经过加密的,密钥由用户提供的口令产生。因此,在使用PKCS#12证书的时候一般会要求用户输入密钥口令。PKCS#12证书文件在Windows系统中的后缀名是PFX。很多系统,如Web浏览器,为了便于证书的管理,使用了“证书指纹(thumbprint)”这一概念。所谓“证书指纹”是指对证书全部编码内容(也就是证书文件)进行散列运算得到的散列值,也就是证书的数字指纹。所使用的散列函数因系统而异,如IE浏览器、360浏览器默认用SHA-1计算指纹,而Google的Chrome浏览器默认情况下分别计算了SHA-1和SHA256指纹。利用证书指纹,系统方便地从证书库中检索到一个证书,此外指纹还可以用于检测一个证书是否被篡改。需要注意的是,证书指纹并不是证书的一部分,它的作用也与证书中的证书签名有所不同。(三)PKI美国早在1996年就成立了联邦PKI指导委员会,目前联邦政府、州政府和大型企业都建立了相应的PKI。作为一种标准的为利用公钥加密技术实现保密通信而提供的一套安全基础平台,PKI主要由公钥证书、证书管理机构、证书管理系统、保障证书服务的各种软硬件设备以及相应的法律基础共同组成。其中,公钥证书是PKI中最基础的组成部分。在PKI中,CA是所有注册用户所依赖的权威机构,它严格遵循证书策略机制所制定的PKI策略来进行证书的全生命周期的管理,包括签发证书,管理和撤销证书。CA是信任的起点,只有信任某个CA,才信任该CA给用户签发的数字证书。为确保证书的真实性和完整性,CA需要在给用户签发证书时加上自己的签名。为方便用户对证书的验证,CA也给自己签发证书。这样,整个公钥的分配都通过证书形式进行。RA(RegistrationAuthority,RA)是专门负责受理用户申请证书的机构,它是用户和CA之间的接口。RA负责对用户进行资格审查,收集用户信息并核实用户身份的合法性,然后决定是批准还是拒绝用户的证书申请。如果批准用户的证书申请,则进一步向CA提出证书请求。这里的用户指的是指将要向CA申请数字证书的客户,可以是个人、集团公司或社会团体、某政府机构等。除了证书申请以外,RA还负责受理用户的恢复密钥的申请以及撤销证书的申请等工作。证书产生之后,由证书发布系统以一定的方式存储和发布,以便于使用。为方便证书的查询和使用,CA采用“证书目录”的方式集中存储和管理证书,通过建立目录服务器证书库的方式为用户提供证书服务。此外,证书目录中还存储了用户的相关信息(如电话号码、电子邮箱地址等)。由于证书本身是公开的,因此证书目录也是非保密的。但是,如果目录中还存储了用户证书之外的相关信息,则这些信息一般需要保密。PKI策略是指一个组织建立和定义的公钥管理方面的指导方针、处理方法和原则。PKI中有两种类型的策略:一是证书策略,用于管理证书的使用;另一个是证书实践指南(CertificatePracticeStatement,CPS)。X.509有关证书策略的定义是:证书策略指的是一套用于说明证书的适用范围和/或应用的安全限制条件的规则。比如,某一特定的证书策略可以声明用于电子商务的证书的适用范围是某一规定的价格范围。制定证书策略的机构称为“策略管理机构”。密码分析(一)传统密码分析方法密码分析学,俗称“密码破译”,截收者在不知道解密密钥和通信者所采用的加密算法的细节条件下,对密文进行分析,试图获取机密信息、研究分析解密规律的科学。密码分析除了依靠数学、工程背景、语言学等知识外,还要依靠经验、统计、测试、眼力、直觉判断能力等因素,有时还要靠运气。根据攻击者对明文、密文等信息的掌握情况,密码分析可以划分为四种类型。1)唯密文攻击(Ciphertext-onlyattack)。攻击者手中除了截获的密文外,没有其他任何辅助信息。唯密文攻击是最常见的一种密码分析类型,也是难度最高的一种。2)已知明文攻击(Known-plaintextattack)。攻击者除了掌握密文,还掌握了部分明文和密文的对应关系。3)选择明文攻击(Chosen-plaintextattack)。攻击者知道加密算法,同时能够选择明文并得到相应明文所对应的密文,是比较常见的一种密码分析类型。4)选择密文攻击(Chosen-ciphertextattack)。攻击者知道加密算法,同时可以选择密文并得到对应的明文。采用选择密文攻击这种攻击方式,攻击者的攻击目标通常是加密所使用的密钥。从密码的分析途径看,在密码分析过程中可以采用穷举攻击法、统计分析法和数学分析法等三种方法。穷举攻击的思路是尝试所有的可能以找出明文或者密钥。统计分析法是通过分析明文和密文的统计规律从而破解密文的一种方法。大部分现代密码系统以数学难解问题作为理论基础。数学分析法,也称为“确定分析法”,是指攻击者针对密码系统的数学基础和密码学特性,利用一些已知量,例如,一些明文和密文的对应关系,通过数学求解破译密钥等未知量的方法。密码旁路分析现实世界中,密码算法的实现总需要基于一个物理平台,即密码芯片。由于芯片的物理特性会产生额外的信息泄露,如密码算法在执行时无意泄露的执行时间、功率消耗、电磁辐射、Cache访问特征、声音等信息,或攻击者通过主动干扰等手段获取的中间状态比特或故障输出信息等,这些泄露的信息同密码的中间运算、中间状态数据存在一定的相关性,从而为密码分析提供了更多的信息,利用这些泄露的信息就有可能分析出密钥,这种分析方法称为旁路分析。密码旁路分析中攻击者除了可在公开信道上截获消息,还可观测加解密端的旁路泄露,然后结合密码算法的设计细节进行密钥分析,避免了分析复杂的密码算法,使得一些传统分析方法无法破解的密钥成为可能。近几年来,密码旁路分析技术发展较快,出现了多种旁路分析方法。根据旁路泄露信息类型的不同,可分为计时分析、探针分析、故障分析、功耗分析、电磁分析、Cache分析、声音分析;根据旁路分析方法的不同,可分为简单旁路分析、差分旁路分析、相关旁路分析、模板旁路分析、随机模型旁路分析、互信息旁路分析、Cache旁路分析、差分故障分析、故障灵敏度分析、旁路立方体分析、代数旁路分析、代数故障分析等。作业与思考题:1、请简要分析密码系统(密码体制)的五个组成要素。2、对于密码系统,基于算法保密的策略有什么不足之处?3、请简要评述以DES为代表的对称密码系统的优点和缺点。4、请解释什么是密钥管理问题,密钥管理对于对称密码系统有什么意义。参考资料:吴礼发,洪征:《网络攻防原理与技术(第4版)》,机械工业出版社,2024年。本次课教学体会:可以结合实际密码案例进行分析,增强学生的学习兴趣。讨论:为什么强调不依赖于对加密体制或算法的保密?古典密码算法都属于对称密码体制分析代替操作与置换操作的差异密钥的管理问题为什么重要?比较序列密码与分组密码的主要差异结合PPT介绍DES的基本流程组织学生分析密码体制的安全性问题3DES与DES相比的主要优势?分析公开密码体制与对称密码体制的主要差异分析RSA算法存在的主要缺陷通过散列函数的实际应用来引出散列函数的概念分析散列函数在安全领域应用的主要优势课程思政:以王小云教授的例子,展现我国在安全领域的研究成就,鼓励学生在安全领域深入专研比较对称密码体制和公开密码体制在密钥管理方面的差异数字证书主要是解决公开密码体制的密钥分发问题分析PKI各个组成部分的主要功能。请学生分析:有哪些可以用于密码破译的方法比较不同密码分析方法的差异内容备注《网络攻防原理与技术》课程教案讲课题目:第三讲网络脆弱性分析目的要求:了解影响网络安全的因素;掌握因特网易被攻击者利用的特性;掌握典型网络协议存在的安全问题。重点难点:因特网易被攻击者利用的特性;典型网络协议的安全问题。方法步骤:理论讲授。器材保障:电脑、投影仪。主要教学内容:一、影响网络安全的因素我们将所有影响网络正常运行的因素称之为网络安全威胁,从这个角度讲,影响网络安全的既包括环境和灾害因素,也包括人为因素和系统自身的因素。多数网络安全事件是由于人员的疏忽、黑客的主动攻击造成的,此即为人为因素,包括:(1)有意:人为主动的恶意攻击、违纪、违法和犯罪等。(2)无意:工作疏忽造成失误(配置不当等),对网络系统造成不良影响。系统自身因素是指网络中的计算机系统或网络设备因为自身的原因引发的网络安全风险,主要包括:(1)计算机系统硬件系统的故障。(2)各类计算机软件故障或安全缺陷,包括系统软件(如操作系统)、支撑软件(各种中间件、数据库管理系统等)和应用软件的故障或缺陷。(3)网络和通信协议自身的缺陷。二、计算机网络概述(一)网络结构和组成计算机网络由若干结点(node)和连接这些结点的链路(link)组成。网络中的结点主要包括两类:端系统和中间结点。端系统(endsystem)通常是指网络边缘的结点,它不再仅仅是功能强大的计算机,还包括其他非传统计算机的数字设备,如智能手机、电视、汽车、家用电器、摄像机、传感设备等。可以将这些连接在网络上的计算机和非计算机设备统称为主机(host)。中间结点,主要包括集线器、交换机、路由器、自治系统、虚拟结点和代理等网络设备或组织。链路则可以分为源主机到目的主机间的端到端路径(path)和两个结点之间的跳(hop)。网络和网络通过互联设备(路由器,router)互连起来,可以构成一个覆盖范围更大的网络,即互联网(internet或internetwork),或称为网络的网络(networkofnetworks),泛指由多个计算机网络互连而成的网络,这些网络之间的通信协议可以是任意的。因特网(Internet)是全球最大的、开放的互联网,它采用TCP/IP协议族作为通信的规则,且其前身是美国的ARPANET。网络体系结构计算机网络之所以能够做到有条不紊地交换数据,是因为网络中的各方都遵守一些事先约定好的规则。这些规则明确规定了所交换的数据的格式以及有关的同步问题。这些为进行网络中的数据交换而建立的规则、标准或约定即称为网络协议。在计算机网络中,将计算机网络的各层及其协议的集合,称为网络的体系结构(architecture)。比较著名的网络体系结构有:国际标准化组织(ISO)制定的开放系统互连参考模型(OSI/RM,OpenSystemInterconnection/ReferenceModel),采用7层结构,IETF的TCP/IP体系结构等。以TCP/IP体系结构为基础的计算机网络得到广泛应用,成为事实上的网络标准。尽管OSI/RM从整体上来讲未被采用,但其制定的很多网络标准仍在今天的因特网得到了广泛应用。在体系结构的框架下,网络协议可定义为:为网络中互相通信的对等实体间进行数据交换而建立的规则、标准或约定。实体(entity)是指任何可以发送或接收信息的硬件或软件进程。在许多情况下,实体就是一个特定的软件模块。位于不同子系统的同一层次内交互的实体,就构成了对等实体(peerentity)。网络协议是计算机网络不可缺少的组成部分,它保证实体在计算机网络中有条不紊地交换数据。网络体系结构的脆弱性因特网的设计初衷是在各科研机构间共享资源,因此尽可能地开放以方便计算机间的互联和资源共享,对安全性考虑较少。导致其存在一些固有的安全缺陷,即具有一些容易被攻击者利用的特性。一般认为,因特网的以下几个特性易被攻击者利用,特别是在基于IPv4的因特网中。(1)分组交换。因特网是基于分组交换的,这使得它比采用电路交换的电信网更容易受攻击。所有用户共享所有资源,给予一个用户的服务会受到其他用户的影响。(2)认证与可追踪性。因特网没有认证机制,任何一个终端接入即可访问全网,这导致一个严重的问题就是IP欺骗:攻击者可以伪造数据包中的任何区域的内容然后发送数据包到Internet中。通过IP欺骗隐藏来源,攻击者就可以发起攻击而无须担心对由此造成的损失负责。(3)尽力而为(best-effort)的服务策略。因特网采取的是尽力而为策略,即只要是交给网络的数据,不管其是正常用户发送的正常数据,还是攻击者发送的攻击流量,网络都会尽可能地将其送到目的地。(4)匿名与隐私。网络上的身份是虚拟的,普通用户无法知道对方的真实身份,也无法拒绝来路不明的信息。(5)无尺度网络。因特网是一种无尺度网络。无尺度网络的典型特征是网络中的大部分结点只和很少结点连接,而有极少数结点与非常多的结点连接。无尺度网络对意外故障有强大的承受能力,但面对针对枢纽结点的协同性攻击时则显得脆弱。(6)互联网的级联特性。互联网是一个由路由器将众多小的网络级联而成的大网络。一个路由器消息可以逐级影响到网络中的其他路由器,形成“蝴蝶效应”。中间盒子。“中间盒子”是指部署在源与目的主机之间的数据传输路径上的、实现各种非IP转发功能的任何中介设备,例如:用于改善性能的DNS缓存(Cache)、HTTP代理/缓存、CDN等,用于协议转换的NAT(NetworkAddressTranslation)、IPv4-IPv6转换器等,用于安全防护的防火墙、入侵检测系统/入侵防御系统(IDS/IPS)等不同类型的中间盒子大量被插入互联网之中。中间盒子的出现,背离了传统互联网“核心网络功能尽量简单、无状态”的设计宗旨,从源端到目的端的数据分组的完整性无法被保证,互联网透明性逐渐丧失。典型网络协议的脆弱性(一)IP协议安全性分析IPv4协议是无状态、无认证、无加密协议,其自身有很多特性易被攻击者利用,主要包括:(1)IPv4协议没有认证机制IPv4没有对报文源进行认证,无法确保接收到的IP包是IP包头中源地址所标识的源端实体发出的。IPv4也没有对报文内容进行认证,无法确保报文在传输过程中的完整性没有受到破坏。(2)IPv4协议没有加密机制由于IPv4报文没有使用加密机制,攻击者很容易窃听到IP数据包并提取出其中的应用数据。(3)无带宽控制攻击者还可以利用IPv4协议没有带宽控制的缺陷,进行数据包风暴攻击来消耗网络带宽、系统资源,从而导致拒绝服务攻击。为了解决IPv4存在的安全问题,IETF设计了一套端到端的确保IP通信安全的机制,称为IPsec(IPSecurity)。IPsec最开始是为IPv6制定的标准,考虑到IPv4的应用仍然很广泛,所以在IPsec标准制定过程中也增加了对IPv4的支持。与IPv4相比,IPv6通过IPsec协议来保证IP层的传输安全,提高了网络传输的保密性、完整性、可控性和抗否认性。尽管如此,IPv6也不可能彻底解决所有的网络安全问题,同时新增机制还会产生新的安全问题。(二)ICMP协议安全性分析为了提高IP数据报交付成功的机会,在网际层使用了ICMP协议。ICMP允许主机或路由器报告差错情况、提供有关异常情况的报告。ICMP报文作为IP层数据报的数据,加上数据报的首部后组成数据报发送出去。ICMPv4报文的前4个字节是统一的格式,共有三个字段:即类型、代码、检验和。接着的4个字节的内容与ICMPv4的类型有关。再后面是数据字段,其长度和格式取决于ICMPv4的类型。常用的差错报文有:目的站不可达(类型3)、时间超过(类型11)、改路由(或路由重定向,类5)。常用的询问报文有:回送(Echo)请求或回答(类型8或0)、时间戳(Timestamp)请求或回答(类型13或14)等。不管ICMPv4还是ICMPv6,ICMP协议本身的特点决定了它非常容易被用于攻击网络上的路由器和主机,因而被广泛应用。(1)利用“目的不可达”报文对攻击目标发起拒绝服务攻击。(2)利用“改变路由”报文破坏路由表,导致网络瘫痪。(3)木马利用ICMP协议报文进行隐蔽通信。(4)利用“回送(Echo)请求或回答”报文进行网络扫描或拒绝服务攻击。(三)ARP协议安全性分析ARP用于将计算机的网络地址(32位IP地址)转化为物理地址(48位MAC地址)。在以太网中的数据帧从一个主机到达网内的另一台主机是根据48位的以太网地址(硬件地址)来确定网络接口的,而不是根据32位的IP地址。每台主机均有一个ARP高速缓存(ARPCache)。通常情况下,一台主机的网络驱动程序要发送上层交来的数据时,会查看其ARP缓存中的IP地址和MAC地址的映射表。如果表中已有目的IP地址对应的MAC地址,则获取MAC地址,构建网络包发送,否则就发送ARP请求,等待拥有该IP的主机给出响应。发出请求的主机在收到响应后,更新其ARP缓存。ARP协议对收到的ARP响应不作任何验证就更新其ARP缓存,即允许未经请求的ARP广播或单播对缓存中的IP-MAC对应表表项进行删除、添加或修改。这一严重的安全缺陷,经常被攻击者用来进行各种网络攻击,例如:(1)网络监听。攻击者可以伪造ARP响应,从本地或远程发送给主机,修改ARP缓存,从而重定向IP数据流到攻击者主机,达到窃听、假冒或拒绝服务的目的。(2)阻止目标的数据包通过网关。攻击者可以利用ARP欺骗,导致计算机向外发送的数据包将总被发送到错误的网关MAC地址上,计算机不能够与外网通信。(四)RIP协议安全性分析RIP协议要求网络中的每一个路由器都要维护从它自己到其他每一个目的网络的距离记录(因此,这是一组距离,即“距离向量”)。RIP协议将“距离”定义如下:从一个路由器到直接连接的网络的距离定义为1。从一个路由器到非直接连接的网络的距离定义为所经过的路由器数加1。“加1”是因为到达目的网络后就直接交付,而到直接连接的网络的距离已经定义为1。RIP协议的“距离”也称为“跳数”(hopcount),因为每经过一个路由器,跳数就加1。RIP认为一个好的路由就是它通过的路由器的数目少,即“距离短”。RIP允许一条路径最多只能包含15个路由器。因此“距离”的最大值为16时即相当于不可达。RIP只适用于小型网络。如果在没有认证保护的情况下,攻击者可以轻易伪造RIP路由更新信息,并向邻居路由器发送,伪造内容为目的网络地址、子网掩码地址与下一条地址,经过若干轮的路由更新,网络通信将面临瘫痪的风险。此外,攻击者可以利用一些网络嗅探工具来获得远程网络的RIP路由表,通过欺骗工具伪造RIPv1或RIPv2报文,再利用重定向工具截取、修改和重写向外发送的报文,例如某台受攻击者控制的路由器发布通告称有到其他路由器的路由且费用最低,则发向该路由的网络报文都将被重定向到受控的路由器上。(五)OSPF协议安全性分析OSPF使用分布式链路状态协议(linkstateprotocol),路由器间信息交换的策略如下:1)向本自治系统中所有路由器发送信息。这里使用的方法是洪泛法(flooding),这就是路由器通过所有输出端口向它所有相邻的路由器发送信息。应注意,RIP协议是仅仅向自己相邻的几个路由器发送信息。2)发送的信息就是与本路由器相邻的所有路由器的链路状态,但这只是路由器所知道的部分信息。所谓“链路状态”就是说明本路由器都和哪些路由器相邻,以及该链路的“度量”(metric)。OSPF将这个“度量”用来表示费用、距离、时延、带宽等等。对于RIP协议,发送的信息是:“到所有网络的距离和下一跳路由器”。3)只有当链路状态发生变化时,路由器才用洪泛法向所有路由器发送信息。而不像RIP那样,不管网络拓扑有无发生变化,路由器之间都要定期交换路由表的信息。常见的OSPF协议攻击手段包括:1)最大年龄(MaxAgeattack)攻击LSA的最大年龄(MaxAge)为1小时,攻击者发送带有最大MaxAge设置的LSA信息报文,这样,最开始的路由器通过产生刷新信息来发送这个LSA,而后就引起在age项中的突然改变值的竞争。如果攻击者持续的突然插入这类报文给整个路由器群,将会导致网络混乱和拒绝服务攻击。2)序列号加1(Sequence++)攻击当攻击者持续插入比较大的LSASequence号报文时,最开始的路由器就会产生发送自己更新的LSA序列号来超过攻击者序列号的竞争,这样就导致了网络不稳定和拒绝服务攻击。3)最大序列号攻击根据OSPF协议的规定,当发送最大序列号(0x7FFFFFFF)的网络设备再次发送报文(此时为最小序列号)前,要求其他设备也将序列号重置,OSPF停15分钟。如果攻击者插入一个最大序列号的LSA报文,将触发序列号初始化过程。在实践中,在某些情况下,拥有最大序列号的LSA并没有被清除而是在连接状态数据库中保持一小时的时间。如果攻击者不断地修改收到的LSA的序列号,就会造成网络运行的不稳定。4)重放攻击攻击者重放一个与拓扑不符的LSA,并洪泛出去,而且该LSA必须被认为比当前的新。各路由器接收到后,会触发相应的SPF计算(计算最小路径树的过程)。当源路由器收到重放的LSA时,将洪泛一个具有更高序列号的真实LSA时,各路由器收到后,更新LSA,势必又会触发SPF计算。SPF计算是一个很消耗资源的操作,频繁的SPF计算会导致路由器性能的下降。5)篡改攻击IP首部的源IP地址、目的IP地址字段分别标识OSPF分组由哪个路由器发出的、分组要发送到哪个路由器,协议号字段置为89时表明封装是OSPF分组。所有这些字段如果被修改,都会导致OSPF路由陷入混乱。(六)BGP协议安全性分析BGP协议是一种应用于AS之间的边界路由协议,而且运行边界网关协议的路由器一般都是网络上的骨干路由器。运行BGP协议的路由器相互之间需要建立TCP连接以交换路由信息,这种连接称为BGP会话(Session)。每一个会话包含了两个端点路由器,这两个端点路由器称为相邻体(Neighbor)或是对等体(Peer)。BGP一般是在两个自治系统的边界路由器之间建立对等关系,也可以在同一个自治系统内的两个边界路由器之间建立对等关系。BGP协议最主要的安全问题在于缺乏一个安全可信的路由认证机制,即BGP无法对所传播的路由信息的安全性进行验证。每个自治系统向外通告自己所拥有的CIDR(ClasslessInter-DomainRouting)地址块,并且协议无条件信任对等系统的路由通告,这将就导致一个自治系统向外通告不属于自己的前缀时,也会被BGP用户认为合法,从而接受和传播,导致路由攻击的发生。由于BGP协议使用TCP作为其传输协议,因此同样会面临很多因为使用TCP而导致的安全问题,如SYNFlood攻击、序列号预测等。BGP没有使用自身的序列号而依靠TCP的序列号,因此,如果设备采用了可预测序列号的方案,就面临着这种类型的攻击。“数字大炮”攻击利用BGP路由器正常工作过程中路由表更新机制,通过在网络上制造某些通信链路的时断时续的震荡效应,导致网络中路由器频繁地更新路由表,最终当网络上震荡路径数量足够多、震荡的频率足够高时,网络上所有路由器都处于瘫痪状态。对于数字大炮,现有的BGP内置故障保护措施几乎无能为力。一种解决办法是通过一个独立网络来发送BGP更新,但这不太现实,因为这必然涉及建立一个影子互联网。另一种方法是改变BGP系统,让其假定连接永不断开,但根据研究者的模型,此方法必须让互联网中至少10%的自治系统做出这种改变,并且要求网络运营者寻找其他办法监控连接的健康状况,但是要说服足够多的独立运营商做出这一改变非常困难。(七)UDP协议安全性分析UDP协议提供的是不可靠数据传输服务,但由于其简单高效,因此有很多应用层协议利用UDP作为传输协议,如域名解析协议(DNS)、简单网络管理协议(SNMP)、网络文件系统(NFS)、动态主机配置协议(DHCP)和路由信息协议(RIP)。如果某一应用层协议需要可靠传输,则可根据需要在UDP基础上加入一些可靠机制,如重传、超时、序号等,或直接利用TCP协议。UDP协议可以用来发起风暴型拒绝服务攻击,也可以进行网络扫描。(八)TCP协议安全性分析TCP协议被攻击者广泛利用。1)由于一台主机或服务器所允许建立的TCP连接数是有限的,因此,攻击者常常用TCP全连接(完成三次握手过程)或半连接(只完成二次握手过程)来对目标发起拒绝服务攻击。2)序号预测。TCP报文段的初始序号(ISN)在TCP连接建立时产生,攻击者向目标主机发送连接请求可得到上次的序号,再通过多次测量来回传输路径得到进攻主机到目标主机间数据包传送的来回时间(RTT)。已知上次连接的序号和RTT,就能预测下次连接的序号。若攻击者推测出正确的序号就能伪造有害数据包并使目标主机接受,实TCP连接劫持攻击。3)网络扫描。攻击者可以利用TCP连接请求来进行端口扫描,从而获得目标主机上的网络服务状态,进一步发起有针对性的攻击。(九)DNS协议安全性分析DNS协议缺乏必要的认证机制,客户无法确认接收到的信息的真实性和权威性,基于名字的认证过程并不能起到真正的识别作用,而且接收到的应答报文中往往含有额外的附加信息,其正确性也无法判断。此外,DNS的绝大部分通信使用UDP,数据报文容易丢失,也易于受到劫持和欺骗。DNS协议脆弱性面临的威胁主要是域名欺骗和网络通信攻击。域名欺骗是指域名系统(包括DNS服务器和解析器)接收或使用来自未授
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 药物质量评价标准试题及答案
- 宁夏专升本考试题及答案
- 医学微生物学试题及答案
- 如何增强育婴师考试的实践性试题及答案
- 药学专业常见问题解答试题及答案
- 母猪母乳喂养技巧测试及答案
- 礼仪教师面试题及答案
- 激光技术工程师证书考试挑战的试题及答案评估
- 医学基础知识知识结构梳理试题及答案2024年
- 营养干预的科学依据与效果试题及答案
- 军队文职人员转正述职报告
- 大学生劳动教育(微课版)全书教案
- 公司道德和商业行为准则
- 13G322-1~4钢筋混凝土过梁(2013年合订本)
- 【年产1000吨富硒沙棘果汁工艺生产设计16000字(论文)】
- 电驱动桥技术及技术路线-2024-06-技术资料
- 职业素养提升第2版(大学生职业素养指导课程)全套教学课件
- 中考数学专题复习《代数推理题》知识点梳理及典例讲解课件
- 抖音电商直播运营团队组织架构与职责说明
- 直流伺服电机控制系统设计
- 河道护坡工程安全管理体系与措施
评论
0/150
提交评论