软件设计师——信息安全方面的知识总结

一、安全基础技术

1. 对称加密

对称加密又称为私钥加密,其采用了对称密码编码技术,对称加密的特点是文件加密和解密使用相同的密钥,即加密密钥也可以用作解密密钥。对称加密算法的优点是使用简单、加密解密快捷高效。其缺点是加密强度不高、密钥分发困难。

2. 非对称加密

非对称加密又称为公钥加密,该技术中所使用的加密与解密密钥是不同的。在非对称加密体系中,密钥是成对出现的,一对密钥包括一个公钥和一个私钥。如果用公开密钥对数据进行加密,只有用对应的私有密钥才能解密;如果用私有密钥对数据进行加密,那么只有用对应的公开密钥才能解密。非对称加密算法的优点是,解决了对称密钥加密强度不高及密钥分发困难的问题:其缺点是,加密速度极慢,比对称加密慢千倍,甚至数千倍。所以非对称加密算法通常只对极小的数据量进行加密,比如对信息摘要进行加密,或用于加密对称密钥来解决对称密钥分发困难的这个问题。
针对对称加密与非对称加密的特点,在实际应用中,大多是采用结合这两种加密算法一起使用来进行操作的。

3. Hash函数和信息摘要

Hash函数又称为杂凑函数、散列函数,它提供了这样的一种计算过程:输入一个长度不固定的字符串,返回一串定长的字符串(又称为Hash值),单向Hash函数用于产生信息摘要。

信息摘要简要地描述了一份较长的信息或文件,它可以被看做是一份长文件的“数字指纹”,信息摘要可以用于创建数字签名。对于特定的文件而言,信息摘要是唯一的,而且不同的文件必将产生不同的信息摘要。常见的信息摘要算法包括MD5(产生一个128位的输出,输入是以512位的分 组进行处理的)和SHA(安全散列算法,也是按512位的分组进行处理,产生一个160位的输出)。它们可以用来保护数据的完整性。

4. 数字签名

(数字签名Digital Signature) 技术是不对称加密算法的典型应用。数字签名的应用过程是数据源发送方使用自己的私钥对数据校验和或其他与数据内容有关的变量进行加密处理,完成对数据的合法“签名";数据接收方则利用对方的公钥来解读收到的“数字签名”,并将解读结果用于对数据完整性的检验,以确认签名的合法性。数字签名技术是在网络系统虚拟环境中确认身份的重要技术,完全可以代替现实过程中的“亲笔签字”,在技术和法律上有保证,可见数字签名是对签名真实性的保护。

5. 数字证书

  数字证书是由权威机构CA 证书授权Certificatce Authority)中心发行的, 能提供在Internet上进行身份验证的一种权威性电子 文档,人们可以在因特网交往中用它来证明自己的身份和识别对方的身份。
   数字证书包含版本、序列号、签名算法标识符、签发人姓名、有效期、主体名和主体公钥信息等并附有CA的签名,用户获取网站的数字证书后通过验证CA的签名和确认数字证书的有效性,从而验证网站的真伪。    在用户与网站进行安全通信时,用户发送数据时使用网站的公钥(从数字证书中获得)加密,收到数据时使用网站的公钥验证网站的数字签名,网站利用自身的私钥对发送的消息签名和对收到的消息解密。

二、网络安全知识

1. 网络安全协议

互联网自上个世纪提出,至今不过区区几十年,但其发展速度之迅猛,让人始料不及。原本只 作为资源共享而提出的互联网络,目前已是各类应用的基础平台。在此环境下,网络安全提到了一 个前所未有的高度来看待。在软件设计师考试中,要求考生熟悉常见安全协议的工作层次,以及基本特性,他们的工作层次关系如 “安全协议层次图” 所示。

在这里插入图片描述
安全协议层次图

(1)PGP协议

PGP(Pretty Good Privacy)是一个基于RSA公钥加密体系的邮件加密协议。可以用它对邮件保密以防止非授权者阅读,它还能对邮件加上数字签名从而使收信人可以确信邮件发送者。除此之外PGP还可用于文件存储的加密。

