201611信息安全下午真题

第 1 题

阅读下列说明和图,回答问题1至问题4,将解答填入答题纸的对应栏内。
【说明】
研究密码编码的科学称为密码编码学,研究密码破译的科学称为密码分析学,密码编码学和密码分析学共同组成密码学。密码学作为信息安全的关键技术,在信息安全领域有着广泛的应用。

【问题1】(9分)

密码学的安全目标至少包括哪三个方面?具体内涵是什么?
【问题2】(3分)
对下列违规安全事件,指出各个事件分别违反了安全目标中的哪些项?
(1)小明抄袭了小丽的家庭作业。
(2)小明私自修改了自己的成绩。
(3)小李窃取了小刘的学位证号码、登录口令信息,并通过学位信息系统更改了小刘的学位信息记录和登录口令,将系统中小刘的学位信息用一份伪造的信息替代,造成小刘无法访问学位信息系统。
【问题3】(3分)
现代密码体制的安全性通常取决于密钥的安全,为了保证密钥的安全,密钥管理包括哪些技术问题?
【问题4】(5分)
在图1-1给出的加密过程中,Mi ,i=1,2,…,n表示明文分组,Ci,i=1,2,…,n表示密文分组,Z表示初始序列,K表示密钥,E表示分组加密过程。该分组加密过程属于哪种工作模式?这种分组密码的工作模式有什么缺点?


答案与解析

  • 试题难度:较难
  • 知识点:网络信息安全概述>网络信息安全基本属性
  • 试题答案:

    【问题1】
    (1)保密性:保密性是确保信息仅被合法用户访问,而不被泄露给非授权的用户、实体或过程,或供其利用的特性。即防止信息泄漏给非授权个人或实体,信息只为授权用户使用的特性。
    (2)完整性:完整性是指所有资源只能由授权方或以授权的方式进行修改,即信息未经授权不能进行改变的特性。信息在存储或传输过程中保持不被偶然或蓄意地删除、修改、伪造、乱序、重放、插入等破坏和丢失的特性。
    (3)可用性:可用性是指所有资源在适当的时候可以由授权方访问,即信息可被授权实体访问并按需求使用的特性。信息服务在需要时,允许授权用户或实体使用的特性,或者是网络部分受损或需要降级使用时,仍能为授权用户提供有效服务的特性。
    【问题2】
    (1)保密性
    (2)完整性
    (3)可用性、完整性、保密性
    【问题3】
    答:密钥管理包括密钥的产生、存储、分配、组织、使用、停用、更换、销毁等一系列技术问题。
    【问题4】
    明密文链接模式。
    缺点:当Mi 或Ci 中发生一位错误时,自此以后的密文全都发生错误,即具有错误传播无界的特性,不利于磁盘文件加密。并且要求数据的长度是密码分组长度的整数倍,否则最后一个数据块将是短块,这时需要特殊处理。

  • 试题解析:

    1、密码学作为信息安全的关键技术,其安全目标主要包括三个非常重要的方面:保密性、完整性和可用性。保密性:保密性是确保信息仅被合法用户访问,而不被泄漏给非授权的用户、实体或过程,或供其利用的特性。即防止信息泄漏给非授权个人或实体,信息只为授权用户使用的特性。完整性:完整性是指所有资源只能由授权方或以授权的方式进行修改,即信息未经授权不能进行改变的特性。信息在存储或传输过程中保持不被偶然或蓄意地删除、修改、伪造、乱序、重放、插入等破坏和丢失的特性。可用性:可用性是指所有资源在适当的时候可以由授权方访问,即信息可被授权实体访问并按需求使用的特性。信息服务在需要时,允许授权用户或实体使用的特性,或者是网络部分受损或需要降级使用时,仍能为授权用户提供有效服务的特性。
    2、根据保密性、完整性及可用性分析,抄袭作业是属于违反保密性,修改成绩是属于违反完整性,更改信息记录和登录口令导致无法访问属于违反可用性、完整性、保密性。
    3、密码体制的安全应当只取决于密钥的安全,而不取决于对密码算法的保密。密钥管理包括密钥的产生、存储、分配、组织、使用、停用、更换、销毁等一系列技术问题。每个密钥都有其生命周期,要对密钥的整个生命周期的各个阶段进行全面管理。
    明密文链接模式:设明文M=(M1 ,M2 ,…,Mn),相应的密文C=(C1 ,C2 ,…,Cn),而



    其中Z为初始化向量。
    根据上式可知,即使Mi Mj ,但因一般都有Mi-1Ci-1Mj-1Cj-1 ,从而
    使Ci Cj ,从而掩盖了明文中的数据模式。同样根据上式可知加密时,当MiCi 中发生一位错误时,自此以后的密文全都发生错误。这种现象称为错误传播无界。
    解密时有
     

    同样,解密时也是错误传播无界。
    其缺点:当Mi  或Ci 中发生一位错误时,自此以后的密文全都发生错误,即具有错误传播无界的特性,不利于磁盘文件加密。并且要求数据的长度是密码分组长度的整数倍,否则最后一个数据块将是短块,这时需要特殊处理。

