如何高效挖掘Web漏洞?

简介

SRC漏洞平台:安全应急响应中心(SRC, Security Response Center),是企业用于对外接收来自用户发现并报告的产品安全漏洞的站点。说白了,就是连接白帽子和企业的平台,你去合法提交漏洞给他们,他们给你赏金。 目前国内有两种平台,一种是漏洞报告平台,另一种就是企业SRC。这里也给大家强调一下,一定不要非法挖洞,要注意挖洞尺度和目标要有授权!做一个遵纪守法的好公民!

由于特殊原因本人需每周提交部分漏洞到CNVD国家安全漏洞共享平台,最近发现站点不接收小企业漏洞,提交的也均未被审核通过,经过一番询问得知,目前CNVD接受政府、医疗、学校以及部分集团和国企等SRC漏洞,这无疑为我们挖洞增加了不小难度。

下面是我目前的挖洞思路:

寻找挖洞目标
使用趁手的挖洞工具
挖洞时间
漏洞验证
提交漏洞

过程中使用的工具

本文牵涉到的知识领域和使用的工具主要有:

1.python的基本使用
2. 漏洞扫描工具的使用
3.漏洞验证能力
4.网络空间测绘平台、 企查查、爱企查
5.长亭的xray漏洞扫描工具
6.360的动态爬虫工具crawlergo
7.SRC漏洞提交平台

本文使用的脚本主要有(python脚本):

1.fofa API调用脚本
2.目标URL存活验证脚本
3.xray和crawlergo联动脚本

注意: 演示为Mac系统,过程期间提供的脚本如有window用户需稍稍进行修改,后面在代码中也会提示

详细过程

一、 寻找挖洞目标

1.1 工具介绍

1.网络空间测绘平台:fofa、 奇安信网络空间测绘Hunter、360网络空间测绘Quake(需要有会员);
2.API脚本;
3.企查查、爱企查(需要有会员)。

1.2 目标检索过程

本次我们以fofa为例批量检索需要的目标地址,使用fofa语法检索目标,然后通过API脚本下载对应数据。

事先组织好查询语法,本次我们以域名的方式进行检索,对域名为".http://gov.cn"地区为中国状态码为200进行检索,可以发现有很多资产,因为会员限制我们每天只提取1万个目标,所以还需要继续优化使用的检索语法:

host=".gov.cn" && country="CN" && status_code="200"

通过对地区细分可以再次对数据进行筛选,可以发现大多数地区在3万以内,这样就可以可以分批进行检索下载了:

host=".gov.cn" && country="CN" && status_code="200" && region="Beijing"

然后通过fofa API进行数据提取,过程中需要使用python脚本对fofa API数据提取代码如下(运行代码前需要提前知道fofa的邮箱和api_key在个人中心进行查看):

# 申明:此工具仅供学习使用,不负有相关法律责任
# window用户和Linux用户均可直接使用,无需进行修改
 
import base64
import csv
 
import requests
 
# 查询函数
def Inquire(email, api_key, gammer):
    qbase64 = base64.b64encode(gammer.encode()).decode()
    api = 'https://fofa.info/api/v1/search/all?email={}&key={}&qbase64={}&size=10000'.format(email, api_key, qbase64)
    print("正在请求页面查询{}".format(gammer))
    response = requests.get(api)
    data_result = response.json()["results"]
    count = len(data_result)
    print("总共可获取数量为{}条数据\n".format(count))
    # print(data_result)
    count_range = GetNumber()
    write_file(gammer, data_result, count_range)
 
 
# 下载次数函数
def GetNumber():
    count_range = input('请输入获取数据的数量(最大限制10000条):')
    # count_range = 10000 #若使用批量查询,默认下载数可以直接设置
    return int(count_range)
 
 
# 写入函数
def write_file(gammer, data, count_range):
    filename = gammer + '.csv'
    with open(filename, 'a', newline="") as f:
        writer = csv.writer(f)
        writer.writerow(["URL", "IP地址", "访问端口号"])
        for result in data:
            list_data = [result[0].strip(), result[1].strip(), result[2].strip()]
            writer.writerow(list_data)
            count_range -= 1
            if count_range == 0:
                break
 
 
# 交互界面
def GUI_Communication():
    print("\n\t FOFA——API接口工具\n")
    email = input('Email:')
    api_key = input('api_key:')
    num = int(input('是否为单量查询(是1/否0):'))
    if num == 1:
        gammer = input('查询语法:')
        Inquire(email, api_key, gammer)
    elif num == 0:
        with open("gammers.txt", 'r') as f:
            for gammer_data in f.readlines():
                gammer = gammer_data.replace('\n', '')
                Inquire(email, api_key, gammer)
    else:
        print("只能输入0或1!")
 
 
