SRC漏洞挖掘上分技巧

admin 2024年3月14日10:05:24评论28 views字数 9163阅读30分32秒阅读模式

0x00 简介

今天就分享一下公益SRC漏洞的批量挖掘的技巧和所要用到的一些相关的工具和脚本出来和各位师傅交流一下,不足之处还希望师傅们多多指教。

0x01 国内的一些公益src漏洞平台

漏洞盒子:https://www.vulbox.com补天漏洞响应平台:https://www.butian.netCNNVD信息安全漏洞库:https://www.cnnvd.org.cn教育漏洞提交平台:https://src.sjtu.edu.cn

漏洞盒子:

SRC漏洞挖掘上分技巧

奖励:中等,奖励的话有现金还有积分,积分可以在商城内兑换礼物

通过门槛:门槛比较低,只要是漏洞都收,没有权重或者公司的一些要求,审核不是很严格,刚入门的师傅可以提交到漏洞盒子,练练手,积累一下经验和技巧

审核速度:一般吧,有时候快有时候慢

补天漏洞响应平台:

SRC漏洞挖掘上分技巧

奖励:中等,可以给现金和kb,kb可以兑换实物奖励

通过门槛:高,需要收录移动百度权重大于等于1或者百度pc权重大于等于1或者谷歌权重大于等于3的网站,edu和gov的站不需要权重

审核速度:

CNNVD信息安全漏洞库:

SRC漏洞挖掘上分技巧

奖品:高,可以给你证书

通过门槛:极高,不仅仅要看权重,而且还要看公司的注册资金,好像是通用型的漏洞,厂商注册资金要超过五千万,而且还不能只提交一个,要提交十个案例才可以

审核速度:一般

教育漏洞提交平台:

SRC漏洞挖掘上分技巧

奖品:高,有大学专门给的证书,和一些礼品

通过门槛:高,必须要edu和教育相关的网站,例如说大学,中学,高中这些

审核速度:一般

这里只列举最简单并且比较知名的一些公益src提交平台,还有一些其他的公益src提交平台,就不一一列举了

0x02 前期的准备工作

一些在线的搜索引擎网站:

(一)资产测绘引擎

fofa资产测绘引擎:https://fofa.info/鹰图资产测绘引擎:https://hunter.qianxin.com/shodan资产测绘引擎:https://www.shodan.io/360资产测绘引擎:https://quake.360.net/零零信安资产测绘引擎:https://0.zone/谷歌hacker语法:https://codeleading.com/article/8526777820/

以上的搜索引擎网站都是用来收集目标网站信息的一些网络空间资产测绘,可以帮助我们快速的定位到目标的资产,批量获取url进行漏洞挖掘

(二)企业信息查询

爱企查:https://aiqicha.baidu.com天眼查:https://www.tianyancha.com企查查:https://www.qcc.com小蓝本:https://www.xiaolanben.com

以上的网站是为了查询网站所属的企业的一些信息,为了方便在提交漏洞的时候填写详细联系方式和公司的地址

(三)域名信息查询

爱站:https://www.aizhan.com站长工具:https://tool.chinaz.com

以上的网站是为了查询网站备案信息、网站权重信息、网站的ip信息等

(四)保持一个良好的心态

一个好的心态,和一个灵活的脑袋,心态很重要,保持一个良好的心态,挖洞的时候细心一点,不怕漏洞挖不到。正所谓心细则能挖天下!!!

一些工具和漏洞库

漏洞库

佩奇漏洞文库:https://www.yuque.com/peiqiwiki/peiqi-poc-wikihttp://wiki.peiqi.tech/白阁漏洞文库:https://wiki.bylibrary.cn/%E6%BC%8F%E6%B4%9E%E5%BA%93/01-CMS%E6%BC%8F%E6%B4%9E/ActiveMQ/ActiveMQ%E4%BB%BB%E6%84%8F%E6%96%87%E4%BB%B6%E4%B8%8A%E4%BC%A0%E6%BC%8F%E6%B4%9E/狼组安全团队公开知识库:https://wiki.wgpsec.org/knowledge/Morker文库:https://wiki.96.mk/风炫漏洞库:https://evalshell.com/exploit-db漏洞库:https://www.exploit-db.com/

工具

fofaxfofa_viewernucleihttpxip2domain

0x03 批量漏洞挖掘

在线文库查询