第 2 题

阅读下列说明和图,回答问题1至问题2,将解答填入答题纸的对应栏内。
【说明】
访问控制是对信息系统资源进行保护的重要措施。适当的访问控制能够阻止未经授权的用户有意或者无意地获取资源。访问控制一般是在操作系统的控制下,按照事先确定的规则决定是否允许用户对资源的访问。图2-1给出了某系统对客体traceroute.mpg实施的访问控制规则。

【问题1】(3分)
针对信息系统的访问控制包含哪些基本要素?
【问题2】(7分)
分别写出图2-1中用户Administrator对应三种访问控制实现方法,即能力表、访问控制表和访问控制矩阵下的访问控制规则。

答案与解析

  • 试题难度:较难
  • 知识点:访问控制技术原理与应用>访问控制类型
  • 试题答案:【问题1】
    主体、客体、授权访问
    【问题2】
    能力表:
    (主体)Administrator <(客体)traceroute.mpg:读取,运行>
    访问控制表:
    (客体)traceroute.mpg<(主体)Administrator :读取,运行>
    访问控制矩阵:

  • 试题解析:1、访问控制的三个要素,即主体、客体和授权访问。
    主体:一个主动的实体,该实体造成了信息的流动和系统状态的改变,它包括商户、用户组、终端、主机或一个应用,主体可以访问客体。
    客体:指一个包含或接受信息的被动实体,对客体的访问要受控。它可以是一个字节、字段、记录、程序、文件,或者是一个处理器、存储器、网络节点等。
    授权访问:指主体访问客体的允许,授权访问对每一对主体和客体来说是给定的,决定了谁能够访问系统,能访问系统的何种资源以及如何使用这些资源。例如,授权访问有读写、执行,读写客体是直接进行的,而执行是搜索文件、执行文件。对用户的授权访问是由系统的安全策略决定的。
    2、能力表:以用户为中心建立权能表,表中规定了该用户可访问的文件名及访问能力。利用权能表可以很方便查询一个主体的所有授权访问。
    即:(主体)Administrator <(客体)traceroute.mpg:读取,运行>
    访问控制表:访问控制表是以文件为中心建立访问权限表。表中登记了该文件的访问用户名及访问权隶属关系。利用访问控制表,能够很容易地判断出对于特定客体的授权访问,哪些主体可以访问并有哪些访问权限。
    即:(客体)traceroute.mpg<(主体)Administrator :读取,运行>
    访问控制矩阵:利用二维矩阵规定了任意主体和任意客体间的访问权限。矩阵中的行代表主体的访问权限属性,矩阵中的列代表客体的访问权限属性,矩阵中的每一格表示所在行的主体对所在列的客体的访问授权。
    即:

第 3 题