if __name__ == '__main__':
    GUI_Communication()

脚本运行后输入正确的邮箱和api_key,将上面组织好的语法进行输入,填写下载数量对数据下载,会在脚本目录生成一个以语法命令的表格文档,打开就是我们需要的目标地址;

接下来需要对目标存活性进行验证,并输出为格式化URL:http://ip或域名:端口,方便进行漏洞挖掘,本次我们依然使用python脚本进行存活验证,需要提前将表格里的url保存到文本中每行一个目标URL,放置在该代码相同文件夹即可,脚本运行完后会在同级目录生成url_ok.txt文件,该文件为最终目标URL,脚本如下:

# 申明:此工具仅供学习使用,不负有相关法律责任
# windows用户需将代码中的./url.txt的./去掉即可
 
 
import requests
 
 
def foo():
    for url in open("./url.txt"):
        url = url.strip()
        if 'http' in url or 'https' in url:
            url1 = url
            url2 = None
        else:
            url1 = f'http://{url}'
            url2 = f'https://{url}'
        try:
            ok = requests.get(url1, timeout=(5, 8))
            if ok.status_code == 200:
                print(url1, ok.status_code)
                with open("./url_ok.txt", 'a+') as url_ok:
                    url_ok.write(url1 + "\n")
                    url_ok.close()
            else:
                ok_1 = requests.get(url2, timeout=(5, 8))
                if ok_1.status_code == 200:
                    print(url2, ok_1.status_code)
                    with open("./url_ok.txt", 'a+') as url_ok:
                        url_ok.write(url2 + "\n")
                        url_ok.close()
                else:
                    print(url2, ok.status_code)
        except:
            try:
                ok2 = requests.get(url2, timeout=(5, 8))
                if ok2.status_code == 200:
                    print(url2, ok2.status_code)
                    with open("./url_ok.txt", 'a+') as url_ok:
                        url_ok.write(url1 + "\n")
                        url_ok.close()
                else:
                    print(url2, ok2.status_code)
            except:
                print(f"{url2} URL无效")
 
 
if __name__ == "__main__":
    foo()

二、 趁手的挖洞工具

工具其实有很多,自己使用顺手就可以。

2.1 工具介绍

1.xray:一款由是从长亭洞鉴核心引擎中提取出的社区版漏洞扫描神器;
2.360-crawlergo:有360安全团队开发一个使用chrome headless模式进行URL入口收集的动态爬虫工具。
3.xray和360-crawlergo联动脚本

本次我们使用xray和crawlergo进行联动,对刚刚整理的目标进行漏洞挖掘,具体使用也可以参考xray官方教程,也可以跟着博主思路进行使用;

2.2 工具下载链接

xray:直接访问官网进行下载,github版本更新不及时,建议直接通过官网下载:

· 官网:CT Stack 安全社区

· github:Releases · chaitin/xray

360-crawlergo:

· github:https://github.com/Qianlitp/crawlergo/releases

联动脚本:

· github:https://github.com/timwhitez/crawlergo_x_XRAY

2.3 工具使用

下载适合自己操作系统类型的工具(博主为Mac arm64,下载darwin_arm64版本),然后统一放置在一个文件夹中:

将下载的crawlergo和xray放置在联动脚本程序,然后将联动脚本程序的crawlergo和xray文件夹删除,注意需要修改crawlergo_darwin_arm64文件名为crawlergo,修改主程序launcher.py和launcher_new.py部分代码,主要是chrome路径改为本地路径,博主chrome浏览器位置为:/Applications/Google Chrome.app/Contents/MacOS/Google Chrome,将如下代码更改即可:

放置在同一文件夹;

修改主程序launcher.py和launcher_new.py浏览器文件目录,两个文件修改位置基本一致,建议使用主程序launcher.py该程序有爬取回显;

将第一步获取的目标放置在targets.txt文件中,注意需要逐行隔开,然后本地开始使用xray监听127.0.0.1:7777,脚本编写默认监听7777端口,联动本质为通过脚本将crawlergo爬去的目标数据发送给正在监听的xray,然后实现目标的漏洞检查;

目标放置给targets.txt文件;

启动xray监听 ,监听命令不理解的可以去xray官网查询;

./xray_darwin_arm64 webscan --listen 127.0.0.1:7777 --html-output proxy.html

