ImageVerifierCode 换一换
格式:DOCX , 页数:31 ,大小:36.65KB ,
资源ID:1066752      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-1066752.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(Web安全性测试.docx)为本站会员(b****2)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

Web安全性测试.docx

1、Web安全性测试安全性测试安全性测试主要是测试系统在没有授权的内部或者外部用户对系统进行攻击或者恶意破坏时如何进行处理,是否仍能保证数据和页面的安全。测试人员可以学习一些黑客技术,来对系统进行攻击。另外,对操作权限的测试也包含在安全性测试中。具体测试内容如下:执行添加、删除、修改等动作中是否做过登录检测。 退出系统之后的操作是否可以完成。 所有插入表单操作中输入特殊字符是否可以正常输正常存储,特殊字符为:!?#¥%*()-+=、|;:”?/,。 在带有参数的回显数据的动作中更改参数,把参数改为特殊字符并加入操作语句看是否出错。 测试表单中有没有做标签检测,标签检测是否完整。 在插入表单中加入特

2、殊的HTML代码,例如:表单中的字本是否移动?。系统安全性测试的十个重要问题1:没有被验证的输入测试方法:数据类型(字符串,整型,实数,等)允许的字符集最小和最大的长度是否允许空输入参数是否是必须的重复是否允许数值范围特定的值(枚举型)特定的模式(正则表达式)2:有问题的访问控制测试方法:主要用于需要验证用户身份以及权限的页面,复制该页面的url地址,关闭该页面以后,查看是否可以直接进入该复制好的地址;例:从一个页面链到另一个页面的间隙可以看到URL地址,直接输入该地址,可以看到自己没有权限的页面信息; 3:错误的认证和会话管理分析:帐号列表:系统不应该允许用户浏览到网站所有的帐号,如果必须要

3、一个用户列表,推荐使用某种形式的假名(屏幕名)来指向实际的帐号。 浏览器缓存:认证和会话数据作为GET的一部分来发送认证和会话数据不应该作为GET的一部分来发送,应该使用POST,例:对Grid、Label、Tree view类的输入框未作验证,输入的内容会按照html语法解析出来;4:跨站脚本(XSS)分析:攻击者使用跨站脚本来发送恶意代码给没有发觉的用户,窃取他机器上的任意资料;测试方法:HTML标签: 转义字符:&(&);<(); (空格) ;脚本语言:Alert()特殊字符: /最小和最大的长度是否允许空输入例:对Grid、Label、Tree view类的输入框未作

4、验证,输入的内容会按照html语法解析出来5:缓冲区溢出没有加密关键数据分析:用户使用缓冲区溢出来破坏web应用程序的栈,通过发送特别编写的代码到web程序中,攻击者可以让web应用程序来执行任意代码。例:viewsource:http地址可以查看源代码在页面输入密码,页面显示的是 *, 右键,查看源文件就可以看见刚才输入的密码;6:注入式漏洞分析:用户登录处、不用登录可以查看到的数据库中的数据列表尤为重要。例:一个验证用户登陆的页面,如果使用的sql语句为:Select * from table A where username + username+ and pass word .Sql

5、输入 or 11 就可以不输入任何password进行攻击;7:不恰当的异常处理分析:程序在抛出异常的时候给出了比较详细的内部错误信息,暴露了不应该显示的执行细节,网站存在潜在漏洞;8:不安全的存储没有加密关键数据分析:帐号列表:系统不应该允许用户浏览到网站所有的帐号,如果必须要一个用户列表,推荐使用某种形式的假名(屏幕名)来指向实际的帐号。浏览器缓存:认证和会话数据不应该作为GET的一部分来发送,应该使用POST; 例:viewsource:http地址可以查看源代码 在页面输入密码,页面不显示 “*”; 在页面输入密码,页面显示的是 *,数据库中存的密码没有经过加密;地址栏中可以看到刚才填

6、写的密码;右键查看源文件就可以看见刚才输入的密码; 9:拒绝服务分析:Config中的链接字符串以及用户信息,邮件,数据存储信息都需要加以保护。攻击者可以从一个主机产生足够多的流量来耗尽狠多应用程序,最终使程序陷入瘫痪。需要做负载均衡来对付。10:不安全的配置管理分析:Config中的链接字符串以及用户信息,邮件,数据存储信息都需要加以保护程序员应该作的:配置所有的安全机制,关掉所有不使用的服务,设置角色权限帐号,使用日志和警报。 例:数据库的帐号是不是默认为“sa”,密码(还有端口号)是不是直接写在配置文件里而没有进行加密。软件安全测试涉及的方面2.用户名和密码是否设置密码最小长度用户名和密

