阅读下列说明和代码,回答问题1和问题2,将解答卸载答题纸的对应栏内。【说明】某一本地口令验证函数(C语言环境,X86_32指令集)包含如下关键代码:某用户的口令保存在字符数组origPassword中,用户输入的口令保存在字符数组userPassword中,如果两个数组中的内容相同则允许进入系统。【问题1】用户在调用gets()函数时输入什么样式的字符串,可以在不知道原始口令“Secret”的情况下绕过该口令验证函数的限制?【问题2】上述代码存在什么类型的安全隐患?请给出消除该安全隐患的思路。

题目

阅读下列说明和代码,回答问题1和问题2,将解答卸载答题纸的对应栏内。

【说明】

某一本地口令验证函数(C语言环境,X86_32指令集)包含如下关键代码:某用户的口令保存在字符数组origPassword中,用户输入的口令保存在字符数组userPassword中,如果两个数组中的内容相同则允许进入系统。

【问题1】

用户在调用gets()函数时输入什么样式的字符串,可以在不知道原始口令“Secret”的情况下绕过该口令验证函数的限制?

【问题2】

上述代码存在什么类型的安全隐患?请给出消除该安全隐患的思路。


相似考题
参考答案和解析
正确答案:
【问题一】只要输入长度为24的字符串,其前12个字符和后12个字符一样即可。【问题二】gets()函数必须保证输入长度不会超过缓冲区,一旦输入大于12个字符的口令就会造成缓冲区溢出。解决思路:使用安全函数来代替gets()函数,或者对用户输入进行检查和校对,可通过if条件语句判断用户输入是否越界。
更多“阅读下列说明和代码,回答问题1和问题2,将解答卸载答题纸的对应栏内。【说明】某一本地口令验证函数( ”相关问题
  • 第1题:

    阅读下列说明,回答问题1至问题4,将解答填入答题纸的对应栏内。

    [说明]

    下面是用小王用Dreamweaver MX编写的一个网页,如图12-2所示。

    从这个图片上,我们可以看出小王使用了Dreamweaver MX的哪些功能?


    正确答案:①命名网页名称为“练习”。 ②保存文件为“2.htm”。 ③设置背景颜色。 ④插入表格并把第一行的三列合并成了一列。又把表格边框设为1设置边框颜色为橘黄色。 ⑤层的使用。 ⑥设置水平线并设置水平线的颜色。 ⑦设置字体为宋体并设置字体颜色为黑色大小为2位置居中。 ⑧没有定义站点。
    ①命名网页名称为“练习”。 ②保存文件为“2.htm”。 ③设置背景颜色。 ④插入表格,并把第一行的三列合并成了一列。又把表格边框设为1,设置边框颜色为橘黄色。 ⑤层的使用。 ⑥设置水平线,并设置水平线的颜色。 ⑦设置字体为宋体,并设置字体颜色为黑色,大小为2,位置居中。 ⑧没有定义站点。

  • 第2题:

    试题一(共15分)

    阅读以下说明,回答问题1至问题5,将解答填入答题纸对应的解答栏内。

    【说明】

    某网吧拓扑结构如图 1-1 所示,可提供影视、游戏竞技、视频聊天等多种服务,采用VLAN 划分来区分不同的服务。

    问题 1】(2分)

    网吧要求实现千兆接入,可采用的方式为 (1) 。

    (1)备选答案:

    A. FTTx

    B. ADSL

    C. PSTN拨号


    正确答案:A

  • 第3题:

    阅读下列说明,回答问题1至问题2,将解答填入答题纸的对应栏内。

    [说明]

    如图10-4所示是电子商务系统平台结构示意图。

    请把空缺的地方填写完整。


    正确答案:(1)接口中间层。 (2)Web服务器。 (3)数据库服务器。
    (1)接口中间层。 (2)Web服务器。 (3)数据库服务器。

  • 第4题:

    阅读下列说明,回答问题1至问题3,将解答填入答题纸的对应栏内。

    [说明]

    下图是一个完整的供应链结构图,如图7-1所示。

    图7-2是管进与电子商务的整全图。

    请把图7-1空缺的部分补充完整。


    正确答案:(1)制造商 (2)零售商 (3)供应信息流。
    (1)制造商 (2)零售商 (3)供应信息流。

  • 第5题:

    阅读以下关于软件测试的说明,回答司题l至问题3,将解答填入答题纸的对应

    栏内。

    【说明】

    使用在汽车、飞机中的嵌入式软件, 日于直接影响人的生命及财产安全,测试要求

    更为严格。语句覆盖、判定覆盖、条件覆盖和MC/DC覆盖是通常对这类软件的要求。

    以下是一段C语言代码,请仔细阅读并回答相关问题:

    【问题1】(6分)

    请根据测试要求,简要说明语句覆盖、判定覆盖、条件覆盖和MC/DC覆盖的含义。

    将答案填写在答题纸的对应栏中。

    【问题2】(5分)

    画出以上代码的流程图,将答案填写在答题纸的对应栏中。

    【问题3】(4分)

    请根据【说明】中的C语言代码,计算满足MC/DC覆盖要求的用例数量及条件取

    值范围,将答案填写在答题纸的对应栏中.


    正确答案:
    试题三分析
    本题考查嵌入式软件测试的基本知识.
    语句覆盖要求设计足够多的测试用例,运行被测程序,使得程序中每条语句至少被
    执行一次。定覆盖(分支覆盖)要求设计足够多的测试用例,运行被测程序,使得程序
    中的每个判断的“真”和“假”都至少被执行一次。条件覆盖要求设计足够多的测试用
    例,运行被测程序,使得判定中的每个条件获得各种可能的结果,即每个条件至少有一
    次为真值,有一次为假值。MC/DC覆盖要求每个条件的取值都有覆盖,每个判定值都有
    覆盖且每个条件都能独立影响判定结果,各覆盖率的含义如表2.5所示。

    【问题2]
    本问题考查程序流程图的画法。注意开始、结束的符号。
    根据源代码,程序流程图如下。

    【问题3]
    本问题考查MC/DC覆盖率判定的综合运用。
    MC/DC与代码中的逻辑运算有关。本题代码中的逻辑运算为x>0&&y>0。根据
    MC/DC的定义,MC/DC覆盖要求每个条件的取值都有覆盖,每个判定值都有覆盖且每
    个条件都能独立影响判定结果。对于a&&b这样的逻辑运算,真值表如下。

    对测试用例1和测试用例2,条件a不变,因为条件b的不同而导致结果的不同,
    因此条件b独立影响判定的结果。对测试用例2和测试用例3,因为条件b不变,条件a
    的不同而导致结果的不同,因此条件a独立影响判定的结果。综合以上,对逻辑运算a&&
    b应产生三个测试用例,包括:(True,False)、(True,True)、(False,True)。
    所以本题用例数量:3个;条件取值范围:(x>0andy<=0)、(x<=0andy>0)及(x>0
    andy>0)。
    参考答案

    【问题2]
    【问题3]
    用例数量:3个;
    条件取值范围:
    (x>0andy<=0)、(x<=0andy>0)及(x>0andy>0)

  • 第6题:

    阅读以下说明,回答问题1至问题3,将解答填入答题纸对应的解答栏内。

    说明】

    某公司为保护内网安全,采用防火墙接入Internet,网络结构如图4-1所示。

    【问题 1】(2分)

    防火墙支持三种工作模式:透明网桥模式、路由模式和混杂模式。在 (1) 模式下,防火墙各个网口设备的IP地址都位于不同的网段。


    正确答案:

    1)路由

  • 第7题:

    阅读以下C代码,回答问题1和问题2,将解答填入答题纸的对应栏内。【C代码1】


    【问题2】写出【代码2】的运行时的输出结果。


    答案:
    解析:
    (1)输入-1331的结果是:Palindromic number.a=-1331 b=1331 输入795的结果是:a=795 b=597(2) Passed,point=4 Passed,point=1 Passed,point=1Passed,point=1 Failed

  • 第8题:

    阅读以下说明,回答问题1至问题2,将解答填入答题纸对应的解答栏内。

    【说明】
    某公司为推广洗涤新产品,需要进行用户体检调查。图4-1为调查表填写页面,表4-1所示为利用Microsoft Access创建的数据库,它将记录被调查用户的姓名、性别、年龄、了解产品方式和评价等信息。







    答案:
    解析:

  • 第9题:

    阅读以下说明,回答问题1至问题2,将解答填入答题纸对应的解答栏内。
    【说明】
    某留言系统采用ASP+Access开发,其后台管理登录页面如图4-1所示。

    【问题1】(9分)
    以下是该后台管理登录页面login.asp的部分代码,请仔细阅读该段代码,根据图4-1 将(1)~(9)的空缺代码补齐。



    【问题2】(6分)
    1.在登录页面 login.asp 中通过<!--#include file=“bbb.asp”-->导入了bbb.asp的代码,以下是bbb.asp的部分代码,请仔细阅读该段代码,将空缺代码补齐。



    答案:
    解析:


  • 第10题:

    阅读下列说明,回答问题1和问题2,将解答写在答题纸的对应栏内。
    【说明】
    Windows 系统的用户管理配置中,有多项安全设置,如图2-1 所示。





    答案:
    解析:
    【问题1】(3分)属于账号策略。 账户策略主要包括密码策略和账户锁定策略两种安全设置。
    【问题 2】(3分)Abcd321 test123! 123@host 密码必须符合复杂性要求:启用此策略,用户账户使用的密码必须符合复杂性的要求。 密码复杂性必须符合下列最低要求: 不能包含用户的账户名; 不能包含用户姓名中超过两个连续字符的部分; 至少有六个字符长; 密码总必须包含一下4类字符中的三类字符: 1、英文大写字母(A-Z) 2、英文小写字母(a-z) 3、10个基本数字(0-9) 4、特殊符号(!@#¥%等)

  • 第11题:

    阅读下列说明和C++代码,回答问题,将解答填入答题纸的对应栏内。
    【说明】某航空公司的会员积分系统将其会员划分为:普卡 (Basic)、银卡(Silver)和金卡 (Gold) 三个等级。非会员 (NonMember) 可以申请成为普卡会员。会员的等级根据其一年内累积 的里程数进行调整。描述会员等级调整的状态图如图 5-1 所示。现采用状态 (State) 模式实现上述场景,得到如图 5-2 所示的类图。




    【问题1】(15分)阅读上述说明和C++代码,将应填入 (n) 处的字句写在答题纸的对应栏内。


    答案:
    解析:
    注意:原版的题目应该是Cbasic、CSilve。(1) virtual double travel(int miles,FrequentFlyer* context)=0(2)context->setState(context->Cbasic)(3)context->setState(context->CSilve)(4)context->setState(context->Cbasic)(5)context->setState(context->CSilve)

  • 第12题:

    阅读以下说明,回答问题1至问题4,将解答填入答题纸对应的解答栏内。
    【说明】
    某企业采用Windows Server 2003配置了DHCP、DNS和WEB服务。
    【问题1】(每空1分,共4分)
    DHCP服务器地址池192.168.0.1~192.168.0.130,其中192.168.0.10分配给网关,192.168.0.11~192.168.0.15分配给服务器,192.168.0.20分配给网络管理员。









    答案:
    解析:
    (1) 192.168.0.1 (2)192.168.0.130(3)192.168.10-192.168.15 (4) 192.168.0.20
    (5)错 (6) 对 (7)对 (8)错 (9) 对 (10) 错(11)C (12)相同IP地址,不同端口或者不同IP地址,相同端口(13) 驱动没有安装好 (14) 禁用 (15) 高速串行设备,俗称”火线“

  • 第13题:

    阅读下面的说明,回答问题1~问题4,将解答填入答题纸对应的解答栏内。

    [说明]

    阅读以下说明,回答问题1~问题4,将解答填入答题纸对应的解答栏内。

    windows Server 2003是一个多任务多用户的操作系统,能够以集中或分布的方式实现各种应用服务器角色,是目前应用比较广的操作系统之一。

    Windows内置许多应用服务功能,将下表中(1)~(5)处空缺的服务器名称填写在答题纸对应的解答栏内。

    (1)


    正确答案:域名(DNS)服务器
    域名(DNS)服务器

  • 第14题:

    阅读以下说明和关系表,回答问题1~4,将解答对应的解答栏内。

    [说明]

    关系变量R{A,B,C,D,E,F}满足如下的函数依赖

    AD→E,AEB→D,B→CF,DE→B,DC→E,EC→FA,EF→DB,E→A

    求此模型的最小函数依赖集。


    正确答案:分解函数依赖的右部: BE→A AEB→D DE→B EC→F EC→A EF→D EF→B B→C B→F E→A 消去冗余属性: ∵E→A ∴BE→A冗余; ∵E→A ∴EC→A冗余; ∵EF→D ∴EF→DE又有DE→B∴EF→B冗余 ∵EF→D ∴AEF→AD ∵B→F ∴AEB→AEF ∴AEB→AD ∴AEB→D冗系 最终的最小依赖集为: DE→B EC→F EF→D E→A B→C B→F
    分解函数依赖的右部: BE→A AEB→D DE→B EC→F EC→A EF→D EF→B B→C B→F E→A 消去冗余属性: ∵E→A ∴BE→A冗余; ∵E→A ∴EC→A冗余; ∵EF→D ∴EF→DE,又有DE→B,∴EF→B冗余 ∵EF→D ∴AEF→AD ∵B→F ∴AEB→AEF ∴AEB→AD ∴AEB→D冗系 最终的最小依赖集为: DE→B EC→F EF→D E→A B→C B→F

  • 第15题:

    阅读下列说明,回答问题1至问题2,将解答填入答题纸的对应栏内。

    [说明]

    电子商务系统的外部社会环境如图10-5所示。

    请把空缺的地方填写完整。


    正确答案:(1)原料供应商。 (2)企业电子商务系统。 (3)消费者。
    (1)原料供应商。 (2)企业电子商务系统。 (3)消费者。

  • 第16题:

    阅读以下说明和关系表,回答问题1~5,将解答填入对应的解答栏内。

    [说明]

    试用SQL查询语句表达下列对教学数据库中的3个基本表STUDENT,COURSE,SC的查询

    [关系表]

    查询全体学生的姓名和年龄。


    正确答案:SELECT SNAME 2005—BIRTH _ YEAR FROM STUDENT;
    SELECT SNAME, 2005—BIRTH _ YEAR FROM STUDENT;

  • 第17题:

    阅读以下说明,回答问题1至问题4,将解答填入答题纸对应的解答栏内。

    【说明】

    某公司网络的 Internet接入方式如图3-1 所示。

    【问题 1】(4分)

    查看路由器R1的状态信息如图3-2所示, 则可以确定R1的E0端口IP地址是 (1) ,

    E1端口的IP地址是 (2) 。


    正确答案:

    1222.90.196.54

    2192.168.0.1
    试题三分析
    本题考查网络配置和网络故障的处理。题目给出一个小型公司的简单网络配置图,要求根据题意完成简单的网络配置;题中设置了一些常见的网络故障,要求考生能根据故障现象推测出故障原因并提供解决故障的思路和方案。
    【问题1】
    根据图3-1可知,E0端口位于外网网段,E1端口位于内网网段。根据图3-2两个网卡的配置对应着E0端口和E1端口的配置,从“WAN端”和“LAN端”可以推测E0对应于“WAN端”,E1端口对应于“LAN端”;再从“222.90.196.54” IP地址属于公网地址,“192.168.0.1”IP地址属于私网地址可以确定E0端口IP地址是“222.90.196.54”,E1端口IP地址是“192.168.0.1”。

  • 第18题:

    阅读以下两个说明、c函数和问题,将解答写入答题纸的对应栏内。

    【说明1】

    函数main()的功能旨在对输入的一个正整数n,计算12+22+32+…+n2,但是对该函数进行测试后没有得到期望的结果。

    【c函数】

    1.输入5测试上述main函数时,显示结果如下所示。

    input an integer:5

    result:-582598909

    2.将行号为7的代码修改为:prinff(”n=%d\nresuh:%d\n”,n,sum);并再次

    输入5测试main函数,显示结果如下所示。

    input an interger:5

    n=2293632

    result:-582598909

    阅读以上两个说明、c函数和问题,将解答写入答题纸的对应栏内。

    【问题1】

    请给出上述main函数中需要修改的代码行号,并给出修改后的整行代码。

    【说明2】

    函数test_f2{}编译时系统报告有错,修改后得到函数12_B{}。对函数12_B{}

    进行编译时顺利通过,在某些C系统中执行时却由于发生异常而不能正确结束。

    【c函数2】

    【问题2】(1)请指出函数test_f2中不能通过编译的表达式;(2)请指出可能导致函数f2_B运行异常的表达式。


    正确答案:问题(1):     以上的答案仅供参考并没有先后顺序。另外对sum进行初始化的“sum=O;”也可以加在第3行第4行以及第5行的适当的位置。 问题(2):(1)str++ (2) str:‘a’
    问题(1):     以上的答案仅供参考,并没有先后顺序。另外对sum进行初始化的“sum=O;”也可以加在第3行,第4行以及第5行的适当的位置。 问题(2):(1)str++ (2) str:‘a’ 解析:问题(1)解析:程序中的错误可以分为语法错误和语义错误,其中语义错误又可以分为静态语义错误和动态语义错误。语法错误和静态语义错误可以在编译的时候发现,而动态的语义错误只有在程序运行的结果中才能表现出来。C函数1中的main函数通过编译但是运行结果不对,虽然输出的是sum的值,但是在for循环中sum的值的得到与k以及n的值是相关的,因此我们需要从n、k、sum的定义和初始化查起。首先来看k,在定义的时候没有被初始化,但是在for循环进行使用的时候被初始化为1,后面通过k++进行改变的,这一部分是正确的。接下来看n,n在定义的时候也没有被初始化,n的值是通过scanf(“%d”,n)取得的,由第二次测试的显示结果可以看出,n的值并不是我们的输入值5,很显然n的值设定不对,回头仔细检查scanf函数的调用才发现n的前面缺少取地址运算符“&”,作为一名程序员都应该知道scanf中的变量使用的是地址,所以正确的写法为“scanI。(“%d”,&m);”;再来看sum,sum的值主要是通过for循环中的语句“sum+=k*k”来改变的。“sum+=k*k”实际上等同于“sum=sum+k*k”,可是我们知道sum在定义的时候并没有初始化,那么在我们第一次进入for循环的时候sum的值是不确定的,在这种情况下执行语句“sum+=k*k”得到的值自然也就无法预料了,所以我们需要在sum使用之前对其进行初始化“sum=0”。另外,在程序中还有一处就是第5行,可以看到在句末有一个分号,这样就等于for循环语句的循环体为空,“sum+=k * k”语句并没有被包含到for循环语句中,只是在循环结束后执行一次,最后输出地结果sum是等于n * n,不符合题目要求的结果(12+22+32+……+n2),正确的做法就是删除第5行末位的分号。问题(2)的解析:函数test~12()编译时系统报错,检查函数能够发现“char str[ ]=“test string”;”定义了字符数组str,并进行了初始化,因此str就是数组名,也是数组在内存中的首地址,*str则表示的是str[O],通过“* str=‘a’”改变str[O]的值是对的,但是“str++”就不对了,在c语言中str是数组名是地址常量,是不能修改的,所以系统在编译的时候会报告错误。如果我们将str定义为一个char类型的指针的话,则可以通过str++来修改str的值,使它指向不同字符对象,但是在函数f2_B()中定义“char *str=‘test string’;”的时候,直接对指针str用常量进行了初始化,使得str为一个指针常量,这样即使我们可以通过str++取得字符串中的任何一个字符,但是却不能够通过“*str=‘a’”修改*str的值,所以在运行的时候就会发生异常不能够正常结束。

  • 第19题:

    阅读下列说明,补充(1)-(9),将解答填入答题纸的对应栏内。


    答案:
    解析:

  • 第20题:

    l阅读以下说明,回答问题l至问题4,将解答填入答题纸对应的解答栏内。
    【说明】
    某小公司网络拓扑结构如图1-l所示,租用了一条ADSL宽带来满足上网需求,为了便于管理,在Server2上安装DHCP服务提供IP地址动态配置。

    【问题1】(4分)
    ADSL利用 (1) 网络,采用 (2) 复用技术来实现宽带接入。


    答案:
    解析:
    l1.电话网络 2.频分复用

  • 第21题:

    阅读下列说明,回答问题1和问题2,将解答填入答题纸的对应栏内。
    【说明】
    某系统在线讨论区采用ASP+Access开发,其主页如图4-1所示

    【问题1】(8分)
    以下是该网站主页部分的html代码,请根据图4-1将(1)~(8)的空缺代码补齐。

    l......
    < (2) name="guestbook" (3) ="post" (4) ="guestbook_add.asp"> l
     
      
      < (6) name="body" cols="60" rows="5">

    ...... (1)~(8)的备选答案: A. submit B.form C.text D.textarea E. include F.action G method H.value


    答案:
    解析:
    1.include
    2. form
    3.method
    4.action
    5.text
    6. input
    7.submit
    8.value

  • 第22题:

    阅读下列说明和代码,回答问题1和问题2,将解答写在答题纸的对应栏内。 ?【说明】 ?某本地口令验证函数(C语言环境,X86 32指令集)包含如下关键代码;某用户的口令保存在字符数组origPassword中,用户输入的口令保存在字符数 组userPassword中,如果两个数组中的内容相同则允许进入系统。



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


    答案:
    解析:
    【问题1】gets(userPassword); 只要输入长度为超过12个字符,会出现缓冲区溢出的问题,导致函数不能正常工作。?因此只要前12个字符和后12个字符一致,则在比较的时候,因为后12个字符覆盖了origpassword,因此会绕过验证。
    【问题2】gets()函数必须保证输入长度不会超过缓冲区,一旦输入大于12个字符的口令就会造成缓冲区溢出。解决方案:改进gets()函数的安全性,或者对用户输入进行检查和校对,可通过if条件语句判断用户输入是否越界。

  • 第23题:

    阅读以下说明,回答问题1至问题4,将解答填入答题纸对应的解答栏内。
    【说明】
    某企业网络拓扑如图1-1所示,A~E是网络设备的编号。










    答案:
    解析:
    【问题1】参考答案:1.B,2.A,3.C 4.D【问题2】5.ethernet 1 6、59.74.221.254【问题3】7) C.deny 8、A 9.F【问题4】10)192.168.4.1
    11)192.168.100.0 12)设置接口的类型是trunk
    【解析】
    【问题1】试题分析:这是一道简单的概念题,考察我们对企业园区网络的基本拓扑结构的了解。通常的企业为了确保内部网络的安全,会设置防火墙,防火墙有3个区域,外网,内网和DMZ区。DMZ通常用于存放各种服务器。因此首先可以选出B这个位置是防火墙,A用于连接Internet,是路由器。DMZ区内部有多台服务器,需要使用交换机连接。【问题3】试题分析:这是网络工程师考试第一次考华为的设备配置,而我们考前准备的都是ios的命令。那这道题是不是很难呢,其实这道题非常简单,只要我们有IOS的命令经验,这道题完全可以自己凭经验做出来,题目出题也是以选择题的形式,因此更加容易,对于没有用过华为设备的考生来说,也是非常简单的。
    【问题4】试题分析:这道题同样是基本的配置,掌握基本命令即可。