使用在线的漏洞文库收集nday或者1day的漏洞payload对网站批量进行漏洞挖掘。用佩奇或者白阁的都可以,只要能找到poc就可以

佩奇文库

SRC漏洞挖掘上分技巧

白阁文库

SRC漏洞挖掘上分技巧

这里的话就使用佩奇文库来进行演示,访问漏洞文库,获取对应的语句:

SRC漏洞挖掘上分技巧

使用上边提到过的网络空间测绘搜索引擎来查找对应的资产,可以使用fofa,shodan,360quake,奇安信hunter,零零信安等测绘引擎搜索相关资产。我比较喜欢用fofa。

一般像OA这种系统框架都是有着清晰的指纹标识,方便从空间搜索引擎中批量寻找到目标,根据产品的漏洞来获取这个产品的资产然后进行批量的测试

SRC漏洞挖掘上分技巧

使用语句定位到产品,然后就可以看到这些相关的资产。这里随便找一个网站看看是否为我们想要的

SRC漏洞挖掘上分技巧

注意:任何未授权的测试都要点到为止,表明出漏洞的危害就好了,再往下就不礼貌了。

使用工具批量收集对应的资产网站

fofax:https://github.com/xiecat/fofax

在通过fofa空间测绘搜索引擎搜集到相关资产的时候,这个时候需要把资产给保存下来,进行下一步的操作,我们可以通过fofax或者fofa_viewer工具来将我们刚刚在fofa搜索到的资产进行导出

SRC漏洞挖掘上分技巧

SRC漏洞挖掘上分技巧

fofa_viewer:https://github.com/wgpsec/fofa_viewer

同理,通过fofa_viewer进行资产获取,将我们刚刚在fofa搜索到的资产进行导出

SRC漏洞挖掘上分技巧

SRC漏洞挖掘上分技巧

批量探测网站存活状态

使用工具httpx对上面收集到的url做一个存活验证,首先筛选出存活的url来,然后再进行测试,不然会浪费我们很多时间,这里我们使用httpx把存活的url保存到文件中

httpx.exe -timeout 15 -l fanwei.txt -o result.txt -mc 200

SRC漏洞挖掘上分技巧

SRC漏洞挖掘上分技巧

批量测试漏洞

根据泛微OA E-Cology BshServlet 远程代码执行漏洞漏洞命令执行的特征,我们简单写一个多线程检测脚本