7、码中是否可以有空格或回车?是否允许密码和用户名一致防恶意注册:可否用自动填表工具自动注册用户? 遗忘密码处理有无缺省的超级用户?有无超级密码?是否有校验码?密码错误次数有无限制?3.直接输入需要权限的网页地址可以访问如:没有登录或注销登录后,直接输入登录后才能查看的页面的网址,能直接打开页面; 注销后,点浏览器上的后退,可以进行操作。正常登录后,直接输入自己没有权限查看的页面的网址,可以打开页面。5.隐藏域与CGI参数分析:有此隐藏域中泄露了重要的信息,有时还可以暴露程序原代码。 直接修改CGI参数,就能绕过客户端的验证了。如:只要改变value的值就可能会把程序的原代码显示出来。6. 上传文

8、件没有限制分析:上传文件最好要有格式的限制; 上传文件还要有大小的限制。7.把数据验证寄希望于客户端的验证分析:客户端是不安全,重要的运算和算法不要在客户端运行。 重要的数据(如:密码)在客户端应该加密。例:保存网页并对网页进行修改,使其绕过客户端的验证。(如只能选择的下拉框,对输入数据有特殊要求的文本框)13. 传输中的密码没有加密分析:传输中的密码要进行加密。传输前加密用SSL加密,https的方式提交用户名和密码;如果使用tomcat做服务器的话,SSL加密只需配置就可以了:TOMCAT用https替换http的方法 / 首先用java的工具keytool 生成一个ssl证书: keyt

9、ool -genkey -keyalg RSA -alias youraliasname -keystore .keystore 输入keystore密码: yourpass 您的名字与姓氏是什么? Unknown: liubin 您的组织单位名称是什么? Unknown: test 您的组织名称是什么? Unknown: 您所在的城市或区域名称是什么? Unknown: beijing 您所在的州或省份名称是什么? Unknown: beijing 该单位的两字母国家代码是什么 Unknown: cn CN=liubin, OU=test, O=, L=beijing, ST=beijing

10、, C=cn 正确吗? 否: y 输入的主密码 (如果和 keystore 密码相同,按回车):Web应用系统的安全性测试区域主要有: (1)现在的Web应用系统基本采用先注册,后登陆的方式。因此,必须测试有效和无效的用户名和密码,要注意到是否大小写敏感,可以试多少次的限制,是否可以不登陆而直接浏览某个页面等。 (2)Web应用系统是否有超时的限制,也就是说,用户登陆后在一定时间内(例如15分钟)没有点击任何页面,是否需要重新登陆才能正常使用。 (3)为了保证Web应用系统的安全性,日志文件是至关重要的。需要测试相关信息是否写进了日志文件、是否可追踪。 (4)当使用了安全套接字时,还要测试加密

11、是否正确,检查信息的完整性。 (5)服务器端的脚本常常构成安全漏洞,这些漏洞又常常被黑客利用。所以,还要测试没有经过授权,就不能在服务器端放置和编辑脚本的问题。我们觉得楼上的象是测试论坛或者需要登陆的网站呢 我就顺着加几条吧: 1。登陆系统,点击退出系统,或者注销,然后点击IE的退出,看看能否再次登陆,这个对于安全也比较需要,主要测试的是退出系统后,对cok0kies 2。如果你的系统,客户端比较多,那么就要判断一个用户能否同时在不同的机器上登陆 3。使用了加密的软件,WEB系统运行后,加密软件异常,包括关闭,退出,此时你的WEb系统安全怎么处理 4。你的WEB系统的教本信息是否会反应一些你的

12、数据库信息,如,当前页面涉及了你的数据库里的那些表啦,等等。 六、安全测试Web应用系统的安全性测试区域主要有:1、 目录设置Web 安全的第一步就是正确设置目录。每个目录下应该有 index.html 或 main.html 页面,这样就不会显示该目录下的所有内容。如果没有执行这条规则。那么选中一幅图片,单击鼠标右键,找到该图片所在的路径com/objects/images。然后在浏览器地址栏中手工输入该路径,发现该站点所有图片的列表。这可能没什么关系。但是进入下一级目录 com/objects ,点击 jackpot。在该目录下有很多资料,其中有些都是已过期页面。如果该公司每个月都要更改产

