北邮软件安全期末复习整理
- 格式:docx
- 大小:1.37 MB
- 文档页数:27
2021年北京邮电大学世纪学院软件工程专业《计算机组成原理》科目期末试卷A(有答案)一、选择题1、地址线A15~A0(低),若选取用16K×1位存储芯片构成64KB存储器,则应由地址码()译码产生片选信号。
A.A15,A14B.A0,AlC.A14,A13D.A1,A22、容量为64块的Cache采用组相联映射方式,字块大小为128个字,每4块为一组。
如果主存为4K块,且按字编址,那么主存地址和主存标记的位数分别为()。
A.16,6B.17,6C.18,8 D .19,83、并行加法器中,每位全和的形成除与本位相加两数数值位有关外,还与()有A.低位数值大小B.低位数的全和C.高位数值大小D.低位数送来的进位4、一个浮点数N可以用下式表示:N=mr me,其中,e=rc g;m:尾数的值,包括尾数采用的码制和数制:e:阶码的值,一般采用移码或补码,整数;Tm:尾数的基;re:阶码的基;p:尾数长度,这里的p不是指尾数的:进制位数,当ra=16时,每4个二进制位表示一位尾数;q:阶码长度,由于阶码的基通常为2,因此,在一般情况下,q就是阶码部分的二进制位数。
研究浮点数表示方式的主要目的是用尽量短的字长(主要是阶码字长q和尾数字长的和)实现尽可能大的表述范围和尽可能高的表数精度。
根据这一目的,上述6个参数中只有3个参数是浮点数表示方式要研究的对象,它们是()。
A.m、e、rmB. rm、e、rmC.re、p、qD. rm、p、q5、信息序列16位,若想构成能纠正一位错、发现两位错的海明码,至少需要加()位校验位。
A.4B.5C.6D.76、某总线共有88根信号线,其中数据总线为32根,地址总线为20根,控制总线36根,总线工作频率为66MHz、则总线宽度为(),传输速率为()A.32bit 264MB/sB.20bit 254MB/sC.20bit 264MB/sD.32bit 254MB/s7、控制总线主要用来传送()。
一、基本概念1、生命周期模型a)瀑布模型;b)基于瀑布模型的其他变种;c)现代模型:UP及极限编程;d)模型的由来及实际价值2、软件需求分析a)需求分析的目的b)需求分析的对象c)需求分析的难点d)需求管理的内容3、软件概要设计a)软件的结构,分层结构b)模块的耦合与内聚;c)面向对象的设计原则;d)模块的优化原则;e)模块的控制范围与作用范围;4、软件详细设计与实现a)详细设计是概要设计的延续,是编码之前的必要工作;程序流程图、NS图、PDL以及UML的活动图都是描述程序结构的方法;b)软件实现,从软工的角度需要将代码文档化,提升软件的阅读性、可维护性,为此,使用序言性注释及功能性注释提升可阅读性;5、软件测试a)软件测试的对象;b)软件测试的方法;c)软件测试流程:软件配置,测试配置d)软件测试用例:有效和无效的测试用例同样重要;e)软件测试的策略:单元测试、集成测试、确认测试及系统测试等;6、软件维护与项目管理a)软件维护的周期;b)软件维护与软件开发的关系;c)软件维护的类型;d)软件项目的定义及特点;e)软件项目成功与失败的条件;f)软件项目管理的重要过程:启动、计划、执行、监控及结束二、软件工程方法1、面向对象方法a)需求分析:最终形成“软件需求分析规格说明书”i.领域模型:1.UML类图(无方法):使用概念类描述业务背景的重要知识;2.UML活动图:描述一个或多个业务对象在业务流程中的交互过程;ii.用例模型:1.用例图:使用UML用例图描述功能需求,需要掌握基本用例与子用例之间的包含和扩展关系;2.用例说明:使用标准的格式说明用例图中每个用例的交互过程;3.系统顺序图:使用UML交互图进一步明确角色与系统之间交互的消息名称与参数;4.操作契约:明确系统顺序图中每个交互的消息进入系统后有哪些概念类被激活参与该消息的服务并返回规定的内容;这个环节是开始软件概要设计的基础。
b)概要设计:最终形成“软件概要设计说明书”,设计模型由以下两个部分构成i.系统的动态结构:也称为用例实现过程设计1.首先确定软件的基本设计结构,本课程需要大家掌握分层结构:控制器层、业务逻辑层以及数据持久化层;2.用例级别的设计过程:针对系统顺序图中的每个消息进行设计,并参考消息对应的操作契约,确定该消息进入系统后接受该消息的控制器层对象、业务逻辑层对象以及持久化层对象,以及这些对象之间的交互(确定每个消息的名称和参数)ii.系统的静态结构1.用例级别的静态结构:针对该用例已得到的所有交互图,确定每个层次的软件对象及其之间的调用关系(或者依赖关系)形成用例级别的类图(包括软件类的属性和方法);2.系统级别的静态结构:以同样的方式获得所有用例的静态结构类图,即系统级的静态结构类图iii.系统的数据模型:1.根据系统级别的静态结构类图,尤其是数据持久化层的软件类并参考领域模型的类图,可以进一步确定系统数据库对应的数据模型。
1、软件是一种(逻辑实体),而不是具体的物理实体,因而它具有抽象性。
2、需求分析研究的对象是软件项目的(用户/客户/功能+性能/功能)要求。
3、需求分析的任务就是借助于当前系统的(逻辑模型)导出目标系统的(逻辑模型),解决目标系统的(“做什么”)的问题。
4、结构化需求分析方法由对软件问题的(信息/数据)和(功能)的系统分析过程及其表示方法组成。
5、确认测试包括:有效性测试和(软件配置审查,文档审查)。
6、白盒测试的逻辑覆盖方法包括语句覆盖、(判定/判断覆盖)、条件覆盖、(判定/判断-条件覆盖)、条件组合覆盖、(路径覆盖/路径测试/基本路径测试)。
注:次序无关7、为了提高模块的独立性,模块之间最好是(数据耦合)为了提高模块的独立性,模块最好是(功能内聚)8、下列关于功能性注释不正确的说法是( B )A. 功能性注释嵌在源程序中,用于说明程序段或语句的功能以及数据的状态B. 注释用来说明程序段,需要在每一行都要加注释C. 可使用空行或缩进,以便很容易区分注释和程序D. 修改程序也应修改注释9、在UML状态图中,与转移上的事件联系在一起的瞬时操作是(动作)10、测试的关键问题是(如何选择测试用例)11、以下说法不正确的是(A)。
A.原型思想是在研究概要设计阶段的方法和技术中产生的。
B.探索型和实验型原型采用的是抛弃策略。
C.进化型原型采用的是追加策略。
D.快速原型方法是利用原型辅助软件开发的一种思想。
12、需求规格说明书的作用不包括(C)A.软件验收的依据B.用户与开发人员对软件要做什么的共同理解C.软件可行性研究的依据D.软件设计的依据13、软件结构图中,模块框之间若有直线连接,表示它们之间存在(调用关系)14、下面关于DFD中的加工的描述正确的是( C )A. 每个加工只能有一个输入流和一个输出流B. 每个加工最多有一个输入流,可以有多个输出流C. 每个加工至少有一个输入流和一个输出流D. 每个加工都是对输入流进行变换,得到输出流15、在基于数据库的信息管理系统中,数据库概念模型的设计对应于系统开发的(概要设计)阶段。
《操作系统》期末考试综合练习题一、填空题1、操作系统是(控制)、(管理)系统资源,方便用户使用计算机的(程序)的集合。
2、操作系统具有(资源管理)和(提供人机接口)两大基本功能。
3、最常用的存储保护机构有(界地址寄存器)和(存储器)。
4、对称式多处理器系统(SMP)含有多个CPU,这些CPU具有(平等)地位。
5、将一个运行进程可访问的虚地址的集合称为(虚拟地址空间) 。
6、根据执行的程序的性质不同,处理器可分为(核心态)和(用户态)两种状态。
7、用信号量机制来控制打印机的共享使用。
如果系统中共有2台打印机,这时已经分配了一台给某个进程使用,此时信号量的值应该是(2).8、进程可以描述为:一组具有独立功能的程序在某个(数据集合)上的一次(执行过程) 。
9、当程序运行到某条语句时,才对其逻辑地址进行计算并转化为物理地址,这种技术叫做(动态)重定位。
10、.当程序装入内存时,就对其逻辑地址进行计算并转化为物理地址,这种技术叫做(静态)重定位。
11、通常我们通过破坏(环路等待)条件和(资源独占)条件来预防死锁的发生。
12、所谓死锁状态是指在系统中的(进程),由于竞争系统资源或由于彼此通信而永远(阻塞) 。
13、多道程序的操作系统具有(并行性)和(共享性)两大特性。
14、处理器调度的主要功能是按照某种原则,将处理器分配给(就绪队列的某个) 进程。
15、中断是指CPU对系统中发生的(异步事件)的响应。
16、操作系统中,对目录的设计包括(目录内容)和(目录结构)两个部分。
17、用信号量机制来控制打印机的共享使用。
如果系统中共有5台打印机,这时,信号量的初值应该是(5).18、在虚拟存储器的概念中,目标程序中的指令和数据放置的位置称为相对地址或者(相对)地址,而CPU能直接访问的主存的物理地址又称(实存地址)。
19、当一个进程执行Signal操作,完成对信号量“加1”后,这时信号量的值是“1”。
这时,系统中还有(至少一个)个进程等待该资源.20、一个计算机的数据总线的宽度叫做这个计算机的(.字长)。
2022年北京邮电大学世纪学院软件工程专业《数据库原理》科目期末试卷A(有答案)一、填空题1、设某数据库中有作者表(作者号,城市)和出版商表(出版商号,城市),请补全如下查询语句,使该查询语句能查询作者和出版商所在的全部不重复的城市。
SELECT城市FROM作者表_____SELECT城市FROM出版商表;2、在一个关系R中,若每个数据项都是不可再分割的,那么R一定属于______。
3、对于非规范化的模式,经过转变为1NF,______,将1NF经过转变为2NF,______,将2NF经过转变为3NF______。
4、关系规范化的目的是______。
5、在SELECT命令中进行查询,若希望查询的结果不出现重复元组,应在SEL ECT语句中使用______保留字。
6、数据仓库创建后,首先从______中抽取所需要的数据到数据准备区,在数据准备区中经过净化处理______,再加载到数据仓库中,最后根据用户的需求将数据发布到______。
7、视图是一个虚表,它是从______导出的表。
在数据库中,只存放视图的______,不存放视图对应的______。
8、安全性控制的一般方法有____________、____________、____________、和____________视图的保护五级安全措施。
9、在RDBMS中,通过某种代价模型计算各种查询的执行代价。
在集中式数据库中,查询的执行开销主要包括______和______代价。
在多用户数据库中,还应考虑查询的内存代价开销。
10、若事务T对数据对象A加了S锁,则其他事务只能对数据A再加______,不能加______,直到事务T释放A上的锁。
二、判断题11、数据库的数据项之间无联系,记录之间存在联系。
()12、在关系数据库中,属性的排列顺序是可以颠倒的。
()13、并发执行的所有事务均遵守两段锁协议,则对这些事务的任何并发调度策略都是可串行化的。
()14、连接是数据库最耗时的操作。
计算机网络安全总结网络安全技术复习一、网络安全基础知识网络安全的定义:安全就是最大限度地减少数据和资源被攻击的可能性。
1、网络安全包括四个方面:物理安全、数据安全、软件安全、安全管理。
2、网络安全的目标:1、保密性(保密性是网络信息不被泄露给非授权的用户、实体、或供其利用的特性。
即防止信息泄露给未授权用户或实体,信息只为授权用户使用的特性。
) 2、完整性(完整性是网络信息未经授权不能进行改变的特性。
)3、可靠性(可靠性网络信息系统能够在规定条件下和规定时间内完成规定功能的特性。
)4、可用性(可用性是网络信息可被授权用户或实体访问并按需求使用的特性。
)5、不可抵赖性(是不可否认性。
)6、可控性(是对网络信息的传播及内容具有控制能力的特性。
)3、网络安全的威胁:(1)对加密算法的攻击(2)协议漏洞渗透(3)系统漏洞(4)拒绝服务攻击(5)计算机病毒和恶意代码的威胁4、威胁网络安全的因素:(1)自然因素(2)人为因素(3)系统本身因素。
5、网络安全防范体系6、网络安全策略(物理安全策略、访问控制策略、加密策略)7、网络安全的评估标准二、网络入侵技术1、黑客技术(黑客最早源自英文hacker,原指热衷于计算机程序的设计者和精通网络、系统、外围设备及软硬件技术的人。
这些人具有操作系统和编程语言方面的知识,通过分析知道系统中的漏洞及其原因,并公开他们的发现,与他人分享。
现在人们常常把从事网络攻击和破坏的人统称为黑客。
)黑客入侵攻击的一般过程可分踩点、扫描、查点、获取权限、提升权限、窃取信息、隐藏痕迹、创建后门等。
2、网络扫描:地址扫描、端口扫描、漏洞扫描。
常用的扫描软件:Nmap 、X —Scan 等。
3、网络监听4、木马攻击(木马是指隐藏在正常程序中的一段具有特殊功能的恶意代码,是具有破坏和删除文件、发送密码、记录键盘和拒绝服务攻击等特殊功能的后门程序。
)5、拒绝服务攻击(简称DoS,是一种最常见的攻击形式,是指一个用户占据了大量的共享资源,使系统没有剩余的资源给其他用户使用,即拒绝服务。
2022年北京邮电大学世纪学院软件工程专业《计算机系统结构》科目期末试卷A(有答案)一、选择题1、在计算机系统设计中,比较好的方法是()。
A.从上向下设计B.从下向上设计C.从两头向中间设计D.从中间开始向上、向下设计2、直接执行微指令的是( )A.汇编程序B.编译程序C.硬件D.微指令程序3、虚拟存储器常用的地址映象方式是( )A.全相联B.段相联C.组相联D.直接4、计算机组成设计不考虑()A.专用部件设置B.功能部件的集成度C.控制机构的组成D.缓冲技术5、Cache存贮器常用的地址映象方式是( )。
A.全相联映象B.页表法映象C.组相联映象D.段页表映象6、下列关于标量流水机的说法不正确的是()A.可对标量数据进行流水处理B.没有向量数据表示C.不能对向量数据进行运算D.可以对向量、数组进行运算7、与流水线最大吞吐率高低有关的是( )A.各个子过程的时间B.最快子过程的时间C.最慢子过程的时间D.最后子过程的时间8、开发并行的途径有(),资源重复和资源共享。
A.多计算机系统B.多道分时C.分布式处理系统D.时间重叠9、下列说法正确的是( )A.Cache容量一般不大,命中率不会很高B.Cache芯片速度一般比CPU的速度慢数十倍C.Cache本身速度很快。
但地址变换的速度很慢D.Cache存贮器查映象表和访问物理Cache其间可以流水,使速度与CPU匹配10、全相联地址映象是指()。
A.任何虚页都可装入主存中任何实页的位置B.一个虚页只装进固定的主存实页位置C.组之间是固定的,而组内任何虚页可以装入任何实页位置D.组间可任意装入,组内是固定装入二、填空题11、多功能流水线各功能段同时可按不同运算或功能联接工作,称此流水线为________流水线。
12、单体多字并行存储器的访问冲突包括取指令冲突,________,写数据冲突,________13、段页式虚拟存储器的内部地址映象表机构有________表和________表两部分。
1.It has been shown that complex networks including the internet are resilient to indepent random falilures but fragileto intentional atacks.2.什么是信息安全管理:信息的保密性、完整性和有效性,业务的永续性。
有效的信息共享机制3.信息资产:硬件,软件,网络,通讯,资料,人员,服务4.信息安全:是保护资产的一种概念、技术及管理方法。
是信息资产免受有意或无意的泄露、破坏、遗失、假造以及未经授权的获取、使用和修改。
5.安全属性,通俗的说,进不来,拿不走,改不了,看不懂,跑不了6.从目标保护角度看信息安全:涉及机密性、完整性、可用性(信息安全金三角)。
7.机密性:confidentiality 完整性integrity 可用性availability 真实性Authentication 不可抵赖性non-repudiation8.ITU-T的安全框架X-80-端到端通信的安全架构,三个平面,三个层次,8个维度9.三个平面:p1最终用户平面,p2控制平面,p3管理平面10.三个层次:L1应用安全,L2服务安全,L3基础设置安全11.8个维度访问控制,认证,不可否认,数据保密性,通信安全,数据完整性,可用性,隐私。
12.安全模型1)风险评估常用模型2)纵深防御模型3)(基于时间的安全体系)模型P>D+R P:protection防护手段所能支持的视觉D:detection检测手段发现入侵所需要的时间R:事件响应机制采取有效措施所需的时间13.安全---及时的检测和处理指导思想:快速检测、有限影响、快速溯源、快速恢复相应的安全机制。
14.其他模型,PDRR—保护,检测,响应,恢复P2DR 策略P,保护P,检测D,响应R15.APT(Advanced Persistent Threat)高级,持续的攻击16.攻击的分类:active attack,主动攻击Passive attack被动攻击17.攻击的一般过程:预攻击,攻击,后攻击18.预攻击,目的,收集新,进行进一步攻击决策。
19.下面()攻击属于服务攻击。
D)Ⅰ和ⅣⅠ.邮件炸弹攻击Ⅳ.DOS攻《网络与信息安全》综合练习题击20 .通信量分析攻击可以确定通信的位置和通信主机的身份,还可以观察交一.选择题换信息的频度和长度。
这类安全攻击属于_被动性以下对网络安全管理的描述中,正确的是(D)。
_攻击。
1.21 .从信源向信宿流动过程中,信息被插入一些欺骗性的消息,这类攻击属D)安全管理的目标是保证重要的信息不被未授权的用户访问。
于(2.以下有关网络管理功能的描述中,错误的是(D)。
B)。
B)截取攻击22.网络安全攻击方法可以分为服务攻击与_非服务_ D)安全管理是使网络性能维持在较好水平。
攻击。
23.关于RC5加密算法的描述中,正确的是(D)。
D)分组和密钥长度都可变 3.有些计算机系统的安全性不高,不对用户进行验证,这类系统的安全级24.下面不属于对称加密的是(D)。
)D1D)RSAA别是()。
A25.DES是一种常用的对称加密算法,其一般的分组长度为(C)。
C)64位 C2 ).4Windows NT操作系统能够达到的最高安全级别是(B。
B)26.关于RC5加密技术的描述中,正确的是(C)。
C)它的密钥长度可变.Windows D安全级别的是(5.下面操作系统能够达到C2D)。
)Ⅲ和ⅣⅢ27.对称加密机制的安全性取决于_密钥_NT Ⅳ.NetWare3.x的保密性。
28。
6.计算机系统处理敏感信息需要的最低安全级别是(C)C)C2 .以下关于公钥密码体制的描述中,错误的是(C)。
C)一定比常规加密更安全DWindows 计算机系统具有不同的安全级别,7.其中98的安全等级是()。
D )29.以下关于公钥分发的描述中,错误的是(DD1)。
D)公钥的分发比较简单308.计算机系统具有不同的安全等级,其中.张三从C)CA得到了李四的数字证书,张三可以从该数字证书中得到李四的)的安全等级是(Windows NTC。
(C2D)。
软件安全2013.61.1概述1.1.1信息安全的六性***①保密性(C, confidentiality ):信息不泄漏给非授权的用户、实体或者过程的特性,。
②完整性(I,integrity):数据未经授权不能进行改变的特性,即信息在存储或传输过程中保持不被修改、不被破坏和丢失的特性。
③可用性(A, availability ):可被授权实体访问并按需求使用的特性,即当需要时应能存取所需的信息。
④真实性:内容的真实性。
⑤可核查性:对信息的传播及内容具有控制能力,访问控制即属于可控性。
⑥可靠性:系统可靠性。
信息安全根源:复杂性、开放性(系统、标准、业务)信息安全特性:攻防特性、相对性、配角特性、动态性1.1.2软件安全威胁分类( Gary Mcgraw )①输入验证与表示:输入信任→特殊字符、编码和数字表示②API误用:调用者没有理解约定的目的③安全特征:主要指认证,访问控制,机密性,密码,权限管理等方面的内容④时间与状态:死锁、会话固定、竞争条件、不安全临时文件⑤错误处理:没有完全处理错误⑥代码质量⑦封装⑧环境OWASP的WEB安全风险分类:认证、授权、客户端攻击、命令执行、信息泄露、逻辑攻击1.1.3软件安全加固模型***1.2 缓冲区溢出原理1.2.1 缓冲区溢出原理***缓冲区溢出是指当计算机向缓冲区内填充数据位数时超过了缓冲区本身的容量溢出的数据覆盖在合法数据上。
由于缓冲区溢出,相邻的内存地址空间被覆盖,造成软件出错或崩溃。
如果没有采取限制措施,可以使用精心设计的输入数据使缓冲区溢出,从而导致安全问题。
1.2.2 缓冲区溢出预防静态保护:不执行代码,通过静态分析来发现代码中可能存在的漏洞.静态的保护技术包括编译时加入限制条件,返回地址保护,二进制改写技术,基于源码的代码审计等.动态保护:通过执行代码分析程序的特性,测试是否存在漏洞,或者是保护主机上运行的程序来防止来自外部的缓冲区溢出攻击.1.2.3 系统栈的工作原理***内存的栈区实际上指的就是系统栈。
第二章网络攻击行径分析破坏型攻击P9 定义,常见类型(病毒攻击,Dos)Dos常见类型和手段●Ping of DeathPPT+书上都有原理ping -s (设置数据包大小) IP_Addr防御方法:对重新组装过程添加检查,以确保在分组重组后不会超过最大数据包大小约束;创建一个具有足够空间的内存缓冲区来处理超过最大准则的数据包。
●IGMP/ICMP Flood防御方法:被攻击目标可以在其网络边界直接过滤并丢弃ICMP/IGMP数据包使攻击无效化。
●Teardrop第一个包的偏移量为0,长度为N,第二个包的偏移量小于N。
为了合并这些数据段,TCP/IP堆栈会分配超乎寻常的巨大资源,从而造成系统资源的缺乏,甚至机器重新启动。
防御方法:1. 网络安全设备将接收到的分片报文先放入缓存中,并根据源IP地址和目的IP地址对报文进行分组,源IP地址和目的IP地址均相同的报文归入同一组,然后对每组IP 报文的相关分片信息进行检查,丢弃分片信息存在错误的报文。
2. 为了防止缓存溢出,当缓存快要存满时,直接丢弃后续分片报文。
●UDP Flood攻击端口为业务端口:根据该业务UDP最大包长设置UDP最大包大小以过滤异常流量。
攻击端口为非业务端口:丢弃所有UDP包;建立UDP连接规则,要求所有去往该端口的UDP包,必须首先与TCP端口建立TCP连接。
这种方法需要专业的防火墙或其他防护设备支持。
●SYN Flood图见PPT利用型攻击P11●口令猜测首先获得账号(使用Finger命令查询时会保存用户名;社工-email等),然后破译口令。
网络监听:很多协议没有采用任何加密或身份认证技术(Telnet、FTP、HTTP、SMTP等传),用户帐户和密码信息都是以明文格式传输的,此时若攻击者利用数据包截取工具便可很容易收集到帐户和密码。
缓冲区溢出:编制有缓冲区溢出错误的SUID程序来获得超级用户权限。
●特洛伊木马基于C/S结构的远程控制程序,是一类隐藏在合法程序中的恶意代码,这些代码或者执行恶意行为,或者为非授权访问系统的特权功能而提供后门。
《Java技术》课程2019年秋季期末考试复习题《Java技术》课程2019年春季期末考试复习题二、考试重点(占期末考试成绩60%)一、单项选择题1.计算机硬件能直接执行的只能是(B)。
A.符号语言程序B.机器语言程序C.汇编语言程序D.高级语言程序2.Java语言属于(C)。
A.面向过程的解释型语言B.面向过程的编译型语言C.面向对象的解释型语言D.面向对象的编译型语言3.根据TIOBE编程语言社区排行榜的统计,使用率居于前三的编程语言是(A)。
A.Java、C、C++B.Java、C#、C++C.Java、Python、RubyD.Objective-C、C++、Java4.下述Java平台中,最适于开发嵌入式系统应用程序的是(C)。
A.JavaSEB.JavaEEC.JavaMED.JavaApplet5.下面关于Java类文件的说法错误的是(D)。
A.Java编译器会为源程序中的每个类单独生成一个类文件B.Java类文件中存储的代码必须符合JVM规范C.Java类文件中存储的代码是二进制形式的代码D.Java 类文件必须用Java语言编写得到6.下列关于Eclipse说法错误的是(A)。
A.使用Eclipse开发Java程序时,程序员编辑源程序后即可运行该程序,因此无编译程序的过程B.Eclipse中的Workspace用于存储工程的路径C.在Windows系统下,Eclipse程序包解压缩后即可直接使用,无需安装D.Eclipse是一个基于Java的、可扩展的、开放源代码的开发平台7.下列关于IDE开发环境Eclipse的说法错误的是(D)。
A.Eclipse可以通过插件(plugin)的方式扩展其功能B.Eclipse联盟是由IBM公司捐资组建的C.Eclipse使用了SWT图形界面技术D.Eclipse 的运行不需要有JRE的支持8.关于Eclipse的视景说法错误的是(C)。
A.每个视景都定义了工作台中各个视图的初始设置和布局B.一个工作台窗口包含多个独立的视景,但同一时刻只有一个视景是对用户可见的C.视景的布局是可以改变的,但改变多次后无法再恢复到初始设置D.每个视景都有自己的视图和编辑器,用户可以在各个视景间切换9.在Java中,由Java编译器自动导入,而无需在程序中用import导入的包是(A)。
北邮计算机⽹络期末考试样题《计算机⽹络》期末考试样题⼀.单项选择题(共15分,每题1分)1.()下列关于ADSL描述哪个是错误的A. 实现了全双⼯通信,在两个⽅向上的传输速率可以不同B. 使⽤基带传输⽅案,不需要像MODEM那样对数据进⾏调制,所以ADSL⼀般⽐MODEM提供更⾼的通信速率C. ADSL通信与普通电话机的语⾳通信使⽤完全相同的传输介质D. ADSL仅仅是⼀个物理层标准2.()在有传输误码的数据信道上传输数据,下列哪种⽅法不能正确地实现链路层的成帧处理A. 字符计数法B. 字节填充法C. ⽐特填充法D.物理层编码违例法3.()如果⽤户计算机通过电话⽹接⼊因特⽹,则⽤户端必须具有:A. NAT⽹关B. 以太⽹交换机C. 集线器D. 调制解调器4.()链路层协议采⽤选择重传滑动窗⼝协议,其中数据帧编号采⽤8⽐特,发送窗⼝的最⼤值是:A.256 B. 255 C. 128 D. 1275.()以下哪个是正确的以太⽹地址A. B. e0-2b-37C. 00-30-2c-45-bc-2dD. 8000::126:376e:89bc:5c2e6.()IP路由器属于哪⼀层的互连设备A.物理层 B. 链路层 C. ⽹络层 D. 传输层7.()下列哪种指标不是⽤来衡量⽹络服务质量(QoS)的主要指标A.分组延迟时间B.到达抖动时间C.分组⽣存时间 D. 分组传输带宽8.()某同学在校园⽹访问因特⽹,从该同学打开计算机电源到使⽤命令ftp 连通⽂件服务器的过程中,哪个协议没有使⽤到A.IP B.ICMP C.ARP D. DHCP9.()某主机的IP地址为, ⼦⽹掩码为,当这台主机在⼦⽹内发送⼴播数据报时,IP数据报中的源地址为A. B.C. D.10.()某校分给数学教研室的IP地址块为/27,分配给外语教研室的地址块为/26,分配给物理教研室的地址块为/27。
这三个地址块经过聚合后的地址块为:A. /25B. /26C. /25D. /2611.()关于TCP/IP协议特点的描述中,错误的是A. IP提供尽⼒⽽为的服务,⽆法保证数据可靠到达B. TCP是⾯向连接的传输协议C. UDP是可靠的传输协议D. TCP/IP协议可以运⾏于多种操作系统12.()在TCP/IP⽹络中,转发路由器对IP数据报进⾏分⽚的⽬的是:A. 提⾼路由器的转发效率B. 降低⽹络拥塞的可能性C. 使得⽬的主机对数据报的处理更简单⾼效D. 保证数据报不超过物理⽹络能传输的最⼤报⽂长度13.()下图主机A发送⼀个IP数据报给主机B,通信过程中以太⽹1上出现的以太⽹帧中承载⼀个IP数据报,该以太⽹帧中的⽬的地址和IP包头中的⽬的地址分别是:A. B的MAC地址,B的IP地址B. B的MAC地址,R1的IP地址C. R1的MAC地址,B的IP地址D. R1的MAC地址,R1的IP地址A.HTTP B. ICMP C. UDP15.()当路由器接收到⼀个1500字节的IP数据报时,需要将其转发到MTU为980的⼦⽹,分⽚后产⽣两个IP数据报,长度分别是:A. 750,750B. 980,520C. 980,540D. 976,544⼆.判断题(共15分,每题1分)判断下⾯的每项陈述是否正确,正确的答T, 错误的答F。
1、信息安全的定义:信息安全是指信息网络的硬件、软件及其系统中的数据受到保护,不受偶然的或者恶意的原因而遭到破环、更改、泄露,系统连续可靠正常的运行,信息服务不中断。
2、R2DR2模型数学表达式:P t>D t+R t;P t-----安全体系提供防护的时间D t-----检测到入侵行为花费的时间-R t-------系统做出响应的时间3、信息安全的结构体系:物理层安全、网络层安全、系统层安全、应用层安全、管理层安全4、信息安全的目标:保密性、完整性、可用性、真实性、不可否认性、可控性、可追究性5、信息的安全威胁:物理层安全风险、网络层安全风险、系统层安全风险、应用层安全风险、管理层安全风险6、OSI参考模型:应用层、表示层、会话层、运输层、网络层、数据链路层、物理层7、TCP/IP参考模型:应用层、传输层、网络互连层、主机到网络层8、常用的网络服务:WEB服务、FTP服务、E-Mail服务、Telnet服务WEB服务也称WWW服务,主要功能是提供网上信息浏览。
FTP是文件传输协议,是Interent文件传送的基础。
FTP的TCP/IP服务端口号:21 电子邮件服务是Internet应用最广的服务,**@**.com中@之后是为用户提供电子邮件服务的服务商名称,com的名称是:服务提供商。
Telnet服务:远程登录9、常用的网络命令:ping命令、ipconfig命令(查看本机IP地址)、netstat命令(用于检验本机个端口的网络连接情况)10、计算机病毒:(1)定义:计算机病毒是指编制或者在计算机程序中插入的破环计算机功能或者毁坏数据,影响计算机使用,并能自我复制的一组计算机指令或者程序代码(2)计算机病毒的特征:隐蔽性、潜伏性、破坏性、传染性(3)恶意软件的类型:广告软件、间谍软件、浏览器劫持、行为记录软件、恶意共享软件、搜索引擎劫持11、计算机网络物理安全隔离卡:技术特点:内外网绝对隔离、阻塞信息泄漏通道、应用广泛、实现成本低12、摆渡:物理隔离网闸;13、物理隔离网闸的组成:外部处理单元、内部处理单元、隔离硬件14、物理隔离网闸的主要安全模块:安全隔离模块、内核防护模块、安全检测模块、身份认证模块、访问控制模块、安全审计模快15、物理隔离网闸的主要功能:阻断网络的直接物理连接、阻断网络的逻辑连接数据传输机制的不可编程性、安全审查原始数据的无危害性、管理和控制功能16、防火墙技术:1、防火墙技术的优点:可以完成整个网络安全策略的实施、可以限制对某种特殊对象的访问可以对有关的管理人员发出警告、可以将内部网络结构隐藏起来2、防火墙技术的缺点:不能防止不经过他的攻击,不能防止授权访问的攻击;只能对配置的规则有效,不能配置没有的访问;不能防止针对一个设计上有问题的系统攻击;3、防火墙技术:包过滤技术、应用网关技术、电路级网关技术、状态检测技术、代理服务器技术、网络地址转换技术、个人防火墙、分布式防火墙4、非军事区英文缩写:DMZ5、防火墙的性能指标:系统吞吐量、报文转发率、最大并发连接数、每秒新建连接数6、防火墙的功能指标:LAN接口、协议支持、加密支持、认证支持、访问控制、防御功能、安全特性、管理功能、记录和报表功能7、防火墙的体系结构:双重宿主、被屏蔽主机、被屏蔽子网17、入侵检测:(1)定义:入侵检测是计算机网络或者计算机系统中的若干关键点搜集信息并对其进行分析,从中发现网络或系统中是否有违反安全策略的行为和遭到袭击的迹象的一种机制(2)入侵检测技术:异常检测技术、误用检测技术、入侵检测的发展:入侵检测系统存在的问题:误警率高、检测速度慢、扩充性入侵检测技术的发展方向、从IDS到IPS和IMS(3)入侵检测系统的分类:按照数据的来源分:(1)基于主机的IDS 2)基于网络的IDS 3)基于路由器的入侵检测系统按照分析方式分:1)异常检查(2)误用检测(3)混合检测按照分析的位置分:(1)集中式的IDS (2)分布式的IDS其他分类方式:(响应方式分:)(1)主动响应系统(2) 被动响应系统(系统的工作方式分:)(1)离线检测(2) 在线方式(系统的对抗措施分:)(1) 主动系统(2)被动系统18、网络传输介质:光纤、同轴电缆、双绞线19、网线的制作时连接顺序:橙白、橙、蓝白、绿、绿白、蓝、棕白、棕20、恶意软件的定义:恶意软件俗称流氓软件,是对破环系统正常运行的软件的统称。
北邮⽹院软件⼯程与软件测试阶段作业题和答案提⽰:试题分值: 5.0得分: [5]知识点: 第⼀章软件⼯程介绍学⽣答案:[B;] 提⽰:试题分值: 5.0得分: [5]知识点: 第⼀章软件⼯程介绍学⽣答案:[A;] 提⽰:试题分值: 5.0得分: [5]知识点: 第⼀章软件⼯程介绍学⽣答案:[B;]⼀、判断题(共 8 道⼩题,共 40.0 分)1.⼀般情况下,如果软件的⾏为与它的设计者的⽬标是⼀致的,那软件才成功。
A. 正确B. 错误2.⼤部分软件开发项⽬⾸先设法满⾜⼀些企业的需要。
A. 正确B. 错误3.所谓“新经济”的笼罩在 90 年代的商业和⾦融死亡,不再影响的企业和软件⼯程师的决定。
A. 正确B. 错误提⽰:试题分值:5.0得分: [5]知识点: 第⼆章过程综述学⽣答案:[A;]提⽰:试题分值:得分: [5]知识点: 第三章过程模型学⽣答案:[A;]提⽰:试题分值:5.0得分: [5]知识点: 第四章敏捷视⾓下的过程学⽣答案:[A;] 4.软件过程可以在预先已有的软件模式之外被构造出来,以更好地满⾜软件⼯程的需要。
A. 正确B. 错误5.在统⼀过程模型中,需求被迭代德确定,⽽且可能跨越⼀个以上的过程阶段。
A. 正确B. 错误6.所有的敏捷过程模型或多或少不同程度上符合了敏捷的“软件开发宣⾔” 的原则。
A. 正确B. 错误提⽰:试题分值:5.0得分: [5]知识点: 第五章软件⼯程实践综述学⽣答案:[B;] 提⽰:试题分值:5.0得分: [5]知识点: 第五章软件⼯程实践综述学⽣答案:[A;] 提⽰:试题分值: 5.0得分: [5]知识点: 第⼀章软件⼯程介绍学⽣答案:每个沟通会议应该有⼀个推动者,以确保客户不能去控制会议议项。
A. 正确B. 错误8.软件⼯程实践的本质是理解问题,计划解决⽅案,实施计划,并检查结果的精确度。
A. 正确B. 错误9.⼆、单项选择题(共 12 道⼩题,共 60.0 分)1.软件退化不是磨损导致的,是因为A. 软件⼯作在在恶劣环境中B. 软件被经常使⽤后,缺陷可能被发现C. 多次需求变更引进了组件交互的错误产⽣D. 软件的备⽤构件变得很难去布置提⽰:试题分值:5.0得分: [5]知识点: 第⼆章过程综述学⽣答案:[E;]提⽰:试题分值:5.0得分: [5]知识点: 第⼆章过程综述学⽣答案:[B;]知识点: 第⼆章过程综述学⽣答案:[B;]2.下⾯那个是团队软件过程的⽬标?A. 加速软件过程改进B. 允许训练有素的专业⼈⼠更好的时间管理C. 建⽴⾃我指导软件团队D. 显⽰经理如何降低成本和保持质量E. b 和 c3.下⾯这些哪个不是个⼈软件过程的特点? A. 强调对⼯作产品的个⼈测量B. 第⼀线⼯作⼈员需要由项⽬经理严谨监督C. 单个第⼀线⼯作⼈员负责项⽬估算和调度D. 第⼀线⼯作⼈员有权控制软件产品质量⼯作4.过程模型被描述为敏捷,因为他们A. 取消繁琐⽂件的需要B. 强调灵活性和适应性C. 在计划活动时,不浪费开发时间D. ⼴泛使⽤原型开发提⽰:试题分值:5.0得分: [5]知识点: 第三章过程模型学⽣答案:[D;]提⽰:试题分值:5.0得分: [5]知识点: 第三章过程模型学⽣答案:[C;]5.形式化⽅法软件开发模式使⽤数学⽅法去A. 规范定义的基于计算机的系统B. 开发⽆缺陷的计算机为基础的系统C. 正确性验证计算机的系统D. 以上所有6.快速应⽤程序开发模式(RAD )是A. 基于组件开发模式的另⼀个名字B. ⼀个有⽤的⽅式,当⽤户不能很清楚的定义需求的时候C. 线性顺序模型的⾼速变体。
(完整word版)软件安全复习题软件安全复习题一、选择题1、目前对软件通俗的解释为( A )A、软件= 程序+ 数据+文档资料B、软件= 程序+ 方法+规则、C、软件= 程序+ 数据+方法D、软件= 程序+ 数据+规则2、Windows的三个主要子系统是( D )A、应用系统、数据系统、内核系统B、数据库系统、应用程序、系统程序C、Kernel、User 和APID、Kernel、User和GDI3、安全软件的核心属性有( A )A、保密性、完整性、可用性、责任性、抗抵抗性B、保密性、完整性、可用性、可预测性、正确性C、保密性、完整性、可用性、可依赖性、可靠性D、保密性、完整性、可用性、复杂性、可追踪性4、在安全知识中攻击模式采用较( C )来描述常见的攻击程序,这种形式能够应用于跨越多个系统的情形。
A、实例化的形式B、代码扫描的形式C、抽象的形式D、安全原则至上的形式5、软件安全切入点指的是在软件开发生命周期中保障软件安全的一套最佳实际操作方法。
这一套最佳实践方法包括:( A )A、代码审核,体系结构风险分析,渗透测试,基于风险的安全测试,滥用案例,安全需求和安全操作。
B、代码审核,体系结构风险分析,黑箱测试,基于风险的安全测试,滥用案例,安全需求和安全操作。
C、安全原则,体系结构风险分析,黑箱测试,基于风险的安全测试,滥用案例,安全需求和安全操作。
D、代码审核,体系结构风险分析,fuzz测试,基于风险的安全测试,滥用案例,安全需求和安全操作。
6、描述性知识包括( D )A、实例、检测和架构B、案例、说明、架构C、需求描述、安全操作和安全原则D、原则、方针、和规则。
7、弱点知识是对真实系统中出现过并报告的软件( B )的描述A、缺陷B、弱点C、漏洞D、风险8、逆向工程是编译过程的逆过程,即( C )A、从高级语言恢复机器码的结构和语义的过程。
B、从汇编码恢复到高级语言的结构和语义的过程。
C、从机器码恢复高级语言的结构和语义的过程。
软件安全2013.61.1概述1.1.1信息安全的六性***①保密性(C, confidentiality ):信息不泄漏给非授权的用户、实体或者过程的特性,。
②完整性(I,integrity):数据未经授权不能进行改变的特性,即信息在存储或传输过程中保持不被修改、不被破坏和丢失的特性。
③可用性(A, availability ):可被授权实体访问并按需求使用的特性,即当需要时应能存取所需的信息。
④真实性:内容的真实性。
⑤可核查性:对信息的传播及内容具有控制能力,访问控制即属于可控性。
⑥可靠性:系统可靠性。
信息安全根源:复杂性、开放性(系统、标准、业务)信息安全特性:攻防特性、相对性、配角特性、动态性1.1.2软件安全威胁分类( Gary Mcgraw )①输入验证与表示:输入信任→特殊字符、编码和数字表示②API误用:调用者没有理解约定的目的③安全特征:主要指认证,访问控制,机密性,密码,权限管理等方面的内容④时间与状态:死锁、会话固定、竞争条件、不安全临时文件⑤错误处理:没有完全处理错误⑥代码质量⑦封装⑧环境OWASP的WEB安全风险分类:认证、授权、客户端攻击、命令执行、信息泄露、逻辑攻击1.1.3软件安全加固模型***1.2 缓冲区溢出原理1.2.1 缓冲区溢出原理***缓冲区溢出是指当计算机向缓冲区内填充数据位数时超过了缓冲区本身的容量溢出的数据覆盖在合法数据上。
由于缓冲区溢出,相邻的内存地址空间被覆盖,造成软件出错或崩溃。
如果没有采取限制措施,可以使用精心设计的输入数据使缓冲区溢出,从而导致安全问题。
1.2.2 缓冲区溢出预防静态保护:不执行代码,通过静态分析来发现代码中可能存在的漏洞.静态的保护技术包括编译时加入限制条件,返回地址保护,二进制改写技术,基于源码的代码审计等.动态保护:通过执行代码分析程序的特性,测试是否存在漏洞,或者是保护主机上运行的程序来防止来自外部的缓冲区溢出攻击.1.2.3 系统栈的工作原理***内存的栈区实际上指的就是系统栈。
系统栈由系统自动维护,它用于实现高级语言中函数的调用。
对于类似C语言这样的高级语言,系统栈的PUSH/POP等堆栈平衡细节是透明的。
每一个函数独占自己的栈帧空间。
当前正在运行的函数的栈帧总是在栈顶。
Win32系统提供两个特殊的寄存器用于标识位于系统栈顶端的栈帧。
(1)ESP:栈指针寄存器(extendedstackpointer),其内存放着一个指针,该指针永远指向系统栈最上面的一个栈帧的栈顶。
(2)EBP:基址指针寄存器(extendedbasepointer),其内存放着一个指针,该指针永远指向系统栈最上面的一个栈帧的底部。
在函数栈帧中,一般包含以下几类重要信息。
(1)局部变量:为函数局部变量开辟的内存空间。
(2)栈帧状态值:保存前栈帧的顶部和底部(实际上只保存前栈帧的底部,前栈帧的顶部可以通过堆栈平衡计算得到),用于在本帧被弹出后恢复出上一个栈帧。
(3)函数返回地址:保存当前函数调用前的“断点”信息,也就是函数调用前的指令位置,以便在函数返回时能够恢复到函数被调用前的代码区中继续执行指令。
函数调用大致包括以下几个步骤。
(1)参数入栈:将参数从右向左一次压入系统栈中。
(2)返回地址入栈:将当前代码区调用指令的下一跳指令地址压入栈中,供函数返回时继续执行。
(3)代码区跳转:处理器从当前代码区跳转到被调用函数的入口处。
(4)栈帧调整:保存当前栈帧的状态值,以备后面恢复本栈帧时使用(EBP入栈);将当前栈帧切换到新栈帧(将ESP值装入EBP,更新栈帧底部);给新栈帧分配空间(把ESP减去所需空间的大小,抬高栈帧);1.2.4 基于邻接变量修改的缓冲区溢出的原理略1.3 缓冲区溢出利用1.3.1 什么是shellcodeshellcode:缓冲区溢出攻击中植入进程的代码。
1.3.2 如何定位shellcode①栈帧移位与jmpesp②获取“跳板”的地址③使用“跳板”定位的exploit1.3.3 缓冲区的组织①缓冲区的组成:填充物、淹没返回地址的数据、shellcode②抬高栈顶保护shellcode③函数返回地址移位1.3.4 shellcode编码首先,所有的字符串函数都会对NULL字节进行限制。
其次,有些函数还会要求shellcode必须为可见字符的ASCII或Unicode的值。
最后,在进行网络攻击时,基于特征的系统往往会对常见的shellcode进行拦截1.4 漏洞挖掘方法1.4.1 什么是漏洞挖掘技术1.4.2 简单的fuzzing过程Fuzz的主要目的是”崩溃crash”,”中断break”,”销毁destroy”。
Fuzz技术的思想就是利用“暴力”来实现对目标程序的自动化测试,然后监视检查其最后的结果,如果符合某种情况就认为程序可能存在某种漏洞或者问题。
1.4.3 文件类型漏洞挖掘攻击者往往会在约定的数据格式进行稍许修改,观察软件在解析这种“畸形文件”时是否会发生错误,缓冲区是否会溢出等。
(1)以一个正常的文件模板作为基础,按照一定规则产生一批畸形文件。
(2)将畸形文件逐一送入软件进行解析,并监视软件是否会抛出异常。
(3)记录软件产生的错误信息,如寄存器状态、栈状态等。
(4)用日志或其他UI形式向测试人员展示异常信息,以进一步鉴定这些错误是否能被利用。
Blind fuzz:即通常所说的“盲测”,就是在随机位置插入随机的数据以生成畸形文件。
然而现代软件往往使用非常复杂的私有数据结构。
产生测试用例的策略缺少针对性,生成大量无效测试用例,难以发现复杂解析器深层逻辑的漏洞等。
Smart Fuzz:面向逻辑(测试前首先明确要测试的目标是解析文件的程序逻辑,而不是文件本身)、面向数据类型(面向数据类型测试是指能够识别不同的数据类型,并且能够针对目标数据的类型按照不同规则来生成畸形数据)、基于样本(要求在测试前构造一个能够包含几乎所有数据结构的文件来作为样本)。
1.4.4 FTP漏洞挖掘它的基本原理就是通过对FTP协议中的命令及命令参数进行脏数据替换,构造畸形的FTP命令并发送给被测试FTP服务程序。
2.1 线程/进程安全2.1.1 线程、进程机制***进程:程序在计算机上的一次执行活动。
运行一个程序,相当于启动了一个进程。
进程是操作系统进行资源分配的单位,通俗地讲,是一个正在执行的程序。
进程的安全主要体现在线程安全,同时涉及进程的应用级别、其对系统的威胁性等。
线程:进程中的一个实体,是被系统独立调度和分派的基本单位,它可与同属一个进程的其它线程共享进程所拥有的全部资源。
一个线程可以创建和撤消另一个线程,同一进程中的多个线程之间可以并发执行。
线程的安全性主要来源于其运行的并发性和对资源的共享性。
线程有创建、可运行、运行中、阻塞、死亡五种状态。
2.1.2 线程同步安全所谓同步,就是在发出一个功能调用时,在没有得到结果之前,该调用就不返回,同时其它线程也不能调用这个方法。
2.1.3 线程协作安全多个线程合作完成一件事情的几个步骤,此时线程之间实现了协作。
由于线程随时都有可能抢占CPU,可能在前面一个步骤没有完成时,后面的步骤线程就已经运行,该安全隐患造成系统得不到正确结果。
解决:在运行一个线程时,命令其他线程等待该线程运行完毕,才能抢占CPU进行运行。
2.1.4 线程死锁问题***死锁:是指两个或两个以上的线程在执行过程中,因争夺资源而造成的一种互相等待的现象。
条件:互斥、请求等待、不抢占、循环等待解决:可以撤消陷于死锁的全部线程。
可以逐个撤消陷于死锁的进程,直到死锁不存在。
从陷于死锁的线程中逐个强迫放弃所占用的资源,直至死锁消失。
2.1.5 线程控制安全线程控制主要是对线程生命周期的一些操作,如暂停、继续、消亡等。
线程生命周期中的安全问题主要体现在:线程暂停或者终止时,可能对某些资源的锁并没有释放,它所保持的任何资源都会保持锁定状态;线程暂停之后,我们无法预计它什么时候会继续(一般和用户操作有关),如果对某个资源的锁长期被保持,其他线程在任何时候都无法再次访问该资源,极有可能造成死锁。
解决:1:当需要暂停时,干脆让线程的run()方法结束运行以释放资源(实际上就是让该线程永久结束);继续时,新开辟一个线程继续工作。
怎样让run()方法结束呢?一般可用一个标志告诉线程什么时候通过退出自己的run()方法来中止自己的执行。
2:将线程暂停或继续,不使用suspend()和resume(),可在Thread类中置入一个标志,指出线程应该活动还是挂起。
若标志指出线程应该挂起,便用wait()命其进入等待状态。
若标志指出线程应当恢复,则用一个notify()重新启动线程。
3:不推荐使用stop()来终止阻塞的线程,而应换用由Thread提供的interrupt()方法,以便中止并退出堵塞的代码2.1.6 隐蔽信道问题、客体重用问题2.2 输入输出安全2.2.1 典型的输入安全问题及预防***①数字输入安全:确定数字格式、负数验证、判断数值溢出②字符串输入安全:正则表达式、明确匹配数据的开始和结束、在输入中拒绝特殊字符③环境变量输入安全:环境变量在同一个交互环境下只有一个实例。
不同的交互环境有不同的实例,互不干扰。
其功能是用于影响该环境下进程的行为。
环境变量的内容、存储格式给攻击者以机会。
解决:限制环境变量的使用权限、可适当破坏环境变量在shell之间的共享、用户定义的环境变量,需要进行严格的检查。
④文件名安全:不让用户自己来输入文件名、限制文件名字符种类、不允许命名可能和物理设备冲突的文件名。
2.2.2 数据库输入安全①恶意输入:攻击者通过对数据库的恶意输入,可以将信息注入正在运行的流程,获取敏感数据,甚至危害进程的运行状态。
攻击者通过这种技术,可以完成以下攻击活动:改变一条SQL语句的具体条件、添加并且运行额外的SQL的语句、秘密调用函数和存储过程。
②账户和口令:解决问题的方法主要有:不到万不得已,不使用管理员账户;使用最小特权账户,不给以额外的权限;不允许使用空口令连接数据库,防止管理员疏忽而创建了空口令;数据库连接字符串存放在配置文件中,最好可以加密,而不是代码中以明文显示;发生错误时,仅给客户端通知信息,不给具体原因,防止攻击者利用这些通知信息进行数据库猜测。
2.2.3 什么是国际化安全国际化的主要目的,是调整软件,使之能适用于不同的语言及地区。
三个部分:资源文件、读取工具、应用程序。
目标程序所支持的字符集和源数据属于的字符集可能不一致。
此种情况下,可能造成系统显示出错。
1:当目标程序所支持的字符集和源数据属于的字符集完全不兼容时,数据无法显示(或者以乱码形式显示)。
2: 当目标程序所支持的字符集是源数据属于的字符集的子集时,信息会部分丢失。