burpsuite_hack:SQL注入挖掘插件

admin 2024年4月29日11:47:45评论18 views字数 4273阅读14分14秒阅读模式

介绍一款小众但是巨屌的SQL注入自动化判断工具。

作者已经用它挖了好多注入了,个人认为是xia注入的plus版。

该工具可以挖sql注入,ssrf。

这里主要介绍sql注入功能,全部配置好了最后只需要配置一下app.config文件就行,也支持挖ssrf漏洞了,注意ceye.io有调用次数限制不推荐。

优点:最小化探测sql注入、重复请求包去重、支持设置黑白名单。

缺点:没有缺点。

支持探测类型:整型注入、排序注入、字符型(单双引号)、报错注入。

burpsuite_hack:SQL注入挖掘插件

burpsuite_hack:SQL注入挖掘插件

逻辑处理

扫描器整体架构图

burpsuite_hack:SQL注入挖掘插件

重复请求去重

使用md5(uri+content_type+params(不包括类似csrftoken参数)+body)

class DeDuplicate(object):
    def __init__(self,duplicate_list,logger):
        self.duplicate_list = duplicate_list
        self.logger = logger
        self.duplicate_params = Config.get_instance().get("app.DUPLICATE_PARAMS").split('|')
        self.duplicate_length = int(Config.get_instance().get('app.DUPLICATE_LEGNTH'))
        self.black_host_list =  Config.get_instance().get("app.BLACK_HOSTS").split('|')

    def getHash(self,hashString):
        m = hashlib.md5(hashString.encode(encoding='utf-8'))
        return m.hexdigest()  # 转化为16进制打印md5值

    def pop_param(self, param_list):
        """
        去掉黑名单的headers
        :param headers_dict:
        :return:
        """
        keys = param_list.keys()
        for key in list(keys):
            if key in self.duplicate_params:
                param_list.pop(key)

        return param_list

    def query(self,request,http):
        host = request['host']
        #print(host)
        #print(self.black_host_list)
        if host in self.black_host_list:
            self.logger.info('黑名单host, pass')
            return False
        uri = http.parseUrl(request['full_url'])
        content_type = request['content_type']
        param_in_body = request['param_in_body']
        param_in_url = request['param_in_url']
        try:
            #self.logger.info(request['body'])
            body = json.loads(request['body'])
        except:
            body = {}
        tmpObj = [param_in_body, param_in_url,body]
        listobj = list(map(self.pop_param, tmpObj))
        hashString = uri + str(content_type) + ''.join([str(i) for i in listobj])
        #self.logger.info("----" + hashString)
        md5 = self.getHash(hashString)
        if md5 in self.duplicate_list:
            self.logger.info('重复请求')
            return False
        elif len(self.duplicate_list)<=self.duplicate_length:
            self.duplicate_list.append(md5)
            return True
        else:
            self.duplicate_list.clear()
            self.logger.info('exceed max length ,clear md5 list')
            self.duplicate_list.append(md5)
            return True

数字型SQL注入判断

burpsuite_hack:SQL注入挖掘插件

order by 注入判断

burpsuite_hack:SQL注入挖掘插件

字符型注入(包括单引号、双引号)注入判断

burpsuite_hack:SQL注入挖掘插件

双引号字符型注入同理

报错注入判断

burpsuite_hack:SQL注入挖掘插件

ssrf探测

burpsuite_hack:SQL注入挖掘插件

扫描器配置

[app]
BLACK_HEADERS = content-length|if-modified-since|if-none-match|pragma|cache-control|{发送请求前需要去除的参数}
BLACK_PARAMS = nonce|ts|signature|salt|{不进行漏洞探测的参数}
SSRF_DNSLOG = {DNSLOG}
SSRF_API_KEY = {API_KEY}
PROXY = NO
PROXY_HTTP = http://127.0.0.1:8080
REDIRECT = false
TIMEOUT = 60
REPLACE_STATUS = YES
SSRF_TENCENT = YES
DUPLICATE_PARAMS = nonce|ts|signature|{去重干扰参数}
DUPLICATE_LEGNTH = 5000
BLACK_HOSTS = pingfore.qq.com|www.baidu.com|{不扫描的域名}