13、品价格信息,并且保存过期页面。那么只要翻看了一下这些记录,就可以估计他们的边际利润以及他们为了争取一个合同还有多大的降价空间。如果某个客户在谈判之前查看了这些信息,他们在谈判桌上肯定处于上风。2.登录现在的Web应用系统基本采用先注册,后登陆的方式。因此,必须测试有效和无效的用户名和密码,要注意到是否大小写敏感,可以试多少次的限制,是否可以不登陆而直接浏览某个页面等。3.SessionWeb应用系统是否有超时的限制,也就是说,用户登陆后在一定时间内(例如15分钟)没有点击任何页面,是否需要重新登陆才能正常使用。4.日志文件为了保证Web应用系统的安全性,日志文件是至关重要的。需要测试相关信息是

14、否写进了日志文件、是否可追踪。5.加密当使用了安全套接字时,还要测试加密是否正确,检查信息的完整性。6.安全漏洞服务器端的脚本常常构成安全漏洞,这些漏洞又常常被黑客利用。所以,还要测试没有经过授权,就不能在服务器端放置和编辑脚本的问题。目前网络安全问题日益重要,特别对于有交互信息的网站及进行电子商务活动的网站尤其重要。目前我们的测试没有涵盖网站的安全性的测试,我们拟定采用工具来测定,工具如下SAINT- Security Administrators Integrated Network Tool此工具能够测出网站系统的相应的安全问题,并且能够给出安全漏洞的解决方案,不过是一些较为常见的漏洞解

15、决方案。应用系统安全测试方法及内容 测试内容测试要点测试方法应用系统的用户管理、权限管理应充分利用操作系统和数据库的安全性;应用软件运行时须有完整的日志记录。日志记录的完整性检测系统运行时是否会记录完整的日志。如进行详单查询,检测系统是否会记录相应的操作员、操作时间、系统状态、操作事项、IP地址等。不允许以明文方式保存用户密码或系统使用的各类密码用户密码或系统使用的各类密码的加密存储检查数据库中的用户密码、操作员密码等字段是否是以加密方式保存。为保证安全性,口令不允许以明码的形式显示在输出设备上,应能对口令进行如下限制:最小口令长度、强制修改口令的时间间隔、口令的唯一性、口令过期失效后允许入网

16、的宽限次数。1口令不允许以明码显示在输出设备上。2最小口令长度的限制。3强制修改的时间间隔限制。4口令的唯一性限制。5口令过期失效后允许入网的宽限次数限制实际登录系统,输入相应的口令,检测口令是否是以加密形式显示,同时检测最小口令长度、强制修改口令的时间间隔、口令的唯一性、口令过期失效后允许入网的宽限次数。应用系统应支持操作失效时间的配置,当操作员在所配置的时间内没有对界面进行任何操作则该应用自动失效。1支持操作失效时间的配置。2支持当操作员在所配置的时间内没有对界面进行任何操作则该应用自动失效。检测系统是否支持操作失效时间的配置,同时达到所配置的时间内没有对界面进行任何操作时,检测系统是否会

17、将用户自动失效,需要重新登录系统。应用系统应提供完善的审计功能,对系统关键数据的每一次增加、修改和删除都能记录相应的修改时间、操作人和修改前的数据记录。支持系统关键数据进行维护的记录功能。检测对系统关键数据进行增加、修改和删除时,系统是否会记录相应的修改时间、操作人员和修改前的数据记录。应用程序的源代码不允许放在运行主机上,应另行存放,并具有版本控制能力。1应用程序的源代码不允许放在运行主机上,应另行存放。2版本控制1登录主机审查应用程序的源代码存放位置。2查看支撑系统版本控制管理办法或相似文件,是否有相应的版本管理规章制度;软件升级、补丁植入流程管理是否合理。3查看系统软件版本记录文件及软件

18、介质与软件操作手册,是否有详细的软件版本号、软件升级与补丁植入情况的记录。各应用软件目录设置及其访问权限应有相应的规范,以保证系统的安全性和可维护性。各应用软件目录设置及其访问权限应有相应的规范。审查是否有各应用软件目录设置及其访问权限相应的规范文件。接口程序连接登录必须进行认证(根据用户名、密码认证)支持接口程序连接登录时的认证。实际运行系统,检测接口程序连接登录时,是否需要输入相应的用户名、密码进行认证。安全性测试1、功能验证功能验证是采用软件测试当中的黑盒测试方法,对涉及安全的软件功能,如:用户管理模块,权限管理模块,加密系统,认证系统等进行测试,主要验证上述功能是否有效,具体方法可使用

