-------------- الفهرس ------------------------------------------------
أولاً:- من أين تبدأ الفايروسات العمل ؟
1-1 الفايروســــات التي تعمــل عـن طريــــق قاعـــدة بيانــات الريجستـــري
-
1-2 الفـايروســـات التــي تعمــل عــــن طــريــــق ملـفـــات التــأسيـــس ini
-
1-3 الفايروسات التــي تعمل عن طريق الملفــات الدفعيــة للنظام دوس bat
-
1-4 الفايروسات التــي تعمــل عن طريـــق قائمــة البرامــج Start Menu
-
1-5 الفايروسات التي تعمل عــن طريق حقن الملفات viruses injecting
-
1-6 الفايروسات التي تعمل عن طريق قطاع الإقلاع BOOT SECTOR
ثانياً:- تحليل الأنظمة وإكتشاف الفايروسات وملفات التجسس
2-1 مراقبــة الوصــول إلى البيانات FileMon - TcpMon –RegMon
-
2-2 إختبــار برامــج النظــام Debugger وتحليلها بإستـــــخدام OLLY
-
2-3 تــحليـــل فـــايـــروســـات RootKit بإستــــخدام برنـــامــــج Softic
--------------------------------------------------------------------------
المقدمة
إستــخدام بــرامج مقاومــة الفــايروســات لا يعنــي ذلك أن جهــازك محمـي مـن كــل الهجمــات والإختراقــات
لأن برامــج الحمـايــة فــي الأصـل لا تتعرف على هذه الفايروســات إلى بعد ظهورها وإنتشارهــا فـــي العـالــم
وبعد ذلك يتم تحليل هذه الفايروسات وإضافة تواقيعها إلى برامج الحماية- ليقوم المستخدم ومـن خــلال الإنترنت
بتـحديث برامـــج الحماية ليتم حـــذف الفايروس الجديد الـــذي دخـــل جهـــازك !
أهمية تعلم حذف الفايروسات بشكل يدوي وعدم الإعتماد كلياً على برامج المقاومة
الخطــوات السابقــة تتطلـب وقت على الأقـل 3 أو 4 أيام ,, في هذه المدة كيف سنحذف الفايروس ونتخلص منه
هذا إذا إفتـرضنا انـه فايـروس عادي!! لأن إنتشار مايعـرف ب Polymorphic Viruss غيــر الفكــرة تماماً
فايروسات Polymorphic Viruses هي شكل آخر من الملفات الخبيثة تتبع شفرات معقدة لتغيير نفسها بنفسها
كــل فتــره بداخـــل جهـــاز المستــخــدم بهــــدف الإختـفـــاء عن برامـــج الحمــايــه وبــذلك لا تـتـعـرف عليـها
لأن شفرة الفايروس الأصلي تغيرت بالكامل وكأنة ظهر بشكل جديد,هذا بالنسبة للفايروسات على مستوى العالم
أمـا بالنسبـه للفايروســات " الخاصة " وملفــات التجسـس فـلايمكــن التــعرف عليــها مـن قبــل برامج الحماية
يقوم بعض المبرمجين من تطويربرامج تجسس وفايروسات خاصه بهم يتم تنفيذها على أجهزة شخصية أو شبكة
بهــدف التجســـــس أو بــأهـــداف أخـــرى مثـــل التــخريـــب او التســـليــــة
هذه الملفات لايمكن لبرامج مقاومة الفايروسات إكتشافها لأنها لا تعرفها اصلاً
أولاً:- من أين تبدأ الفايروسات العمل ؟
أول خطـــوه وأهـــم خطــوه فــي التــحليـــل والبــحــث عــن الفايروســات وملفــات التجســــس فـي جهـــازك
هــــي : البــحث عـــــن البـــرامــــج والتــطبيــقــات التــي تـعمــل فــــي بــدايـــة تـشغيـــل النـظــام ونـــــدوز
تستخدم الفايروسات أكثر من طريقة ويمكن أن نقسمها كالتالي:
فايروسات تعمل عن طريق قاعدة بيانات الريجستري- أوعن طريق ملفات التأسيس ini -أو الملفات الدفعيةbat
أو عن طريق قائمة البرامج - أوعن طــريق الحقن injecting - أو عــن طريق قطاع الإقـــلاع boot sector
1-1الفايروسات التي تعمل عن طريــق قاعدة بيانــات الريجستـــري
1-1-1 إستغلال مفاتيح بدء التشغيل الأساسية
يقــدم النــظام ونـــدوز خــدمــات كثيــرة لمطــوري البــرامــج,, ومــن هــذه الخــدمــات إمكانية تشغيــل
برامجهم مع بداية تشغيل النظام وندوز ,,, وقام النظام بتخصيص مفاتيح في قاعدة بيـانات الريجستــــري
تمكنك من إضافة مسار تواجد برنامجك ليتم تشغيلة في بداية تشغيل النظام,, وبذلك إستغلت الفايــروسات
والبرامـــج الخبيثـــة هـــذه الخـــدمــه لتمكــن نفســها مـــن التنفيـذ فــي كــل مــره يتـــم تشغيـــل الجهــاز
لــرؤيــه مفــاتيـــح بــــدء التــشغيـــل الأســـاسيـــه ,,, شــغــل بــرنامـــج الــريـجستــري
من قائمة Start ثم RUN وإكتب regedit.exe ثم OK ليتم تشغيل برنامج الريجستري
توجه للمسار:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
لتظهر لك قائمة البرامــج التي تعمل في بداية تشغيل النظام ,, كــما تشــــاهد في الصــورة