PGP承认两种不同的证书格式:PGP证书和X.509证书。

(2)SSL协议

SSL工作于传输层以上(跨越了多个网络层次),用于在Internet上传送机密文件。SSL协议由SSL记录协议、SSL握手协议和SSL警报协议组成。

SSL握手协议被用来在客户与服务器真正传输应用层数据之前建立安全机制,当客户与服务器第 一次通信时,双方通过握手协议在版本号、密钥交换算法、数据加密算法和Hash算法上达成一致,然后互相验证对方身份,最后使用协商好的密钥交换算法产生一个只有双方知道的秘密信息,客户和服务器各自根据该秘密信息产生数据加密算法和Hash算法参数。

SSL记录协议根据SSL握手协议协商的参数,对应用层送来的数据进行加密、压缩、计算消息鉴 别码,然后经网络传输层发送给对方。

SSL警报协议用来在客户和服务器之间传递SSL出错信息。

SSL协议是一个保证计算机通信安全的协议,对通信对话过程进行安全保护,其实现过程主要经过如下几个阶段:

1> 接通阶段:客户机通过网络向服务器打招呼,服务器回应;

2> 密码交换阶段:客户机与服务器之间交换双方认可的密码,一般选用RSA密码算法,也有的 选用Diffie-Hellmanf和Fortezza-KEA密码算法;

3> 会谈密码阶段:客户机器与服务器间产生彼此交谈的会谈密码;

4> 检验阶段:客户机检验服务器取得的密码;

5> 客户认证阶段:服务器验证客户机的可信度;

6> 结束阶段:客户机与服务器之间相互交换结束的信息。

发送时信息用对称密钥加密,对称密钥用不对称算法加密,再把两个包绑在一起传送过去。接 收的过程与发送正好相反,先打开有对称密钥的加密包,再用对称密钥解密。因此,SSL协议也可用 于安全电子邮件。

(3)SET协议

SET(Secure Electronic Transaction,安全电子交易)协议向基于信用卡进行电子化交易的应用提供了实现安全措施的规则。它是由Visa国际组织和MasterCard组织共同制定的一个能保证通过开放网络(包括Internet)进行安全资金支付的技术标准。SET在保留对客户信用卡认证的前提下,又增加了对商家身份的认证。由于设计较为合理,得到了诸如微软公司、IBM公司、Netscape公司等大公司的支持,已成为实际上的工业技术标准。

(4)IPSec 协 议

IPSec工作于网络层。它有两种加密方式:第一种,是将原IP数据包进行整体加密(包括IP包头),然后产生新的IP包进行传送;第二种,是将原IP数据包中的数据取出来,加密,然后通过原IP包头信息产生新的IP头。区别在于一个是整体加密,另一个是数据加密。

(5)TLS协议

安全传输层协议(TLS)用于在两个通信应用程序之间提供保密性和数据完整性。

该协议由两层组成: TLS 记录协议(TLS Record)和 TLS 握手协议(TLS Handshake)。较低的层为 TLS 记录协议,位于某个可靠的传输协议(例如 TCP)上面。 TLS 记录协议提供的连接安全性具有两个基本特性:

私有――对称加密用以数据加密(DES 、RC4 等)。对称加密所产生的密钥对每个连接都是唯一的,且此密钥基于另一个协议(如握手协议)协商。记录协议也可以不加密使用。

可靠――信息传输包括使用密钥的 MAC 进行信息完整性检查。安全哈希功能( SHA、MD5 等)用于 MAC 计算。记录协议在没有 MAC 的情况下也能操作,但一般只能用于这种模式,即有另一个协议正在使用记录协议传输协商安全参数。

2. 网络攻击

网络攻击的主要手段包括口令入侵、放置特洛伊本马程序、拒绝服务(DOS) 攻击、端口扫描、网络监听、欺骗攻击和电子邮件攻击等。

  • (1)口令入侵

口令入侵是指使用实些合法用户的账号和口令登录到目的主机,然后再实施攻击
活动。

  • (2)放置特洛伊本马程序