19、黑盒测试方法。2、漏洞扫描 安全漏洞扫描通常都是借助于特定的漏洞扫描器完成的。漏洞扫描器是一种自动检测远程或本地主机安全性弱点的程序。通过使用漏洞扫描器,系统管理员能够发 现所维护信息系统存在的安全漏洞,从而在信息系统网络安全保卫站中做到“有的放矢”,及时修补漏洞。按常规标准,可以将漏洞扫描分为两种类型:主机漏洞扫 描器(Host Scanner)和网络漏洞扫描器(Net Scanner)。主机漏洞扫描器是指在系统本地运行检测系统漏洞的程序,如著名的COPS、Tripewire、Tiger等自由软件。网络漏洞扫描器 是指基于网络远程检测目标网络和主机系统漏洞的程序,如Satan、ISS Int

20、ernet Scanner等。安全漏洞扫描是可以用于日常安全防护,同时可以作为对软件产品或信息系统进行测试的手段,可以在安全漏洞造成严重危害前,发现漏洞并加以防范。3、模拟攻击实验对于安全测试来 说,模拟攻击测试是一组特殊的黑盒测试案例,我们以模拟攻击来验证软件或信息系统的安全防护能力,下面简要列举在数据处理与数据通信环境中特别关心的几种 攻击。在下列各项中,出现了“授权”和“非授权”两个术语。“授权”意指“授予权力”,包含两层意思:这里的权力是指进行某种活动的权力(例如访问数 据);这样的权力被授予某个实体、代理人或进程。于是,授权行为就是履行被授予权力(未被撤销)的那些活动。 冒充:就是一

21、个实体假装成一个不同的实体。冒充常与某些别的主动攻击形式一起使用,特别是消息的重演与篡改。例如,截获鉴别序列,并在一个有效的鉴别序列使用过一次后再次使用。特权很少的实体为了得到额外的特权,可能使用冒充成具有这些特权的实体,举例如下。1) 口令猜测:一旦黑客识别了一台主机,而且发现了基于NetBIOS、Telnet或NFS服务的可利用的用户帐号,并成功地猜测出了口令,就能对机器进行控制。 2) 缓冲区溢出:由于在很多地服务程序中大意的程序员使用类似于“strcpy(),strcat()”不进行有效位检查的函数,最终可能导致恶意用户编写一 小段程序来进一步打开安全缺口,然后将该代码放在缓冲区有效载

22、荷末尾,这样,当发生缓冲区溢出时,返回指针指向恶意代码,执行恶意指令,就可以得到系统的 控制权。 重演:当一个消息或部分消息为了产生非授权效果而被重复时,出现重演。例如,一个含有鉴别信息的有效消息可能被另一个实体所重演,目的是鉴别它自己(把它当作其他实体)。 消息篡改:数据所传送的内容被改变而未被发觉,并导致非授权后果,如下所示。1) DNS高速缓存污染:由于DNS服务器与其他名称服务器交换信息的时候并不进行身份验证,这就使得黑客可以加入不正确得信息,并把用户引向黑客自己的主机。2) 伪造电子邮件:由于SMTP并不对邮件发送者的身份进行鉴定,因此黑客可以对内部客户伪造电子邮件,声称是来自某个客

23、户认识并相信的人,并附上可安装的特洛伊木马程序,或者是一个指向恶意网站的链接。 服务拒绝:当一个实体不能执行它的正常功能,或它的动作防碍了别的实体执行它们的正常功能的时候,便发生服务拒绝。这种攻击可能是一般性的,比如一个实体 抑制所有的消息,也可能是有具体目标的。例如,一个实体抑制所有流向某一特定目的端的消息,如安全审计服务。这种攻击可以是对通信业务流的抑制,或产生额 外的通信业务流。也可能制造出试图破坏网络操作的消息,特别是如果网络具有中继实体,这些中继实体根据从别的中继实体那里接收到的状态报告,来做出路由选择的决定。拒绝服务攻击种类很多,举例如下。1) 死亡之ping(ping of de

24、ath):由于在早期的阶段,路由器对包的最大尺寸都有限制,许多操作系统对TCP/IP栈的实现在ICMP包上都规定为64KB,并且在读取包的标题后,要根据该标题头里包含的信息来为有效载荷生成缓冲区。当产生畸形的、声称自己的尺寸超过ICMP上限,也就是加载尺寸超过64K上限的包时,就会出 现内存分配错误,导致TCP/IP堆栈崩溃,致使接受方宕机。2) 泪滴(Teardorop):泪滴攻击利用那些在TCP/IP堆栈实现中信任IP碎片中的包的标题头所包含的信息来实现自己的攻击。IP分段含有指示该分段所包含的是原包的哪一段的信息,某些TCP/IP(包括Service Pack 4以前的NT)在收到含有重