from os import O_EXCLimport requestsimport threading
defPOC_1(target_url,ss):    vuln_url = target_url + r"/weaver/bsh.servlet.BshServlet"    headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.141 Safari/537.36","Content-Type": "application/x-www-form-urlencoded",    }try:        response = requests.get(url=vuln_url, headers=headers, timeout=5,verify=False)if response.status_code == 200and"BeanShell Test"in response.text:with open("存在漏洞的url.txt", 'a', encoding='UTF-8') as f:                print("�33[32m[o] 目标{}存在漏洞".format(target_url))                f.write(vuln_url + "n")else:            print("�33[31m[x] 目标不存在漏洞")except Exception as e:        print("�33[31m[x] 请求失败", e)
with open("fanwei.txt","r",encoding='UTF-8')as f:for i in f.readlines():            ss = i.replace('n','')            ip = i.replace('n','')            threading.Thread(target=POC_1,args=(ip,ss)).start()

SRC漏洞挖掘上分技巧

这是运行完脚本之后得到的所有存在漏洞站点的txt文件

SRC漏洞挖掘上分技巧

随便拿一个验证一下是否真的存在漏洞

SRC漏洞挖掘上分技巧

SRC漏洞挖掘上分技巧

也可以使用佩奇文库给的poc批量测试

SRC漏洞挖掘上分技巧

SRC漏洞挖掘上分技巧

拿到有漏洞的url之后,我们需要处理一下这些数据,大概一个思路就是:

漏洞url

->根据url(因为有些网站是ip站)反查域名

->根据域名反查域名权重

->根据有权重的域名反查域名备案名称

->根据备案名称查询公司的基本信息,例如公司的所在地方和行业等等,这里下边会提到,请听我娓娓道来。

0x04 域名和权重和公司的批量检测

在提交补天或者其他漏洞平台的时候,可以发现平台会有提到这么一个提交漏洞的规则,那就是公益src的漏洞网站的主站权重需要达到指定的权重值才会收录,那么什么是权重值呢,网站权重是指搜索引擎给网站(包括网页)赋予一定的权威值,对网站(含网页)权威的评估评价。一个网站权重越高,在搜索引擎所占的份量越大,在搜索引擎排名就越好。补天的话是要百度移动权重大于等于1或者百度pc权重大于等于1,或者谷歌权重大于等于3,权重信息以爱站检测为准

爱站:https://rank.aizhan.com/

SRC漏洞挖掘上分技巧

我们需要对上边收集过来的存在漏洞的url列表去做一个根据ip反查域名,然后域名反查权重这样一个功能,python大法好,学python得永生,这里使用python编写一个根据ip反查域名然后域名反查权重的功能。因为有些是ip站,要想查权重,就要查到ip所对应的域名,所以我们需要一个ip反查域名这么功能的脚本

#-- coding:UTF-8 --import re, timefrom urllib.parse import urlparseimport requestsfrom fake_useragent import UserAgentfrom tqdm import tqdmimport os
# 爱站defaizhan_chaxun(ip, ua):    aizhan_headers = {'Host': 'dns.aizhan.com','User-Agent': ua.random,'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8','Accept-Language': 'zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2','Accept-Encoding': 'gzip, deflate, br','Referer': 'https://dns.aizhan.com/'}    aizhan_url = 'https://dns.aizhan.com/' + str(ip) + '/'try:        aizhan_r = requests.get(url=aizhan_url, headers=aizhan_headers, timeout=2).text        aizhan_nums = re.findall(r'''<span class="red">(.*?)</span>''', aizhan_r)if int(aizhan_nums[0]) > 0:            aizhan_domains = re.findall(r'''rel="nofollow" target="_blank">(.*?)</a>''', aizhan_r)return aizhan_domainsexcept:pass
defcatch_result(i):    ua_header = UserAgent()    i = i.strip()if"http://"notin i:        i="http://"+itry:        ip = urlparse(i).netloc        aizhan_result = aizhan_chaxun(ip, ua_header)        time.sleep(1)if (aizhan_result != None ):with open("ip反查结果.txt", 'a') as f:                result = "
:"
+ i + " " + " [aizhan]:" + str(aizhan_result[0])
print(result) f.write(result + "n")else:with open("反查失败列表.txt", 'a') as f: f.write(i + "n")except:pass if __name__ == '__main__': url_list = open("待ip反查.txt", 'r').readlines() url_len = len(open("待ip反查.txt", 'r').readlines())#每次启动时清空两个txt文件if os.path.exists("反查失败列表.txt"): f = open("反查失败列表.txt", 'w') f.truncate()if os.path.exists("ip反查结果.txt"): f = open("ip反查结果.txt", 'w') f.truncate()for i in tqdm(url_list): catch_result(i)

将前边收集到的存在漏洞的url存到一个叫待ip反查.txt的文件里,然后运行脚本

运行结果:

SRC漏洞挖掘上分技巧

然后拿到解析的域名后,继续对域名权重进行检测,这里采用爱站来进行权重检测,这里是一个批量检测权重的脚本

# -- coding:UTF-8 --import requests   import reimport getoptimport sysimport threadpoolimport urllib.parseimport urllib.requestimport sslfrom urllib.error import HTTPError,URLErrorimport timessl._create_default_https_context = ssl._create_stdlib_context

headers={'Host': 'baidurank.aizhan.com','User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.163 Safari/537.36','Sec-Fetch-Dest': 'document','Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9','Cookie': ''}

defgoogle_simple(url, j):    google_pc = "https://pr.aizhan.com/{}/".format(url)    bz = 0    http_or_find = 0try:        response = requests.get(google_pc, timeout=10).text        http_or_find = 1        result_pc = re.findall(re.compile(r'<span>谷歌PR:</span><a>(.*?)/></a>'), response)[0]        result_num = result_pc.split('alt="')[1].split('"')[0].strip()if int(result_num) > 0:            bz = 1        result = '[+] 谷歌权重:' + result_num + '  ' + jreturn result, bzexcept:if (http_or_find != 0):            result = "[!]格式错误:" + "j"return result, bzelse:            time.sleep(3)return google_simple(url, j)

defgetPc(domain):    aizhan_pc = 'https://baidurank.aizhan.com/api/br?domain={}&style=text'.format(domain)try:
        req = urllib.request.Request(aizhan_pc, headers=headers)        response = urllib.request.urlopen(req,timeout=10)        b = response.read()        a = b.decode("utf8")        result_pc = re.findall(re.compile(r'>(.*?)</a>'),a)        pc = result_pc[0]
except HTTPError as u:        time.sleep(3)return getPc(domain)
return pc
defgetMobile(domain):    aizhan_pc = 'https://baidurank.aizhan.com/api/mbr?domain={}&style=text'.format(domain)try:# b = requests.post(url=post_url,headers=headers, proxies=proxy, timeout = 7)# res = urllib.request.urlopen(aizhan_pc,timeout=10)# # res = opener.open(aizhan_pc,timeout=10)# a = res.read().decode('UTF-8')        req = urllib.request.Request(aizhan_pc, headers=headers)        response = urllib.request.urlopen(req,timeout=10)        b = response.read()        a = b.decode("utf8")        result_m = re.findall(re.compile(r'>(.*?)</a>'),a)        mobile = result_m[0]except HTTPError as u:        time.sleep(3)return getMobile(domain)

return mobile# 权重查询defseo(name,url):
try:
        result_pc = getPc(name)        result_mobile = getMobile(name)
except Exception as u:# print(u)        result_pc = '0'        result_mobile = '0'
        print('[- 目标{}获取权重失败,自动设为0'.format(url))# print('运行正常')    print('[+ 百度权重:'+result_pc+'  移动权重:'+result_mobile+'  Url:'+url)with open('vul.txt','a',encoding='utf-8') as y:        y.write('[百度权重:'+result_pc+','+"移动权重:"+result_mobile+','+url+']'+'n')
returnTrue
defexp(name1):# opts, args = getopt.getopt(sys.argv[1:], '-u:-r:', ['url', 'read'])# print(name1)try:        name = name1[name1.rfind('/'):].strip('/')# print(name)        rew = seo(name,name1)
except Exception as u:# except:        print(u)        print('[- 目标{}检测失败,已写入fail.txt等待重新检测'.format(name1))# file_fail.write(name1+'n')with open('fail.txt',mode='a',encoding='utf-8') as o:            o.write(name1+'n')

defmultithreading(funcname, params=[], filename="ip.txt", pools=15):    works = []with open(filename, "r") as f:for i in f:            func_params = [i.rstrip("n")] + params            works.append((func_params, None))    pool = threadpool.ThreadPool(pools)    reqs = threadpool.makeRequests(funcname, works)
    [pool.putRequest(req) for req in reqs]    pool.wait()
defmain():    multithreading(exp, [], "存在漏洞的url.txt", 15)  # 默认15线程    print("全部check完毕,请查看当前目录下的vul.txt")
if __name__ == "__main__":# st = False# main(st)    main()

SRC漏洞挖掘上分技巧

结果:

SRC漏洞挖掘上分技巧

然后拿着有权重的站,批量根据域名反查备案名称,这里推荐使用一个工具叫ip2domain,该工具可用于对跑到的ip批量查询域名及百度权重、备案信息,快速确定ip所属企业,方便提交漏洞。

工具链接:https://github.com/Sma11New/ip2domain

SRC漏洞挖掘上分技巧

然后批量查询域名的备案公司

python ip2domain.py -f 存在漏洞的url.txt -t 10 --icp -o 根据域名反查厂商.txt

参数解析:-f 是指定批量查询的文件 -o是查询后的结果保存的文件名 -t是超时时间 --icp是查询网站对应的备案公司名

SRC漏洞挖掘上分技巧

拿到公司名之后就可以提交漏洞了吗?并不是,这里还有最后一步,那就是,根据公司名去查找公司的基本工商信息,例如说:注册公司的所在地区,所属行业等等,因为提交漏洞的时候需要填写这些信息

SRC漏洞挖掘上分技巧

所以我们要根据公司名反查公司的所在地区和所属行业等信息,这里推荐企查查或者天眼查

企查查:

SRC漏洞挖掘上分技巧

天眼查:

SRC漏洞挖掘上分技巧

SRC漏洞挖掘上分技巧

从网站中就可以看到公司的基本信息,如注册资金,所属行业,所属地区等信息

然后反查完就可以拿到公益src平台进行提交,有权重的可以交补天漏洞响应平台,没有权重的可以交漏洞盒子

SRC漏洞挖掘上分技巧

|

SRC漏洞挖掘上分技巧

原文始发于微信公众号(WK安全):SRC漏洞挖掘上分技巧

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年3月14日10:05:24
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   SRC漏洞挖掘上分技巧https://cn-sec.com/archives/2087707.html

发表评论

匿名网友 填写信息