وتوجـــد مســـارات أخـــرى أساسيــــة يقدمهــــا نظـــام ونـــدوز لتشغيــــل البرامــــج بخصائـــص مختلفــــة
هذه المسارات هي:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce
و
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServices
و
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrenVersion\RunServicesOnce
و
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
و
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce
و
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServices
و
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrenVersion\RunServicesOnce
-
وبعد تطور وسائل الحماية كشفت الفايروسات التي تعمل من خلال مفاتيح بدء التشغيل الأساسية
ولــذلك تطورت الفايروســات وأستغلت أمــاكن أخـــرى أكثــر تعقيد لتشغيــل نفســها,,, تابــــع
1-1-2 إستغلال مفاتيح مكونات النظام
مـــكــونــات النــــظـــام ونـــــــدوز Component Object Model – تـــعــــــرف بـتــقـنــيـــــة COM
عبـــارة عـــن تطبيــقـــات إضافيــة للنظام وتــكــون منــدمجــة معه ليسهل إستخدامهـا فــي أكثر من برنامج
ومثال على هذة التطبيقات: أشرطة الأدوات التي تضاف لمتصفح الإنترنت مثل أشرطة أدوات جوجل وياهـو
وبرامج الريل بلير وغيرها أو تكون مندمجة مع النظام نفسة مثــل تطبيقات "سلة المحذوفات"Recycle Bin
التـــي تكـــون علــى سطــح المكتــــب,,, وغيـــرهــــا الكثـيـــر وهــــذا ما يـــعــــرف بمكــونــات النـــظــام
وبالتــأكيد هـــي عبــارة عـــن ملفــات تنفيذيــة تكـون فــي الغالب مكتبـة ربط dll يتم تشغيلها وتنفيذهــــا
علــى حسب أماكن تواجدهـا ,,إما ان يكون تشغيلها مرتبط ببرنامج معين او مرتبط مع النظام بشكل عــام
ويتعـرف نـــظــام التـــشغيــــــل علــى هـــــذه المكــــونات مـــــن خــلال الريــجستــــري regedit.exe
وبـــالتـــحــــديــــد فـــــي المــــســـار التــــالـــي تــجــــد : HKEY_CLASSES_ROOT\CLSID
حـيــــث يـــــقــــوم نــــظام الـــــونــــدوز بالبـــحث عـن المكونات المثبتة,, وتكون معرفة بأرقام "هيكس"
او مايعرف بالصيغة الست عشري: ومثال على ذلك {5945c046-1e7d-11d1-bc44-00c04fd912be}
بــداخــل كـــل مكــــون تجـــــد مفتــــاح آخــــر بإســــــم InprocServer32
هـــذا المفتاح يـــدل علـــى المــــلف التنفيذي الـــذي سيمثــل تشغيل المـــكــون
كما ترى في الصورة:

ولهذا السبب ظهرت فايروسات وملفات خبيثة كثيرة تستغل هذة النقطة لتشغيل نفسها وبدون علم المستخدم
والآن نريد ان نعرف أماكن تشغيل المكونات ؟
1- أشهر هذة الأماكن يعرف ب التثبيت النشط
أماكن تواجدة : HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Active Setup\Installed Components
ويـكـون الفــايــروس تــحـت القيـمــة StubPath ويـــعمل الفــايـروس فــي بدايــــة تشغيــل النظـام
و لإيـــقــــاف تــــشـــغيـــل الفـــــايـــــروس , نـقــــــوم بــحــــذف رقــــــم المـكـــــون بالـــكامــــل
2- الطريقة الثانية تعرف ب الإرتباط عن طريق النظام او برنامج C:\WINDOWS\explorer.exe
مسار تواجد المكون لتشغيل الفايروس
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Shell Extensions\Approved
ويـــوجد أكثــر من مســار يمكن أستغـلاله لتشغيــل المكونات بنفس الطريــقة , يجب التشييك عليـها,, وهي
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\SharedTaskScheduler
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\ShellServiceObjectDelayLoad
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellExecuteHooks
إذا دخلت إلى أي مسار من المسارات الســابقة ستــــجد رقم المكـــون مثــل
{5945c046-1e7d-11d1-bc44-00c04fd912be}
إبــحث علـــى هـــــذا الإســـم بـــداخـــل مجلـــد المكـــونـــات الـــرئيـــسي HKEY_CLASSES_ROOT\CLSID
وسيكون بهذا الشكل
HKEY_CLASSES_ROOT\CLSID\{5945c046-1e7d-11d1-bc44-00c04fd912be}
إفتح المجلد ستجد مجلد آخر بإسم InprocServer32 إفتح المجلد لترى القيمة Default=مسار البرنامج الــــذي سينفذ وبهـــذا نكـــون قــد حــــددنــا مكـــان تـــواجـــد الفايــروس , نـــقوم بحذفـــة بعـــد غلــــق C:\WINDOWS\explorer.exe
3- الطريقة الثالثة تعرف ب الإرتباط عن طريق مساعد المتصفح
مســار تــواجد المكـــون فــي برنامج الريجستـــري لتشغيـــل الفــايـــروس
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Browser Helper Objects
ويتم تشغيل كل المكونات الموجودة في هذا المسار في بداية تشغيل النظــام
4- الطريقة الرابعة تعرف ب الإرتباط عن طريق شريط أدوات متصفح الإنترنت
مســـار تواجـــد المكــون لتشغيل الفايروس هــو
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Toolbar
ويتم تنفيذ الفايروس بعد تشغيل متصفح الإنترنت ,,, ويوجد أيضا المسارين
HKEY_LOCAL_MACHINE\Software\Microsoft\Internet Explorer\Extensions
HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\URLSearchHooks
1-1-3 إستغلال مفاتيح مدير الجلسات Session Manager
يقـــوم مديــر الجلســات بأعمــال كثيــرة ,,,منها تعريف وتشغــيل مكاتب الربط dll القياسيـــة للنظـام
فعنـــد بدايـــة تـــشغيـــل الكـــمبيوتــر يتـــم تحميـــل هـــذة المكاتــب حتـــى لو لـــم يتـــم إستــخدامهـا
بهدف تسريع عمل بقية البرامج والنقطة الثانية للتأكد من وجود هذه المكاتب لإستمرارية عمل النظــام
المــهــم : تـــوضـــع كـــافـــة المـــكـاتـــب ومــلفـــات النـــظام القيـــاسيـــة علـــى هـــــذا المــســـــار
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\KnownDlls
مــلاحـظــه : قبـــل ظهــور مايعرف بمديـر الجلسات ,, كان هنالك مسار آخر يعمل بنفس الطريقة وهو
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows\Appinit_Dlls
تم تجاهلة في الأنظمة الحديثه ولكن يجب الإنتباه إليـه , لأن الفايروسـات تستــغل اي غفوة او تــجاهــل
وفي بداية تشغيل الكمبيوتر يقوم النظام بتحميل وتنــفيـذ كافة المكـــاتب
ولذلك تقوم بعض الفايروسات والبرامج الخبيثة بإستغلال هذة النـــقطــة
كمــا توجـــد طــريقة أخـــرى للإستغـــلال مــن خــلال مديـر الجلسات
على المسار
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\BootExecute
يقــوم النظام بإستخدام هــذا المســـار لتشغيل برنامــج قبل تحميـــل ملفــات النظام لإظهــار الواجـــهــة
مثال: تلاحــظ ظهــور برنامــج تشييك القــرص عنــدمـــا يحــدث خطــأ فــي الجهــاز ويعيــد التشغيـــل
او عندما تغلق الجهاز بطريقة خاطئة تلاحظ بعد تشغيل الجهاز ظهور برنامج تششيك القرص C وD ,...
1-1-4 إستغلال مفاتيح Winlogon
برنامـــج Winlogon مهـــم جـــداً فهــو يقوم بالتنسيق بين مستخدمي الجهاز من مدير ومستخدم عادي
ويقــوم بعملية التبـــديــل بيـــن المستخدمين,,, بالإضـــافة للتشيك علـــى نسخة النظام وكــــود التفعيـــل
وتلاحظ ذلك بالتوجهة لمسارWinlogon في برنامج الريجستري :
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
لتجدة يحدد برنامج التشغيل الأول الذي يظهر للمستخدم تحت القيمةShell لتجدها تساوي Explorer.exe
بالإضافــة إلـــى القيمــــة Userinit التـــي تحدد البرنامـــج المســــؤل عــن خصائص جهاز المستخدم
الـــــذي سجــــــل الدخـــــــول ولـــــذلك يـــــــجب الإنتـبــــــاة علــــى القيمتيـــــن Shell وUserinit
وتـــوجد طــريقــــة أخــــرى لـــلإتستــــغلال عــــن طــــريق مكـــونـــات النـــظام فـــي هـــذا المســـار
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Notify
و يمكن إستغلال شاشة التوقف لتشغيل الفايروس عن طــريق القيمة SCRNSAVE.EXE في المســار
HKEY_CURRENT_USER\Control Panel\Desktop
كما إنتشرت فايـــروســـات كثيــــرة تستغـــل Winlogon عـن طريق الحقن؟ تحت مستوى RootKit
وهذة الطرق معقدة بشكل كبير -- سنذكرها في نهاية الموضوع.
1-1-5 إستغلال مفاتيح خدمات النظام
خدمات النظام عبارة عن برامج تعمل على مستوى النظام , بمعنى أنها مختلفة عن بقية البرامج التي تراها
لهـــا أحقيــــه الوصــــول إلـــى أي مكـــان يصـــل إليـــه النظــام وكما ان لهـا أحقيــه الوصول للهاردوير
ولذلك تجد تعاريف الأجهزة الهاردوير تثبت هنا بالإمتداد sys او vxd,, كما أن أخطر الفايروسات تجدها
في هذا المكان ,,, مسار تواجدها في الريجستري
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services
تجد مســـار الملف التنفيذي = محتــــوى القيمــة ImagePath وسترى مثـــال لهـذة الفكرة في آخــر قســم
1-1-6 إستغلال مفاتيح مشغلات البرامج والسكربتات
وهـــــذه الفــايــروســـــات تقــــوم بالتغييــــر فـــي إعــــدادات الجهـــاز القيـــاسيـــة
تـقــــوم بوضــــع نفســـــها فــــي مــكـــان تــشغيــــل ســــكربت أو ملــــف آخـــــــر
أو تقوم بتغيير مشغلات الملفات الأصلية ,, لتضع نفسها في مكان مشغل برنامج معين
وتقــــوم بإستـــغـــلال أي مشغل لملف تنفيــــذي ,,, تجدهـــا فـــي هـذة المســـــارات
HKEY_CLASSES_ROOT\exefile\Shell\Open\Command
HKEY_CLASSES_ROOT\vbsfile\Shell\Open\Command
HKEY_CLASSES_ROOT\scrfile\Shell\Open\Command
HKEY_CLASSES_ROOT\comfile\Shell\Open\Command
HKEY_CLASSES_ROOT\batfile\Shell\Open\Command
HKEY_CLASSES_ROOT\htafile\Shell\Open\Command
HKEY_CLASSES_ROOT\piffile\Shell\Open\Command
HKEY_CLASSES_ROOT\JSFile\Shell\Open\Command
HKEY_CLASSES_ROOT\wshfile\Shell\Open\Command
HKEY_LOCAL_MACHINE\Software\CLASSES\exefile\shell\open\command
HKEY_LOCAL_MACHINE\Software\CLASSES\batfile\shell\open\command
HKEY_LOCAL_MACHINE\Software\CLASSES\comfile\shell\open\command
HKEY_LOCAL_MACHINE\Software\CLASSES\htafile\Shell\Open\Command
HKEY_LOCAL_MACHINE\Software\CLASSES\piffile\shell\open\command
وبقية السكربتات vbs....
HKEY_LOCAL_MACHINE\Software\CLASSES\ShellScrap
-
كما توجد طريقة أخرى لتحديد برنامج إختبـارللنظام ويمكن إستغلالهـا مـن قبـل الفايــروس,, المسار التــالي
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options
يمـــــكن ان تقــوم بإنشــــاء مفتــاح جديد وتعطيه اي إســــم
وبداخل المفتاح تقوم بكتــــابة قيـمة جديدة من نـــوع نصـــي
إسم القيمة Debugger ومحتواها = مسار تشغيل الفايروس
1-1-7 إستغلال مفاتيح إعدادات البرامج الأخرى
وهذة النقطة ليست لها نهاية ؟؟؟
برامــج الكمبيــــوتــر كثيـــرة جــداً بعضـها تعرفـــها وأغلبـــها لاتعرفهـــا
تقوم بعض هذة البرامج بإستخدام قاعـــــــدة بيــانات الريجستـــري لتقوم بأعمالـــهـا
فبعضـــها يقـــوم بتنفيـــذ برامــــج يخــــزن مسـارهــــا فــــي ملـــف الريجستــــري
مثـال علــى ذلك برنـــامـــج التلنـــت ( وهــذا البرنامج يعتبر ضمن النظــام ونــدوز)
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Terminal Server\Install\Software\Microsoft\Windows\CurrentVersion\Run
او
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\Wds\rdpwd
-
وتوجد برامج كثيرة تستخدم الريجستري لتشغيل برامج أخرى مثل برنامج المحادثة الشهير icq وغيــرهـــا
ولكن النقطة الأهم أن مبدأ صناعة الفايروسات لايعتمد على مثل هذة الطرق لأن البرنامج الذي سيعتمد عليه
لنشر الفايروس وليكن مثلاً icq لن تجدة في كل الأنظمة ولذلك تجد أن النقطة الأساسية لإنتشار أي فايروس
تكون من خلال ملف نظام أساسي يوجد في كل الأنظمة القياسية ,,, وهذا لا يعني تجاهل هــــذه النقطة !!!
وتوجد ملفات أخرى مسؤلة عن تشغيل البرامج في بداية تشغيل النظام وندوز
وهي:
1-2 الفايروسات التي تعمل عــــن طــريــــق ملـفـــات التــأسيـــس ini
ملفات التأسيس عبارة عن قاعدة معلومات مثلها مثل الريجستري regedit.exe
ولــــذلك تجـــد أن الفـــــايـــروســـات أستغلتــهـــا لتـــشغيــــــل ملـــفـــاتـــهـــا
1-2-1 ملف التأسيس Win.ini
تـــجد هـــذا الملــــف فــي مجلد النظام C:\WINDOWS
بداخــل هذا الملف تجد القســـم [windows] يمكن إستغــلال هذا القسم عن طريق
القيمتيـــن load و run لتـــشغيـــل أي فـــــايــــروس فــــي بــــدايـــة التــشــغيـــل
مثال: ستجد الفايروس بهذا الشكل
[windows] load=C:\WINDOWS\Virus.exe run=C:\WINDOWS\Virus.exe
1-2-2 ملف التأسيس System.ini
تجد هذا الملف في مجلد النظام C:\WINDOWS
القســـم الـــذي يتم إستغلاله هـو [boot] بإستــــخدام القيــــمة shell
مثال
[boot] shell=Explorer.exe C:\WINDOWS\Virus.exe
1-3 الفايروسات التي تعمل عن طريق الملفات الدفعية للنظام دوس bat
الملفات هي:
autoexec.bat وdosstatr.bat
config.nt و autoexec.nt
وهي عبارة عن تنفيذ مباشر لأوامر النظام دوس
1-4 الفايروسات التي تعمل عن طريـــق قائمــة البرامــج Start Menu
Start Menu->Programs->Startup
أوعن طريق جدول المهام Scheduled Tasks
Start Menu->Programs->Accessories->System Tools->Scheduled Tasks
--------------------------------------------------------------------------------------------------------------------
وبعــــد مــــا عرفنـــا الأماكـــن التـــي يمكـن أن تستغلــــها الفايـــروســـات
ندخـــل فــــي الأدوات والبرامـــج التي تسهـل علينا الشغل وتختصـر الوقت
-
وفــر النظام ونـــدوز بعض الأدوات التـــي يمكن أن تفيــدنا في هذا المجــال
منـها الأداة msconfig مـــن قائمــة start ثـــم Run وأكتـــب msconfig
لتظهر لك أهـــم الأمــاكن التي تستخـــدمها الفايروســات لتشغيــــل ملفاتهـــا
ومـــع ذلك فــإن الأداة msconfig لا تعتبـــر أداة كافية لكشف الفايروسـات
يوجـــــد في هــــذا المجال أدوات كثيرة ,, وسنعرض أهمها والمجانية منهـا
الأدوات هي : autoruns من شركة Sysinternals
والأداة a2hijackfree من شركة Emsi Software
1-الأداة AutoRuns

2-الأداة: a2hijackfree