启动联动主程序爬取目标,等待片刻,可以发现爬虫已经爬取好数据通过本地回环7777端口发送给xray,接下来只需要安静的等待输出报告即可;

三、挖洞时间

关于挖洞时间这个就不确定了,还待看运气,不过由于大家都在挖SRC所以现在就不太容易挖掘了,建议睡觉前电脑跑着,或者直接整个虚拟机一直运行。

四、漏洞验证

漏洞验证也是我们从事web安全必须掌握的技能,这个其实很简单,不懂就问,度娘总会给你满意答案,不过也有小技巧,报告里面一般都会给相应的验证脚本和验证思路,大家直接根据报告进行验证一般都没有问题。

五、提交漏洞

提交SRC漏洞平台有很多,本人主要还是在CNVD国家信息安全漏洞共享平台进行提交,当然也有其他的很多平台,下面我列出一部分,可以供大家参考,应该算是比较详细了。

A
 阿里巴巴 (ASRC)
 https://security.alibaba.com/
 
 阿里云先知
 阿里云先知  
 
 爱奇艺 (71SRC)
 爱奇艺安全应急响应中心  
 
 安恒
 安全应急响应中心  
 
B
 BIGO (BSRC)
 BIGO Security Response Center  
 
 BOSS直聘 (BSSRC)
 BOSS直聘安全应急响应中心  
 
 百度 (BSRC)
 https://bsrc.baidu.com/  
 
 百合 (BHSRC)
 https://src.baihe.com/  
 
 贝贝 (BBSRC)
 https://src.beibei.com.cn/  
 
 贝壳 (BKSRC)
 贝壳安全应急响应中心  
 
 本木医疗 (BMSRC)
 https://security.benmu-health.com/src/  
 
 哔哩哔哩 (BILISRC)
 哔哩哔哩安全应急响应中心  
 
C
 菜鸟网络 (CNSRC)
 菜鸟安全应急响应中心  
 
D
 DHgate (DHSRC)
 DHSRC 安全应急响应中心  
 
 大疆 (DJISRC)
 DJI Security Response Center  
 
 滴滴出行 (DSRC)
 滴滴出行安全应急响应中心  
 
 东方财富 (EMSRC)
 东方财富安全应急响应中心  
 
 斗米 (DMSRC)
 斗米安全应急响应中心  
 
 斗鱼 (DYSRC)
 斗鱼安全应急响应中心 - DYSRC  
 
 度小满 (DXMSRC)
 Vue App  
 
F
 法大大 (FSRC)
 法大大安全应急响应中心  
 
 富友 (FSRC)
 富友安全应急响应中心  
 
G
 瓜子 (GZSRC)
 瓜子安全应急响应中心  
 
H
 好未来 (100TALSRC)
 好未来安全应急响应中心  
 
 合合 (ISRC)
 合合安全应急响应中心 ISRC  
 
 恒昌 (HCSRC)
 恒昌安全应急响应中心  
 
 虎牙 (HSRC)
 502 Bad Gateway  
 
 华为 (HBP)
 华为安全奖励计划  
 
 华住 (HSRC)
 Huazhu Security Response Center  
 
 欢聚时代 (YSRC)
 安全应急响应中心  
 
 货拉拉 (LLSRC)
 货拉拉安全应急响应中心  
 
 火线
 火线安全平台 ref
 
J
 焦点 (FSRC)
 焦点安全应急响应中心  
 
 金山办公 (WPSSRC)
 金山办公安全应急响应中心  
 
 金山云 (KYSRC)
 漏洞盒子 | 金山云安全应急响应中心(KYSRC)  
 
 京东 (JSRC)
 京东安全应急响应中心  
 
 竞技世界 (JJSRC)
 安全应急响应中心  
 
K
 酷狗 (KGSRC)
 首页 | 酷狗安全应急响应中心  
 
 快手 (KwaiSRC)
 快手安全应急响应中心  
 
 旷视 (MSRC)
 火线  
 
L
 老虎证券 (TigerSRC)
 https://security.itiger.com/  
 
 乐信 (LXSRC)
 http://security.lexinfintech.com/  
 
 理想
 理想安全应急响应中心  
 
 联想 (LSRC)
 漏洞盒子 | 联想集团安全应急响应中心  
 
 猎聘 (LPSRC)
 猎聘安全应急响应中心  
 
