انتشار کرم‌های رایانه‌ای در شبکه

به دلیل گسترش روز افزون ویروس‌ها و کرم‌های رایانه‌ای و همچنین خسارات فراوانی که وارد می‌کنند، لازم است به دنبال روش‌هایی در جهت مقابله با آن‌ها باشیم. در این مقاله ابتدا تعریفی از این برنامه‌ها و نحوهٔ عملکرد برخی از آن‌ها بیان شده و سپس عوامل مؤثر بر سرعت انتشار آن‌ها در شبکه بررسی شده‌است. برای آشنایی بیشتر با نحوه پخش آن‌ها در شبکه، مدل انتشار دو مورد از آن‌ها آورده شده‌است. در انتها روشی خودکار به نام «قرنطینهٔ پویاً را برای مقابله با انتشار در شبکه بیان نمودیم. در این روش با الهام گرفتن از روشهایی که در دنیای واقعی برای کنترل بیماری‌های مسری استفاده می‌شوند راهبردی که بر پایهٔ اصل »قبل از اثبات بی‌گناهی فرض را بر گناهکار بودن بگذار" ارائه می‌کنیم. در صورتی‌که یک میزبان در شبکه رفتاری مشکوک از خود بروز دهد آن را در قرنطینه قرار می‌دهیم و پس از مدت زمان کوتاهی هر چند آن گره به وسیلهٔ بخش امنیتی بازرسی نشده باشد آن را از قرنطینه آزاد می‌کنیم .قرنطینهٔ پویا می‌تواند از سرعت انتشار کرم‌ها بکاهد و زمان مورد نیاز برای برخورد علیه کرم‌ها قبل از اینکه دیر شود را به ما بدهد. علاوه بر این کرم‌های بیشتری را می‌تواند تشخیص می‌دهد.

## مقدمه
کرم‌ها برنامه‌های مخربی هستند که می‌توانند خود را در جاهای مختلف سیستم کپی کنند و به‌طور خودگردان و خودکار در شبکه‌ها و از جمله اینترنت منتشر شوند. شیوع کرم اسلامر روی ایسکوئل و نیز سوبیگ در سال‌های اخیر و خسارات فراوانی که بر شبکه‌ها و سیستم‌ها وارد کردند، کارشناسان را بر آن داشت تا راه حل جدی را برای مقابله با کرم‌های کامپیوتری پیش گیرند.نظر به اینکه طبق آمار رسیده سرعت انتشار این کرم‌ها در شبکه‌ها به اندازه‌ای بالا بود که با روش‌های دستی نمی‌توانستند آن را کنترل کنند، لازم بود که با روش‌های خودکار به مقابله بپردازند. 
برای پیاده‌سازی برنامه‌های خودکار برای مقابله با انتشارکرم‌ها لازم است که نحوهٔ انتشار آن‌ها مدل شده و سپس راه‌حل‌هایی ارائه شود. به این منظور به دو مدل انتشارSimple propagation Model و Kermak-MCkendric اشاره نمودیم. 
 در روش‌های جلوگیری از انتشار کرم‌ها ابتدا میزبان‌هایی که رفتارهای مشکوک از خود بروز می‌دهند توسط سیستم‌های تشخیص ناهنجاری مشخص می‌شوند.
سیستم‌های تشخیص ناهنجاری به این صورت عمل می‌کنند که اگر در رفتارهای میزبان مواردی را مشاهده کردند که احتمال حضور کرم در ان برود نسبت به آن هشدار می‌دهند. مشکلی که در عملکرد این سیستم‌ها وجود دارد این است که درصد خطای آن‌ها زیاد است، یعنی هشدار آن‌ها برای بسیاری از میزبان‌ها بی‌مورد است. بنابراین اگر برطبق هشدارهای آن‌ها عمل کرده و همهٔ میزبان‌های مشکوک را حذف کنیم، بسیاری از میزبان‌های سالمی که به اشتباه در مورد آن‌ها هشدار داده شده نیز حذف می‌شوند . در غیر این صورت اگر بخواهیم همهٔ میزبان‌ها را ابتدا توسط بخش امنیتی بررسی کنیم، بسیاری از میزبان‌های سالم معطل می‌مانند.برای جلوگیری از موارد شرح داده شده از روش قرنطینهٔ پویا استفاده می‌کنیم.
در روش قرنطینهٔ پویا میزبان‌هایی که در مورد انها هشدار داده شده در قرنطینه قرار می‌گیرند ولی پس از مدت زمان کوتاهی، حتی اگر هنوز توسط بخش امنیتی بازرسی نشده‌اند آزاد می‌شوند. به این ترتیب میزبان‌های سالم خیلی معطل نمی‌شوند. روش قرنطینهٔ پویا سرعت انتشار کرم‌ها را کاهش می‌دهد و اجازهٔ کشف کرم‌های بیشتری را به ما می‌دهد.