[mysql]
HOST = {host}
PORT = {port}
USERNAME = {username}
PASSWD = {pass}
DB = {db_name}
CHARSETS = utf8

[score]
SIMILAR = 0.88
COSINSCORE = 75

[REPLACE]

REGEX = "t":d{10}|"current":d{10}|"reqData":".*?"|"skey":".*?"|{使用正则配置需要替换为空的内容,排除动态页面内容干扰注入判断}

部分内容转载自:https://www.cnblogs.com/depycode/p/17079397.html

食用方法:

第一步:burp加载这个插件 BurpExtender_ALL_UI.py

burpsuite_hack:SQL注入挖掘插件

burpsuite_hack:SQL注入挖掘插件

加载完之后是这样的

如下图:

burpsuite_hack:SQL注入挖掘插件

第二步:启动一个mysql,这里直接用phpstudy启动了

burpsuite_hack:SQL注入挖掘插件

第三步:使用Navicat连接或者直接连接

按照如下步骤开始创建数据库等信息

burpsuite_hack:SQL注入挖掘插件

执行命令1(注意有遮挡,右边有部分命令没显示):

CREATE DATABASE `burphack` /*!40100 DEFAULT CHARACTER SET utf8 */

执行命令2(注意有遮挡,右边有部分命令没显示):

CREATE TABLE `sql_bool` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `host` varchar(255) NOT NULL,
  `risk` int(11) NOT NULL,
  `bool_true_resp` mediumtext NOT NULL,
  `bool_true_req` mediumtext NOT NULL,
  `bool_false_resp` mediumtext,
  `bool_false_req` mediumtext,
  `first_resp` mediumtext NOT NULL,
  `payload` varchar(255) NOT NULL,
  `first_req` mediumtext NOT NULL,
  `create_time` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`)

) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COMMENT='bool型sql注入'

执行命令3(注意有遮挡,右边有部分命令没显示):

CREATE TABLE `sql_error` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `request_data` mediumtext,
  `response` mediumtext,
  `host` varchar(255) DEFAULT NULL,
  `dbms` varchar(255) DEFAULT NULL,
  `create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`)

) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8

执行命令4(注意有遮挡,右边有部分命令没显示):

CREATE TABLE `ssrf` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `payload` varchar(255) DEFAULT NULL,
  `request_data` mediumtext,
  `response` mediumtext,
  `host` varchar(255) DEFAULT NULL,
  `is_vul` int(11) DEFAULT '0' COMMENT '0 默认值n1 存在漏洞',
  `create_time` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
  `vuType` int(11) DEFAULT NULL COMMENT '1  ssrfn2  rce',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=16625 DEFAULT CHARSET=utf8 COMMENT='历史ssrf探测请求'

创建好是这样的

burpsuite_hack:SQL注入挖掘插件

第四步:修改配置文件app.config

burpsuite_hack:SQL注入挖掘插件

burpsuite_hack:SQL注入挖掘插件

第五步:自动化注入启动!!!!

命令:python MyUDPHandler_Threads.py

burpsuite_hack:SQL注入挖掘插件

上图的32743端口 我们需要在burp插件中修改

如下图红框中修改:

burpsuite_hack:SQL注入挖掘插件

下面我直接拿我本地的sqli靶场演示效果

设置目标为192.168.100.237

burpsuite_hack:SQL注入挖掘插件

python这个文件 MyUDPHandler_Threads.py

burpsuite_hack:SQL注入挖掘插件

启动mysql

burpsuite_hack:SQL注入挖掘插件

访问网站发送请求

burpsuite_hack:SQL注入挖掘插件

下图如果你的mysql没有启动则会报错,但是不会中断。

burpsuite_hack:SQL注入挖掘插件

扫到注入自动生成文件,存放于reports中

burpsuite_hack:SQL注入挖掘插件

burpsuite_hack:SQL注入挖掘插件

burpsuite_hack:SQL注入挖掘插件

下载地址:

https://github.com/depycode/burpsuite_hack

 

原文始发于微信公众号(黑熊安全):碉堡了,SQL注入随便挖!

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年4月29日11:47:45
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   burpsuite_hack:SQL注入挖掘插件https://cn-sec.com/archives/2697580.html

发表评论

匿名网友 填写信息