بخشی از مقاله
آشنايي با ویروس های مخرب و راههای مبارزه با آن
هنگامي كه در سال 1984 براي اولين بار در مقالات علمي، امكان وجود ويروس مطرح شد، هيچ كس آن را جدي نگرفت. اما طولي نكشيد كه اولين ويروس پا به عرصه وجود گذاشت. در آن زمان نيز عده انگشت شماري خطر آن را درك كردند. برخي حتي نمي دانستند كه آيا ويروس به طور اتفاقي رخ مي دهد يا آن را مي نويسند. يك يا دو متخصص، از اين حد نيز فراتر رفتند و توليد ويروس را كاملاً انكار كردند. اما امروزه، مي بينيم كه مراكز رايانه اي پر از ويروسهاي گوناگون است و تعداد آنها پي در پي افزايش مي يابد.
در سالهاي 1980، رايانه هاي بزرگ به صورت چند برنامه اي كار مي كردند. هر كاربر مي توانست برنامه هاي خود را به رايانه بسپارد و منتظر بماند تا اجرا و خروجي آن آماده شود. در بعداز ظهر يك روز جمعه، يك برنامه ساز برنامه الي را به عنوان بازرس اجرا كرد. كار برنامه آزمايش سيستم بود. بدين صورت كه اگر برنامه ديگري در حال اجرا است، آن را از سيستم حذف كند و در غير اين صورت، خود به صف ورودي برود و منتظر بماند. پس از اين كه برنامه بازرس تمام شد، برنامه ساز مي توانست كار اصلي خود را به سيستم بفرستد و بلافاصله خروجي را دريافت كند. زيرا بازرس تمام برنامه ها را از سيستم حذف كرده بود. متأسفانه، وجود يك اشكال كوچك در برنامه بازرس باعث شد كه برنامه پي در پي خود را تكثير و در صف وارد كند. درنتيجه، پس از چند ثانيه، هزاران نسخه از آن در صف ورودي توليد شد.
برحسب اين كه چه تعريفي براي ويروس ارايه مي دهيم، مي توانيم برنامه بازرس را يك ويروس رايانه اي بناميم. بنابراين، مي بينيم كه ويروس مسئلهأي جديد نيست و توليد آن نيز مشكل نيست.
اولين ويروسها، تصاوير گرافيكي و يا پيغامهايي را بر روي صفحه نمايش نشان مي دادند. اما بيشتر ويروسهاي امروزي مخرب هستند. متأسفانه، ويروسهاي رايانه اي در ده سال اخير خسارات بي
شماري را به سيستمهاي رايانه اي وارد ساخته اند. يكي از اين خسارات، از بين رفتن اطلاعات باارزش است. البته اين ضرر در مقابل وقت هزينه اي كه براي تهيه برنامه هاي ضد ويروس و نصب آنها مصرف مي شود، ناچيز است. حتي ويروسهاي بي خطري كه يك پيغام ساده نشان مي دهند، يا يك قطعه موسيقي كوتاه مي نوازند نيز وقت پردازنده و فضاي حافظه را براي تكثير مصرف مي كنند. به علاوه، براي كشف و پيشگيري از آنها بايد ضدويروس تهيه گردد. درنتيجه، آنها نيز
باعث اتلاف وقت و هزينه مي شوند.
ويروس تنها برنامه رايانه اي مخرب نيست. بلكه برنامه هاي مخرب نيز وجود دارد. از آن جمله، اسب تروا، بمب منطقي و كرم را مي توان نام برد.
اسب تروا: اسب تروا، برنامه اي است كه كارهايي را انجام مي دهد كه در مستنداتش ذكر نشده است. معمولاً اين كارها زيان آور نيز هستند. براي مثال، هنگامي كه كاربر مي خواهد و با سيستم كار كند، يك برنامه Login تقلبي، شماره حساب و كلمه عبور را از كاربر گرفته تا اجازه ورود به سيستم و كار با آن را صادر نمايد. اما پس از فهميدن شماره حساب و كلمه عبور، اطلاعات كاربر را دستكاري مي كند. به عنوان مثالي ديگر، فرض كنيد برنامه اي وجود دارد كه بايد فشرده سازي اطلاعات را انجام دهد. اما در حقيقت، هر پرونده اي را كه به آن اعلام مي كنند، از روي
ديسك حذف مي كند. نمونه اي از يك اسب تروا در شكل 1-4 نشان داده شده است.
a:
copy CON a:horse.bat
y
cls
del <a:horse.bat a:\*.*
[Ctrl]-z
شكل 1-4- يك نمونه اسب تروا
اگر پرونده horse.bat را با توجه به شكل 1-4 توليد كنيم و شخص علاقهمندي از روي كنجكاوي فرمان horse را اجرا نمايد، تمام پرونده هاي موجود در ديسك A حذف خواهند شد.
معمولاً برنامه اسب بايد به طور خودكار اجرا شود و به سيستم آسيب برساند. براي مثال، يك فرمان type آن را فعال كند. فرض كنيد در پروندهاي از فرمانهاي ansi.sys استفاده كنيم و يكي از كليدهاي صفحه را با فرمان پاك كردن تمام پرونده هاي ديسك و كليد N را با Y عوض كنيم. اگر شخص كنجكاوي داخل پرونده را با فرمان type ببيند، از آن پس، هرگاه كليد مورد نظر تحرير شود، سيستم پيغام Warning all data will be deleted (Y/N) را صادر مي كند كه با تحرير كليد N تمام پرونده ها حذف خواهند شد.
- بمب منطقي:
بمب منطقي، برنامه اي است كه براي خسارت زدن به سيستم، از يك دستور IF استفاده مي كند. اگر شرايط مناسب باشد، يك كار زيان آور انجام مي دهد، در غير اين صورت خير. شرط مي تواند زمان انجام خسارت، اسم يك فرد و يا هر عبارت ديگري باشد. براي مثال، يك برنامه ساز بمبي را در يك سيستم حسابداري نصب كرده بود كه پرونده اضافه كاري را براي نام برنامه ساز جستجو نمايد. اگر نام برنامه ساز وجود نداشت، پرونده حذف مي شد. در غير اين صورت، پرونده در سيستم باقي مي ماند. الگوريتم كار بمب منطقي در 2-4 نشان داده شده است.
كرم و ويروس
- كرم:
كرم برنامه اي رايانه اي است كه علاوه بر اثرات جانبي، خود را نيز تكثير مي كند و براي تكثير نيازي به يك برنامه ناقل ندارد. كرمها بيشتر در شبكه هاي رايانه اي وجود دارند. درخت كريس
مس نمونه اي از برنامه كرم است. اين برنامه هنگامي كه اجرا مي شود، يك درخت كريسمس مانند شكل 4-3 روي صفحه نمايش مي دهد و همزمان خود را نيز روي شبكه منتشر مي كند.
- ويروس: ويروس برنامه اي با ويژگيهاي زير است:
داراي اثرات جانبي است: ويروس، حاوي قطعه برنامه الي است كه داراي اثرات جانبي زيان آور مي باشد و در شرايط مناسب اثراتش را نشان مي دهد. البته ويروسهايي هستند كه تخريب كننده نيستند.
خودتكثير است: ويروس خود را تكثير مي كند و بر روي ديسك منتشر مي شود. اين همان خاصيت ويروسهاي بيولوژيكي است. خودتكثيري، يكي از مشخصه هاي ويروس است كه آن را از ساير برنامه ها متمايز مي كند.
مخفي است: موفقيت ويروس در اين است كه قبل از مشخص شدن اثرات جانبي آن، خود را به طور مخفيانه تكثير مي كند. اين ويژگي ويروس نيز مانند ويروسهاي بيولوژيكي است. ويروس بيولوژيكي نيز در دوران نهفتگي نشانهاي ندارد، اما به بقيه انسانها سرايت مي كند. چون نشانه اي از خود ظاهر نمي كند، هيچ دليلي ندارد كه افراد از ناقل كناره گيري كنند و همين امر سبب انتشار بيشتر ويروس مي شود.
معمولاً ويروسها همراه برنامه هاي مخرب ديگر به رايانه حمله مي كنند. براي مثال، بعضي از آنها از مكانيسم بمب منطقي استفاده مي كنند و در شرايط خاصي داراي اثرات جانبي هستند. ويروس armagid نمونه اي از اين گونه ويروسهاست كه در روز هشتم ماه مه هر سال فعال مي شود و شكل مكان نما را به صورت دو خط متقاطع و به رنگ قرمز تبديل مي كند.
بعضي از افراد بر اين عقيده هستند كه ويروس رايانه اي نيز نوعي فناوري است و مانند بقيه نه خوب است و نه بد. قصد و نيت افراد بستگي دارد كه از آنها در امور خوب يا بد، استفاده كنند. براي مثال، مي توان ويروسي نوشت كه در شبكه حركت و پرونده هاي بي مصرف را از روي ديسك حذف نمايد. و يا ويروسهايي طراح شود كه در سيستم حركت كنند. چنانچه سيستم فاقد ضد ويروس باشد و يا ضد ويروس قديمي باشد، نگارش جديد را جايگزين آن نمايند. همچنين، مي توانيم ويروسي بنويسيم كه خود را به پرونده متصل نموده، اطلاعات آن را فشرده كند. سپس هنگام استفاده از پرونده، آن را از فشردگي خارج سازد.
تمام كساني كه تا كنون خواسته اند ويروس مفيد بنويسند، ناموفق بوده اند. زيرا به دليل كنترل ناپذيري ويروس، اگر اشكالي در ويروسهاي مفيد بروز نمايد، رفع آن ناممكن مي شود. به علاوه، چون ويروس مخفي است، بدون اجازه وارد سيستمهاي مختلف مي شود كه اين امر كار صحيحي نيست. سرانجام، ضدويروسها، تفاوت بين ويروسهاي خوب و بد را نمي توانند تشخيص دهند و در صورت تشخيص نيز ويروسهاي بد زير چتر ويروسهاي خوب وارد سيستم خواهند شد.
- اثرات جانبي ويروس
ويروس معمولاً كارهايي انجام ميدهد كه يك برنامه معمولي انجام نمي دهد. براي مثال، يك يا چند كار زير را ممكن است انجام دهد.
1-اطلاعات غلط را برروي پرونده ها بنويسيد.
2-اطلاعات داخل پرونده را جابه جا كند.
3-اطلاعات پرونده هاي مختلف را با يكديگر تعويض كند.
4-اطلاعات پرونده ها را به رمز درآورد.
5-اطلاعات يك پرونده را به پرونده ديگر اضافه كند.
6-قطاعهاي خالي ديسك را با علامت خراب پر كند.
7-جدول تخصيص پرونده ها را پاك كند.
8-ركورد بوت را خراب كند.
9-ديسك را فرمت كند.
10-قسمتي از حافظه اصلي را اشغال كند.
11-برنامه هاي در حال اجرا را تغيير دهد.
12-سرعت اجراي برنامه ها را كم كند.
13-پيغامها و تصاويري را برروي صفحه نمايش نشان دهد.
14-پيغامها و شكلهايي را برروي صفحه چاپگر نشان دهد.
15-كليدها را تغيير دهد.
16-صفحه كليد را قفل كند.
17-سيستم را به حالت تعليق درآورد.
18-سيستم را دوباره راه اندازي كند.
انتشار ويروس و هدفهاي آن
ويروس از طريق پرونده هاي آلوده، منتشر مي شود. هنگام اجراي برنامههاي آلوده و يا پردازش پرونده هاي آلوده، ويروس فعال مي شود و خود را تكثير ميكند. اگر رايانه را خاموش كنيم، فعاليتش متوقف مي شود. فرض كنيد، رايانه داراي يك دستگاه ديسك گردان سخت و يك دستگاه ديسك گردان نرم است. همچنين، يك ويروس بر روي ركورد بوت يك ديسك نرم وجود دارد. اگر رايانه را با آن ديسك راه اندازي كنيم، ابتدا ويروس به حافظه اصلي منتقل و سپس فعال مي شود. آنگاه ديسك سخت را آلوده مي كند. اگر رايانه را خاموش
كنيم، ويروس موجود در حافظه اصلي از بين مي رود، اما در ديسك سخت باقي مي ماند.
سيستم را بار ديگر با ديسك سخت راه اندازي مي كنيم. ويروس از ديسكم سخت به حافظه رفته، فعال مي شود. اكنون اگر از يك ديسك نرم سالم و
بدون محافظ نوشتن استفاده كنيم، ويروس در ديسك نرم هم منتشر مي شود. اگر رايانه را خاموش كنيم، ديسك سخت و نرم هر دو آلوده خواهند بود. به شكل 4-4 توجه كنيد.
هدفهاي ويروس
ويروس در مكانهايي منتشر مي شود و آنها را آلوده مي كند كه اجرايي و تغييرپذير باشند. بنابراين، فضاي سيستم (ركورد بوت، جدول تخصيص پرونده ها
، راهنما و جدول افراز) پرونده هاي exe، com، bat، sys ازجمله هدفهاي ويروس به شمار مي روند. ويروسهاي امروزي پرونده هاي اطلاعاتي را نيز خراب مي كنند. به پرونده هايي كه واژه پردازها توليد و پردازش مي نمايند «سند» مي گويند. سندها از منابع بسيار مناسب براي انتقال ويروس هستند.
ممكن است اين سؤال مطرح شود كه آيا ويروس، سخ
ت افزار را هم تخريب مي كند. پاسخ اين سؤال تا چند سال قبل منفي بود. زيرا اين عقيده وجود داشت كه سخت افزار در مقابل آسيب نرم افزار مقاوم است. اما ويروس چرنوبيل كه به سخت افزار نيز حمله مي كند و به آن آسيب مي رساند، اين نظريه را رد مي كند.
:
-انواع ويروس
كار تخريب و تكثير ويروسها و همچنين مكان جايگيري آنها با يكديگر متفاوت است. برخي ويروسها، محتواي ركورد بوت، سيستم عامل و يا جدول افراز ديسك هاي موجود را تغيير مي دهند. درنتيجه، ممكن است سرعت عمل راه اندازي سيستم (بوت شدن سيستم) را نيز آهسته تر نمايد. برخي ديگر به پرونده هاي اجرايي متصل شده آنها را آلوده مي كنند. گاهي نيز مانند ويروس Crypto به انواع پرونده هاي سيستم و غير سيستم حمله مي كنند و در آنها منتشر مي شوند. بنابراين، احتمال آلوده سازي آنها بيشتر از ويروسهاي ديگر است.
برخي از ويروسها ماكرو هستند و برخي ديگر خير. سندهايي كه به كمك واژه پردازها توليد مي شوند، مكانهاي خوبي براي انتقال ويروس به شمار مي روند. زيرا بيشتر سندها، صرفاً حاوي
اطلاعاتي نيستند كه برروي صفحه نمايش، چاپگر يا هر دستگاه خروجي ديگر مي بينيم. بلكه اطلاعات ديگري نيز همراه آنها وجود دارد. براي مثال، يك مقاله چند صفحه اي را از طريق يك واژه پرداز توليد مي كنيم، مي خواهيم دو خط اطلاعات در صفحه اول نشان داده شود. اكنون اين سؤال مطرح مي شود كه آيا واژه پرداز بايد چندين خط خالي ديگر توليد كند تا به صفحه بعد برود؟ پاسخ منفي است. واژه پرداز به جاي چند خط خالي، فرمانهايي به پرونده اضافه مي كند تا هنگام چاپ مقاله، خطوط خالي را توليد نمايند.