## کرم چیست؟
کرمها برنامه‌ها مخربی هستند که به‌طور خودگردان و خودکار در شبکه‌ها و از جمله اینترنت منتشر می‌شوند و اغلب آن‌ها از طریق ایمیل منتشر می‌شوند . معمولاً این برنامه‌های مخرب با سوءاستفاده از باگ روی برنامه‌ها شیوع پیدا کنند. کرم‌ها می‌توانند اقدامات پیشگیرانه امنیتی نظیر دیواره‌های آتش و سیستم‌های حفاظتی را نادیده و اهداف خود را دنبال نمایند.[۱]
کرم‌ها و ویروس‌ها در مقایسه با گذشته با سرعت به مراتب بیشتری اقدام به خرابی سیستم‌های آسیب پذیر نموده و در این راستا نسخه هائی از خود را برای اکثر سیستم‌های فوق، توزیع و منتشر می‌نمایند.

## معیارهای مؤثر بر سرعت انتشار کرم‌ها
تست‌های اولیه‌ای بر روی مجموعه‌های ساده شده و با جایگشت‌های تصادفی میزبان‌ها انجام شد، این تست نشان داد که گراف انتشار کرم‌های رایج با سرعت کمی آغاز شده و تا رسیدن به رشد نهایی ادامه می‌یابد و در نهایت به حالت اشباع می‌رسد، همچنین مشاهده می‌شود که سرعت آلوده‌سازی غالباً تا وقتی که به ٪۵۰ حالت اشباع برسد بالا می‌رود[۱] .(شکل ۱) این مشاهدات، نتایجی را برای گسترش سیستم‌های تشخیص و هشدار دهنده در بر دارد .

### تاُثیر تعداد سیستم‌های آلودهٔ اولیه
مذاکرات مختلف در مورد طراحی کرمهای پیشرفته، آلوده کردن قبلی تعداد زیادی از سیستم‌های موجود را به عنوان گامی مؤثر در سرعت بخشیدن به انتشار کرم می‌شمارد . داده‌های به دست آمده نشان می‌دهد که اگر تفاوت زیادی در تعداد سیستم‌هایی که از ابتدا آلوده شده بودند نباشد، تفاوت زیادی در انتشار آن‌ها دیده نمی‌شود . از اآنجایی که آلوده کردن اولیهٔ تعداد زیادی از میزبان‌ها احتمال کشف شدن کرم را بالا می‌برد، این استراتژی چندان جالب به نظر نمی‌رسد. بنابراین می‌توانیم نتیجه بکیریم که حداقل در مورد انتشار به صورت تصادفی هر گونه تلاشی برای آلوده کردن سیستم‌ها قبل از انتشار کرم فقط به هدر دادن وقت است.
یک کرم قادر است به خوبی و با سرعت از یک یا چند سیستم معدود منتشر شود . احتمال شناسایی کرم در زمان آغاز انتشار که سرعت آن کم است چون تعداد سیستم‌های آلوده شده کم می‌باشد و اثرات جانبی انتشار کمتر از آن است که بتواند هشدار دهنده‌ها را فعال سازد .

### کم کردن مهلت‌های زمانی
از آنجاییکه ٪۷۰فضای آدرس بدون استفاده یا برون خط هستند ارتباطاتی که می‌خواهند به این سیستم‌ها متصل شوند بدون جواب خواهند ماند و سوکت قبل از اینکه سیستم دیگری بررسی شود منتظر می‌ماند تا مهلت زمانی ارتباط قبلی پایان پذیرد . حداقل وقتی که کرم از ارتباطات Top استفاده می‌کند این اتفاق می‌افتد . این مهلت‌های زمانی بیشترین فاکتورهای زمانی هستند، زیرا مهلت زمانی بیشتر از زمان انتقال است حتی برای کرمی با حد کد بسیار زیاد که در یک شبکه با سرعت بسیار کم در حال انتشار است، کاملاً قابل مشاهده‌است چرا که کاهش سرعت زمانی تاًثیر بسزایی در افزایش سرعت کرم دارد .
کاهش مهلت زمانی از ۳۰ ثانیه به ۱۵ ثانیه ( در حالی که تعداد میزبان‌های از قبل آلوده شده تغییر نکرده و همان ۵ عدد است ) موجب سرعت بخشیدن به انتشار کرم می‌شود.

