الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

حل لمشكل عدم تعرف النظام على مسار بعض البرامج بسبب فيروس

بدأه djug في 27 نوفمبر 2008 · 7 رد · 4,179 مشاهدة · في قسم أمن المعلومات العام
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

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

رسالة الخطأ هذه هي التالية

481173022.jpg

و التي مفادها أن النظام لا يستطيع إيجاد البرنامج الذي تود تشغيله

تظهر هذه الرسالة لدى تشغيل أحد مضادات الفيروسات أو أحد برامج النظام مثل Regedit taskMgrو غيرهما

الخدعة التي تستعملها الفيروسات هي جعل بعض البرامج تشتغل في وضع التنقيح Debug

و ذلك بـإنشاء مفتاح جديد في مسجل النظام في التشعب التالي يحمل اسم البرنامج المراد إيقافه

  HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options

و من ثم إنشاء قيمة تحت هذا المفتاح تحمل اسم debugger و يكون محتواها هو مسار البرنامج الذي سيلعب دور المنقح

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

هذا الأمر جعل القضاء على الفيروس سهلا نسبيا و ذلك بمجرد البحث في الـ registry عن جميع القيم التي تحوي اسم و/أو مسار الفيروس و من ثم حذفها

مما دفع بمبرمجي الفيروسات إلى انتهاج أسلوب آخر و هو استبدال مسار الفيروس بمسار برنامج موجود في النظام و بالأخص البرامج التي لا واجهة رسومية لها (services) مما يصعب على المستخدم العادي اكتشاف أن المفتاح من وضع فيروس و ليس من وضع النظام

مثل:

  %windir%\system32\dllcache\

حتى و إن تفطن المستخدم إلى الحيلة فإنه يصعب عليه حل المشكل بحكم أنه لا يستطيع تشغيل الـ RegEdit

كيف الحل إذا؟

أولا يجب "تحرير" الـ regedit و ذلك بإنشاء ملف registry (ملف نصي عادي امتداده reg بدل txt) يكون محتواه على النحو التالي:

  Windows Registry Editor Version 5.00



   [-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\REGEDIT.EXE]

لاحظ جيدا وجود - قبل HKEY

احفظ الملف وليكن اسمه على سبيل المثال clrRE.reg

الآن يجب إضافة محتوى الملف إلى المسجل و ذلك بكتابة الأمر التالي في نافذة الـ dos

  Reg  import RegistryFilePath\RegistryFile.reg

RegistryFilePath تمثل مسار المجلد الذي يتواجد فيه الملف الذي أنشأناه قبل قليل

أي إذا كان الملف موجودا في جذر القرص c نكتب إذا

Reg import c:\clrRE.reg

الآن يمكننا الدخول إلى regedit

يبقى علينا تنظيف باقي المفاتيح الموجودة في الشجيرة HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options

من القيم الضارة

لكن عادة ما تكون عدد المفاتيح الواجب حذفها كثيرا قد يصل أو يتجاوز 50 مفتاحا

و عليه نقوم بالتالي

نقوم بحفظ نسخة من الشجيرة الخاصة بالمسار المذكور فوق

نقتح الملف الناتج باستعمال notepad

الآن اضغط على ctrl+h تظهر لك نافذة البحث و الاستبدال

ضع في الخانة الأولى المسار الموجود في القيم debugger (لنفرض أن المسار هو C:\WINDOWS\system32\dllcache\)

و اترك الخانة الثانية فارغة

قم بتنفيذ التغيير و احفظ التغييرات الحاصلة في الملف

الآن ارجع إلى regedit و قم بحذف الشجيرة

  HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options

بعد ذلك قم يإضافة محتوى الملف السابق إلى الـ registry (يكفي عمل doubleClick على الملف فقط)

الآن جرب فتح أي برنامج لم تكن تستطيع فتحه من قبل لترى أن الأمور رجعت إلى نصابها

بقيت نقطة واحدة لضمان نجاح كل هذه الخطوات و هي الدعاء بظهر الغيب لكاتب الموضوع :D

ImageFileExecution.rar

تم تعديل هذه المشاركة بواسطة djug في 27 نوفمبر 2008 في 21:59

#2

السلام عليكم ورحمة الله وبركاته

هل الطريقة الموضحة بخصوص تحرير الريجستري هي الطريقة الوحيدة أم قد يكون هناك طرق أخرى؟

وشكراً أخ djug على المقال اللذيذ :)

Do as I say, not as I do

We are Anonymous. We are Legion. We don't forgive. We don't forget

#3

استخدم حيله اخرى لتشغيل regedit.exe

انسخ regedit.exe الى مكان جديد باسم جديد d:\reg.exe

واقوم بتشغيله وتنظيف الرجسترى

واستخدم معه RRT3.exe

تم تعديل هذه المشاركة بواسطة a3ghadeer في 4 ديسمبر 2008 في 00:01

#4
a3ghadeer كتب:
استخدم حيله اخرى لتشغيل regedit.exe

انسخ regedit.exe الى مكان جديد باسم جديد d:\reg.exe

واقوم بتشغيله وتنظيف الرجسترى

واستخدم معه RRT3.exe

حيلة جميلة استعملتها ذات مرة مع فيروس ssvichosst الذي يمنع تشغيل الـ cmd

لكن أظن أن Xacker يشير إلى إمكانية تحرير الـ Registry باستعمال دوال الـ Api (هل تتكرم علينا بمثال عن ذلك :) )

#5
djug كتب:
لكن أظن أن Xacker يشير إلى إمكانية تحرير الـ Registry باستعمال دوال الـ Api (هل تتكرم علينا بمثال عن ذلك :) )

لا في الواقع لم أكن أقصد هذا يا djug ولم أبحث مرة في هذا الأمر من خلال دوال API.

الهدف من السؤال كان فقط محاولة الاستفادة من أي طريقة في إزالة هذا التحديد على جهاز جلبه أحدهم لي ولم أكن أريد إضاعة الكثير من الوقت في إصلاح الريجستري فقط لكن لو مررت على شئ يتعلق بـ API سأضعه إن شاء الله :happy:

Do as I say, not as I do

We are Anonymous. We are Legion. We don't forgive. We don't forget

#6

إحتمال أن يكون هذا الكلام صح

سأتحقق

#7

ألف شكر أخ djug و جعله الله في ميزان حسناتك

كادت هذه المشكله (سابقا) تنقلني إلى المستشفى و كأني المصاب بالفايروس و ليس الجهاز .

و لكن الآن إن شاء الله سيكون بخير (إن إضطررت لمواجهة الفايروسات لا سمح الله) :)

<(قل هل يستوي الذين يعلمون و الذين لا يعلمون)>

#8

السلام عليكم

اود اضافة معلومة قد تكون قديمة نوعا ما بأنه يمكن الوصول الى اي ملف يمكن تشغيلة عن طريق cmd بفتحه مباشر من ملف windows من c و اذا وجدت هذا صعب قم بالبحث عنه في folder ال Windows

سبب تذكير بهذه الموضوع هو حل جدال بين مجموع من اصدقائي مهندسي الحاسوب

- حول ماذا يحصل لو قمنا بتعطيل خاصية task bar من الـ console و كيفية اعادة فتح ال console مرة اخرى و تعديل هذه القيمة منه مع توفر cmd بعدم وجود ال task bar

فذكرتهم بان ال consloe موجود باسم mmc في ملف الويندز

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

أستضافة مواقع (Website Hosting) ابتداء من 35دينار اردني (50$) سنوي 962799247524+ أضغط هنا

logo.png

مواضيع مشابهة