特洛伊木马(Tojas)程序常被伪装成工具程序或游戏,一且用户打开了带有特洛伊木马程序的邮件附件或从网上直接下载,或执行了这些程序之后,当用户连接到互联网上时,这个程序就会向黑客通知用户的IP地址及被预先设定的端口。

  • (3) 拒绝服务(DoS) 攻击

拒绝服务(DoS) 攻击目的是使计算机或网络无法提供正常的服务。最常见的拒绝服务攻击有网络带宽攻击和连通性攻击。带宽攻击指以极大的通信量冲击网络,使得所有可用网络资源都被消耗殆尽,最后导致合法的用户请求无法通过。连通性攻击是指用大量的连接请求冲击计算机,使得所有可用的操作系统资源都被消耗殆尽,最终计算机无法再处理合法用户的请求。

  • (4)端口扫描

端口扫描就是利用Soket编程与目标主机的菜些端口建立TCP连接、进行传输协议的验证等,从而侦知目标主机的扫描端口是否处于激活状态、主机提供了哪些服务、提供的服务中是否含有某些缺陷等。

  • (5)网络监听

网络监听是主机的一种工作模式, 在这种模式下,主机可以接收到本网段在同一条物理通道上传输的所有信息。使用网络监听工具可轻而易举地截取包括口令和账号在内的信息资料。

  • (6) 欺骗攻击

欺骗攻击是攻击者创造一个易于误解的上下文环境, 以诱使受攻击者进入并且做出缺乏安全考虑的决策。IP欺骗是欺骗攻击的一种, IP 欺骗实现的过程是:使得被信在的主机丧失工作能力,同时采样目标主机发出的TCP序列号,猜测出它的数据序列号。然后,伪装成被信任的主机,同时建立起与目标主机基于地址验证的应用连接。如果成功,黑客可以使用一种简单的命令放置一个系统后门,以进行非授权操作。

  • ARP欺骗攻击
    ARP攻击(ARP欺骗)是欺骗攻击的一种,通过伪造IP地址和MAC地址,能够在网络中产生大量的ARP通信量使网络阻塞,如果伪造网关的IP地址和MAC地址对,则所有发往网关的IP包将因为MAC地址错误而无法到达网关(ARP攻击一般会将MAC地址改为发起ARP攻击的主机地址),造成无法跨网段通信。

3. 入侵检测

入侵检测技术是为保证计算机系统的安全而设计与配置的一种能够及时发现并报告系统中未授权或异常现象的技术,是一种用于检测计算机网络中违反安全策略行为的技术。违反安全策略的行为有:入侵—非法用户的违规行为;滥用—用户的违规行为。

入侵检测系统所采用的技术可分为特征检测与异常检测两种。

(1)特征检测。特征检测也称为误用检测,假设入侵者活动可以用一种模式来表示,系统的目标是检测主体活动是否符合这些模式。它可以将已有的入侵方法检查出来,但对新的入侵方法无能为力。其难点在于如何设计模式既能够表达“入侵”现象又不会将正常的活动包含进来。

(2)异常检测。假设是入侵者活动异常于正常主体的活动。根据这一理念建立主体正常活动的“活动简档”,将当前主体的活动状况与“活动简档”相比较,当违反其统计规律时,认为该活动可能是“入侵”行为。异常检测的难题在于如何建立“活动简档”以及如何设计统计算法,从而 不把正常的操作作为“入侵”或忽略真正的“入侵”行为。

4. 防火墙