### قابلیت پردازش موازی
کاوش در فضای آدرس بیشترین زمان را در انتشار یک کرم مصرف می‌کند . بنابراین بهبود بخشیدن روش‌های جستجو در سرعت بخشیدن به انتشار کرم بسیار مؤثر است. [۲]
بررسی کردن یک قربانی بالقوه، منتظر ماندن برای اتمام یک مهلت زمانی طولانی، زمانی بهینه سازی می‌شود که میزبان‌های همهٔ کرم‌ها قادر باشند چندین ارتباط به صورت هم‌زمان برقرار کنند . همهٔ کرم‌هایی که اخیراً به وجود آمده‌اند از پردازش موازی استفاده می‌کنند .

### ترکیب پردازش موازی و کاهش مهلت زمانی
دو الگوریتم پردازش موازی و کاهش مهلت زمانی که در بین الگوریتم‌هایی که تاکنون توصیف شده‌اند بیشترین کارایی را دارند و به راحتی با هم ترکیب می‌شوند. 
کرم‌هایی که هم‌زمان از دو تکنیک پردازش موازی و کاهش مهلت زمانی استفاده می‌کنند فقط در مدت ۳۰ دقیقه به حالت اشباع می‌رسند .در بهترین حالت انتشار این کرم می‌تواند ۳۰۰۰۰ سیستم را در هر دقیقه آلوده کند .این شبیه سازی ساده هنوز بعضی مسائل مانند محدودیت‌های پهنای باند که می‌تواند از سرعت انتشار کرم بکاهد را در نظر نگرفته‌است.در این شبیه‌سازی هر میزبان بیشتر از ۱۰ جستجوگر ارسال می‌کتد که شرط سنگینی برای بسیاری از شبکه‌ها می‌باشد .

