ايران ويج

نسخه‌ی کامل: جلوگیری از بسته شدن پروسس
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
چطور می تونم کاری کنم که پروسه ای حداقل در تسک منجر بسته نشه (End Process) یا هر وقت کاربر End Process کرد ، برنامه ی من بسته نشه !؟
توجه داشته باشید که اینجا نمی خوایم به صورت استاندارد از این روش استفاده کنیم و می خوایم با یه برنامه ی تقریباً ساده اینکارو بکنیم . در ضمن این روش فقط یکی از راه های محافظت از پروسه هست ... به یاد داشته باشید که این روش تنها راه موجود برای اینکار نیست !
وقتی که برنامه ای رو End-Process کنید یک پیغام wm_quit به برنامه مورد نظر ارسال میشه
اینجا داریم در مورد پروسه هایی صحبت می کنیم که سیستمی نیستند و توسط کاربر اجرا شده اند که به راحتی بسته می شوند ... پس با پروسه های سیستمی اشتباه نگیرید !
پروسه هایی مثل lsass.exe ، services.exe یا بعضی انتی ویروسها ، پروسه هایی هستند که سیستم عامل از اونها محافظت می کنه.
جلوگیری از بسته شدن برخی پروسه ها :
برای اینکه کاری کنید که پروسه ی شما همیشه اجرا باشه وکسی برنامه تون رو End Process نکنه ، می تونید
اسم برنامه مورد نظرتونو هم اسم پروسه های سیستمی مثلlsass.exe ، services.exe قرار بدین تا از بسته شدن پروسه در تسک منجر جلوگیری کنین یا از دو پروسه استفاده کنید (البته منظور از End Process نشه اینه که دوباره پروسه اجرا بشه)برای مثال پروسه ی اول که برنامه ی اصلی شماست اجرا بشه ... بعد پروسه ی اول می تونه بیاد و از ریسورس خودش یه برنامه ی خیلی کوچیک و کم حجم رو جایی ذخیره و بعد هم اجرا کنه !
در مرحله ی بعد پروسه ی دوم یا همان پروسه ای که از پروسه ی اول محافظت می کنه یه تایمر داره که پروسه ی اول رو چک می کنه تا ببینه اجراست یا نه !
البته پروسه ی اولی هم باید پروسه ی دوم رو چک کنه تا اگه کسی پروسه ی دوم رو بست متوجه بشه و دوباره اونو اجرا کنه. حالا فکرشو بکنید که وقتی که دوتا پروسه همدیگر رو چک کنن چطور می شه اونا رو بست !؟ شاید بگید توی Task-Manager دو تا رو سریع می بندیم و همه چیز تمومه ! ... این جواب اشتباست ... شاید دو پروسه هر 1 میلی ثانیه یکبار همدیگه رو چک کنن ... خب اینکار مانع از بستن پروسه ها می شه.
من راه حل دیگه ای پیشنهاد می کنم که بعضی مواقع کار می ده ! (حال می کنین آنتیشو !!) . یه فایل Bat بسازین و با استفاده از Taskkill خود ویندوز (برنامه ای تحت داس که توی همه ی ویندوزهای Xp وجود داره) 10 تا 20 یا بیشتر دستور تایپ کنید که دوتا پروسه رو پشت سر هم ببنده (باید اول پروسه های مشکوک رو شناسایی کنین تا دستور بستنشون رو بنویسید) ... در بعضی مواقع این کار عملی هست ... به شرطی که به ویروس ما ، Taskkill رو از کار ننداخته باشه
دستور مورد نظر برای بستن یک پروسه: Taskkill.exe /f /im "virus.exe"
البته کارایه دیگه ای هم هست مثل تزریق برنامه به پروسه های سیستمی در حال اجرا یا استفاده از روتکیتها یا hookapi
نقل قول: وقتی که برنامه ای رو End-Process کنید یک پیغام wm_quit به برنامه مورد نظر ارسال میشه
در هنگام end process پیغامی ارسال نمیشه
وقتی Endtask میکنین پیغام میفرسته
این ویروس ها رو راحت میشه پاک کرد البته باید محل ویروس رو بدونی.
واینکه ویروس اول ویروس دوم رو اجرا کنه و بلعکس این الگوریتم ویروس های دوقلو هستش ویروس Master And Slaveهم از این الگوریتم استفاده میکنه