M 
 MYSRC
 https://mysrc.group/  
 
 马蜂窝 (MFWSRC)
 马蜂窝安全应急响应中心  
 
 蚂蚁集团 (AntSRC)
 蚂蚁集团安全应急响应中心官网 - AntSRC - 蚂蚁集团安全响应中心,支付宝安全响应中心,阿里巴巴漏洞反馈,支付宝漏洞反馈,蚂蚁集团漏洞反馈,网商银行漏洞反馈,芝麻信用漏洞反馈,口碑漏洞反馈,花呗漏洞反馈,蚂蚁财富漏洞反馈,支付宝情报反馈,阿里巴巴情报反馈,网商银行漏洞,芝麻信用漏洞,口碑漏洞,花呗漏洞,蚂蚁财富漏洞,阿里巴巴漏洞,支付宝漏洞,蚂蚁集团漏洞,支付宝情报,阿里巴巴情报  
 
 美丽联合 (MLSRC)
 美丽联合集团安全应急响应中心  
 
 美团 (MTSRC)
 美团安全应急响应中心  
 
 魅族 (MEIXZUSRC)
 魅族安全中心  
 
 陌陌 (MMSRC)
 陌陌安全应急响应中心  
 
N
 你我贷 (NSRC)
 首页  
 
O
 OPPO (OSRC)
 OPPO安全应急响应中心 | OSRC  
 
P
 平安 (PSRC)
 平安安全应急响应中心  
 
 平安汇聚 (ISRC)
 平安安全应急响应中心  
 
Q
 千米 (QMSRC)
 首页 - 千米电商云安全应急响应中心  
 
 去哪儿 (QSRC)
 去哪儿安全应急响应中心  
 
R 
 融360 (Rong360SRC)
 融360安全应急响应中心  
 
S
 SHEIN
 SHEIN Inc.Security Response Center  
 
 SOUL
 首页 | Soul安全应急响应中心  
 
 360 (360SRC)
 360安全应急响应中心  
 
 深信服 (SSRC)
 首页 | 深信服安全应急响应中心  
 
 世纪佳缘 (JYSRC)
 https://src.jiayuan.com/  
 
 水滴安全 (SDSRC)
 水滴安全应急响应中心  
 
 顺丰 (SFSRC)
 顺丰安全应急响应中心  
  
 苏宁 (SNSRC)
 https://security.suning.com/  
 
T
 T3出行 (T3SRC)
 T3出行安全应急响应中心  
 
 TCL (TCLSRC)
 h5_tcl_src_website  
 
 腾讯 (TSRC)
 腾讯安全应急响应中心  
 
 同程旅行 (LYSRC)
 首页 | 同程旅行安全应急响应中心  
 
 同程数科 (TJSRC)
 TJSRC 同程数科安全响应中心  
 
 统信(USRC)
 首页 | 统信安全应急响应中心  
 
 同舟共测
 同舟共测-企业安全响应联盟  
 
 途虎 (THSRC)
 首页 | 途虎安全应急响应中心  
 
 途牛 (TNSRC)
 途牛安全应急响应中心  
 
U
 UCLOUD (USRC)
 https://sec.ucloud.cn/  
 
V
 VIPKID (VKSRC)
 首页 | VIPKID安全响应中心  
 
 VIVO (vivoSRC)
 vivo 安全应急响应平台  
 
W
 WiFi万能钥匙 (WIFISRC)
 WIFI万能钥匙安全响应中心  
 
 挖财 (WACSRC)
 挖财安全应急响应中心  
 
 完美世界 (PWSRC)
 首页  
 
 网易 (NSRC)
 网易安全中心  
 
 唯品会 (VSRC)
 VSRC首页-唯品会信息安全中心  
 
 微博 (WSRC)
 微博安全应急响应中心  
 
 微众 (WSRC)
微众银行安全响应中心  
 
 58 (58SRC)
 58安全应急响应中心  
 
 伍林堂 (WSRC)
 首页 | 伍林堂安全应急响应中心  
 
X
 喜马拉雅 (XMSRC)
 喜马拉雅安全应急响应中心  
 
 享道出行 (SDSRC)
 享道出行SRC  
 
 小米 (MISRC)
 小米安全中心  
 
 小赢 (XYSRC)
 首页 | 小赢安全应急响应中心  
 
 携程 (CSRC)
 携程安全应急响应中心  
 
 新浪 (SSRC)
 首页 - 新浪安全应急响应中心  
 
 讯飞 (XFSRC)
 讯飞安全响应中心  
 
