这篇文章给大家分享的是有关sqlmap是什么的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
sqlmap是一个自动化的SQL注入工具,主要的功能是扫描,发现并利用给定的URL的SQL注入漏洞,目前支持的数据库是MySQL, Oracle, PostgreSQL, Microsoft SQL Server, Microsoft Access,IBM DB2, SQLite, Firebird, Sybase和SAP MaxDB。下面分别介绍burpsuite中sqlmap插件的使用以及sqlmap的tamper脚本的介绍与使用。
在之前测试的过程中一般都会将burpsuite抓取的数据包保存在txt文件中,然后在运行sqlmap加参数进行相关的扫描测试,这次发现在burpsuite中可以添加CO2插件调用sqlmap进行扫描,更加方便。
具体用法:
1、打开burpsuite-Extender-BAppStore(burp的应用商店),找到CO2,在右边栏里最下面有“install”,点击安装。安装完成后,会发现右边出现“CO2”,如下图所示。
2、安装成功后,进入CO2模块,配置sqlmap的路径。
3、将拦截下来的数据包发送至sqlmapper,进入此模块后,可以直接运行,也可以对参数进行设置。
sqlmap使用tamper脚本
Waf目前几乎是网站必配的设备之一,在渗透的过程中会发现,很多时候一些操作都会被拦截。在测SQL注入时候,很多时候sqlmap最后返回的信息也会有提示被waf所拦截,接下来讲述一下sqlmap使用tamper绕过waf进行注入。
首先在测试注入的过程中要先确定是否存在waf以及waf的类型,可用参数“–identify-waf”确定,在输出的信息中可以发现waf的相关信息。
命令:sqlmap.py -u “http://www.xxx.com” –identify-waf
如下图所示,在本地搭建安全狗,探测时可发现信息中显示WAF/IPS identified as 'Safedog',可以确定网站使用waf,并且可以确定waf是安全狗。
在确定网站存在waf时,可使用sqlmap的tamper脚本绕过waf。tamper脚本可在一定程度上避开应用程序的敏感字符过滤、绕过WAF规则的阻挡,继而进行渗透攻击。在使用tamper之前,要考虑当前数据库的版本,类型,然后再去选择合理的tamper,下面图中列出一部分tamper脚本。
tamper脚本在windows系统下的路径:
tamper脚本在kali下的路径(/usr/share/sqlmap/):
使用命令:sqlmap -u "http://xxx.com/xx.php?id=51"–tamper=xx.py,xx.py
tamper脚本结构:
图一
图中 1处:脚本调用的优先级。PROIORITY是定义tamper的优先级,如果你加载多个tamper,谁的优先级高,谁被优先使用。(优先级共有七个,分别为;LOWEST、LOWER、LOW、NORMAL、HIGH、HIGHER、HIGHEST)
图中2处:主要是起到提示用户tamper支持哪些数据库的作用,可以写,也可以不写,如果写的话,最好按照示例文档写(如图一中写法,括号中内容可以修改,修改后显示如图二所示)
图二
图中3处:payload参数是sqlmap进行自动注入时的sql语句,要替换的就是payload,来完成想要的绕过(如图三所示,修改payload,将需要替换的关键字使用双写进行替换,这种属于简单的tamper脚本编写)。kwargs是修改http头里的内容函数(如图四所示)。
图三
图四
图中绿字:会介绍脚本的作用(需要替换的部分),适用的数据库类型,版本,以及用示例示范替换的内容,当然脚本不一样,内容也会不同,但是都会在最后对替换部分进行示例展示。
在使用tamper脚本时,部分人会选择自己进行编写,在写完后要放在tamper路径中在进行调用。
感谢各位的阅读!关于“sqlmap是什么”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/222386.html