试题序号:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42

软件安全开发练习题


第1题(单选题)

某购物网站开发项目经过需求分析进入系统设计阶段。项目开发人员决定用户输入的信息,无论是用户名,口令还是查询内容,都需要进行校验或检查。请问以上安全设计者遵循的是哪项安全设计原则:( )

A 公开设计原则

B 不信任原则

C 隐私保护原则

D 心里可接受程度原则

第2题(单选题)

某单位根据业务需要准备立项开发一个业务软件,对于软件开发安全投入产生了分歧,开发部门认为开发阶段无需投入,软件开发完成后发现问题再降更低,信息中心则认为应在软件安全开发阶段投入,后期解决代价太大,双方选择对软件开发投入的准确说法?

A 信息中心的考虑是正确的,在软件立项投入解决软件安全问题,总体经费投入比软件运行后的费用更低

B 软件开发部门的说法是正确的,因为软件发现问题后更清楚问题所在

C 双方说法都正确,需要根据具体情况分析开发阶段投入解决问题还是开发之后

D 双发说法都有错误,软件安全问题在任何时候投入解决都可以

第3题()

第4题(单选题)

某政府机构委托开发商开发了一个OA系统,其中公文分发功能使用了FTP协议,该系统运行过程中被攻击者通过FTP对OA系统中的脚本文件进行了篡改,安全专家提出使用Http下载代替FTP功能以解决以上问题,该安全问题的产生主要是哪个阶段产生的 ( )

A 程序员在进行安全需求分析时,没有分析出OA系统开发的安全需求

B 程序员在软件设计时,没遵循降低攻击面的原则,设计了不安全的功能

C 程序员在软件编码时,缺乏足够的经验,编写了不安全的代码

D 程序员进行软件测试时,没有针对软件安全需求进行安全测试

第5题(单选题)

某银行网上交易系统开发项目在设计阶段分析系统运行过程中可能存在的攻击,请问以下哪一项工作不能降低该系统的受攻击面:

A:分析系统功能的重要性

B:分析从哪里可以访问这些功能

C:采取合理措施降低特权

D:分析系统应满足的性能要求

第6题(单选题)

<p>软件安全设计和开发中应考虑用户稳私保护,以下关于用户隐私保护的说法哪个是错误的?</p>

A:告诉用户需要收集什么数据及收集到的数据会如何被使用

B:当用户的数据由于某种原因要被使用时,给用户选择是否允许

C:用户提交的用户名和密码属于稳私数据,其它都不是

D:确保数据的使用符合国家.地方.行业的相关法律法规

第7题(单选题)

通过评估应用开发项目,而不是评估能力成熟度模型(CMM),IS审计师应该能够验证:

A:可靠的产品是有保证的

B:程序员的效率得到了提高

C:安全需求得到了规划、设计

D:预期的软件程序(或流程)得到了遵循

第8题(单选题)

由于频繁出现软件运行时被黑客远程攻击获取数据的现象,某软件公司准备加强软件安全开发管理,在下面做法中,对于解决问题没有直接帮助的是()

A:要求开发人员采用敏捷开发模型进行开发

B:要求所有的开发人员参加软件安全意识培训

C:要求规范软件编码,并制定公司的安全编码准则

D:要求增加软件安全测试环节,尽早发现软件安全问题

第9题(单选题)

IS审计师参与应用系统开发,他们从事以下哪项可以导致独立性的减弱.

A:对系统开发进行了复核

B:对控制和系统的其他改进提出了建议

C:对完成后的系统进行了独立评价

D:积极参与了系统的设计和完成

第10题(单选题)

<p>下面哪项属于软件开发安全方面的问题?</p>

A:软件部署时所需选用服务性能不高,导致软件执行效率低

B:应用软件来考虑多线程技术,在对用户服务时按序排队提供服务

C:应用软件存在sql注入漏洞,若被黑客利用能窃取数据库所用数据

D:软件受许可证(license)限制,不能在多台电脑上安装

第11题(单选题)

某网站在设计时经过了威胁建模和攻击面分析,在开发时要求程序员编写安全的代码,但是在部署时由于管理员将备份存放在WED目录下导致了攻击者可直接下载备份,为了发现系统中是否存在其他类拟问题,以下哪种测试方式是最佳的测试方法?