## روشی برای مقابله با انتشار کرم‌ها
به علت قابلیت پخش سریع کرم‌های اینترنتی و خسارات فراوانی که وارد می‌کنند لازم است تا از سیستم‌های مقابلهٔ خودکار ی مانند قرنطینهٔ پویا بر روی شبکه‌های کامپوتری پیاده‌سازی کنیم.[۳]با الهام گرفتن از روشهایی که در دنیای واقعی برای کنترل بیماری‌های مسری استفاده می‌شوند روشی را برای قرنطینهٔ پویا که بر پایهٔ اصل «قبل از اثبات بی‌گناهی فرض را بر گناهکار بودن بگذار» ارائه می‌کنیم. در صورتی‌که یک گره میزبان از شبکه رفتاری مشکوک از خود بروز دهد به وسیلهٔ مسدود کردن ترافیکی که روی پورت مخطی وجود دارد آن را در قرنطینه قرار می‌دهیم و پس از مدت زمان کوتاهی هر چند ان گره به وسیلهٔ بخش امنیتی بازرسی نشده باشد آن را از قرنطینه آزاد می‌کنیم .
مقابلهٔ خودکار با کرم‌هایی که از قبل شناسایی سده‌اند کار دشواری نیست. دیواره‌های آتش و مسیر یاب‌ها می‌توانند محتوای بسته‌ها را با امضای کرم‌های شناسایی شده مطابقت دهند، سپس می‌توان بستهٔ مربوط به کرم را پس از اینکه از طرف مسیر یاب یا دیوارهٔ آتش دارندهٔ امضای کرم شناخته شد از بین برد. [۳]با وجود اینکه هیچ امضای خاصی برای کرم‌های شناخته نشده وجود ندارد با تکیه بر روش‌های یافتن ناهنجاری مبتنی بر رفتار سعی می‌کنیم تا کرم را شناسایی کنیم.چالش بزرگی که امروزه برای مقابلهٔ خودکار وجود دارد این است که روش‌های رایج مبتنی بر رفتار برای یافتن ناهنجاری با نرخی بیش از آنچه که در واقعیت است هشدار خطا می‌دهند. اگر به این روش‌ها تکیه کنیم و بر اساس آن به مسدود کردن کامپوترها و ارتباطاتی که در مورد آن‌ها هشدار داده شده بپردازیم ممکن است خیلی از کامپیوترهای سالم و ارتباطات قانونی نیز بسته شوند و در صورتی که بخواهیم پس از بازرسی این کامپوترها و ارتباطات توسط بخش امنیتی و اطمینان از سالم بودن آن‌ها را آزاد کنیم، بسیاری از میزبان‌های سالم به علت بازرسی دستی و بسیار کند برای مدت طولانی مسدود می‌شوند.[۳] پس ما چگونه می‌توانیم با استفاده از سیستم‌های کشف ناهنجاری ناقص یک سیستم مقابلهٔ خودکار علیه کرم‌هایی که سرعت انتشار بالایی دارند بسازیم؟ با الهام گرفتن از روشهایی که در دنیای واقعی برای کنترل بیماری‌های مسری استفاده می‌شوند روشی را برای قرنطینهٔ پویا که بر پایهٔ اصل «قبل از اثبات بی‌گناهی فرض را بر گناهکار بودن بگذار» ارائه می‌دهیم. این روش قرنطینهٔ پویا می‌تواند فشار منفی ناشی از هشدارهای زیادی که سیستم‌های تشخیص دهندهٔ ناهنجاری کرم دارند را آرامتر کند.[۳] ما هر میزبانی زا که رفتار آن مشکوک باشد را قرنطینه کرده و پس از مدت زمان کوتاهی آن را به صورت خودکار آزاد می‌کنیم. اگر برنامهٔ تشخیص ناهنجاری کرم که ما در سیستم استفاده کردیم بتواند مشخص کند که کدام پورت فعالیت‌های مشکوک دارد آنگاه قرنطینه به این معنی است که ما فقط ترافیک مربوط به آن پورت را مسدود می‌کنیم بدون اینکه به اطلاعات پورت‌های دیگر کاری داشته باشیم. هرگاه در رابطه با یکی از میزبان‌ها هشدار داده شد بخش امنیتی سیستم به سرعت به بازرسی آن می‌پردازد.برای اینکه از درگیر کردن شدید فعالیت‌های نرمال بپزهیزیم، پس از مدت کوتاهی اگر چه میزبان هنوز توسط بخش امنینی بازرسی نشده باشد آنر ا از قرنطینه آزاد می‌کنیم. با این روش میزبانی که به اشتباه قرنطینه شده ( سیستم به شتباه در مورد آن هشدار داده) خیلی معطل نمی‌شود.در اینجا بحث ما در مورد نحوهٔ بهبود دادن سیستم‌های کشف ناهنجاری نیست . دوش ناهنجاری پویا که ارئه می‌دهیم می‌تواند بر روی هر سیستم ناهنجاری کرم ساخته شود. فرض می‌شود که سیستم‌های تشخیص ناهنجاری کرم هر کدام دارای مثبت کاذب و منفی کاذب خاصی هستند. به عنوان اولین قدم در این مسیر در اینجا موردی را بررسی می‌کنیم که زمان قرنطینه و آستانهٔ مربوط به تشخیص ناهنجاری کرم ثابت هستند. ما انتشار یک کرم را تحت این روش قرنطینهٔ پویا به صورت ریاضی آنالیز می‌کنیم و مدل‌های کرم را که از دو مدل سرایت قدیمی اتخاذ شده را ارائه می‌کنیم.