阅读下列说明和图,回答问题l至问题3,将解答填入答题纸的对应栏内。
【说明】
防火墙是一种广泛应用的网络安全防御技术,它阻挡对网络的非法访问和不安全的数据传递,保护本地系统和网络免于受到安全威胁。 
图3-1给出了一种防火墙的体系结构。

【问题1】(6分)
  防火墙的体系结构主要有:

(1)双重宿主主机体系结构;
(2)(被)屏蔽主机体系结构;
(3)(被)屏蔽子网体系结构;
请简要说明这三种体系结构的特点。
【问题2】(5分)
(1)图3-1描述的是哪一种防火墙的体系结构?
(2)其中内部包过滤器和外部包过滤器的作用分别是什么?
【问题3】(8分)
设图3-1中外部包过滤器的外部IP地址为10.20.100.1,内部IP地址为10.20.100.2;
内部包过滤器的外部IP地址为10.20.100.3,内部IP地址为192.168.0.1,DMZ中Web服务器IP为10.20.100.6,SMTP服务器IP为10,20.100.8。
关于包过滤器,要求实现以下功能:不允许内部网络用户访问外网和DMZ,外部网络用户只允许访问DMZ中的Web服务器和SMTP服务器。内部包过滤器规则如表3-1所示。请完成外部包过滤器规则表3-2,将对应空缺表项的答案填入答题纸对应栏内。 

 

 

答案与解析

  • 试题难度:较难
  • 知识点:防火墙技术原理与应用>防火墙防御体系结构类型
  • 试题答案:【问题1】
    双重宿主主机体系结构:双重宿主主机体系结构是指以一台双重宿主主机作为防火墙系统的主体,执行分离外部网络与内部网络的任务。
    被屏蔽主机体系结构:被屏蔽主机体系结构是指通过一个单独的路由器和内部网络上的堡垒主机共同构成防火墙,主要通过数据包过滤实现内外网络的隔离和对内网的保护。
    被屏蔽子网体系结构:被屏蔽子网体系结构将防火墙的概念扩充至一个由两台路由器包围起来的周边网络,并且将容易受到攻击的堡垒主机都置于这个周边网络中。其主要由四个部件构成,分别为:周边网络、外部路由器、内部路由器以及堡垒主机。
     
    【问题2】
    (1)屏蔽子网体系结构。
    (2)内部路由器:内部路由器用于隔离周边网络和内部网络,是屏蔽子网体系结构的第二道屏障。在其上设置了针对内部用户的访问过滤规划,对内部用户访问周边网络和外部网络进行限制。
    外部路由器:外部路由器的主要作用在于保护周边网络和内部网络,是屏蔽子网体系结构的第一道屏障。在其上设置了对周边网络和内部网络进行访问的过滤规则,该规则主要针对外网用户。
     
    【问题3】
    (1)             (2)10.20.100.8         (3)10.20.100.8
    (4)
                 (5)UDP                      (6)10.20.100.
    (7)UDP       (8)10.20.100.

  • 试题解析:1、防火墙的经典体系结构主要有三种形式:双重宿主主机体系结构、被屏蔽主机体系结构和被屏蔽子网体系结构。
    双重宿主主机体系结构:双重宿主主机体系结构是指以一台双重宿主主机作为防火墙系统的主体,执行分离外部网络与内部网络的任务。
    被屏蔽主机体系结构:被屏蔽主机体系结构是指通过一个单独的路由器和内部网络上的堡垒主机共同构成防火墙,主要通过数据包过滤实现内外网络的隔离和对内网的保护。
    被屏蔽子网体系结构:被屏蔽子网体系结构将防火墙的概念扩充至一个由两台路由器包围起来的周边网络,并且将容易受到攻击的堡垒主机都置于这个周边网络中。其主要由四个部件构成,分别为:周边网络、外部路由器、内部路由器以及堡垒主机。

    2、(1)图中网络拓扑结构中包含有周边网络、外部路由器、内部路由器以及堡垒主机这四个部件,属于被屏蔽子网体系结构或屏蔽子网体系结构。
    (2)内部路由器:内部路由器用于隔离周边网络和内部网络,是屏蔽子网体系结构的第二道屏障。在其上设置了针对内部用户的访问过滤规划,对内部用户访问周边网络和外部网络进行限制。
    外部路由器:外部路由器的主要作用在于保护周边网络和内部网络,是屏蔽子网体系结构的第一道屏障。在其上设置了对周边网络和内部网络进行访问的过滤规则,该规则主要针对外网用户。

    3、规则号3和4配置SMTP服务器安全策略,入方向:源地址为,目的地址为SMTP服务器地址:10.20.100.8  ,出方向:源地址为10.20.100.8,目的地址为
    由端口号53得知,规则号5和6配置DNS安全策略,入方向:协议为UDP,源地址为10.20.100. ,出方向:协议为UDP,目的地址为10.20.100.

