Web网站渗透测试论文_第1页
Web网站渗透测试论文_第2页
Web网站渗透测试论文_第3页
Web网站渗透测试论文_第4页
Web网站渗透测试论文_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

-装 订 线-XXX职业技术学院毕业设计(论文)题目:Web网站渗透测试技术研究系 (院)信息系专业班级计算机网络学 号1234567890学生姓名XXX校内导师XXX职 称讲师企业导师XXX职 称工程师企业导师XXX职 称工程师Web网站渗透测试技术研究摘 要:随着网络技术的发展和应用领域的扩张,网络安全问题越来越重要。相对于传统的系统安全,Web网站的安全得到了越来越多的重视。首先,越来越多的网络业务不再用专门的客户机/服务器模式开发,而是运行在Web网站上用浏览器统一访问;其次,和比较成熟的操作系统安全技术比较,Web网站的安全防护技术还不够完善,当前黑客也把大部分注意力集中在Web渗透技术的发展上,使Web网站安全总体上面临相当严峻的局面。为了确保Web网站的安全,需要采用各种防护措施。在各种防护措施中,当前最有效的措施是先自己模拟黑客攻击,对需要评估的网站进行Web渗透测试,找到各种安全漏洞后再针对性进行修补。本文在对Web网站渗透测试技术进行描述的基础上,配置了一个实验用Web网站,然后对此目标网站进行了各种黑客渗透攻击测试,找出需要修补的安全漏洞,从而加深了对Web安全攻防的理解,有利于以后各种实际的网络安全防护工作。渗透攻防 wangzs关键词:网络安全;Web网站;渗透测试Web site penetration testing technology researchAbstract: 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目 录第一章 概述11.1 网络安全概述11.2 Web网站面临的威胁11.3 Web渗透测试概述2第二章 Web渗透测试方案设计42.1 渗透测试网站创建42.2 渗透测试工具选择42.3渗透测试方法5第三章 Web渗透测试过程63.1 扫描测试Web网站63.2 寻找Web安全漏洞73.3 SQL注入攻击测试93.4 XSS跨站攻击测试133.5 网马上传攻击测试17第四章 Web网站防护234.1 网站代码修复234.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跨站攻击等。1 SQL注入SQL注入(SQL injection)是发生在Web应用程序和后台数据库之间的一种安全漏洞攻击,它的基本原理是:攻击者精心构建一个包含了SQL指令的输入数据,然后作为参数传递给应用程序,在应用程序没有对输入数据做足够的检查的情况下,数据库服务器就会被欺骗,将本来只能作为普通数据的输入当成了SQL指令并执行。数据库是动态网站的核心,包含了很多网站相关的敏感数据,例如管理员的账号和密码等,所以一旦数据库的信息被SQL注入非法查询,这些敏感信息就会被泄露,导致严重后果。此外,SQL注入还可能被用于网页篡改、网页挂马,更为严重的是,有些数据库管理系统支持SQL指令调用一些操作系统功能模块,一旦被SQL注入攻击甚至存在服务器被远程控制安装后门的风险。2 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注入、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网站的攻击机上实施的,这些测试工作有些可以直接用手工操作,不过如果有适当的工具帮助,往往可以大幅度地提高渗透测试的成功率和效率,因此选择一套渗透测试用的工具软件是必备的工作,这些工具一般包括端口扫描器、网站目录扫描器、网站后台扫描器、网站漏洞扫描器、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所示,在地址栏后面添加“ “alert(xss) ”,弹窗窗口出现,证明这里存在反射型XSS漏洞。图3-5 反射型XSS如图3-6、3-7和3-8所示,在留言板里发表包含“alert(xss) ”的帖子内容,弹窗窗口出现,证明这里存在存储型XSS漏洞。图3-6 留言板图3-7 XSS留言图3-8 存储型XSS3.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利用代码就在后台隐蔽执行了。图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所示,在数据库连接文档中添加了对用户提交值中非法参数的检测

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论