پرشین هک از مشورت -شما مدير شبكه يك سازمان هستيد و با خيال راحت پشت سيستم خودتان نشسته و مشغول وبگردي (!!!) هستيد، در همين حال نفوذگران از طريق درپشتي، كانالهاي مخفي و ... در حال رفت و آمد به شبكه شما هستند بدون اين كه روح شما از اين موضوع خبردار باشد يا حتي به اين موضوع شك كنيد.
يكي از مهم ترين نكاتي كه شما به عنوان مدير شبكه يك سازمان بايد مدنظر داشته باشيد اين است كه چگونه مي توان فهميد ماشيني مورد نفوذ قرار گرفته است.
روشهاي زيادي براي تشخيص اين كه ماشيني مورد نفوذ قرار گرفته است وجود دارد ولي متاسفانه فقط تعداد كمي از اين روشها داراي قابليت اطمينان در حد قابل قبول ميباشند.
در اين نوشتار قصد داريم نگاهي به قابليت اطمينان روشهاي كشف ماشينهاي تسخير شده در سازمان بيندازيم. در واقع نكته كليدي و مهم در اين جا قابليت اطمينان است.
ابتدا ببينيم به چه ماشيني تسخير شده ميگويند. يك ماشين، تسخير شده گفته ميشود اگر:
1- به طور موفقيت آميز توسط نفوذگر و با استفاده از كدهاي مخرب تحت كنترل درآمده و مورد استفاده قرار گيرد.
2- يك درپشتي يا ديگر ابزارهاي مخرب بدون اطلاع صاحب ماشين، بر روي آن اجرا شود.
3- ماشين بدون اطلاع صاحب آن بهگونهاي پيكربندي شود كه به افراد غيرمجاز اجازه دسترسي بدهد.
برخي از مواردي كه ممكن است در دنياي واقعي رخ دهد به شرح زير است:
1- يك سيستم كه توسط يك كرم (worm) آلوده شده و سپس شروع به ارسال مقادير زيادي ترافيك مخرب به بيرون ميكند و سعي ميكند آلودگي را در سازمان و خارج از آن گسترش دهد.
2- امتيازات دسترسي سيستم به يك سرور FTP بدون حفاظ مورد سوءاستفاده قرار گرفته وسپس توسط نفوذگران براي ذخيره كردن و به اشتراك گذاشتن تصاوير پورنو، نرمافزارهاي غيرمجاز و ... استفاده شود.
3- يك سرور كه توسط نفوذگران تسخير شده و روي آن rootkit نصب شده است. براي ايجاد كانالهاي پنهان بيشتر به منظور دسترسي راحتتر نفوذگر، بر روي چندين سيستم، تروجان نصب شده است. همچنين يك IRC bot نصب شده است كه از يك كانال مشخص براي اجراي دستورات استفاده مي شود.
ممكن است با خواندن مثالهاي فوق، فكر كنيد كه "خوب، در اين موارد ميدانم چگونه سيستمهاي تسخير شده را تشخيص دهم" ولي ما مساله را در حالت كلي بررسي خواهيم كرد نه براي چند مثال خاص.
ابتدا نگاهي مياندازيم به تكنولوژيهاي موجود براي تشخيص فعاليت نفوذگران. سيستمهاي تشخيص حمله (كه از آنها به عنوان سيستمهاي تشخيص نيز ياد ميشود) وجود دارد كه جستجوها و تلاشها براي حملات گوناگون را تشخيص ميدهد. سپس سيستمهاي تشخيص نفوذ قرار دارند كه روشهاي نفوذ شناخته شده مورد استفاده نفوذگران را تشخيص ميدهد. البته در اينجا ما در مورد روش هاي قابل اطمينان تشخيص ماشين هاي تسخير شده صحبت ميكنيم: تشخيص ماشينهايي كه مورد حمله قرار گرفتهاند، مورد نفوذ قرار گرفتهاند و اكنون توسط نفوذگران يا دستياران خودكارشان (aids) استفاده ميشوند.
همانگونه كه اشاره شد، قابليت اطمينان تشخيص مهم است. هشدارهايي كه توليد ميكنيم برخلاف سيستمهاي تشخيص نفوذ بر مبناي شبكه كاملا كاربردي و عملياتي است. به عنوان مثال به جاي هشدار "به نظر ميرسد كسي در حال حمله به سيستم شما است. اگر تمايل داريد با دقت بيشتري آن را بررسي كنيد." از هشدار "ماشين شما مورد نفوذ قرار گرفته و در حال استفاده توسط نفوذگران است، به آنجا برويد و اين كارها را انجام دهيد"
چگونه ميتوانيم تشخيص دهيم كه ماشيني واقعا تسخير شده است؟
پاسخ اين سوال تا حد زيادي به اين كه چه اطلاعات و ابزارهايي با توجه به موقعيت كاربر در دسترس است، بستگي دارد. اين كه فقط توسط اطلاعات مربوط به فايروال بخواهيم ماشين تسخير شده را تشخيص دهيم يك چيز است و اين كه دسترسي كامل به سختافزار، سيستمعامل و برنامههاي كاربردي ماشين داشته باشيم مساله اي كاملا متفاوت است.
بديهي است تحقق بخشيدن به اين اهداف نيازمند داشتن افراد متخصص با مهارت computer forensics در سازمان و صرف زمان كافي است.
براي پيشزمينه به طور خلاصه برخي فعاليتهايي كه توسط نفوذگران روي سيستمهاي تسخير شده انجام ميشود را بررسي ميكنيم. البته واضح است كه اين فعاليتها توسط نفوذگران بيروني است نه نفوذگران درون سازمان.
1- يك daemon درپشتي توسط نفوذگر روي يك درگاه با شماره بالا به كار گرفته ميشود يا يك daemon موجود به تروجان آلوده ميشود. اين مورد در اغلب حالتهاي تسخير شده مشاهده ميشود.
2- يك انتخاب مرسوم نفوذگران، نصب يك IRC bot يا bouncer است. چندين كانال IRC توسط يك گروه خاص براي ارتباط با سروري كه تسخير شده اختصاص مييابد. اين مورد نيز در خيلي از حالت ها مشاهده ميشود.
3- در حال حاضر براي انجام حملات DDoS و DoS، معمولا از تعداد زيادي ماشين تسخير شده براي ضربه زدن به مقصد استفاده مي شود.
4- بسياري از نفوذگران از ماشين هاي تسخير شده براي پويش آسيب پذيري هاي ديگر سيستم ها به طور گسترده استفاده ميكنند. پويشگرهاي استفاده شده قادر به كشف آسيب پذيري ها و نفوذ به تعداد زيادي سيستم در زمان كوتاهي ميباشند.
5- استفاده از يك ماشين تسخير شده، براي يافتن يك ابزار يا نرمافزار غيرمجاز، فيلم و ... خيلي معمول است. روي سرورهاي با پهناي باند بالا، افراد قادرند در هر زماني با سرعتي در حد گيگابايت download و upload كنند. قابل توجه اين كه اغلب لازم نيست كسي براي ذخيره دادهها، سروري را exploit كند زيرا به اندازه كافي سرورهايي وجود دارند كه به علت عدم پيكربندي صحيح اجازه دسترسي كامل را ميدهد.
6- بهدستآوردن مقدار زيادي پول با دزديدن اطلاعات كارتهاي اعتباري يكي ديگر از فعاليتهايي است كه نفوذگران انجام ميدهند و در سال هاي اخير رشد فزاينده اي داشته است.
7- يكي ديگر از فعاليتهاي پولساز فرستادن هرزنامه يا واگذاركردن ماشين هاي تسخيرشده به ارسال كنندگان هرزنامه ها در ازاي دريافت پول است.
8- يكي ديگر از اين نوع فعاليتها، استفاده از ماشين تسخير شده براي حملات phishing است. نفوذگر يك سايت بانك جعلي (مشابه سايت اصلي) ميسازد و با فرستادن email اي كه ظاهرا از طرف بانك فرستاده شده است، كاربر را وادار به وارد كردن اطلاعات دلخواه خود مي كند.
در جدول زير برخي روشهاي تشخيص ماشين هاي تسخير شده، به همراه منابع مختلف در دسترس (انساني/ تكنولوژيك) را مشاهده ميكنيد
با بررسي جدول فوق به يك نتيجه جالب ميرسيم. حتي اگر اعلام شود كه سيستم شما داراي كدهاي مخرب است، ممكن است همه چيز سر جايش باشد و واقعا هيچ خطري وجود نداشته باشد. دليل آن خيلي ساده است: هشدارهاي نادرست (و به طور خاص نوع مشهورتر آن يعني false positiveها).
در جدول زير الگوهاي پيچيدهتري را بررسي مي كنيم
اون پایینش که یک کم نخورده نوشته Cleaned Or Stopped
توجه داشته باشيد كه حتي آنتي ويروس هم ممكن است داراي هشدارهاي false positive باشد. بنابراين حتي اگر آنتي ويروس هشدار داد كه سيستم شما داراي درپشتي يا تروجان است ممكن است يك هشدار نادرست باشد.
دقت كنيد كه بسياري از موارد فوق با ارتباط دادن داده هاي NIDS با داده هاي ديگر (مثل داده هاي ديواره آتش، داده هاي ميزبان، يا داده هاي يك NIDS ديگر) تسهيل مي شود و از طريق خودكار كردن بر مبناي rule اين ارتباط مي توان نتيجه گرفت كه ماشين موردنظر تسخير شده است. هم چنين تكنولوژي ارتباط مي تواند با در نظر گرفتن ديگر فعاليت هاي مرتبط كه در زمان حمله رخ مي دهد، فرايند تحقيق و بررسي را خودكار كند. در نتيجه با اين روش مي توان با قابليت اطمينان بيشتري سيستم هاي تسخير شده را تشخيص دهيم در مقايسه با زماني كه فقط از داده هاي يك NIDS استفاده مي كنيم. حتي اگر يك موتور ارتباط خوب وجود نداشته باشد، هنوز هم تحليل گر مي تواند اين مراحل را به طور دستي انجام دهد هر چند اين كار بلادرنگ نباشد.
حال به اين مساله مي پردازيم كه چگونه روش هاي فوق را در محيط عملياتي به كار گيريم. روش ايدهآل به كارگرفتن راهنماييهاي فوق به طور خودكار كه شامل استفاده از رخدادها، هشدارها و logهاي ابزارهاي امنيتي مختلف نصب شده و سپس اعمال قوانين مشخص به اين داده ها (شامل داده هايي كه از قبل روي سيستم ذخيره شده اند و داده هاي بلادرنگ)
اگر سازمان شما بودجه چنداني براي امنيت ندارد مي توانيد خودتان با استفاده از ابزارهاي متن باز اين كار را انجام دهيد. روش هاي چندي براي كشف ماشين هاي تسخير شده وجود دارد كه يك ابزار سودمند براي مقابله با نفوذگران با سطوح مختلف مهارت فراهم مي كند.
بر خلاف آن چه كه اكثر افراد فكر مي كنند، براي انجام اين كار هميشه نياز به سرويس هاي پي جويي گران نيست و مي توان با اطلاعات جمع آوري شده از شبكه، logهاي سيستم، ... اين كار را انجام داد.
Good Luck