### مدل‌های قدیمی انتشار کرمها
ویروس‌ها و کرم‌های کامپیوتری در رفتارهایی نظیر خود همتاسازی و انتشار به ویروس‌های موجود در طبیعت شباهت دارند. بنابراین تکنیک‌های ریاضی که برای مطالعه بر روی بیماری‌های مسری ایجاد شده بود می‌تواند برای استفاده در مطالعه بر روی ویروس‌های کامپیوتری و انتشار کرم‌ها تطبیق داده شود.
در حوزهٔ علم امراض مسری هر دو مدل غیر قطعی و قطعی برای مدل کردن نحوهٔ انتشار بیماری‌های مسری وجود دارد. [۸] مدل‌های غیر قطعی برای سیستم‌های با مقیاس کوچک که حرکات ویروس‌ها در آن ساده‌است مناسب است. مدل‌های قطعی برای سیستم‌های با مقیاس بزرگ مناسب هستند. [۸] وقتی که ما چگونگی انتشار یک کرم اینترنتی را مدل می‌کنیم، در واقع یک شبکهٔ بسیار بزرگ با هزاران کامپیوتر را در نظر می‌گیریم. بنابراین ما در این جا فقط مدل قطعی را در نظر می‌گیریم.در این بخش ابتدا دو مدل قدیمی مسری را معرفی می‌کنیم که بطور وسیعی توسط بسیاری از محققان برای برای مطالعهٔ نحوهٔ انتشار کرم‌های اینتر نتی مورد استفاده واقع شد. [۱۳٬۱۲٬۱۱٬۱۰٬۹] 
در مدل‌های مربوط به علم امراض مسری میزبان‌هایی که برای آن مرض ارزشمند به حساب می‌آیند با عنوان میزبان‌های مستعد به حساب می‌آیند. میزبان‌هایی که آلوده شده‌اند و می‌توانند دیگران را هم آلوده سازند میزبان‌های آلوده شده یا مسری نامیده می‌شوند.میزبان ایی که مصون هستند یا مرده‌اند و دیگر نمی‌توانند آلوده شوند میزبان‌های از بین رفته نامیده می‌شوند. در اینجا نیز ما از همین نامها برای مدل کردن کرم‌های کامپیوتر استفاده می‌کنیم.در آغاز انتشار کرم سیستمی که مورد نظر است فقط از میزبان‌هایی که مستعد آلودگی هستند یا آلوده شده‌اند تشکیل شده‌است. به بیان دیگر ما از دیگر میزبان‌ها که ارتباطی با کرم ندارند و بر انتشار کرم‌ها بی تأثیرند چشم پوشی می‌کنیم.