第 4 题

阅读下列说明,回答问题l至问题4,将解答填入答题纸的对应栏内。
【说明】
用户的身份认证是许多应用系统的第一道防线,身份识别对确保系统和数据的安全保密极其重要。以下过程给出了实现用户B对用户A身份的认证过程。
1.A->B:A
2.B->A:{B,Nb}pk(A)
3.A->B:h(Nb)
此处A和B是认证的实体,Nb是一个随机值,pk(A)表示实体A的公钥,{B,Nb}pk(A)表示用A的公钥对消息B娜进行加密处理,h(Nb)表示用哈希算法h对Nb计算哈希值。

【问题1】(5分)
认证与加密有哪些区别?
【问题2】(6分)
(1)包含在消息2中的“Nb”起什么作用?
(2)“Nb“的选择应满足什么条件?
【问题3】(3分)
 为什么消息3中的Nb要计算哈希值?
【问题4】(4分)
 上述协议存在什么安全缺陷?请给出相应的解决思路。

答案与解析

  • 试题难度:较难
  • 知识点:认证技术原理与应用>认证类型与认证过程
  • 试题答案:【问题1】
    认证和加密的区别在于:加密用以确保数据的保密性,阻止对手的被动攻击,如截取,窃听等;而认证用以确保报文发送者和接收者的真实性以及报文的完整性,阻止对手的主动攻击,如冒充、篡改、重播等。
    【问题2】
    (1) Nb是一个随机值,只有发送方B和A知道,起到抗重放攻击作用。
    (2) 应具备随机性,不易被猜测。
    【问题3】
    哈希算法具有单向性,经过哈希值运算之后的随机数,即使被攻击者截获也无法对该随机数进行还原,获取该随机数Nb的产生信息。
     
    【问题4】

    存在重放攻击和中间人攻击的安全缺陷;针对重放攻击的解决思路是加入时间戳、验证码等信息;针对中间人攻击的解决思路是加入身份的双向验证。

  • 试题解析:1、认证又称鉴别或确认,它是证实某事是否名副其实或是否有效的一个过程,认证和加密的区别在于:加密用以确保数据的保密性,阻止对手的被动攻击,比如发送方给接收方发送信息[我是希赛教育王老师]为确保信息在传输过程中不被别人看到,可以对该信息进行加密;而认证用以确保报文发送者和接收者的真实性以及报文的完整性,比如发送方防止在发送上述信息时被别人篡改,就可以采用认证方法。

    2、(1)Nb是一个随机值,用户B在验证用户A的身份时,首先会生成一个随机数,然后将该随机数和自己的身份信息一起用用户A的公钥加密发送给用户A,用户A接收后再将该随机数发送给用户B,因此,随机值Nb是验证的关键,并且该随机值只有发送方B和A知道,可以起到抗重放攻击作用。
    (2)在验证身份时,该随机值是关键,不仅要求传输的安全性,而且还要保证该数值的随机性且不易被猜测,因为一旦被猜出来,就可能假冒用户A的身份。

    3、哈希算法是具有单向性的,经过哈希值运算之后的随机数,即使被攻击者截获也无法对该随机数进行还原,获取该随机数Nb的产生信息,可以保障Nb在传输过程中的保密性。

    4、上述协议只有用户A的身份是经过验证的,攻击者可以重复发送第二个数据包给A消耗计算资源。攻击者可以截获第一个包,伪造A的身份,给B发送包声称自己是C,结果用户B会以用户C的公钥来加密,攻击者以C的私钥解密出数据包内容,得到Nb的产生信息。