防火墙是网络安全的第一道门户, 可以实现内部网(信任网络)和外部不可信任网络之间,或者是内部网不同网络安全区城之间的隔离与访问控制,保证网络系统及网络服务的可用性。狭义的防火墙是指安装了防火墙的软件或路由器系统,面广义的防火填还包括整个网络的安全策略和安全行为。
根据防大墙组建动构的不同,可以分为屏蔽路由器、双穴主机、屏蔽主机防火墙、屏子网防火墙4种基本结构:以及些变体,下面则洋细地说明了它们的优缺点与应用场合。
(1)包过滤型防火墙。它工作于网络层对进出内部网络的所有信息进行分析,并按用定的安全策略对进出内部网络的信息进行限制,这种防火墙的优点是处可速度快费用低,对用户透明。其缺点是维护比较困难,只能阻止少部分IP欺骗,不支持有效的用户认证,日志功能有限,过滤规则增加会大大降低吞吐量,无法对信息提供全面控制。
(2)双宿网关防火墙。它由一台至少装有两块网卡的堡垒主机作为防火墙,位于内外网络之间,分别与内外网络相离,实现物理上的隔开。它有两种服务方式: -种是用户直接登录到双宿主机上;另一种是在双宿主机上运行代理服务器。其安全性比屏蔽路由器高。入侵者一旦得到双穴主机的访问权, 内部网络就会被入侵,因此需具有强大的身份认证系统,才可以阻挡来自外部的不可信网络的非法入侵。
(3)屏蔽主机防火墙。它是由包过滤型防火墙和双宿网关防火墙组合形成的一种防火墙,强迫所有的外部主机与一个堡垒主机相连接,而不让它们直接与内部主机相连接。这种防火墙的优点是实现了网络层安全(包过滤)和应用层安全(代理),因此安全等级比屏蔽路由器要高。其缺点是堡垒主机可能被绕过,堡垒主机与其他内部主机间没有任何保护网络安全的东西存在,一旦被攻破,内网就将暴露。
(4)屏蔽子网防火墙。它用了两个屏蔽路由器和一个堡垒主机,也称为“单DMZ防火墙结构”。这种防火墙的优点在于定义了“非军事区(DMZ)”网络后,支持网络层和应用层安全功能,在黑客攻破第一道防火墙, 进入DMZ区后,只能对DMZ区进行破坏,无法影响到内部网络,所以这也是目前最安全的防火墙系统。

5. VPN

虚拟专用网(VPN)是企业网在因特网等公共网络上的延伸,它通过一个私有的通道在公共网络上创建一个安全的私有连接。因此,从本质上说VPN是一个虚信道,它可用来连接两个专用网,通过可靠的加密技术方法保证其安全性,并且是作为一个公共网络的一部分存在的。实现VPN的关键技术主要有隧道技术、加解密技术、密钥管理技术和身份认证技术。下图是一个VPN构成的原理示意图。

VPN构成原理示意图

隧道技术是VPN关键技术之一(此外还包括加解密技术、密钥管理技术和身份认证技术),它 是一种数据封装协议,也就是将一种协议封装在另一种协议中传输,从而实现被封装协议对封装协 议的透明性。根据其工作的层次可以分为以下两类。

二层隧道技术:包括PPP基础上的PPTP(点到点隧道协议)和L2F(二层转发协议)、L2TP(二层隧道协议);

三层隧道技术:主要代表是IPSec(IP层安全协议,它是IPv4和IPv6的安全标准)、移动IP协议 和虚拟隧道协议(VTP)。

6. 漏洞扫描

漏洞扫描系统是一种自动检测目标主机安全弱点的程序,漏洞扫描系统的原理是根据系统漏洞库对系统可能存在的漏洞进行一一验证。黑 客利用漏洞扫描系统可以发现目标主机的安全漏洞从而有针对性的对系统发起攻击:系统管理员利用漏洞扫描系统可以查找系统中存在的漏洞并进行修补从而提高系统的可靠性。漏洞扫描系统不能用于发现网络入侵者,用于检测网络入侵者的系统称为入侵检测系统。

三、计算机病毒与木马

1. 病毒与木马的概念

在计算机中,恶意代码主要分两类,即病毒与木马。

病毒:一段可执行的程序代码,通过对其他程序进行修改,可以感染这些程序,使其含有该病 毒程序的一个复制。

计算机病毒的生命周期包括4个阶段:潜伏期(不做任何事,等待激活事件,并非所有病毒都有 该阶段),繁殖阶段(也就是传染阶段,开始复制复本),触发阶段(也就是开始执行破坏性工作 的阶段),执行阶段(功能完成)。