#### مدل سرایت ساده
مدل مسری ساده فرض می‌کند که هر میزبان در یکی از دو حالت مستعد آلوده شدن و آلوده شده قرار می‌گیرد. علاوه بر این این مدل می‌پندارد که وقتی یک میزبان بو سیلهٔ یک ویروس آلوده شد برای همیشه در حالت آلوده شده باقی می‌ماند. بنابراین یک میزبان فقط یک نوع انتقال حالت می‌تواند داشته باشد : از حالت «مستعد برای آلوده شدن» به حالت «آلوده شده». [۸] نماد I(T) را به عنوان میزبان‌های آلوده شده در لحظه یt ، N را به عنوان تعداد کل میزبان‌های موجود در سیستم و S(T) = N-I(t) را به عنوان تعداد میزبان‌های مستعد آلوده شدن در لحظهٔ t در نظر بگیرید.
این مدل فرض می‌کند که سیستم همگن است یعنی هر کدام از میزبان‌ها شانس یکسانی برای تماس با دیگر میزبان‌ها دارد. بنابراین تعداد تماس‌ها بین میزبان‌های آلوده شده و میزبان‌های مستعد آلوده شدن متناسب است با S(t)I(t) .در نتیجه مدل مسری قدیمی و ساده برای تعداد محدود برابر است با :
dI(t)/dt = βI(t)S(t) = βI(t)[N − I(t)] (۱)
که β در آن سرعت سرایت کردن بین از یک میزبان به میزبان دیگر است. [۸] در t=۰، میزبان‌هایی که در مجموعهٔ (I(۰ قرار می‌گیرند آلوده به کرم هستند و بقیهٔ میزبان‌ها یعنی (S(۰)= N-I(۰ مستعد برای آلوده شدن هستند. 
α = βN (۲ 
را به عنوان سرعت آلوده شدن به کرم‌ها در نظر می‌گیریم. این متوسط تعداد سرکشی‌هایی است که یک میزبان آلوده می‌تواند به کل N میزبان موجود در یک واحد زمانی داشته باشد. ( تعداد سرکشی‌هایی که یک میزبان آلوده می‌تواند در اینترنت داشته باشد بسیار بیشتر از این مقدار است. )

#### مدل سرایت عمومی : Kermack-Mckendrick Epidemic Model
مدل Kermack-Mckendrick فرایند حذف در رابطه با میزبان‌های آلوده شده را در نظر می‌گیرد. در طول دورهٔ سرایت یک آلودگی مسری، بعضی از میزبان‌ها بهبود می‌یابند یا می‌میرند و در هر دو حالت دیگر در مقابل آن آلودگی مصون هستند. بنابراین در این مدل هر میزبان می‌تواند در سه حالت قرار گیرد : “مستعد برای آلودگی” ،” آلوده شده” و “حذف شده ”. یک میزبان هم می‌تواند انتقالی از حالت مستعد برای آلوده شدن به حالت آلوده شده و سپس به حالت حذف شده، داشته باشد و هم می‌تواند برای همیشه در حالت مستعد برای آلودگی باقی بماند.
U(t) را به عنوان تعداد میزبان‌های حذف شده از کل میزبان‌هایی که در گذشته در زمان t آلوده شده بودند در نظر بگیرید. بر اساس مدل سرایتی ساده (۱) مدل Kermack-Mckendrick به صورت زیر است. 
dI(t)/dt = βI(t)S(t) − γI(t) (۳
dU(t)/dt = γI(t)
N = I(t) + U(t) + S(t)
که در آن γ سرعت حذف شدن میزبان‌های الوده‌است. 
ρ را به صورت مقابل تعریف می‌کنیم :
(۴) ρ = γ / β 
نتیجهٔ مهمی که از مدل Kermack-Mckendrick بدست می‌آید تئوری آستانهٔ سرایت است : شیوع اصلی و کلان فقط و فقط هنگامی رخ می‌دهد که تعداد اولیهٔ میزبان‌های مستعد ρ S(۰)> باشد. به همین دلیل ما ρ را به عنوان آستانهٔ سرایت در نظر می‌گیریم.درک این تئوری کار سختی نیست، می‌توان از فرمول (۳) نتیجه گرفت که 
dI(t)/dt ۰
اگر و فقط اگر (ρ <S(۰.

### روش قرنطینهٔ پویا
طی خودکارسازی روش‌های مقابله با کرم‌ها، وقتی تشخیص داده می‌شود که یک میزبان آلوده شده می‌توان سریعاً آن را از بقیه جدا کرد و در قرنطینه قرار داد. این کار توسط برنامهٔ تشخیص کرم‌ها در چند ثانیه یا حتی چند میلی ثانیه انجام می‌شود.در این راه عملیات دفاعی می‌تواند به سرعت آلوده‌سازی سریع ویروس‌ها برسد و علیه انتشار کرم‌ها عمل نماید. برای کرم‌های ناشناخته تنها راهی که داریم این است که از روش‌های تشخیص ناهنجاری برای مشخص کردن آلوده یا سالم بودن یک میزبان استفاده کنیم.روش‌های تشخیص ناهنجاری همواره ممکن است که به اشتباه هشدار دهند. اگر نرخ هشدارهای اشتباهی که سیستم تشخیص ناهنجاری به ما می‌دهد به نسبت زیاد باشد و اصرار داشته باشیم که هر کدام از میزبان‌های مشکوکی که در مورد آن‌ها هشدار داده شده به صورت دستی توسط بخش امنیتی بازرسی شوند و بعد از آن از قرنطینه آزاد شود، آنگاه بسیاری از میزبان‌های سالم به مدت طولانی در قرنطینه گرفتار می‌شوند. این نوع قرنطینه به شدت مزاحم کار فعالیت‌های نرمال است و این دلیل آن است که مردم برای پیاده‌سازی سیستمی که اثرات کرم‌ها را کاهش دهد و با آن مقابله کند تردید به خود راه می‌دهند. [۳]

### روش قرنطینهٔ پویا با پیش‌فرض آلوده بودن میزبان‌ها
به علت این که کرم‌ها در زمینهٔ انتشار مانند بیما ری‌های مسری در دنیای واقعی عمل می‌کنند. بنابراین ما می‌توانیم از تجربیاتی که برای کنترل بیماری‌های مسری در طبیعت بدست آمده برای کنترل کرم‌های کامپیوتری استفاده کنیم. برای بیماری‌هایی که بسیار مسری هستند و به راحتی تشخیص داده نمی‌شوند مانند بیماری سارس، مردم قرنطینهٔ شدیدتری را در نظر می‌گیرند. اگر کسی رفتاری از خود نشان دهد که علائم آن بیماری را در بر بگیرد باید به سرعت قرنطینه شود. در آن صورت شخص تا وقتی که دورهٔ نهفتگی بیماری به پاین نرسیده و تا وقتی که علائم دیگری از بیماری در شخص دیده می‌شود در قرنطینه باقی می‌ماند.اگر بیماری از خطر سرایت بییشتر برخوردار باشد یا اینکه دامنهٔ سرایت بیماری بزرگتر باشد قانون شدیدتری در رابطه با قرنطینه کردن افراد اتخاذ می‌شود. چنین قرنطینه‌ای بر زندگی طبیعی بسیاری از افراد سالم تأثیر می‌گذارد و هزینهٔ زیادی بر جامعه تحمیل می‌کند. با این حال این تنها راه مؤثری است که می‌توان در مرحلهٔ اول بیماری در مقابل بیماری‌هایی که خطرناکند و به خوبی قابل تشخیص نیستند پیشه کرد. به عبارت دیگر در مقابله با بیماری‌های مسری در دنیای واقعی مردم بر طبق گفتهٔ «قبل از اثبات بی گناهی فرض را بر گناهکار بودن بگذار» واکنش نشان می‌دهند.
در اینجا ما روش قرنطینهٔ پویایی را مبتنی بر همین اصل بیان می‌کنیم : هر کدام از میزبان‌های سیستم که سیستم تشخیص ناهنجاری کرم برای آن‌ها اعلام هشدار کرده می‌توانند جداگانه در قرنطینه قرار گیرند؛ قرنطینهٔ روی میزبان‌های مختلفی که در مورد آن‌ها هشدار داده شده پس از زمان قرنطینهٔ T آزاد می‌شوند، حتی اگر این میزبان‌ها توسط بخش امنیتی بازرسی نشده‌اند. در صورتی که دوباره پس از گذشت زمانی سیستم تشخیص ناهنجاری در مورد ان هشدار داد می‌توان دوباره آن را در قرنطینه قرار داد. 
اگر برنامهٔ تشخیص ناهنجاری کرم در سیستم قرنطینهٔ پویا بتواند تشخیص دهد که کدام پورت سرویس فعالیت‌های مشکوک از خود نشان می‌دهد، قرنطینه فقط بر روی همان پورت صورت می‌گیرد و فقط ترافیک موجود بر روی همان پورت مسدود می‌شود و در ارتباطات سالم دیگر پورت‌ها دخالتی نمی‌کنیم.[۳]
در پیاده‌سازی واقعی بخش امنیتی بلافاصله میزبان‌های قرنطینه شده را بازرسی می‌کند. ولی در مورد کرمهایی که به سرعت پخش می‌شوند به علت واکنش کند و دستی بشر و محدودیت منابع آنها، بخش امنیتی نمی‌تواند سرعت عملکرد خود را با تعداد رو به افزایش میزبانهایی که در مورد آن‌ها هشدار داده شده هماهنگ سازد. بنابراین برای اینکه مزاحمت زیادی برای فعالیت‌های سالم ایجاد نشود، پس از گذشت زمان معینی اگر چه میزبان توسط بخش امنیتی بازرسی نشده باشد، به طو خودکار از قرنطینه آزاد می‌شود.
این روش قرنطینهٔ پویا دو مزیت دارد : 
-	میزبانی که سالم بوده ولی به اشتباه در قرنطینه قرار گرفته، پس از مدت کوتاهی آزاد می‌شود، بنابراین در کار فعالیت‌های سالم آن مداخلهٔ زیادی پیش نمی‌آید. 
-	با استفاده از این روش هشدارهای بیشتری را نسبت به حالت قرنطینهٔ دائمی می‌توانیم تحمل کنیم بنابراین می‌توانیم برنامهٔ تشخیص ناهنجاری کرم را نسبت به فعالیت‌های کرم‌ها حساس تر کنیم.بنابراین ما می‌توانیم تعداد بیشتری از میزبان‌های آلوده شده زودتر از حالت قبل را پیداکرده و قرنطینه کنیم . 
روش قرنطینهٔ پویا در حالتی که کرمی بسیار زیرکانه وارد سیستم شده و شروع به انتشار کند بسیار مؤثرتر است. دلیل آن این است که در صورت بروز چنین مشکلی کرم مورد نظر فقط با نرخ هشدار زیاد قابل تشخیص دادن است.

## نتیجه‌گیری
با توجه به مطالب بیان شده در رابطه با انتشار کرم‌ها، می‌توان از کرم‌های کامپیوتری به عنوان برنامه‌های خطرناکی یاد کرد که برنامه‌نویسان آن همواره یک قدم جلوتر از مبارزه‌کنندگان با کرم‌ها هستند. دلیل این موضوع آن است که کسانی که برنامه‌های مخرب را می‌نویسند به دنبال خطایی در برنامه‌ها می‌گردند تا از آن به عنوان نقطهٔ نفوذ به داخل سیستم‌ها استفاده کنند .
روشی که در این مقاله برای مقابله با انتشار کرم‌ها استفاده شده، باعث کاهش سرعت انتشار کرم شده و زمان لازم را برای واکنش انسان‌ها را به دست می‌دهد. همچنین با استفاده از این روش هشدارهای بیشتری را نسبت به حالت قرنطینهٔ دائمی می‌توانیم تحمل کنیم بنابراین می‌توانیم برنامهٔ تشخیص ناهنجاری کرم را نسبت به فعالیت‌های کرم‌ها حساس تر کنیم و در نتیجه تعداد بیشتری از میزبان‌های آلوده شده را پیدا کرده و آن‌ها را قرنطینه کنیم. روش قرنطینهٔ پویا در حالتی که کرمی بسیار زیرکانه وارد سیستم شده و شروع به انتشار کند بسیار مؤثرتر است. دلیل آن این است که در صورت بروز چنین مشکلی کرم مورد نظر فقط با نرخ هشدار زیاد قابل تشخیص دادن است و ما در این روش می‌توانیم چنین کاری را انجام دهیم. 
در هر صورت باید بگوییم تاکنون روشی به وجود نیامده که کاملاً بتواند از حضور و انتشار کرم‌ها جلوگیری کند.

## منابع

* دانشکده مهندسی کامپوتر دانشگاه صنعتی امیر کبیر، تهران، ایران- 
زینب شریفی- 
استاد راهنما: دکتر محمد کاظم اکبری- 
[۱] Tom Vogt, Simulating and optimising worm propagation algorithms, ۲۰۰۴ .

[۲] https://web.archive.org/web/20031011111426/http://www.sans.org/rr/paper.php?id=88.

[۳] Cliff Changchun Zou , Weibo Gong, Don Towsley, Worm Propagation Modeling and Analysis under Dynamic Quarantine Defense , Univ. Massachusetts , ۲۰۰۴.

[۴] D. Moore, C. Shannon, and J. Brown. Code-Red: acase study on the spread and victims of an Internet
Worm. In Proc. ACM/USENIX Internet MeasurementWorkshop, France, November, ۲۰۰۲.
        
[۵] CAIDA. Dynamic Graphs of the Nimda worm.http://www.caida.org/dynamic/analysis/security/nimda

[۶] USA Today. The cost of ’Code Red’: $۱٫۲ billion.http://usatoday.com/tech/news/2001-08-01-code- redcosts.htm.

[۷] D. Moore, V. Paxson, S. Savage, C. Shannon, S.Staniford, and N. Weaver. Inside the Slammer Worm.
IEEE Security and Privacy, ۱(۴):۳۳-۳۹, July ۲۰۰۳.

[۸] D.J. Daley and J. Gani. Epidemic Modelling: An Introduction. Cambridge University Press, ۱۹۹۹.

[۹] J. O. Kephart and S. R. White. Measuring and Modeling Computer Virus Prevalence. In Proceedings
of the IEEE Symposimum on Security and Privacy, ۱۹۹۳.

[۱۰] D. Moore, C. Shannon, G. M. Voelker, and S. Savage.Internet Quarantine: Requirements for Containing
Self-Propagating Code. In IEEE INFOCOM, ۲۰۰۳.

[۱۱] S. Staniford, V. Paxson, and N. Weaver. How to Own the Internet in Your Spare Time. In ۱۱th Usenix
Security Symposium, San Francisco, August, ۲۰۰۲.

[۱۲] C.C. Zou, W. Gong, and D. Towsley. Code Red Worm Propagation Modeling and Analysis. In ۹th ACM
Symposium on Computer and Communication Security, pages ۱۳۸-۱۴۷, Washington DC, ۲۰۰۲.

[۱۳] C.C. Zou, L. Gao, W. Gong, and D. Towsley. Monitoring and Early Warning for Internet Worms. In
۱۰th ACM Symposium on Computer and Communication Security, Washington DC, ۲۰۰۳.

رده:شبکه‌های رایانه‌ای