25、叠偏移的伪造分段时将崩溃。3) UDP洪水(UDP Flood): 各种各样的假冒攻击利用简单的TCP/IP服务,如Chargen和Echo来传送毫无用处的数据以占满带宽。通过伪造与某一主机的Chargen服务之间的一次的UDP连接,回复地址指向开着Echo服务的一台主机,这样就生成在两台主机之间的足够多的无用数据流,如果数据流足够多,就会导致带宽的服务攻击。4) SYN洪水(SYN Flood):一些TCP/IP栈的实现,只能等待从有限数量的计算机发来的ACK消息,因为它们只有有限的内存缓冲区用于创建连接,如果这一缓冲区充满 了虚假连接的初始信息,该服务器就会对接下来的连接请求停止响应,直到

26、缓冲区里的连接企图超时为止。在一些创建连接不受限制的实现里,SYN洪水也具有类 似的影响。5) Land攻击:在Land攻击中,一个特别打造的SYN包的原地址和目标地址都被设置成某一个服务器地址,这将导致接受服务器向它自己的地址发送SYN- ACK消息,结果,这个地址又发回ACK消息并创建一个空连接,每一个这样的连接都将保留,直到超时。各种系统对Land攻击的反应不同,许多UNIX实 现将崩溃,NT变得极其缓慢(大约持续5分钟)。6) Smurf攻击:一个简单的Smurf攻击,通过使用将回复地址设置成受害网络的广播地址的ICMP应答请求(ping)数据包,来淹没受害主机的方式进 行,最终导致该

27、网络的所有主机都对此ICMP应答请求作出答复,导致网络阻塞,比“Ping of Death”洪水的流量高出一个或两个数量级。更加复杂的Smurf将源地址改为第三方的受害者,最终导致第三方雪崩。7) Fraggle攻击:Fraggle攻击对Smurf攻击作了简单的修改,使用的是UDP应答消息,而非ICMP。8) 电子邮件炸弹:电子邮件炸弹是最古老的匿名攻击之一,通过设置一台机器,不断大量地向同一地址发送电子邮件,攻击者能够耗尽接收者网络的带宽。9) 畸形消息攻击:各类操作系统上的许多服务都存在此类问题,由于这些服务在处理信息之前没有进行适当正确的错误校验,在收到畸形的信息时可能会崩溃。 内部攻击

28、:当系统的合法用户以非故意或非授权方式进行动作时就成为内部攻击。多数已知的计算机犯罪都和使系统安全遭受损害的内部攻击有密切的关系。能用来 防止内部攻击的保护方法包括:所有管理数据流进行加密;利用包括使用强口令在内的多级控制机制和集中管理机制来加强系统的控制能力;为分布在不同场所的业务部门划分VLAN,将数据流隔离在特定部门;利用防火墙为进出网络的用户提供认证功能,提供访问控制保护;使用安全日志记录网络管理数据流等。 外部攻击:外部攻击可以使用的方法有:搭线(主动的与被动的)、截取辐射、冒充为系统的授权用户、冒充为系统的组成部分、为鉴别或访问控制机制设置旁路等。 陷阱门:当系统的实体受到改变,致

29、使一个攻击者能对命令或对预定的事件或事件序列产生非授权的影响时,其结果就称为陷阱门。例如,口令的有效性可能被修改,使得除了其正常效力之外也使攻击者的口令生效。 特洛伊木马:对系统而言的特洛伊木马,是指它不但具有自己的授权功能,而且还有非授权功能。一个向非授权信道拷贝消息的中继就是一个特洛伊木马。典型的特洛伊木马有NetBus、BackOrifice和BO2k等。4、侦听技术侦听技术实际上是在数据通信或数据交互过程,对数据进行截取分析的过程。目前最为流行的是网络数据包的捕获技术,通常我们称为Capture,黑客可以利用该项技术实现数据的盗用,而测试人员同样可以利用该项技术实现安全测试。该项技术主要用于对网络加密的验证。安全性测试安全性测试是有关验证应用程序的安全服务和识别潜在安

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2