نظرة عامة
نظرة عامة
لماذا؟
أردتُ تنفيذ حملة تصيّد متعددة المراحل، لكنني لم أجد حلًّا يساعدني على ذلك. كنت أريد معرفة جميع المستخدمين الذين ينقرون رابط التصيّد، ومن يُدخل بياناته، ومن يُنزّل ملفًا مشبوهًا، ومن يُشغّل ذلك الملف. وقد ساعدتني هذه الحملة على تصنيف المستخدمين الذين أراقبهم، ومعرفة الإدارات والفرق والمستخدمين الذين ينبغي التركيز عليهم أكثر بحسب المرحلة التي وصلوا إليها. كما تساعد الإحصاءات على تقديم توعية أمنية أفضل وأكثر كفاءة وتخصّصًا.
المتطلبات
- Visual Studio.
- تحتاج إلى امتلاك نطاق آخر لرفع موقع التصيّد عليه (وأنصح بالنطاقات القصيرة). لنفترض أنه
0d.ae.

التحضير
- أنشئ قاعدة بيانات ومستخدمًا لها واربطهما معًا في لوحة تحكّم نطاق التصيّد (cPanel ← MySQL Databases).
- استخدم cPanel ← phpMyAdmin للوصول إلى قاعدة البيانات الجديدة واستورد جدول phishping (
Database\phishping.sql). - أنشئ نطاقًا فرعيًا على موقع التصيّد مثل
raffle.yourcompanyname.com، فيصبح الرابط الكاملraffle.yourcompanyname.com.0d.ae.
الإرشادات
-
نزّل هذا المشروع كملف مضغوط (Zip) وفك ضغطه.
-
افتح
Exe/PhishTest.slnفي Visual Studio:- في
MainWindow.xaml:- غيّر
COMPANYNAMEإلى اسم شركتك.
- غيّر
- في
MainWindow.xaml.cs:- غيّر
YOURCOMPANYNAMEإلى اسم شركتك. - غيّر الرابط
raffle.YOURCOMPANYNAME.com.ALTERNATIVEDOMAIN.aeإلىraffle.yourcompanyname.com.0d.ae.
- غيّر
- من قائمة
Build، ابْنِ الحل (Solution) ومشروع PhishTest. - ستحصل على ملف جديد في
Exe\bin\Release\YOURCOMPANYNAME-Raffle.exe. - انسخ هذا الملف والصقه في
Website\phishوأعد تسميته باسم شركتك، مثلAbdullaCompany-Raffle.exe.
- في
-
والآن حان وقت تعديل ملفات الموقع. انتقل إلى
Website\phishوافتح ما يلي:- في
index.php:- غيّر
http://www.YOURCOMPANY.comإلىhttp://www.potato.ae.
- غيّر
- في
login.php:- غيّر أي
YOURCOMPANYإلىPotato.
- غيّر أي
- في
download.php:- غيّر أي
YOURCOMPANYإلىPotato.
- غيّر أي
- في
downloadSuccess.php:- غيّر
YOURCOMPANYNAME-Raffle.exeإلى اسم الملف الذي أعدت تسميته سابقًاAbdullaCompany-Raffle.exe.
- غيّر
- في
phishPing.php، اضبط معلومات قاعدة البيانات:$servername = "localhost";// اسم الخادم أو عنوان IP$username = "DB_USERNAME";// اسم مستخدم قاعدة البيانات$password = "DB_PASSWORD";// كلمة مرور قاعدة البيانات$dbname = "DB_NAME";// اسم قاعدة البيانات
- في
-
ارفع جميع الملفات الموجودة في
Website\phishإلى موقعك علىraffle.yourcompanyname.com.0d.ae. -
اختبر صفحة تسجيل الدخول على
https://raffle.yourcompanyname.com.0d.ae/login.php.
السيناريو
عبدالله مهندس أمن معلومات في شركة XYZ، وسيُرسل رسالة تصيّد وهمية إلى جميع موظفيها. ينبغي أن تكون الرسالة عن سحبٍ
على جوائز ترعاه الشركة، وقد أضاف عبدالله في متنها رابطًا يعيد التوجيه إلى
https://raffle.yourcompanyname.com.0d.ae/login.php?email=TARGETEMAIL.
سيتلقّى كل موظف رسالة التصيّد برابط فريد، مثلًا:
- سالم سيتلقّى
https://raffle.yourcompanyname.com.0d.ae/login.php?email=salim@company.ae - علي سيتلقّى
https://raffle.yourcompanyname.com.0d.ae/login.php?email=ali@company.ae - محمد سيتلقّى
https://raffle.yourcompanyname.com.0d.ae/login.php?email=mohammed@company.ae - وهكذا.
بعد تشغيل الحملة لفترة، أوقف عبدالله الموقع ونزّل السجلات النصية وسجلات قاعدة البيانات لتحليلها.
التحليل
logs/hit.txt← المستخدمون الذين زاروا الموقع مباشرة.logs/enteredWebsite.txt← المستخدمون الذين زاروا الموقع بالنقر على رابط تسجيل الدخول في الرسالة.logs/enteredCredentials.txt← المستخدمون الذين أدخلوا بياناتهم.logs/downloadedFile.txt← المستخدمون الذين حاولوا تنزيل الملف.- قاعدة بيانات phishping ← المستخدمون الذين شغّلوا الملف المُنزَّل وظهرت لهم النافذة.
خلاصة
افتح تذكرة (issue) جديدة هنا إن كان لديك أي سؤال، ولا تتردّد في إضافة ميزات جديدة أو إصلاح المشكلات عبر طلب دمج (pull request).
الترخيص:
- أنت حرٌّ في استخدام أي جزء من هذا المشروع مفتوح المصدر في حملات تصيّد مُصرّح بها. لا تستخدمه لأغراض غير مشروعة.
بالتوفيق.
— عبدالله (فريق 0d)