木马:实质上是一个网络客户端/服务器程序(C/S),是一种基于远程控制的黑客工具。其主要特征包括:

不需要服务端用户的允许就能够获得系统的使用权; 程序体积十分小,执行时不会占太多的资源;执行时很难停止它的活动,并且不会在系统中显示出来;
一次启动后就会自动加载在系统的启动区,在每次启动时能够自动运行; 一次执行后会通过更换文件名之类的方法来隐藏自己;
实现服务端用户无法显示执行的动作
木马通常由服务器端和客户端组成,服务器端将运行在被控制的主机中,而客户端则是攻击者 用来远程控制的主要工具。

2. 病毒的分类

每种病毒都有 自己的名称,从名称通常可以判断出该病毒的类型。

(1)系统病毒。

系统病毒的前缀为Win32、 PE、 Win95、 W32、 w95等。这些病毒的一般共 有的特性是可以感染Windows操作系统的*.exe 和*.dl1 文件,并通过这些文件进行传播。

(2)蠕虫病毒。

蠕虫病毒的前缀是Worm。这种病毒的共有特性是通过网络或系统漏洞进行传播,很大部分的蠕虫病毒都有向外发送带毒邮件,阻塞网络的特性。比如,冲击波(阻塞网络)、小邮差(发带毒邮件)等。

(3)木马病毒、黑客病毒。

木马病毒其前缀是Trojan, 黑客病毒前缀名一般为 Hack. QQ消息尾巴木马:Trojan.QQ3344,还有大家可能遇见比较多的针对网络游戏的木马病毒如Trojan.Lmir:PSW.60.

(4)脚本病毒。

脚本病毒的前缀是: Scripte. 脚本病毒的共有特性是使用脚本语言编写,通过网页进行的传播的病毒,如红色代码(Scipt.Redleo… 脚本病毒还会有VBS、JS (表明是何种脚本编写的)等前缀,如欢乐时光(VBS Happyim十四日(sotrgte.c)等。

(5)宏病毒。

宏病毒也是脚本病毒的一种, 由于它的特殊性,因此在这里单独算成类。宏病毒的前缀是Macto.第二前缀是Word, Excel 其中之一, 如Macro Word. WiteSre.美丽莎(Macro.Melissa).

(6)后门病毒。

后门病毒的前级是Backdor.该类病毒的共有特性是通过网络传播,给系统开后门。给用户计算机带来安全隐患。

(7)病毒种植程序病毒。

这类病毒的共有特性是运行时会从体内释放出一个或几个新的病毒到系统目录下,由释放出来的新病毒产生破坏,如冰河播种者(rperingHe2.2C)、 MSN射手(Dropper. WormSmibag)等。

(8)破坏性程序病毒。

破坏性程序病毒的前缀是Harm.这类病毒的共有特性是本身具有好看的图标来诱感用户点击,当用户点击这类病毒时,病毒便会直接对用户计算机产生破坏,如格式化C盘(Harm formatC.f、杀手命令(Harm.CommandKiller) 等。

(9)玩笑病毒。

玩笑病毒的前缀是Joke,也称恶作剧病毒。这类病毒的共有特性是本身具有好看的图标来诱感用户点击,当用户点击这类病毒时,病毒会做出各种破坏操作来吓唬用户,其实病毒并没有对用户计算机进行任何破坏,如女鬼(Joke.Girl ghost)病毒。

(10)捆绑机病毒。

捆绑机病毒的前缀是Binder.这类病毒的共有特性是病毒作者会使用特定的捆绑程序将病毒与些应用程序如QQ、 IE捆绑起来,表面上看是一个正常的文件。当用户运行这些捆终病毒时,会表面上运行这些应用程序,然后隐藏运行捆绑在一起的病毒, 从而给用户造成危害,如据绑QQ0 (indreQssQQBin).系统杀手(Binder kly等。


原文链接:软件设计师笔记之信息安全知识

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章