第一篇:年终总结(网站测试)
部门:XX
职位:XX
员工:XX
年终总结范文
工作又过了一年,来到XX已将近三个月。回顾一年的历程,总是在与bug相伴,测试思想,测试用例,测试报告也一直在与开发人员沟通着如何才能把项目做得几近完善,这是工作职责范围内的,也是作为一个测试人员应该做的内容,而这一年中所做的不完美与不深入,是我的遗憾。
这一年应该是比较重要的一年,从测试入门到熟络,从第一个公司到现在公司这些都是值得记住的事情。这一年总的来说,完成了自己既定的目标。在技术上,学些了js脚本、sql sever数据库、功能测试,编写测试用例,各种测试工具的使用。先对这一年重要的事情做一个回顾。在上一个工作做得是php程序员,但是对网站的热爱让我对网站测试有这浓厚的兴趣,由于有之前的编程基础,对于测试入手很快,加之女生特有的耐心和细心,让我在网站测试行业如鱼得水。在黄金十月中,我来到了XX这一个大家庭,经过一段时间的调整,现在已经融入到这个集体中。总的来说,这一年通过自我提升使自己建立了自信心,有着勇气面对前路未知的一切困难,也加深了自己对于测试的热爱。
下面谈谈未来一年的计划和展望。
从测试技能来说:我将更好地学习编写测试报告,测试用例等基本技能,并学习使用各种测试工具以及网站的安全测试,性能测试以更高速更安全的保证软件的质量。学习loadrunner,QTP等自动化测试。把功能测试做得更好,也开始学习应用自动化测试,让测试工作效率有个较大的提高。从项目来说:系统学习下软件的相关技能知识和相关业务知识,并逐步应用到现在工作中去;了解项目各个角色的职能,以及怎样通过相互之间的协作把项目推向成功。
展望,亦是一种期望。希望在下一年,工作各方面都有一个长足的发展和进步。希望通过实创所有同事的共同努力,把项目推向成功。希望生活越过越充实快乐。更希望,在明年这时,有一个更好的年终答卷。
路漫漫其修远兮,吾将上下而求索。
第二篇:网站测试心得
在Web工程过程中,基于Web系统的测试、确认和验收是一项重要而富有挑战性的工作。基于Web的系统测试与传统的软件测试不同,它不但需要检查和验证是否按照设计的要求运行,而且还要测试系统在不同用户的浏览器端的显示是否合适。本文从功能、性能、可用性、客户端兼容性、安全性等方面讨论了基于Web的系统测试方法。
AD:
基于Web的系统测试在基于Web的系统开发中,如果缺乏严格的过程,我们在开发、发布、实施和维护Web的过程中,可能就会碰到一些严重的问题,失败的可能性很大。而且,随着基于Web的系统变得越来越复杂,一个项目的失败将可能导致很多问题。当这种情况发生时,我们对Web和Internet的信心可能会无法挽救地动摇,从而引起Web危机。并且,Web危机可能会比软件开发人员所面对的软件危机更加严重、更加广泛。
在Web工程过程中,基于Web系统的测试、确认和验收是一项重要而富有挑战性的工作。基于Web的系统测试与传统的软件测试不同,它不但需要检查和验证是否按照设计的要求运行,而且还要测试系统在不同用户的浏览器端的显示是否合适。重要的是,还要从最终用户的角度进行安全性和可用性测试。然而,Internet和Web媒体的不可预见性使测试基于Web的系统变得困难。因此,我们必须为测试和评估复杂的基于Web的系统研究新的方法和技术。一般软件的发布周期以月或以年计算,而Web应用的发布周期以天计算甚至以小时计算。
Web测试人员必须处理更短的发布周期,测试人员和测试管理人员面临着从测试传统的C/S结构和框架环境到测试快速改变的Web应用系统的转变。
一、功能测试
1、链接测试链接是Web应用系统的一个主要特征,它是在页面之间切换和指导用户去一些不知道地址的页面的主要手段。链接测试可分为三个方面。首先,测试所有链接是否按指示的那样确实链接到了该链接的页面;其次,测试所链接的页面是否存在;最后,保证Web应用系统上没有孤立的页面,所谓孤立页面是指没有链接指向该页面,只有知道正确的URL地址才能访问。链接测试可以自动进行,现在已经有许多工具可以采用。链接测试必须在集成测试阶段完成,也就是说,在整个Web应用系统的所有页面开发完成之后进行链接测试。
2、表单测试当用户给Web应用系统管理员提交信息时,就需要使用表单操作,例如用户注册、登陆、信息提交等。在这种情况下,我们必须测试提交操作的完整性,以校验提交给服务器的信息的正确性。例如:用户填写的出生日期与职业是否恰当,填写的所属省份与所在城市是否匹配等。如果使用了默认值,还要检验默认值的正确性。如果表单只能接受指定的某些值,则也要进行测试。例如:只能接受某些字符,测试时可以跳过这些字符,看系统是否会报错。
3、Cookies测试 Cookies通常用来存储用户信息和用户在某应用系统的操作,当一个用户使用Cookies访问了某一个应用系统时,Web服务器将发送关于用户的信息,把该信息以Cookies的形式存储在客户端计算机上,这可用来创建动态和自定义页面或者存储登陆等信息。如果Web应用系统使用了Cookies,就必须检查Cookies是否能正常工作。测试的内容可包括Cookies是否起作用,是否按预定的时间进行保存,刷新对Cookies有什么影响等。
4、设计语言测试 Web设计语言版本的差异可以引起客户端或服务器端严重的问题,例如使用哪种版本的HTML等。当在分布式环境中开发时,开发人员都不在一起,这个问题就显得尤为重要。除了HTML的版本问题外,不同的脚本语言,例如Java、JavaScript、ActiveX、VBScript或Perl等也要进行验证。
5、数据库测试 在Web应用技术中,数据库起着重要的作用,数据库为Web应用系统的管理、运行、查询和实现用户对数据存储的请求等提供空间。在Web应用中,最常用的数据库类型是关系型数据库,可以使用SQL对信息进行处理。在使用了数据库的Web应用系统中,一般情况下,可能发生两种错误,分别是数据一致性错误和输出错误。数据一致性错误主要是由于用户提交的表单信息不正确而造成的,而输出错误主要是由于网络速度或程序设计问题等引起的,针对这两种情况,可分别进行测试。
二、性能测试
1、连接速度测试
用户连接到Web应用系统的速度根据上网方式的变化而变化,他们或许是电话拨号,或是宽带上网。当下载一个程序时,用户可以等较长的时间,但如果仅仅访问一个页面就不会这样。如果Web系统响应时间太长(例如超过5秒钟),用户就会因没有耐心等待而离开。另外,有些页面有超时的限制,如果响应速度太慢,用户可能还没来得及浏览内容,就需要重新登陆了。而且,连接速度太慢,还可能引起数据丢失,使用户得不到真实的页面。
2、负载测试
负载测试是为了测量Web系统在某一负载级别上的性能,以保证Web系统在需求范围内能正常工作。负载级别可以是某个时刻同时访问Web系统的用户数量,也可以是在线数据处理的数量。例如:Web应用系统能允许多少个用户同时在线?如果超过了这个数量,会出现什么现象?Web应用系统能否处理大量用户对同一个页面的请求?
3、压力测试
负载测试应该安排在Web系统发布以后,在实际的网络环境中进行测试。因为一个企业内部员工,特别是项目组人员总是有限的,而一个Web系统能同时处理的请求数量将远远超出这个限度,所以,只有放在Internet上,接受负载测试,其结果才是正确可信的。进行压力测试是指实际破坏一个Web应用系统,测试系统的反映。压力测试是测试系统的限制和故障恢复能力,也就是测试Web应用系统会不会崩溃,在什么情况下会崩溃。黑客常常提供错误的数据负载,直到Web应用系统崩溃,接着当系统重新启动时获得存取权。压力测试的区域包括表单、登陆和其他信息传输页面等。
三、可用性测试
1、导航测试导航描述了用户在一个页面内操作的方式,在不同的用户接口控制之间,例如按钮、对话框、列表和窗口等;或在不同的连接页面之间。通过考虑下列问题,可以决定一个Web应用系统是否易于导航:导航是否直观?Web系统的主要部分是否可通过主页存取?Web系统是否需要站点地图、搜索引擎或其他的导航帮助?在一个页面上放太多的信息往往起到与预期相反的效果。Web应用系统的用户趋向于目的驱动,很快地扫描一个Web应用系统,看是否有满足自己需要的信息,如果没有,就会很快地离开。很少有用户愿意花时间去熟悉Web应用系统的结构,因此,Web应用系统导航帮助要尽可能地准确。导航的另一个重要方面是Web应用系统的页面结构、导航、菜单、连接的风格是否一致。确保用户凭直觉就知道Web应用系统里面是否还有内容,内容在什么地方。Web应用系统的层次一旦决定,就要着手测试用户导航功能,让最终用户参与这种测试,效果将更加明显。
2、图形测试
在Web应用系统中,适当的图片和动画既能起到广告宣传的作用,又能起到美化页面的功能。一个Web应用系统的图形可以包括图片、动画、边框、颜色、字体、背景、按钮等。
图形测试的内容有:
(1)要确保图形有明确的用途,图片或动画不要胡乱地堆在一起,以免浪费传输时间。Web应用系统的图片尺寸要尽量地小,并且要能清楚地说明某件事情,一般都链接到某个具体的页面。
(2)验证所有页面字体的风格是否一致。
(3)背景颜色应该与字体颜色和前景颜色相搭配。
(4)图片的大小和质量也是一个很重要的因素,一般采用JPG或GIF压缩。
3、内容测试
内容测试用来检验Web应用系统提供信息的正确性、准确性和相关性。信息的正确性是指信息是可靠的还是误传的。例如,在商品价格列表中,错误的价格可能引起财政问题甚至导致法律纠纷;信息的准确性是指是否有语法或拼写错误。这种测试通常使用一些文字处理软件来进行,例如使用Microsoft Word的“拼音与语法检查”功能;信息的相关性是指是否在当前页面可以找到与当前浏览信息相关的信息列表或入口,也就是一般Web站点中的所谓“相关文章列表”。
4、整体界面测试
整体界面是指整个Web应用系统的页面结构设计,是给用户的一个整体感。例如:当用户浏览Web应用系统时是否感到舒适,是否凭直觉就知道要找的信息在什么地方?整个Web应用系统的设计风格是否一致?对整体界面的测试过程,其实是一个对最终用户进行调查的过程。一般Web应用系统采取在主页上做一个调查问卷的形式,来得到最终用户的反馈信息。对所有的可用性测试来说,都需要有外部人员(与Web应用系统开发没有联系或联系很少的人员)的参与,最好是最终用户的参与。
四、客户端兼容性测试
1、平台测试
市场上有很多不同的操作系统类型,最常见的有Windows、Unix、Macintosh、Linux等。Web应用系统的最终用户究竟使用哪一种操作系统,取决于用户系统的配置。这样,就可能会发生兼容性问题,同一个应用可能在某些操作系统下能正常运行,但在另外的操作系统下可能会运行失败。因此,在Web系统发布之前,需要在各种操作系统下对Web系统进行兼容性测试。
2、浏览器测试
浏览器是Web客户端最核心的构件,来自不同厂商的浏览器对Java,、JavaScript、ActiveX、plug-ins或不同的HTML规格有不同的支持。例如,ActiveX是Microsoft的产品,是为Internet Explorer而设计的,JavaScript是Netscape的产品,Java是Sun的产品等等。另外,框架和层次结构风格在不同的浏览器中也有不同的显示,甚至根本不显示。不同的浏览器对安全性和Java的设置也不一样。测试浏览器兼容性的一个方法是创建一个兼容性矩阵。在这个矩阵中,测试不同厂商、不同版本的浏览器对某些构件和设置的适应性。
五、安全性测试
Web应用系统的安全性测试区域主要有:
(1)现在的Web应用系统基本采用先注册,后登陆的方式。因此,必须测试有效和无效的用户名和密码,要注意到是否大小写敏感,可以试多少次的限制,是否可以不登陆而直接浏览某个页面等。
(2)Web应用系统是否有超时的限制,也就是说,用户登陆后在一定时间内(例如15分钟)没有点击任何页面,是否需要重新登陆才能正常使用。
(3)为了保证Web应用系统的安全性,日志文件是至关重要的。需要测试相关信息是否写进了日志文件、是否可追踪。
(4)当使用了安全套接字时,还要测试加密是否正确,检查信息的完整性。
(5)服务器端的脚本常常构成安全漏洞,这些漏洞又常常被黑客利用。所以,还要测试没有经过授权,就不能在服务器端放置和编辑脚本的问题。
六、总结
本文从功能、性能、可用性、客户端兼容性、安全性等方面讨论了基于Web的系统测试方法。基于Web的系统测试与传统的软件测试既有相同之处,也有不同的地方,对软件测试提出了新的挑战。基于Web的系统测试不但需要检查和验证是否按照设计的要求运行,而且还要评价系统在不同用户的浏览器端的显示是否合适。重要的是,还要从最终用户的角度进行安全性和可用性测试。
第三篇:Web网站渗透测试论文
---------------
装 订 线---------------
XXX职业技术学院 毕业设计(论文)
题目: Web网站渗透测试技术研究
系
(院)信息系 专业班级 计算机网络 学
号 1234567890 学生姓名 XXX 校内导师 XXX 职
称 讲师 企业导师 XXX 职
称 工程师 企业导师
XXX
职
称
工程师
摘 要: Web网站渗透测试技术研究
随着网络技术的发展和应用领域的扩张,网络安全问题越来越重要。相对于传统的系统安全,Web网站的安全得到了越来越多的重视。首先,越来越多的网络业务不再用专门的客户机/服务器模式开发,而是运行在Web网站上用浏览器统一访问;其次,和比较成熟的操作系统安全技术比较,Web网站的安全防护技术还不够完善,当前黑客也把大部分注意力集中在Web渗透技术的发展上,使Web网站安全总体上面临相当严峻的局面。
为了确保Web网站的安全,需要采用各种防护措施。在各种防护措施中,当前最有效的措施是先自己模拟黑客攻击,对需要评估的网站进行Web渗透测试,找到各种安全漏洞后再针对性进行修补。
本文在对Web网站渗透测试技术进行描述的基础上,配置了一个实验用Web网站,然后对此目标网站进行了各种黑客渗透攻击测试,找出需要修补的安全漏洞,从而加深了对Web安全攻防的理解,有利于以后各种实际的网络安全防护工作。
关键词:
网络安全;Web网站;渗透测试
Web site penetration testing technology research
Abstract:
With the expansion of the network technology development and applications, network security issues become increasingly important.Compared with the traditional system security, Web security has got more and more attention.First, more and more network applications no longer develop with specialized client / server model, but run on the Web site and accessed by browser;Secondly, operating system security technology is relatively safe, but secure Web site protection technology is still not perfect, so the most of the current hackers’ attention focused on the development of Web penetration technology, the Web site is facing serious security situation in general.To ensure the security Web site, you need to use a variety of protective measures.In a variety of protective measures, the most effective measure is to own hacking simulation, the need to assess the Web site penetration testing, to find a variety of security vulnerabilities before specific repair.Based on the Web site penetration testing techniques described, the configuration of an experimental Web site, then this target site penetration of various hacker attack test, identify areas that need patching security holes, thereby deepening of Web security offensive understanding, there is conducive to future practical network security protection work.Keywords:
Network Security, Web sites, penetration testing
目录
第一章 概述................................................................................................1
1.1 网络安全概述..........................................................................................1 1.2 Web网站面临的威胁...............................................................................1 1.3 Web渗透测试概述...................................................................................2
第二章 Web渗透测试方案设计...................................................................4
2.1 渗透测试网站创建..................................................................................4 2.2 渗透测试工具选择..................................................................................4 2.3渗透测试方法...........................................................................................5
第三章 Web渗透测试过程...........................................................................6
3.1 扫描测试Web网站..................................................................................6 3.2 寻找Web安全漏洞..................................................................................7 3.3 SQL注入攻击测试...................................................................................9 3.4 XSS跨站攻击测试.................................................................................13 3.5 网马上传攻击测试................................................................................17
第四章 Web网站防护.................................................................................23
4.1 网站代码修复........................................................................................23 4.2 其它防护措施........................................................................................24
总 结.........................................................................................................25 参考文献.....................................................................................................25
第一章 概述
1.1 网络安全概述
随着网络技术的发展,网络已经越来越多地渗透到当前社会生活的方方面面,网上电子商务、电子政务、电子金融等业务日益普及,网络上的敏感数据也越来越多,自然对网络安全提出了更高的要求。
根据一般的定义,网络安全是指网络系统的硬件、软件及其系统中的数据受到保护,不因偶然的或者恶意的原因而遭受到破坏、更改、泄露,系统连续可靠正常地运行,网络服务不中断。要做到这一点,必须保证网络系统软件、应用软件、数据库系统具有一定的安全保护功能,并保证网络部件,如终端、调制解调器、数据链路的功能仅仅能被那些被授权的人访问。
在现实世界中,由于网络相关的各种软硬件安装、配置、管理上面基本不可能做到没有任何缺陷和漏洞,所以可以说不存在绝对的网络安全。尤其在当下网络技术逐渐普及扩散的情境下,防范各种形式的黑客攻击是网络资源管理者必须严肃考虑的问题。
根据黑客攻击的类型,大致可以分为两种,一种是直接针对操作系统本身或应用软件的安全漏洞进行的攻击,传统的注入端口扫描、弱口令爆破、缓冲器溢出都属于这种类型的攻击,如果攻击成功往往可以直接远程控制目标系统,因此一旦出问题危害极大,但针对这种攻击的防范技术也比较成熟,采用最新的安全操作系统、强大的防火墙和IDS入侵检测系统可以将绝大部分入侵企图拒之门外。另外一种就是针对动态Web网站进行的攻击,它不像针对系统的攻击那样直接,成功后能在目标系统上进行的操作有限,往往还需要进行提权等后续工作,但目前Web网站本身设计上的安全防护水平普遍不高,针对Web网站的防范措施目前也还不够成熟,所以有安全问题的Web网站非常多,Web网站的攻防也是现在安全技术领域的研究热点。
1.2 Web网站面临的威胁
传统上,网络应用业务采用C/S(客户机和服务器)模式,即开发出安装在普通客户计算机上的递交申请业务模块和安装在高性能服务器上的响应请求业务模块,这样做的好处是性能高,响应速度快,但缺点是需要为每个业务专门开发不同的服务端和客户端,开发和学习的成本也高,所以现在的趋势是将所有的服务模块都放到Web网站上,而客户机统一使用浏览器去访问Web网站去实现业务功能。
用Web网站形式开发网络业务有不少优点,首先是客户端统一为浏览器、降低了这方面的学习成本,另一方面,Web网站的主流开发语言(ASP、PHP、JSP等)是动态脚本语
言,比起用C/C++、Java等语言开发C/S程序,难度有所降低,有利于快速开发出所需的项目。但是从安全方面考虑,由于Web网站牵涉到的一些网络协议先天的不足,以及由于网络技术发展太快,网站复杂程度随着需求扩展不断膨胀,而网站开发程序员的水平和安全意识往往没有跟上,导致Web网站非常容易出现各种安全漏洞,使黑客能够对其进行各种形式的攻击,常见的Web安全漏洞主要有SQL注入和XSS跨站攻击等。SQL注入
SQL注入(SQL injection)是发生在Web应用程序和后台数据库之间的一种安全漏洞攻击,它的基本原理是:攻击者精心构建一个包含了SQL指令的输入数据,然后作为参数传递给应用程序,在应用程序没有对输入数据做足够的检查的情况下,数据库服务器就会被欺骗,将本来只能作为普通数据的输入当成了SQL指令并执行。
数据库是动态网站的核心,包含了很多网站相关的敏感数据,例如管理员的账号和密码等,所以一旦数据库的信息被SQL注入非法查询,这些敏感信息就会被泄露,导致严重后果。此外,SQL注入还可能被用于网页篡改、网页挂马,更为严重的是,有些数据库管理系统支持SQL指令调用一些操作系统功能模块,一旦被SQL注入攻击甚至存在服务器被远程控制安装后门的风险。XSS跨站攻击
简单地说,XSS也是由于Web应用程序对用户的输入过滤不严而产生,攻击者利用XSS漏洞可以将恶意的脚本代码(主要包括html代码和JavaScript脚本)注入到网页中,当其他用户浏览这些网页时,就会触发其中的恶意脚本代码,对受害者进行诸如Cookie信息窃取、会话劫持、网络钓鱼等各种攻击。
与主动攻击Web服务器端的SQL注入攻击不同,XSS攻击发生在浏览器客户端,对服务器一般没有直接危害,而且总体上属于等待对方上钩的被动攻击,因此XSS这种安全漏洞虽很早就被发现,其危害性却曾经受到普遍忽视,但随着网络攻击者挖掘出了原来越多的XSS漏洞利用方式,加上Web2.0的流行、Ajax等技术的普及,使得黑客有了更多机会发动XSS攻击,导致近年来XSS攻击的安全事件层出不穷,对XSS攻防方面研究的重视程度明显提高。
当然,Web网站面临的安全威胁还有很多,并且随着网络技术和网络业务的发展而不断更新,例如CSRF跨站请求伪造、界面操作劫持等。
1.3 Web渗透测试概述
由于各种安全漏洞,因特网上的Web网站面临黑客攻击的风险,因此必须采取措施进行防护工作。传统防火墙因为必须放行Web服务的端口(一般是80端口),所以对SQL注 2
入、XSS跨站攻击之类入侵手段没有防护效果,现在也出现了一些专门用于保护Web网站的安全设备,例如WAF防火墙、安全狗等,但这些设备并不是万能的,往往容易被高水平的入侵者绕过。最有效的措施还是进行Web渗透测试。
渗透测试时安全模拟黑客可能使用的攻击技术和漏洞发现技术,对目标系统的安全做深入的探测,发现系统最脆弱的环节。渗透测试能够直观的让管理人员知道自己网络所面临的问题。
Web渗透测试主要是对Web应用程序和相应的软硬件设备配置的安全性进行测试。进行Web渗透测试的安全人员必须遵循一定的渗透测试准则,不能对被测系统进行破坏活动。Web安全渗透测试一般是经过客户授权的,采取可控制、非控制性质的方法和手段发现目标服务器、Web应用程序和网络配置中存在的弱点。
通过Web渗透测试后,即可有针对性地对Web网站上的安全漏洞进行修补,最大程度地加固系统,确保安全。
第二章 Web渗透测试方案设计
2.1 渗透测试网站创建
为了研究Web渗透测试技术,我们需要一个测试用的Web网站,由于法律的限制,我们不能直接去攻击互联网上的Web网站,所以需要自己创建一个实验测试用Web网站,这样不但合法,而且还有利于测试完成后做修补加固和代码审核工作。
测试Web网站可以创建在本地,也可以创建到自己购买的虚拟空间或云主机上,为了方便起见,这里选择在云平台上的一台Windows 2003虚拟机系统上创建Web网站。
ASP、ASP.NET、PHP和JSP网站需要不同的环境,包括选用Apache、IIS、Nginx或者Weblogic中哪个Web服务器,数据库也有Access、Microsoft SQL Server、MySQL以及Oracle等多种选择。至于网站的源代码,可以自己开发,但一般更常见是到互联网上去搜寻开源的Web项目下载,例如中国站长网等,可以根据需求自己对网站源代码进行适当的裁剪修改,也更好达到渗透测试目的。
如图2-1所示,这里选用了IIS+ASP方案创建了一个测试用Web网站。
图2-1 创建Web网站
2.2 渗透测试工具选择
对Web网站进行渗透测试的工作是在一台能访问Web网站的攻击机上实施的,这些测试工作有些可以直接用手工操作,不过如果有适当的工具帮助,往往可以大幅度地提高渗 4
透测试的成功率和效率,因此选择一套渗透测试用的工具软件是必备的工作,这些工具一般包括端口扫描器、网站目录扫描器、网站后台扫描器、网站漏洞扫描器、SQL注入工具、XSS利用工具、转码工具、加解密工具等等。
如图2-2所示,在本地攻击机上安装了一些常用的渗透测试工具。
图2-2 渗透测试工具
2.3渗透测试方法
准备好测试用Web网站和渗透测试工具后,即可在攻击机上开始进行Web渗透测试工作,方法是模拟真正黑客的入侵过程,综合利用各种工具和手段,获取目标Web网站甚至网站所在服务器上的权限,从而挖掘出网站的各种安全漏洞,为后面的安全加固提供依据。当然,这需要很高的技术水平和熟练的操作,没有多年的经验积累是很难在各种情景下都能完成任务的,在下一章,我们就以一个比较简单的,漏洞比较明显的Web网站为例演示一下比较典型的Web渗透测试过程。
第三章 Web渗透测试过程
3.1 扫描测试Web网站
如图3-1所示,渗透测试首先应该先用Nmap之类的端口扫描工具扫描一下目标网站所在的服务器,了解开放的端口服务,目标可能的操作系统类型等信息。这里可以看到,目标服务器的80号端口是开放的,所以Web服务应该是正常的。
图3-1 端口扫描
然后用浏览器打开网站验证,如图3-2所示:
图3-2 Web网站浏览
3.2 寻找Web安全漏洞
我们可以用一些自动化的网站扫描工具去检测网站的常见漏洞,也可以用纯手工的方式进行检测,如图3-3和3-4所示,在网页URL后面添加“and 1=1”和“and 1=2”,发现网站返回的情况不同!说明这里存在着SQL注入漏洞。
图3-3 SQL注入测试
图3-4 SQL注入测试
如图3-5所示,在地址栏后面添加“ “> ”,弹窗窗口出现,证明这里存在反射型XSS漏洞。
图3-5 反射型XSS 如图3-
6、3-7和3-8所示,在留言板里发表包含“ ”的帖子内容,弹窗窗口出现,证明这里存在存储型XSS漏洞。
图3-6 留言板
图3-7 XSS留言
图3-8 存储型XSS 3.3 SQL注入攻击测试
在上一节已经找到Web网站的SQL注入漏洞的基础上,我们利用此漏洞去猜解网站后台数据库中的账号和密码,既可以用工具也可以用手工方式,这里为方便起见选用注入工具,如图3-9和3-10所示,很快猜解出账号和密码。
图3-9 工具扫描SQL注入漏洞
图3-10 注入找到后台账号密码
从密码的形式可以看出不是明文而是原始密码的MD5散列码,MD5是单向散列函数,本来是不能破解的,不过如果密码原文比较简单,也可能用暴力破解的方式找到原密码,如图3-
11、3-12和3-13所示。
图3-11 破解MD5
图3-12 破解成功
图3-13 破解出密码原文
有了账号和密码后,扫描网站的管理后台地址,如图3-14所示。
图3-14 扫描出管理后台
如图3-15和3-16所示,用前面注入猜解和破解获取的账号和密码登录,成功进入Web网站的管理后台界面。
图3-15 登录管理后台
图3-16 进入管理后台
3.4 XSS跨站攻击测试
前面已经通过手工方式探测到网站存在XSS漏洞,XSS漏洞属于一种比较被动的安全漏洞,不能用来直接攻击服务器,而是一部用来攻击其他客户端,具体利用的方法和形式很多,下面是利用XSS漏洞窃取管理员cookie的步骤。
图3-17 XSS利用平台网站
如图3-17所示,XSS漏洞攻击者自己创建一个具有XSS漏洞利用功能的网站,然后为自己创建一个项目,生成具有窃取cookie功能的代码,如图3-18所示:
图3-18 XSS利用代码
现在攻击者可以设法利用各种欺骗手段让其他Web网站用户执行XSS代码,这里利用存储型XSS漏洞,由攻击者在留言板上发表包含XSS利用代码的内容插入网站数据库,如图3-19所示。
图3-19 将代码插入目标Web网站
如图3-20所示,一旦Web网站的管理员在登录状态下查看了留言板,XSS利用代码就 14
在后台隐蔽执行了。
图3-20 管理员被攻击
此时攻击者回到XSS网站,会发现自己的项目中返回了数据,如图3-21所示。
图3-21 攻击者收到cookie
如图3-22所示,攻击者窃取到了Web网站管理员的cookie信息。
图3-22 窃取到的cookie值
如图3-23和3-24所示,有了窃取到的cookie信息,再借助一些cookie修改工具,可以不输入密码直接进入管理后台界面。
图3-23 cookie修改工具
图3-24 窃取cookie进入管理界面
3.5 网马上传攻击测试
前面利用SQL注入漏洞拿到管理账户和密码后可以非法进入后台管理界面,但到这来一般并不能做多少事,用后台权限篡改新闻挂黑页是很无聊的事情,常见的做法是想办法将网页木马上传到网站获取Webshell得到网站所在服务器的某些权限,然后有需要和可能再设法提权。
如图3-25所示,在Web网站管理后台里找到一个能够上传自己图片的地方,然后选择上传文件,如图3-26和3-27所示,直接上传asp格式的网马是通不过检查的,所以上传一个伪装成图片文件的小马,结果成功上传,并被自动重命名,如图3-28和3-29所示。
图3-25 上传图片
图3-26 选择文件
图3-27 上传网马图片
图3-28 上传成功
图3-29 上传文件位置和名称
现在网马内容上传上去了,但文件后缀名不对,所以不能访问执行,所以需要再利用类似如图3-30所示的备份漏洞,将上传的文件的后缀名成功改回asp。
图3-30 备份改名
现在可以直接访问上传成功的网马,如图3-31所示是小马的效果,利用它在上传一个功能齐全的大马,如图3-32和3-33所示。
图3-31 访问网马
图3-32 上传大马
图3-33 访问大马
现在可以直接访问大马网页文件,如图3-34所示,登录成功后即得到类似图3-35所示的Webshell界面,根据权限可以对Web网站所在的服务器进行操作,如果有其他系统和软件漏洞,还可以设法提权,获取对服务器的完全控制权。
图3-34 网马登录
图3-35 获取Webshell
第四章 Web网站防护
4.1 网站代码修复
经过Web渗透测试,我们发现了网站的安全漏洞及其严重后果,下一步自然就是部署安全防护措施,堵塞漏洞。
对Web网站后台代码进行阅读审核后,可知正是因为网站查询数据库的SQL语句缺少必要的过滤措施才导致了SQL注入、XSS等安全漏洞。修补漏洞的最好办法是用安全编码方式彻底重写所有相关代码,如果没有这个条件,添加一些过滤代码也是比较好的办法,例如图4-1所示,在数据库连接文档中添加了对用户提交值中非法参数的检测。
图4-1 过滤代码
添加过滤代码后,黑客如果再企图对Web网站进行诸如SQL注入之类的攻击,就会被拦截而归于失败,如图4-2所示。
图4-2 SQL注入被拦截
需要注意的是,黑名单式的过滤代码并不是万能的,往往会被更高水平的黑客攻击绕过,所以还应根据攻防技术的发展及时更新,并结合其他安全防范措施。
4.2 其它防护措施
因为现在的Web网站功能越来越多,也越来越复杂,相应的黑客攻击技术也在不断发展,所以往往不是单一的安全防护措施就能有效抵御各种渗透攻击,而需要综合采用各种措施,一方面尽可能将所有的安全漏洞堵住,另一方面可以争取做到即使黑客攻破了某个安全措施,也会被其他安全措施拦截,将损失降低到最小。
目前比较常用的Web安全防范措施有:尽量选用高版本的操作系统Web服务器,设置高强度的密码,给网站目录设置最小的必要权限,加装Web防火墙和杀毒软件监控网页木马等。
最后需要指出,Web渗透和防护技术还处在快速发展阶段,所以没有一劳永逸的安全,必须不断学习,与时俱进。
总 结
网络安全是当前的一个技术研究热点,Web安全又是网络安全中的一个核心问题。Web渗透测试则是强化Web网站安全的重要技术手段,它是在获得授权的情况下,模拟真实的黑客攻击手段对目标Web站点进行入侵测试,因此能够最大程度挖掘出Web网站的安全漏洞,为Web安全防护提供有效依据。
本文是在真实网络环境里自己搭建了一个Web网站,然后自己对其进行渗透测试,研究Web安全相关攻防技术。限于水平,创建的Web网站和攻防所用的技术都比较简单,没有涉及当前最新的Web网站漏洞测试,但仍然比较完整地展示了Web网站渗透测试和防护的过程,为以后进一步学习和工作打下良好基础。
参考文献
[1] 陈小兵,范渊,孙立伟.Web渗透技术及实战案例解析 [M].北京:电子工业出版社,2012.4 [2] 王文君,李建蒙.Web应用安全威胁与防治 [M].北京:电子工业出版社,2013.1 [3] 吴翰清.白帽子讲Web安全 [M].北京:电子工业出版社,2012.3 [4] 鲍洪生.信息安全技术教程 [M].北京:电子工程出版社,2014.3 25
第四篇:网站总结
一:数据转换 MRIcron MRIcron是一个跨平台的支持NIFTI格式的医学图像可视化软件,可以加载显示多层医学图像,产生体积重建后的图像;MRIcron还可以为其他平台创建并输出头文件为解析格式的脑图像。MRIcron中提供了用于数据格式转换的dcm2nii功能,可用于DICOM转换成NIFTI格式,还可用于NIFTI3D数据转换成NIFTI4D格式。二:可视化软件 1.ITK-SNAP ITK-SNAP是一个用于分割3D医学图像的应用软件,它是用C++,基于C++中的可视化分割和配准库(ITK)是免费、开源且可跨平台使用的。ITK-SNAP是由宾夕法尼亚大学佩恩图像计算和科学实验室(PICSL)的Paul Yushkevich博士和科学计算图像研究所(SCI)的Guido Gerig博士合作开发完成。ITK-SNAP提供了基于活动轮廓算法的半自动分割方法,图像显示和手动描绘。
2.xjview
xjview是SPM工具箱中一个显示的软件包,可以显示有差异的区域,在xjview中可以改变p值和FDR值的大小,从而观察随着不同阈值,区域差异的改变。下面两幅图是本人之前做过的比较男女大脑灰质体积差异的结果,仅供参考。
3.Perl 4.Surf Ice是用于大脑皮层重建的跨平台工具,其中还集成了大脑网络连接的可视化和大脑解剖结构图谱,Surf Ice类似于MRIcron,但MRIcron是用于三维体积重建,而Surf Ice是用于大脑皮层重建。Surf Ice区别于其他流行分析工作的一个主要特点是采用可编程着色器,Surf Ice生成图像包括三个阶段,第一阶段将画出所有的项目并创建一个深度缓冲,第二个阶段是相同的,但不包括解剖扫描,最后阶段是使用深度缓冲来估计基于表面的大脑的深度,这些不同的图像结合成最终的图像。
目前Surf Ice集成大脑网网络图像,定义了节点和边,所以可以用来分析海马区的网络连接,直接反应海马与大脑其他区域结构连接情况,从而更好的分析网络连接。6.TrackVis TrackVis是一个软件能可视化并分析纤维追踪产生于核磁图像弥散张量成像(DTI),弥散光谱成像(DSI)和其他弥散图像科技。
7.BrainNetViewer BrainNetViewer是一个用Matlab开发的脑网络可视化软件,可以显示不同的脑结构连接和脑功能连接,load file之后,可读入的文件有以下四种,1)脑曲面文件(Brain surface files):ASCII文件,后缀名为“nv”,包含了脑曲面上的定点和三角面片信息。
2)节点文件(node files):ASCII文件,后缀名为“node”,为n×6的矩阵,包含了节点的坐标、颜色、大小和标签信息。3)边文件(edge files):ASCII文件,后缀名为“edge”,为n×n的矩阵,即节点间的相关矩阵。
4)三维图像文件(volume files):NIFTI或Analyze格式,后缀名为配对的“hdr”和“img”该文件仅用于体素到曲面的映射绘制。
三:Linux资源
1.常用命令——文件和目录 cd /home 进入’/home’目录 cd..返回上一级目录 cd../..返回上两级目录 cd 进入个人的主目录
cp-f file1 file2 指定使用强制复制的模式把文件file1复制成file2 cp-R dir1 dir2 将目录dir1复制成目录dir2 cp-R file1 file2 file3 dir1 dir2 同时将文件file1 file2 file3与目录dir1复制到dir2 cat file 查看文件内容但不能编辑 ls 查看目录中的文件
ls-l 列出文件详细信息,包括创建者和时间,拥有的权限 ls-S以文件大小进行排序
ls-a 列出当前目录下所有文件及目录,包括隐藏的 ln创建链接文件
sudo su 获得root用户权限
chmod 777 file1 使文件获取读、写、执行的权限 mkdir dir1 创建一个叫’dir1’的目录 mkdir dir1 dir2 同时创建两个目录
mkdir-p /tmp/dir1/dir2 创建一个目录树 rm-f file1 删除一个叫做’file1’的文件
rmdir dir1 删除一个叫做’dir1’的目录,dir1是空目录 rm-rf dir1 删除一个叫做’dir1’的目录并同时删除其内容 rm-rf dir1 dir2 同时删除两个目录及它们的内容
mvfile1 file2 file3 dir 把文件file1 file2 file3移动到目录dir中 mv file1 file2 把文件file1重命名为file2 pwd显示当前目录
2.常用命令——文件搜索
find /-name ‘interfaces’搜索在根目录下的所有interfaces文件所在位置
locate interfaces 在根目录下搜索interfaces文件,它比find命令快,查询的是数据库(/var/lib/locatedb),数据库包含本地所有的文件信息。whereis搜索Linux系统中的所有可执行文件即二进制文件.which查看系统命令是否存在,并返回系统命令所在的位置,s使用which命令查看grep命令是否存在以及存在的目录的命令为”which grep”。
type命令查看系统中的某个命令是否为系统自带的命令,type cd为使用type命令查看cd是否为系统自带的命令。
3.常用命令——打包和压缩文件
tar czvf my.tar.gz file1 单个文件压缩打包
tar czvf my.tar.gz file1 file2,„ 多个文件压缩打包 tar xzvf my.tar.gz 解包至当前目录 4.常用命令——文件编辑
vim是vi的高级版,vim编辑器的三种模式:一般模式、编辑模式和命令行模式
在一般模式中可以进行删除、复制和粘贴的功能,但是无法编辑文件内容,从一般模式切换到编辑模式可以按下i键 移动光标的方法:
[Ctrl]+[f]:屏幕向下移动一页,相当于[PageDown]按键。[Ctrl]+[b]:屏幕向上移动一页,相当于[PageUp]按键。0或功能键[Home]:移动到这一行的最前面字符处。$或功能键[End]:移动到这一行的最后面字符处。G:移动到这个文件的最后一行。gg:移动到这个文件的第一行。
N[Enter]:N为数字,光标向下移动N行。删除、复制和粘贴:
x,X:在一行字中,x为向后删除一个字符(相当于[Del]键),X为向前删除一个字符(相当于[Backspace])。dd:删除光标所在的一整行。ndd:删除光标所在的向下n行。yy:复制光标所在的一行。nyy:复制光标所在的向下n行。
p,P:p为将已复制的内容在光标的下一行粘贴,P则为粘贴在光标的上一行。u:复原前一个操作。[Ctrl]+r:重做上一个操作。.:小数点,重复前一个操作。一般模式切换到编辑模式:
i,I:进入插入模式,i为从目前光标所在处插入。I为在目前所在行的第一个非空格字符处开始插入。
a,A:进入插入模式。a为从目前光标所在处的下一个字符处开始插入。A为从所在行的最后一个字符处开始插入。
o,O:进入插入模式。o为在下一行插入。O为在上一行插入。
r,R:进入替换模式。r只替换光标所在那个字符一次。R会一直替换光标所在字符,直到按下Esc键。
一般模式切换到命令行:
:w:将编辑的数据写入到硬盘中。:q:离开vi.后面加!为强制离开。
:wq:保存后离开。:wq!为强制保存后离开。
gedit是一个GNOME桌面环境下兼容UTF-8的文本编辑器,使用GTK+编写而成,简单易用。命令如下:
gedit file1 编辑file1文件,基本操作和win下word操作类似
nano是一个字符忠犬的文本编辑器,比vi/vim要简单得多,比较适合Linux初学者使用,nano命令可以打开指定文件进行编辑,默认情况下它会自动断行,如若避免这种情况,加参数-w,命令如下: nano-w file Ctrl+G 获得帮助 Ctrl+O 保存 Ctrl+E 退出 Ctrl+R 读取文件
5.常用命令——Linux软件包管理
dpkg(Debian Package)管理工具,软件包名为.deb后缀,这种方法适合系统不能联网的情况下。比如安装tree命令的安装包,先将tree.deb传到Linux系统中,然后:
sudo dpkg-i tree_1.5.3-1_i386.deb 安装软件(tree_1.5.3-1_i386.deb是手动下
载下来的包)sudo dpkg-r tree 卸载软件
安装完成后,可以用命令查看软件包相关信息 dpkg-L package 查看软件包安装的所有文件 dpkg-l package 显示软件包的版本 dpkg-s package 查找软件包的详细信息
gdebi是一个安装Debian可执行文件的专用程序,极其轻量,且专注于安装.deb文件,gdebi最有用的功能是它也可以为你展示出将要安装的程序的依赖。sudo apt-get install gdebi安装gdebi程序 sudo gdebi package用gdebi安装软件包
apt(advanced packaging tool)高级软件工具,这种方法适合系统能够联网的情况下,sudo apt-get install tree 安装tree sudo apt-get remove tree 卸载tree sudoapt-get update 更新软件 sudo apt-get upgrade 更新软件
6.常用命令——关机/重启电脑 shutdown-r 关机重启 shutdown-h关机不重启 shutdown now 立刻关机 halt关机 reboot重启
四:服务器使用要求
1.使用服务器时,必须建立自己的用户名,自己相关数据保存在自己的用户名下。2.不得擅自改动服务器上的任何数据。
第五篇:网站的测试、维护及安全防护
实验报告
实验名称:网站的测试、维护及安全防护 实验班级:信管B1201 学
号:123629 实验仪器:
计算机 实验目的:
1、掌握网站的测试、维护的方法;
2、掌握网站安全防护的常用方法。实验要求:
1、要求每位同学独立完成实验内容。
2、按照实验报告要求书写报告并按时上交。实验内容及过程: 1.网站的测试
性能测试
(1)连接速度测试。用户连接到电子商务网的速度与上网方式有关,他们或许是电话拨号,或是宽带上网!
(2)负载测试。负载测试是在某一负载级别下,检测电子商务系统的实际性能。也就是能允许多少个用户同时在线!可以通过相应的软件在一台客户机上模拟多个用户来测试负载。
(3)压力测试。压力测试是测试系统的限制和故障恢复能力,也就是测试电子商务系统会不会崩溃!
姓
名:李晓雪 实验地点: 1S401 安全性测试 它需要对网站的安全性(服务器安全,脚本安全),可能有的漏洞测试,攻击性测试,错误性测试。对电子商务的客户服务器应用程序、数据、服务器、网络、防火墙等进行测试!用相对应的软件进行测试!
基本测试
包括色彩的搭配,连接的正确性,导航的方便和正确,CSS应用的统一性
网站优化测试
好的电子商务网站是看它是否经过搜索引擎优化了,网站的架构、网页的栏目与静态情况等。
客户端兼容性测试
1、平台测试市场上有很多不同的操作系统类型,最常见的有Windows、Unix、Macintosh、Linux等。Web应用系统的最终用户究竟使用哪一种操作系统,取决于用户系统的配置。这样,就可能会发生兼容性问题,同一个应用可能在某些操作系统下能正常运行,但在另外的操作系统下可能会运行失败。因此,在Web系统发布之前,需要在各种操作系统下对Web系统进行兼容性测试。
2、浏览器测试浏览器是Web客户端最核心的构件,来自不同厂商的浏览器对Java、JavaScript、ActiveX、plug-ins或不同的HTML规格有不同的支持。例如,ActiveX是Microsoft的产品,是为Internet Explorer而设计的,JavaScript是Netscape的产品,Java是Sun的产品等等。另外,框架和层次结构风格在不同的浏览器中也有不同的显示甚至根本不显示不同的浏览器对安全性和Java的设置也不一样。测试浏览器兼容性的一个方法是创建一个兼容性矩阵。在这个矩阵中,测试不同厂商、不同版本的浏览器对某些构件和设置的适应性。
2.网站的维护
维护内容:
1、网页文字、图片进行修改以及企业新闻内容每天都能更新,不改动网站的原来结构和网页模板。信息应随着公司的发展情况及时予以更新,固定检查周期为一个星期。
2、如需要修改Flash,请提供Flash源文件。
3、域名和虚拟主机空间维护。
4、网站推广维护以及供求信息的发布。
5、包括文章撰写、页面设计、图形设计、广告设计等服务内容,把 企业的现有状况及时地在网站上反映出来,以便让客户和合作伙伴及时的了解到最新动态,管理员也可以及时得到相应的反馈信息,以便做出及时合理的处理。
工作流程:
1、拿到客户资料,核对需求;
2、当天判断工作量后,商定完成时间;
3、当天,签发网站维护工作单 工作开展:
免费为客户提供网站整站优化服务,增加客户的网站搜索引擎亲和度; 使搜索引擎更多的关顾和收录客户网站页面 网站优化:
网站进行META标记优化,W3C标准优化,搜索引擎优化等合理优化操作,确保企业网站的页面布局、结构和内容对于访问者和搜索引擎都更加亲和,使得您的企业网站能够更多的被搜索引擎收录,以及赢得更多潜在消费者的注目和好感。
网站改造:
伴随着互联网网络技术的发展以及服务器环境的改变,企业原有网站可能会出现兼容性、整体视觉、功能实现等方面的缺陷,网站改造可以弥补以上不足。
网站安全: 选配合适的防火墙系统并对防火墙进行定期管理和维护,制定安全策略,修补安全漏洞,消除安全隐患;采取有效措施防止黑客入侵,造成网站破坏,数据损坏,商业机密泄露,客户资料丢失等损失。
病毒防治:
选择合适的防病毒软件,并在客户端和服务器端进行安装调试和升级;提供病毒预警服务,随时提示病毒发作信息,降低病毒感染传播机会,避免病毒发作造.成破坏在企业网站遭受病毒感染后,及时进行病毒清除,使网站尽快恢复运营。
日常维护:
配备最佳性价比的网站资源优化方案,提高网络运行效率;帮助企业建立系统安全管理和计算机使用管理制度;帮助企业建立计算机技术档案,为设备管理和维护提供依据;帮助企业进行网站内容更新调整,网页垃圾信息清理,网络速度提升等网站维护操作定期检查企业网络和计算机工作状态,降低系统故障率,为企业提供即时的现场与远程技术支持并提交系统维护报告。故障恢复:建立全面的资料备份以及灾难恢复计划,做到有备无患在企业网站系统遭遇突发严重故障而导致网络系统崩溃后,在最短的时间内进行恢复在重要的文件资料、数据被误删或遭病毒感染、黑客破坏后,通过技术手段尽力抢救,争取恢复。
3.网站安全防护的方法
1网站的通用保护方法
针对黑客威胁,网络安全管理员采取各种手段增强服务器的安全,确保WWW服务的正常运行。象在Internet上的Email、ftp等服务器一样,可以用如下的方法来对WWW服务器进行保护: 安全配置
关闭不必要的服务,最好是只提供WWW服务,安装操作系统的最新补丁,将WWW服务升级到最新版本并安装所有补丁,对根据WWW服务提供者的安全建议进行配置等,这些措施将极大提供WWW服务器本身的安全。
防火墙 安装必要的防火墙,阻止各种扫描工具的试探和信息收集,甚至可以根据一些安全报告来阻止来自某些特定IP地址范围的机器连接,给WWW服务器增加一个防护层,同时需要对防火墙内的网络环境进行调整,消除内部网络的安全隐患。
漏洞扫描
使用商用或免费的漏洞扫描和风险评估工具定期对服务器进行扫描,来发现潜在的安全问题,并确保由于升级或修改配置等正常的维护工作不会带来安全问题。入侵检测系统
利用入侵检测系统(IDS)的实时监控能力,发现正在进行的攻击行为及攻击前的试探行为,记录黑客的来源及攻击步骤和方法 这些安全措施都将极大提供WWW服务器的安全,减少被攻击的可能性。
2、网站的专用保护方法
尽管采用的各种安全措施能防止很多黑客的攻击,然而由于各种操作系统和服务器软件漏洞的不断发现,攻击方法层出不穷,技术高明的黑客还是能突破层层保护,获得系统的控制权限,从而达到破坏主页的目的。这种情况下,一些网络安全公司推出了专门针对网站的保护软件,只保护网站最重要的内容--网页。一旦检测到被保护的文件发生了{非正常的}改变,就进行恢复。一般情况下,系统首先需要对正常的页面文件进行备份,然后启动检测机制,检查文件是否被修改,如果被修改就需要进行恢复。我们对以下几个方面的技术进行分析比较:
监测方式 :
本地和远程:检测可以是在本地运行一个监测端,也可以在网络上的另一台主机。如果是本地的话,监测端进程需要足够的权限读取被保护目录或文件。监测端如果在远端的话,WWW服务器需要开放一些服务并给监测端相应的权限,较常见的方式是直接利用服务器的开放的WWW服务,使用HTTP协议来监测被保护的文件和目录。也可利用其它常用协议来检测保护文件和目录,如FTP等。采用本地方式检测的优点是效率高,而远程方式则具有平台无关性,但会增加网络流量等负担。定时和触发:
绝大部分保护软件是使用的定时检测的方式,不论在本地还是远程检测都是根据系统设定的时间定时检测,还可将被保护的网页分为不同等级,等级高的检测时间间隔可以设得较短,以获得较好的实时性,而将保护等级较低的网页文件检测时间间隔设得较长,以减轻系统的负担。触发方式则是利用操作系统提供的一些功能,在文件被创建、修改或删除时得到通知,这种方法的优点是效率高,但无法实现远程检测。比较方法 :
在判断文件是否被修改时,往往采用被保护目录和备份库中的文件进行比较,比较最常见的方式全文比较。使用全文比较能直接、准确地判断出该文件是否被修改。然而全文比较在文件较大较多时效率十分低下,一些保护软件就采用文件的属性如文件大小、创建修改时间等进行比较,这种方法虽然简单高效,但也有严重的缺陷:{恶意入侵者}可以通过精心构造,把替换文件的属性设置得和原文件完全相同,{从而使被恶意更改的文件无法被检测出来}。另一种方案就是比较文件的数字签名,最常见的是MD5签名算法,由于数字签名的不可伪造性,数字签名能确保文件的相同。
恢复方式 :
恢复方式与备份库存放的位置直接相关。如果备份库存放在本地的话,恢复进程必须有写被保护目录或文件的权限。如果在远程则需要通过文件共享或FTP的方式来进行,那么需要文件共享或FTP的帐号,并且该帐号拥有对被保护目录或文件的写权限。
3、网站保护的缺陷
尽管网站保护软件能进一步提高系统的安全,仍然存在一些缺陷。首先这些保护软件都是针对静态页面而设计,而现在动态页面占据的范围越来越大,尽管本地监测方式可以检测脚本文件,但对脚本文件使用的数据库却无能为力。