天命:这次目标批量横扫,但是没完全成功,也没完全失败
步骤1:磨刀准备
这次先针对漏洞来寻找目标,所以寻找这种 springboot 的目标
利用CVE漏洞,进行命令执行攻击
先找靶场训练一波,叠加反弹shell测试,准备齐全
利用工具反弹shell成功,但这里是靶场,实战场景可不是这样
大神的POC工具:GitHub - M0ge/CVE-2022-22947-Spring-Cloud-Gateway-SpelRCE: Spring Cloud Gateway远程代码执行漏洞POC,基于命令执行的基础上,增加了反弹shell操作
步骤2:筛选目标
用网络空间搜索引擎,找一下目标,只要是包含:Whitelabel Error Page 的字符串,全部纳入范围
导出下载excel,只要host列,复制到文件里
因为暂时不清楚url,不清楚是 http 还是 https ,也不清楚哪些能访问,所以要手动筛选一下
import requests,threading def get_url(url):try:URL = "http://"+url res = requests.get(URL)if "Whitelabel Error Page" in res.text:list.append(URL)print("访问成功:"+URL)except:try: URL2 = "https://"+urlres = requests.get(URL2)if "Whitelabel Error Page" in res.text:list.append(URL2)print("访问成功:"+URL2)except:passif __name__ == '__main__':list = []url_list = []f = open('url.txt','r')for z in f:url = z.strip()url_list.append(url)# 创建线程列表 threads = [] # 创建并启动线程 for i in range(len(url_list)): t = threading.Thread(target=get_url, args=(url_list[i],)) threads.append(t) t.start() # 等待所有线程完成 for t in threads: t.join() print("ojbk")
步骤3:编写exp
这步开始有异常了,burp抓包发送,是正常找到有漏洞的网站的
但如果自己写Python脚本发送请求,就是不行,也搞不清楚为什么,
然后用接口测试工具试了一下,也是不行
但是自己的靶场是正常的
使用大神的POC脚本,也是不行,暂时没找到原因是为什么
POC总共三个包,第一个包就跪了,返回全部是404,只有用burp发送才是201成功
神奇!
但起码也算半成功,因为可以命令执行了,但也没完全执行,限制还是很大的
空格不能有,好像反斜杠也不能用,限制超级多,所以只能算成功了一半。