A:模糊测试

B:源代码测试

C:渗透测试

D:软件功能测试

第12题(单选题)

微软SDL将软件开发生命周期制分为七个阶段,并列出了十七项重要的安全活动。其中“弃用不安全的函数”属于( )的安全活动

A:要求(Rapuiroments)阶段

B:设计(Design)阶段

C:实施(Implenpentation)阶段

D:验证(Verifcation)阶段

第13题(单选题)

某公司开发了一个游戏网站,但是由于网站软件存在漏洞,在网络中传输大数据包时总是会丢失一些数据,如一次性传输大于2000个字节数据时,总是会有3到5个字节不能传送到对方,关于此案例,可以推断的是( )

A:该网站软件存在保密性方面安全问题

B:该网站软件存在完整性方面安全问题

C:该网站软件存在可用性方面安全问题

D:该网站软件存在不可否认性方面安全问题

第14题(单选题)

针对软件的拒绝服务攻击是通过消耗系统资源使软件无法响应正常请求的一种攻击方式,在软件开发时分析拒绝服务攻击的威胁,以下哪个不是需要考虑的攻击方式:

A:攻击者利用软件存在逻辑错误,通过发送某种类型数据导致运算进入死循环,CPU资源占用始终100%

B:攻击者利用软件脚本使用多重嵌套查询,在数据量大时会导致查询效率低,通过发送大量的查询导致数据库响应缓慢

C:攻击者利用软件不自动释放连接的问题,通过发送大量连接消耗软件并发连接数,导致并发连接数耗尽而无法访问

D:攻击者买通了IDC人员,将某软件运行服务器的网线拔掉导致无法访问

第15题(单选题)

关于软件安全开发生命周期(SDL),下面说法错误的是:

A:在软件开发的各个周期都要考虑安全因素

B:软件安全开发生命周期要综合采用技术.管理和工程等手段

C:测试阶段是发现并改正软件安全漏洞的最佳环节,过早或过晚检测修改漏洞都将增大软件开发成本

D:在设计阶段就尽可能发现并改正安全隐患,将极大减少整个软件开发成本

第16题(单选题)

某电子商务网站在开发设计时,使用了威胁建模方法来分折电子商务网站所面临的威胁,STRIDE是微软SDL中提出的威胁建模方法,将威胁分为六类,为每一类威胁提供了标准的消减措施,Spoofing是STRIDE中欺骗类的威胁,以下威胁中哪个可以归入此类威胁?

A:网站竞争对手可能雇佣攻击者实施DDoS攻击,降低网站访问速度

B:网站使用http协议进行浏览等操作,未对数据进行加密,可能导致用户传输信息泄露,例如购买的商品金额等

C:网站使用http协议进行浏览等操作,无法确认数据与用户发出的是否一致,可能数据被中途篡改

D:网站使用用户名.密码进行登录验证,攻击者可能会利用弱口令或其他方式获得用户密码,以该用户身份登录修改用户订单等信息

第17题(单选题)

企业最终决定直接采购商业化的软件包,而不是开发。那么,传统的软件开发生产周期(SDLC)中设计和开发阶段,就被置换为:

A:挑选和配置阶段

B:可行性研究和需求定义阶段

C:实施和测试阶段

D:(无,不需要置换)

第18题(单选题)

某单位开发了一个面向互联网提供服务的应用网站,该单位委托软件测评机构对软件进行了源代码分析.模糊测试等软件安全性测试,在应用上线前,项目经理提出了还需要对应用网站进行一次渗透性测试,作为安全主管,你需要提出渗透性测试相比源代码测试.模糊测试的优势给领导做决策,以下哪条是渗透性测试的优势?

A:渗透测试以攻击者的思维模拟真实攻击,能发现如配置错误等运行维护期产生的漏洞

B:渗透测试是用软件代替人工的一种测试方法,因此测试效率更高

C:渗透测试使用人工进行测试,不依赖软件,因此测试更准确

D:渗透测试中必须要查看软件源代码,因此测试中发现的漏洞更多

第19题(单选题)

某软件公司准备提高其开发软件的安全性,在公司内部发起了有关软件开发生命周期的讨论,在下面的发言观点中,不正确的是()