第 5 题

阅读下列说明和代码,回答问题1和问题2,将解答写在答题纸的对应栏内。
【说明】
某本地口令验证函数(C语言环境,X86 32指令集)包含如下关键代码;某用户的口令保存在字符数组origPassword中,用户输入的口令保存在字符数组userPassword中,如果两个数组中的内容相同则允许进入系统。
.........................................................................................................................................................
[...]
Char origPassword[12]=“lSecret”
Char origPassword[12];
[...]
Gets(userPassword);   / 读取用户输入的口令/
[...]
 
 
If(strncmp(origPassword,userPassword,12)!=0)
{
Printf(“Password,doesn’t match!/n”);
Exit(-1);
}
[...]
/ 口令认证通过时允许用户访问/
[...]
.........................................................................................................................................................

【问题1】(4分)
用户在调用gets()函数时输入什么样式的字符串,可以在不知道的原始口令“Secret”的情况下绕过该口令验证函数的限制?
【问题2】(4分)
上述代码存在什么类型的安全隐患?请给出消除该安全隐患的思路。
 

答案与解析

  • 试题难度:较难
  • 知识点:网络安全漏洞防护技术原理与应用>网络安全漏洞处置技术与应用
  • 试题答案:【问题1】
    输入的字符串样式满足其前12个字符和后续12个字符一样;中间的字符串长度刚好可以填充userPassword和origPassword之间堆栈缓冲区的位置即可,当然整个字串不会引起代码运行的崩溃。
     
    【问题2】
    gets()函数必须保证输入长度不会超过缓冲区,一旦输入大于12个字符的口令就会造成缓冲区溢出。
    解决思路:使用安全函数来代替gets()函数,或者对用户输入进行检查和校对,可通过if条件语句判断用户输入是否越界。
  • 试题解析:1、函数strncmp(str1,str2,n)
    【参数】str1,str2 为需要比较的两个字符串,n为要比较的字符的数目。字符串大小的比较是以ASCII 码表上的顺序来决定,此顺序亦为字符的值。Strncmp()首先将s1 第一个字符值减去s2 第一个字符值,若差值为0 则再继续比较下个字符,直到字符结束标志'\0',若差值不为0,则将差值返回。
    【返回值】若str1与str2的前n个字符相同,则返回0;若s1大于s2,则返回大于0的值;若s1 若小于s2,则返回小于0的值。
    程序中在定义两个数组时,会分配两个12位的地址空间,origPassword在前,userPassword在后,gets()函数中,当userPassword输入位数大于12位时,就会溢出,多出来的字符将被写入到堆栈中,这就覆盖了堆栈原先的内容,根据函数的作用,只要userPassword的值和origPassword的值一致则可绕过该口令验证函数的机制;当输入的字符串样式满足其12个字符和后续12个字符一样,而中间的字串长度刚好可以填充userPassword和origPassword之间堆栈缓冲区的位置时,根据堆栈的后进先出原理,当读取userPassword的值时,溢出的后续12位会读取到userPassword中,而在读取origPassword的值时会读取到原先userPassword中的值,如此两个数组的值就会一致,从而绕过该口令验证函数的限制。
     
    2、gets()函数可以无上限的读取,而且不会判断上限,因此,gets()函数必须保证输入长度不会超过缓冲区,一旦大于该缓冲区就会造成溢出。可以使用安全函数来代替gets()函数,比如fgets()函数,或者对用户输入进行检查和校对,可通过if条件语句判断用户输入是否越界。

results matching ""

    No results matching ""