Y
 易宠 (ESRC)
 ESRC  
 
 一加 (ONESRC
 OnePlus Security Response Center (OneSRC)  
 
 一起教育 (17SRC)
 首页 | 一起教育安全应急响应中心  
 
 宜信 (CESRC)
 宜信安全应急响应中心  
 
 银联 (USRC)
 银联安全应急响应中心(USRC)  
 
 萤石 (YSCR)
 https://ysrc.ys7.com/  
 
 有赞 (YZSRC)
 首页 | 有赞安全应急响应中心

注意事项

漏洞挖掘过程大家一定要授权进行,一定不要非法挖洞,注意挖洞尺度;

检索目标URL时可以通过多种途径,不一定只有上文介绍的那些方法;

文中介绍的python脚本,如果是window客户端需要修改部分代码;

文中的python脚本如果有运行时报错,大概率可能是没有安装python包,需要pip install安装一下;

如果官网下载的xray运行报错,是因为当前最新版本的xray默认运行不会生成新的配置文件,会找旧的配置文件就是config.yaml文件,所以如果小伙伴之前没有用过这个工具,需要先下载旧版本然后生成配置文件拷贝给新版本进行使用;

xray和360-crawlergo联动脚本需要修改浏览器目录配置,根据自己系统路径进行修改;

如果出现爬取的目标发送给xray,xray没有扫描的动作,这个博主暂时也不知道什么问题,更换其他目标就没有这个问题,感觉像是目标的问题;

然后就是大家有更好的工具也可以评论分享,大家一起来学习,共同进步,最后祝大家都早日成为安全届的大佬。

对于网络安全方面,我自己也做了很多的研究,整理了很多网络安全的资源,从入门到进阶的都有,包括红蓝对抗的完整学习路线图、配套的视频教程、工具包和技术文档等等:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/344354.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

数据结构之树和森林

数据结构之树和森林 1、树的存储结构2、树和森林的遍历2.1、树的遍历2.2、森林的遍历 3、树、森林和二叉树之间的相互转换 数据结构是程序设计的重要基础,它所讨论的内容和技术对从事软件项目的开发有重要作用。学习数据结构要达到的目标是学会从问题出发&#xff0…

一键拥有你的GPT4

这几天我一直在帮朋友升级ChatGPT,现在已经可以闭眼操作了哈哈😝。我原本以为大家都已经用上GPT4,享受着它带来的巨大帮助时,但结果还挺让我吃惊的,还是有很多人仍苦于如何进行升级。所以就想着写篇教程来教会大家如何…

记录xxl-job重复执行引发业务问题

业务问题描述 1.创建运单,发现重复(同一个车架号两条记录) 2.通知重复反馈,A系统读取中间表状态为未处理数据,推送到B系统 原因分析 1.以上两个问题都是xxljob定时执行的 2.通过日志分析,读取中间表数…

pcl之滤波器(一)

pcl滤波器 pcl一共是有十二个主要模块,详细了解可以查看官网。https://pcl.readthedocs.io/projects/tutorials/en/latest/#basic-usage 今天学习一下pcl的滤波器模块。 滤波器模块,官网一共是提供了6个例程,今天先来看第一第二个。 直通…

01 Aras Innovator二次开发说明

在进行Aras Innovator二次开发之前,需要先了解Aras的服务器架构以及相关的方法论。 了解这部分内容后,有助于我们进行二次开发。 一. 服务器架构 参考下表: Aras Innovator为B/S架构,支持主流的浏览器(IE Edge,Firefox,Google)…

Labview for循环精讲

本文详细介绍Labview中For循环的使用方法,从所有细节让你透彻的看明白For循环是如何使用的,如果有帮助的话记得点赞加关注~ 1. For循环结构 从最简单的地方讲起,一个常用的for循环结构是由for循环结构框图、循环次数、循环计数(i)三部分组成…

Linux版本下载Centos操作

目录 一、Centos7 二、下载Centos7镜像 三、下载Centos7 买了个硬件安装裸机(一堆硬件) 把安装盘放到虚拟机里面,给机器加电 配置设置 ​编辑 网络配置 开启网络功能 四、安装linux客户端 Xshell是什么 Xshell使用(连接…

构建一个安全可靠的身份认证中心和资源服务中心:SpringSecurity+OAuth2.0的完美结合

目录 1、引言 1.1 身份认证和授权的重要性 1.2 SpringSecurity和OAuth2.0的概述 2、架构设计 2.1 组件概述 2.2 身份认证中心的设计 2.3 资源服务中心的设计 3、身份认证中心的实现 3.1 用户管理 3.2 登录认证流程 3.3 令牌生成和管理 4、资源服务中心的实现 4.1 …

新版idea创建spring boot项目

目录 前言 汉化教程 项目模板初始化 1.点击新建项目 2.配置初始化信息 3.初始依赖选择 配置Maven 1.打开maven设置 2.重写maven配置文件 3.选择你创建的配置文件 4.重启项目 spring boot配置并测试 1.修改配置文件后缀 2.启动项目 3.编写测试控制类 4.重启项目…

idea引入jar包作为maven

1.引入jar包至项目中 2.配置当前项目的maven(如果只想在本机能运行的话,到这一步就够了,后面pom配置也不需要这一步) 3.配置文件的maven依赖路径 这里的 groupId 就是你引入原包的包路径,artifactId、version都是随…

【动态规划】【字符串】【C++算法】940. 不同的子序列 II

作者推荐 【动态规划】【广度优先搜索】【状态压缩】847 访问所有节点的最短路径 本文涉及知识点 动态规划汇总 LeetCode940. 不同的子序列 II 给定一个字符串 s,计算 s 的 不同非空子序列 的个数。因为结果可能很大,所以返回答案需要对 10^9 7 取…

企业如何用copilot?电通×Copilot:打破创意工作效率“天花板”

企业申请Azure OpenAI绿色通道 →记得评论私信~还可加入试用交流群~ 电通集团拥有着120年的历史、汇聚了七万多名精英,是全球顶级的创意公司之一。随着新兴传播渠道的不断涌现,电通的客户们面临着内容需求的挑战。好消息是,微软Copilot为电通…

21.云原生之GitLab pipline语法(CI基础)

云原生专栏大纲 文章目录 gitlab-ci.yml 介绍GitLab中语法检测gitlab-ci.yml 语法job定义作业before_script和after_scriptstages定义阶段tages指定runnerallow_failure运行失败when控制作业运行retry重试timeout超时parallel并行作业only & exceptrulescache 缓存cache:p…

路灯哪个牌子质量好?适合学生备考使用的台灯分享

落地台灯是一种常见的家居照明设备,通常由支架、灯头和灯罩组成。其特点是可以放置在地面上,提供直接的照明效果,适用于客厅、卧室、书房等各种生活空间。落地台灯的设计风格多样,可以选择简约现代、北欧风格、复古风格等等&#…

在PyCharm中安装GitHub Copilot插件,login之后报出如下错误:

Sign in failed. Reason: Request signInInitiate failed with message: connect ECONNABORTED 20.205.243.166:443, request id: 7, error code: -32603 前提: 设置网址:https://github.com/settings/copilot,已设置为允许 或者&#xff1…

每日一题——LeetCode1313.解压缩编码列表

这么简单的题目要说的这么复杂 nums里每相邻的两个元素nums[i]、nums[j]为一对&#xff0c;nums[i]表示nums[j]的次数 var decompressRLElist function(nums) {let res[]for(let i0,j1;j<nums.length-1;i2,j2){while(nums[i]--){res.push(nums[j])}}return res }; 消耗时…

K8S四层代理Service-02

Service的四种类型使用 ClusterIP使用示例Pod里使用service的服务名访问应用 NodePort使用示例 ExternalName使用示例 LoadBalancer K8S支持以下4种Service类型&#xff1a;ClusterIP、NodePort、ExternalName、LoadBalancer 以下是使用4种类型进行Service创建&#xff0c;应对…

shell脚本——变量

目录 一、变量基础 1、shell脚本的变量是什么 2、变量的作用 3、变量作用范围 3.1 临时设置 3.2 永久设置&#xff0c;需要在/etc/profile文件里添加 4、删除变量 二、变量的类型 1、自定义变量 1.1 命令要求 1.2 定义新的变量 1.3 查看定义的变量的值 1.4 赋值时使…

Confluence6+mysql5.7破j安装避坑详细记录

目录 一、前言 二、下载与安装 1、版本和安装环境 2、安装数据库 3、配置数据库 4、安装confluence 三、Pj confluence 1、选择语言和产品安装 2、Pj 3、上传mysql驱动 4、重启Confluence服务继续安装 四、Confluence重启卸载方法 重启方法 方法一 方法二 卸载…

【JSON显示】

1、效果 2、代码 <pre>{/* * networkObj&#xff1a; 要转换的对象* null: 转换结果的函数* 2&#xff1a;在返回值的JSON文本中添加缩进&#xff0c;空格和换行符&#xff0c;使其更容易阅读*/}{JSON.stringify(networkObj, null, 2)} </pre>