A:软件安全开发应当涉及软件开发整个生命周期,即要在软件开发生命周期的各个阶段都要采取一些措施来确保软件的安全性

B:应当尽早在软件开发的需求和设计阶段就增加一定的安全措施,这样可以比在软件发布以后进行漏洞修复所花的代价少得多

C:和传统的软件开发阶段相比,应当增加一个专门的安全编码阶段

D:安全测试阶段非常重要,有必要采取一些安全测试方法学和测试手段来确保软件的安全性

第20题(单选题)

<p>某单位门户网站开发完成后,测试人员使用模糊测试进行安全性测试,以下关于模糊测试过程的说法正确的是:</p>

A:模拟正常用户输入行为,生成大量数据包作为测试用例

B:数据处理点.数据通道的入口点和可信边界点往往不是测试对象

C:监测和记录输入数据后程序正常运行的情况

D:深入分析网站测试过程中产生崩溃或异常的原因,必要时需要测试人员手工重现并分析

第21题(单选题)

某网站为了开发的便利,SA连接数据库,由于网站脚本中被发现存在SQL注入漏洞,导致攻击者利用内置存储过程xp_cmdshell删除了系统中的一个重要文件,在进行问题分析时,作为安全专家,你应该指出该网站设计违反了以下哪项原则:

A:权限分离原则

B:最小特权原则

C:保护最薄弱环节的原则

D:纵深防御的原则

第22题(单选题)

下面哪个模型和软件安全开发无关( )?

A:微软提出的“安全开发生命周期(Security Development Lifecycle,SDL)”

B:Gray McGraw等提出的“使安全成为软件开发必须的部分(Building Security IN,BSI)”

C:OWASP维护的“软件保证成熟度模型(Software Assurance Maturity Mode,SAMM)”

D:美国提出的“信息安全保障技术框架(Information Assurance Technical Framework,IATF)”

第23题(单选题)

IS审计人员在应用开发项目的系统设计阶段的首要任务是:

A: 商定明确详尽的控制程序

B: 确保设计准确地反映了需求

C: 确保初始设计中包含了所有必要的控制

D: 劝告开发经理要遵守进度表

第24题(单选题)

某公司拟建设面向内部员工的办公自动化系统和面向外部客户的营销系统,通过公开招标选择M公司为承建单位,并选择了H监理公司承担该项目的全程监理工作,目前,各个应用系统均已完成开发,M公司已经提交了验收申请,监理公司需要对A公司提交的软件配置文件进行审查,在以下所提交的文档中,哪一项属于开发类文档:

A:项目计划书

B:质量控制计划

C:评审报告

D:需求说明书

第25题(单选题)

某单位计划在今年开发一套办公自动化(OA)系统,将集团公司各地的机构通过互联网进行协同办公,在OA系统的设计方案评审会上,提出了不少安全开发的建议,作为安全专家,请指出大家提的建议中不太合适的一条?

A:对软件开发商提出安全相关要求,确保软件开发商对安全足够的重视,投入资源解决软件安全问题

B:要求软件开发人员进行安全开发培训,使开发人员掌握基本软件安全开发知识

C:要求软件开发商使用Java而不是ASP作为开发语言,避免产生SQL注入漏洞

D:要求软件开发商对软件进行模块化设计,各模块明确输入和输出数据格式,并在使用前对输入数据进行校验

第26题(单选题)

<p>随着应用系统开发的进行,很明显有数个设计目标已无法实现最有可能导致这一结果的原因是:</p>

A: 用户参与不足

B: 项目经理早期撤职

C: 不充分的质量保证(QA)工具

D: 没有遵从既定的已批准功能

第27题(单选题)

IT工程建设与IT安全工程建设脱节是众多安全风险涌现的根源,同时安全风险也越来越多地体现在应用层,因此迫切需要加强对开发阶段的安全考虑,特别是要加强对数据 安全性的考虑,以下哪项工作是在IT项目的开发阶段不需要重点考虑的安全因素:

A:操作系统的安全加固

B:输入数据的校验

C:数据处理过程控制

D:输出数据的验证

第28题(单选题)

软件安全保障的思想是在软件的全生命周期中贯彻风险管理的思想,在有限资源前提下实现软件安全最优防护,避免防范不足带来的直接损失,也需要关注过度防范造成的间接损失,在以下软件安全开发策略中,不符合软件安全保障思想的是:

A:在软件立项时考虑到软件安全相关费用,经费中预留了安全测试.安全评审相关费用,确保安全经费得到落实

B:在软件安全设计时,邀请软件安全开发专家对软件架构设计进行评审,及时发现架构设计中存在的安全不足

C:确保对软编码人员进行安全培训,使开发人员了解安全编码基本原则和方法,确保开发人员编写出安全的代码

D:在软件上线前对软件进行全面安全性测试,包括源代码分析.模糊测试.渗透测试,未经以上测试的软件不允许上线运行

第29题(单选题)

以下哪个是Python开发的漏洞扫描程序?

A:metasploit

B:nessus

C:openvas

D:w3af

第30题(单选题)

常见操作系统厂商的补丁开发时间平均最短的是

A:Sun

B:Microsoft

C:HP

D:Red Hat

第31题(单选题)

软件开发者对要发布的软件进行数字签名,并不能保证( )。

A:软件的完整性

B:软件的来源可靠可信

C:软件的代码安全

D:软件的发布日期可信

第32题(单选题)

快速应用开发超过传统系统开发生命周期的最大优点是:

A: 推动用户的参与

B: 允许较早的技术特征测试

C: 推荐系统的转化

D: 减少开发的时间范围

第33题(单选题)

以下哪项最能确保业务应用系统离岸开发的成功:

A: 严格的合同管理

B: 详细、正确的申请规范

C: 意识到文化和政策的差异

D: 实施后检查

第34题(单选题)

软件开发项目中纳入全面质量管理(TQM,total quality managemnet)的主要好处是:

A: 齐全的文档

B: 按时交付

C: 成本控制

D: 最终用户的满意

第35题(单选题)

用于IT开发项目的业务模式(或业务案例)文档应该被保留,直到:

A:系统的生命周期结束

B:项目获得批准

C:用户验收了系统

D:系统被投入生产

第36题(单选题)

要确保信息系统合作单位开发测试环境与互联网(),严禁信息系统合作单位在对互联网提供服务的网络和信息系统中存储和运行公司相关业务系统

A:物理隔离

B:逻辑隔离

C:分割开

D:连通

第37题(单选题)

<p>为增强Web应用程序的安全性,某软件开发经理决定加强Web软件安全开发培训,下面哪项内容要在他的考虑范围内?</p>

A:关于网站身份签别技术方面安全知识的培训

B:针对OpenSSL心脏出血漏洞方面安全知识的培训

C:针对SQL注入漏洞的安全编程培训

D:关于ARM系统漏洞挖掘方面安全知识的培训

第38题(单选题)

在软件保障成熟度模型(Software Assurance Maturity Mode,SAMM)中,规定了软件开发过程中的核心业务功能,下列哪个选项不属于核心业务功能:

A:治理,主要是管理软件开发的过程和活动

B:构造,主要是在开发项目中确定目标并开发软件的过程与活动

C:验证,主要是测试和验证软件的过程与活动

D:购置,主要是购买第三方商业软件或者采用开源组件的相关管理过程与活动

第39题(单选题)

<p>项目开发过程中用来检测软件错误的对等审查活动称为:</p>

A:仿真技术

B:结构化走查

C:模块化程序设计技术

D:自顶向下的程序构造

第40题(单选题)

在信息系统生命周期模型中,可以将信息系统的整个生命周期划分成规划组织、开发采购、实施交付、运行维护和()等五个阶段以及在运行维护阶段的变更产生反馈,形成信息系统生命周期完整的闭环结构。

A:变更反馈

B:废弃

C:工程评估

D:系统改进

第41题(单选题)

应用系统开发的责任下放到各业务基层,最有可能导致的后果是

A: 大大减少所需数据通讯

B: 控制水平较低

C: 控制水平较高

D: 改善了职责分工

第42题(单选题)

小王在设计和开发某个信息系统时,强调要保证数据库中存储的可以被系统授权用户访问,并按需要及时、正常在使用尽量防止由于软件错误原因造成合法用户无法正常使用,在该案例中,小王强调要保护信息的()。

A:保密性

B:完整性

C:可用性

D:不可否认性