مقالات ترجمه شده دانشگاهی ایران

خطرات سیستماتیک بر علیه داده های کرنل : تکنیکهای حمله و دفاع

خطرات سیستماتیک بر علیه داده های کرنل : تکنیکهای حمله و دفاع

خطرات سیستماتیک بر علیه داده های کرنل : تکنیکهای حمله و دفاع – ایران ترجمه – Irantarjomeh

 

مقالات ترجمه شده آماده گروه کامپیوتر
مقالات ترجمه شده آماده کل گروه های دانشگاهی

مقالات رایگان

مطالعه ۲۰ الی ۱۰۰% رایگان مقالات ترجمه شده

۱- قابلیت مطالعه رایگان ۲۰ الی ۱۰۰ درصدی مقالات ۲- قابلیت سفارش فایل های این ترجمه با قیمتی مناسب مشتمل بر ۳ فایل: pdf انگیسی و فارسی مقاله همراه با msword فارسی -- تذکر: برای استفاده گسترده تر کاربران گرامی از مقالات آماده ترجمه شده، قیمت خرید این مقالات بسیار کمتر از قیمت سفارش ترجمه می باشد.  

چگونگی سفارش

الف – پرداخت وجه بحساب وب سایت ایران ترجمه (شماره حساب) ب- اطلاع جزئیات به ایمیل irantarjomeh@gmail.com شامل: مبلغ پرداختی – شماره فیش / ارجاع و تاریخ پرداخت – مقاله مورد نظر -- مقالات آماده سفارش داده شده عرفا در زمان اندک یا حداکثر ظرف مدت چند ساعت به ایمیل شما ارسال خواهند شد. در صورت نیاز فوری از طریق اس ام اس اطلاع دهید.

قیمت

قیمت این مقاله: ۲۸۰۰۰ تومان (ایران ترجمه - irantarjomeh)

توضیح

بخش زیادی از این مقاله بصورت رایگان ذیلا قابل مطالعه می باشد.

مقالات ترجمه شده کامپیوتر - ایران ترجمه - irantarjomeh

www.irantarjomeh.com

خطرات سیستماتیک بر علیه داده های کرنل : تکنیکهای حمله و دفاع

شماره      
۱۰۱
کد مقاله
COM101
مترجم
گروه مترجمین ایران ترجمه – irantarjomeh
نام فارسی
مشخص نمودن خطرات سیستماتیک بر علیه داده های کرنل : تکنیکهای حمله و دفاع
نام انگلیسی
Identifying Systematic Threats to Kernel Data: Attacks and Defense Techniques
تعداد صفحه به فارسی
۷۰
تعداد صفحه به انگلیسی
۲۵
کلمات کلیدی به فارسی
خطرات سیستماتیک،  داده های کرنل، تکنیک، حمله، دفاع، فایروال، روتکیت
کلمات کلیدی به انگلیسی
Systematic Threats, Kernel  Data, Techniques, Attack, Defense, Firewall, Rootkit
مرجع به فارسی
دانشگاه راگرز، نیوجرسی، ایالات متحده
مرجع به انگلیسی
Rutgers University New Jersey (USA)
سال
۲۰۱۰
کشور
ایالات متحده

خطرات سیستماتیک بر علیه داده های کرنل : تکنیکهای حمله و دفاع

 

مشخص نمودن خطرات سیستماتیک بر علیه داده های کرنل
تکنیکهای حمله و دفاع
چکیده
در این مقاله کلاس جدیدی از حملات همراه با یک فناوری اتوماتیک جدید جهت تشخیص آنها عرضه می‌شود. این حملات به طور صریح معرف رفتاری مخفی نمی باشند اما در عین حال از نقطه نظر طراحی حالت مخفیانه و نهان شده را حفظ می‌کنند. آنها متکی به برنامه های فضای کاربر جهت  فراهم آوردن عملیات مغرضانه خود نمی باشند، بلکه روش آنها مشابه با رفتاری است که سیستم به سادگی  با داده های کرنل دارد. این حملات به عنوان نمادی برای یک مشکل سیستماتیک بزرگتر در داخل کرنل به شمار می آیند، بنابراین نیازمند تجزیه وتحلیل جامع آن می‌باشد. تکنیک تشخیص روتکیت (rootkit) جدید ما بر مبنای درک اتوماتیک تغییر ناپذیری ساختار داده می باشد که به طور اتوماتیک قابلیت تشخیص حملات مخفیانه پیشرفته بر علیه کرنل را خواهد داشت.
 
مقدمه
جامعیت کرنل سیستم عامل برای امنیت کلیه برنامه های کاربردی و داده ها بر روی سیستمهای کامپیوتری حیاتی تلقی می شود. تداخلات پنهانی در کرنل یا هسته سیستم عامل به طور متعارف به وسیله برنامه های مخربی صورت می گیرند که به طور شایع تحت عنوان روتکیت ها خوانده می‌شوند. عبارت rootkit به طور اولیه برای رجوع به تولکیت یا جعبه ابزار توسعه یافته به وسیله مهاجمین به کار گرفته شد که کمک می نمودند تا حضور این مهاجمین در سیستم به صورت مخفیانه باقی ماند. برنامه روتکیت غالباً به هنگامی نصب می گردد که مهاجم کنترل سطح ریشه را به دست آورده  باشد و سعی نموده باشد تا آبجکت های مغرضانه خود، نظیر فایل ها، پردازش ها و اتصالات شبکه، را مخفی نگه دارد.
سیستمی که بوسیله روتکیت آلوده شده باشد قابلیت بهره برداری مخفیانه و از راه دور را به فرد یا افراد مهاجم اعطا می‌نماید، نظیرفلترینگ اطلاعات حساس یا درگیری سیستم در فعالیت های مغرضانه و مخربانه و کلاهبرداری بدون اطلاع کاربر یا با اجازه وی. عدم وجود ابزارهای تشخیص مناسب بدین سیستم ها اجازه خواهند داد تا به صورت مخفیانه عملیات سیستمی را در یک محدوده زمانی نا مشخص در اختیار مهاجمین قرار دهند. مطالعات اخیر معرف تکوین پدیده ای در تعدادی از بد افزارها می باشد که از تکنولوژی نهان کاری استفاده نموده اند، پدیده‌ای که غالباً از روتکیت استفاده شده است. به طور مثال، گزارش منتشر شده  بوسیله آزمایشگاه‌های شرکت مک‌آفی (MacAfee, 2006)، مشخص می سازد که یک افزایش ۶۰۰ درصدی در تعدادی روتکیت‌ها در خلال یک دوره سه ساله از ۲۰۰۴ الی ۲۰۰۶ بوقوع پیوسته است. در حقیقت، چنین روندی به صورت روزمره تداوم داشته است. گزارش فوروم اینترنتی antiroothit.com مشخص کننده کشف بیش از ۲۰۰ روتکیت، در ابتدای فصل اول سال ۲۰۰۸ به تنهایی، می‌باشد.
 
ارتقای روتکیت –  Rootkit
تکنیک های هجومی روتکیت ها در خلال چندین سال گذشته به حد اعلای خود رسیده اند و بر این مبنا یک خطر واقعی را برای سیستم های عامل به وجود آورده اند. تشخیص جامع چنین روتکیت های پیشرفته ای هنوز به عنوان یک مشکل تحقیقاتی باز بشمار می آید. تکنیک های حمله جدید که بوسیله روتکیت ها مورد استفاده قرار می گیرند سبب می شود تا فن‌آوریهای نوینی نیز جهت تشخیص حضور آنها عرضه شوند. ارتقای روتکیت ها وتکنیک های شناسایی آنها همچنان مبارزه بین مهاجمین و مدافعین را تداوم بخشیده است. شکل ۱  معرف ارتقای تکنیک های حمله روتکیت می باشد. روتکیت ها سیر ترقی خود را از طریق دستکاری فضاهای باینری کاربران و کتابخانه های اشتراکی جهت جایگزینی کنترل و داده های غیر کنترلی درکرنل ادامه داده اند. روتکیت‌های جدیدی که همین اواخر دیده شده‌اند قابلیت نصب خود در زیر سطح سیستم عامل  را خواهند داشت.
روتکیت های اولیه کار خود را از طریق تغییر سیستم باینری ها و کتابخانه های اشتراکی آغاز نموده و آنها را با نگارش های برنامه های تراجنی (trajan) خود جایگزین می نمودند. هدف از این باینری‌های تراجنی مخفی نمودن آبجکت ها یا موضوعات مخرب و مغرضانه و یا اعطای حق دسترسی به فرایندهای مخرب بوده است. به طور مثال، یک تراجن باینریPS  کوچک سبب نخواهد شد تا فرایند های تخریبی در حال اجرا بر روی سیستم  لیست شوند. فرایند لاگ‌این (login) تراجنی نیز می تواند سطح روت یا ریشه را در اختیار کاربر مغرض قرار دهد. جهت تشخیص باینری‌های سیستم تراجنی و کتابخانه های اشتراکی تراجنی، ابزارهای نظیر تریپ وایر (Trip-wire) و AIDE توسعه یافتند. این ادوات اقدام به تولید مجموعه های مقابله ای (Checksums) شناسایی باینری ها و به هنگامی می نمودند که آنها بر روی سیستم تمیز یا آلوده نشده اجرا می‌شوند و آنها را در یک بانک اطلاعات ذخیره می نمایند، یک کاربر بعدا قابلیت بررسی سیستمی با استفاده از چنین ادواتی را خواهد داشت و می تواند نسبت به مقایسه مجموعه های مقابله ای باینری های سیستمی با اطلاعات قبلا ذخیره شده اقدام نماید. عدم انطباق در مجموعه مقابله ای معرف حضور باینری تراجنی خواهد بود. ادوات تشخیصی دیگر از یک رویه ضد ویروسی بهره می‌جویند، که در آن حضور یک روتکیت  با استفاده از بانک اطلاعات دارای امضا های شناخته شده تشخیص داده می شود، نظیر توالی خاص بایت ها در حافظه، یا از طریق حضور فایل های خاص بر روی دیسک. این دیدگاه سبب محافظت سیستم در برابر روتکیت های ناشناخته جدیدتر نخواهد شد. روتکیت ها با استفاده از تکنیک های چند ریختی (پلی مورفی) و فرا ریختی (متا مورفی) در جهت مبهم سازی کد به منظور خنثی نمودن عملیات تشخیص اقدام می نمایند، تکنیک‌هایی که به طور سنتی به وسیله ویروس ها جهت فرار از تشخیص از برنامه های ضد ویروس مورد استفاده قرار می ‌گرفت.
جهت فرار از تشخیص ناشی از کنترل کننده های جامعیت دیسک، روتکیت ها رویه های خود را به گونه ای ارتقا داده اند که قابلیت تغییر در کد کرنل وجود داشته باشد و بتوانند برخی از ساختارهای داده ثابت در داخل کرنل، نظیر جدول ارجای سیستم را تغییر دهند تا آن که به اهداف خود برسند. چنین روتکیت هایی تحت عنوان روتکیت های سطح کرنل شناخته می شوند چرا که آنها اقدام به تغییرکرنل یا هسته سیستم عامل می نمایند. تغییر کرنل سبب خواهد شد تا روتکیت توان کافی جهت کنترل کلیه سطوح کاربردی را به دست آورد. به طور مثال، تداخل در فراخوانی فایل سیستم‌ها، به روتکیت اجازه می دهد تا قابلیت کنترل کلیه رویه های دسترسی به فایل ها به وسیله کلیه برنامه های کاربردی بر روی سیستم را داشته باشد. روتکیت می تواند در این دسترسی ها دخالت نموده و اقدام به فیلترینگ مورد نظر جهت مخفی سازی آبجکت های مغرضانه خود نماید. از آن جایی که روتکیت دست به تغییر کرنل می زند، که خود به عنوان محل محاسباتی مطمئن سیستم به شمار می آید، چنین معضلی قابلیت تغییر هر گونه برنامه کاربردی سطح کاربر بر روی سیستم را نیز خواهد داشت. این برنامه های کاربردی شامل ادوات تشخیص روتکیت در فضای کاربر به فعالیت می پردازند. بنابراین، محقیقین رویه ایزوله سازی یا جداسازی تشخیص دهنده های روتکیت از سیستم عامل، از طریق جابجایی آنها با یک کمک پردازنده ایمن که متکی به سیستم عامل نباشد، یا ایزوله سازی آنها با استفاده از معماری مجازی سازی، که درآن تشخیص گر در یک ماشین مجازی مجزا اجرا می شود را پیشنهاد نموده اند. تشخیص گر های روتکیت، که جهت تشخیص روتکیت های سطح کرنل به کار گرفته می شوند از یک روش مبتنی بر درهم سازی ایمن مجموعه مقابله ای جهت تشخیص خرابی کد کرنل یا دیگر ساختارهای داده ثابت شناخته شده در کرنل نظیر جدول فراخوانی سیستمی استفاده می نمایند. این سیستم های درهم در موقعیت های حافظه یک سیستم تمیز، به صورت از قبل محاسبه شده، عمل می نمایند، جایی که کد و ساختارهای داده در آن ذخیره شده اند. آنها به صورت مقطعی و مجدد‌اً محاسبه گردیده و با داده‌های درهم ذخیره شده جهت تشخیص کد یا خرابی ساختارهای داده مقایسه  می شوند.
جهت خنثی کردن متعاقب ادوات تشخیص، نویسنده های روتکیت از فناوری های مخفیانه بهره جستند. از آنجایی که ادوات تشخیص به تنهایی اقدام به کنترل جامعیت کد کرنل و برخی از ساختارهای داده ای شناخته شده می نماید، همانند جدول فراخوانی سیستمی، توسعه دهنده های روتکیت به خوبی در کرنل نفوذ نموده و اقدام به جایگزینی ساختار اطلاعاتی می نمایند که کمتر شناخته شده هستند. به طور مثال، به جای تغییر فایل های فراخوانی سیستمی مرتبط با فایل در جدول فراخوانی سیستم، روتکیت ها اقدام به تغییر ماژول هایی تحت عنوان هوک یا قلاب در لایه فایل سیستم مجازی می‌نمایند. بر این مبنا مسابقه ای بین سازنده های روتکیت از یک طرف جهت بهره برداری از ساختار داده ای جدید، و تشخیص آن بوسیله برنامه های مربوطه همراه با کنترل جامعیت آن با داده های اکتشافی جدید در لیست تایید، از طرف دیگر وجود دارد. اغلب داده هایی که روتکیت ها اقدام به تغییر آنها می نمایند جز اطلاعات کنترلی غیر ثابت به شمار می آیند، همانند پوینترها یا اشاره گرهای تابع که به وسیله لایه های مختلف در کرنل استفاده می شوند. یک دیدگاه اتوماتیک بعدا جهت کنترل یکنواخت و به منظور کار با کلیه داده های کنترلی درکرنل توسعه یافت که کار آن تصدیق کلیه اشاره گرهای تابع در برابر آدرس تابع کرنل معتبر می‌باشد.
تعاملات و راهکارهای ما
نقطه تمرکز این فصل بر روی حملاتی است که اقدام به جایگزینی ساختار کد و اطلاعات در هسته سیستم عامل می نمایند. به طور متعارف، روتکیت ها فراهم آورنده کلیه اقدامات تخریبی و مغرضانه به عنوان برنامه های فضای کاربر می باشند. جهت مخفی کردن حضور خود، روتکیت ها خود را در کرنل مخفی می نمایند. چنین پدیده ای شامل تغییر کد یا ساختارهای داده کرنل در مسیرهای فراخوانی سیستمی می باشد که قابلیت تاثیر گذاری بر روی بازبینی سیستمی از طریق کاربر را خواهد داشت. به طور متعارف ، روتکیت ها در امر کنترل از طریق نصب هوک ها در داخل مسیر کنترل فراخوانی سیستم اقدام می نمایند، که سبب خواهد شد تا قابلیت فیلترینگ درخواست ها و پاسخ ها برای آنها بوجود آید. شایع ترین ساختار اطلاعاتی که بوسیله روتکیت ها بدین منظور دستکاری می شود جدول فراخوانی سیستم است. با توجه به بلوغ تکنیک های تشخیص جهت نظارت بر ساختارهای داده ای کاملا شناخته شده که بوسیله روتکیت ها هدف قرار میگیرند، آنها خود را به گونه ای ارتقا داده اند تا قابلیت تغییر ساختارهایی را داشته باشند که از معروفیت کمتری در زمینه تداخل کنترلی برخوردار می‌باشند. انواع دیگر نیز خود را به گونه ای ارتقا داده اند تا توان تغییر داده های غیر کنترلی را داشته باشند تا آنکه به اهداف مشابهی دست یابند.
با توجه به تغییر ساختارهای داده دستکاری شده در خلال سالیان اخیر، تمایل به رویه های پنهان کاری همچنان باقی مانده است که غالبا شامل مخفی نمودن فایل های مخرب و اتصالات شبکه و پردازش های مربوطه خواهد بود. این روتکیت ها به راحتی قابلیت شناسایی بوسیله ادواتی را خواهند داشت که از رفتار نهان به عنوان علامتی برای تشخیص استفاده می نمایند. در حقیقت، ابزارهایی نظیر Strider Ghostbuster قابلیت تشخیص روتکیت ها را خواهند داشت که دلیل تشخیص نیز عمدتا تلاش جهت مخفی سازی می باشد.
در این فصل، ما کلاس جدیدی از حملات را نشان داده و همچنین فناوری اتوماتیک جدیدی را جهت تشخیص آنها عرضه می نماییم. چنین حملاتی به طور صریح سبب نشان دادن رفتار نهان نخواهد شد، اما از نقطه نظر طراحی می توانند حالت مخفی کاری داشته باشد. آنها متکی به برنامه‌های فضای کاربر جهت فراهم آوردن اقدامات مخربانه خود نمی باشند. آنها چنین کاری را به طور ساده با دستکاری داده های کرنل انجام می دهند. این حملات به طور سمبولیک به عنوان یک مشکل سیستماتیک بزرگ در داخل کرنل به شمار می آید و بر این مبنا نیازمند تجزیه و تحلیل جامعی می باشند. فناوری تشخیص روتکیت جدید ما بر مبنای درک اتوماتیک ساختارهای تغییر ناپذیر داده می‌باشد که قابلیت تشخیص اتوماتیک حملات نهان پیشرفته در داخل کرنل را خواهد داشت. ما اقدام به ایجاد یک پروتوتایپ گیبرالتر (Gibraltar) می نماییم که قابلیت ارزیابی دیدگاه ما را خواهد داشت. گیبرالتر به طور اتوماتیک کلیه روتکیت های شناخته شده عمومی را تشخیص داده و همچنین قادر به تشخیص حملات نهان دیگری خواهد بود که بوسیله ما مورد بحث قرار گرفته و در مباحث دیگر تحقیقاتی نیز ارائه شده اند.
حملات
دراین بخش ما اقدام به معرفی حملات نهانی می نماییم که آنها را خود طراحی نموده و یا بوسیله گروه های تحقیقات دیگری  طراحی شده اند. کلیه آنها به اهداف مخربانه خود از طریق تغییر صرف داده های کرنل می‌رسند. هیچ کدام از آنها به طور صریح رفتار نهانی را از خود نشان نداده و از این رو نمی توان آنها را بوسیله ادواتی که تنها رفتار نهان را به عنوان علامت تشخیص مورد بررسی قرار میدهند شناسایی کرد. طیف این حملات مجموعه‌ای از زیرسیستم های مختلف را در کرنل هدف قرار داده و معرف وجود خطر سیستماتیکی بیشتری میباشند که بوسیله روتکیت های آتی اعمال خواهند شد.
غیر فعال سازی دیوار آتش یا فایروال –  Firewall
این حمله خود را بداخل چارچوب نت‌فیلتر (netfilter) کرنل لینوکس قلاب نموده و به صورت مخفیانه اقدام به غیر فعال سازی فایروالی خواهد نمود که بر روی سیستم نصب شده است. بر این مبنا کاربر قابلیت تشخیص چنین معضلی، از طریق استفاده از Iptables ، را نخواهد داشت. چنین مواردی هنوز نیز به عنوان مسائل معتبر مطرح بوده و ظاهرا فایروال ها تحت تاثیر این معضل قرار دارند. در طراحی این حمله، هدف مهاجم غیر فعال سازی مکانیزم های دفاع شبکه می باشد که بوسیله سیستم های هدف بکار گرفته شده اند و از این رو آنها در معرض خطر حملات دیگری نیز در شبکه قرار خواهند گرفت.
پس زمینه: نت فیلتر یک چارچوب فیلترینگ پاکتی  در هسته لینوکس می باشد. این سیستم فراهم آورنده قلاب ها یا هوک هایی در نقاط مختلف در پشته شبکه بندی است. چنین موردی برای ماژول های کرنل طراحی شده است تا قابلیت چنگ اندازی به و همچنین فراهم آوردن عملکردهای مختلف نظیر فیلترینگ پاکت، تخریب پاکت و انتقال آدرس شبکه وجود داشته باشد. این قلاب ها برای هر یک از پروتکل های پیش بینی شده بوسیله سیستم فراهم شده اند. قلاب های نت‌فیلتر برای پروتکل IP در شکل  ۲ نشان داده شده است. هر یک از این قلاب ها، شامل مسیریابی قبلی، ورودی، ارسال، خروجی و مسیریابی متعاقب، جز قلاب های در نقاط مختلف در پیمایش پاکت ها به شمار می آیند. Iptables نیز به عنوان ابزار خط دستور مدیریت فایروال به شمار می آید که بر روی لینوکس مهیا میباشد. Iptables را می توان به منظور مشخص نمودن قواعد دیوار آتش برای پاکت های در حال ورود و خروج به کار گرفت. Iptables از چارچوب نت فیلتر جهت اعمال قواعد فایر وال استفاده می نماید. پاکت ها بر حسب قواعد ارائه شده بوسیله این فایروال یا دیواره آتش فیلتر خواهند شد.
تشریح حمله: پوینترها یا اشاره گرها به هوک ها یا قلاب های نت فیلتر در یک جدول عمومی تحت عنوان nf_hooks ذخیره می شوند. این جدول آرایه ای از اشاره گرهایی می باشد که به هندل‌گر‌ها یا اداره کننده های رجیستر شده به وسیله ماژول های کرنل اشاره دارد تا آنکه قابلیت اداره قلاب های پروتکل مختلف ایجاد شود. این ساختار داده ای حتی پس از آخرین نگارش۶/۲ کرنل لینوکس نیز همچنان بکار گرفته می شود. ما اقدام به تغییر قلاب مترادف با پروتکل IP نموده و مسیر آنرا به سمت کد ساختگی خود تغییر میدهیم و بدین صورت به طور موثر فایروال را غیر فعال می سازیم. قواعد دیوار آتشی که ما در طی این آزمایش استفاده نمودیم در شکل ۳ نشان داده شده است. قواعد ورودی (INPUT) از پذیرش ترافیک  ورودی به سرور وبی که بر روی سیستم در حال اجرا میباشد جلوگیری به عمل می آورند. قبل از حمله، ما قابلیت دسترسی به این وب سرور به صورت خارجی را نداشتیم.
تاثیر: حمله مخفیانه همانند نمونه ای که تشریح شد قابلیت تشخیص به وسیله مجموعه ادوات موجود را نخواهد داشت. از آنجایی که ماژول حمله ما قابلیت فیلتر نمودن کلیه پاکت ها بدون عبور آن به فایروال را دارد، چنین سیستمی قابلیت اجرای دستورات دیگر در خلال دریافت یک پاکت خاصی که بوسیله مهاجم از راه دور ارسال شده است را خواهد داشت.
اتلاف منابع
این حمله سبب به بار آمدن مشکلات مربوط به اتلاف منابع و تنزل عملکرد برنامه های کاربردی از طریق ایجاد فشار تصنعی بر روی حافظه می تواند سبب بروز تراشینگ یا مشکل در اتلاف وقت بواسطه صفحه بندی خواهد شد. هدف این حمله نشان دادن این موضوع است که تنها از طریق دستکاری مقادیر ساده ای می‌توان بطور مخفی بر الگوریتم های کرنل تاثیر گذاشت. چنین حمله ای لاجیک تراز بندی (بالانس) ناحیه، که خود سبب می گردد  این اطمینان حاصل شود که غالباً صفحات آزاد کافی در دسترس حافظه سیستمی خواهد بود، را هدف قرار می‌دهد.
پس زمینه: لینوکس اقدام به تقسیم مجموعه حافظه فیزیکی نصب شده در داخل یک ماشین به یک سری از گره ها نموده است. هر گره مترادف با یک بانک حافظه می‌باشد. پس از آن گره خود به سه ناحیه تقسیم می گردد.. ناحیه dma، ناحیه نرمال و ناحیه highmem. ناحیه dma در ابتدا دارای ۱۶ مگابایت فضا را برای انتقالات دسترسی مستقیم حافظه DME)) رزرو می‌کند. حوزه نرمال ناحیه از ۱۶ مگابایت تا ۸۹۶ مگابایت می باشد. این حوضه ای است که به وسیله برنامه های کاربردی و درخواست های پویای داده در داخل کرنل مورد استفاده قرار می گیرد. این ناحیه و ناحیه dma  به صورت خطی با فضای آدرس مجازی کرنل نگاشت می شوند. مموری بالا یا highmem نیز جزء ناحیه ای به شمار می آید که حافظه آن بالای ۸۹۶ مگابایت خواهد بود.
تشریح حمله: واترمارک ها یا شاخص های ناحیه برای هر منطقه در ساختار کلی اطلاعات تحت عنوان zone_table ذخیره می شوند. این ساختار در حقیقت آرایه ای ازساختارهای اطلاعاتی zone_t خواهد بود که مترادف با هر ناحیه می باشد. شاخص‌های ناحیه ای در داخل این ساختار اطلاعاتی ذخیره می شوند. این شاخص حتی به وسیله کرنل نگارش۶/۲ نیز اعمال می گردد. تخصیص این جدول را می توان با مراجعه به فایل System.map مشخص نمود.
تأثیر: چنین حمله ای مشابه با یک نگارش مخفی حمله تحلیل برنده منابع می باشد که به طور متعارف در خلال شبکه رخ می دهد. ما سعی می نماییم تا هدف مشابه ای را در این زمینه پیگیری کنیم، به طور مثال درهم شکستن وضعیت متناسب یک سیستم آن هم تنها با بوجود آوردن فشار تصنعی بر حافظه آن. چنین مسأله ای منجر به سربار عملکرد قابل توجه ای بر سیستم خواهد شد.
آنتروپی آلایندگی انباره
این حمله اقدام به آلوده سازی انباره آنتروپی و چند اسمی هایی می نماید که بوسیله تولید کننده اعداد شبه تصادفی (PRNG) جهت تحرک انباره ها استفاده می‌شود. هدف از این حمله تنزل کیفیت اعداد شبه تصادفی می باشد که به وسیله PRNG تولید می‌شوند. کرنل جهت تأمین اعداد شبه تصادفی با کیفیت متناسب به PRNG وابسته است، که خود به وسیله کلیه توابع ایمنی در کرنل و همچنین سیستم های کاربردی برای ایجاد کلید، تولید شناسه های مطمئن نشست ایمن و غیره مورد استفاده قرار می‌گیرد. کلیه برنامه های کاربردی و توابعی کرنل که وابسته به PRNG هستند در مقابل در می توانند در معرض حمله قرار گیرند.
تشریح حمله: این حمله به صورت پیوسته ای سبب آلوده سازی انباره های آنتروپی از طریق نوشتن صفرها درکلیه انباره ها می گردد. چنین عملی از طریق بارگیری یک ماژول حمله محقق می شود که شامل یک رشته کرنل می باشد. این رشته به صورت پیوسته فعال شده و اقدام به نوشتن به صفرها در انباره های آنتروپی می نماید. به علاوه اقدام به حمله به چند اسمی هایی خواهد نمود که در جریان انباره مورد استفاده قرار می گیرند. صفر نمودن این چند اسمی ها سبب پوچ سازی بخشی از الگوریتم استخراج استفاده شده که بوسیله PRNG استفاده شده است.
تأثیر: پس از این حمله، اعداد شبه تصادفی تولیدی از کیفیت ضعیفی برخوردار بوده و بنابراین سیستم و برنامه های کاربردی درمعرض حملات مرتبط با تحلیل مسائل رمز نگارانه قرار خواهند گرفت.
 
غیر فعال سازی مولد اعداد شبه تصادفی
این حمله اقدام به بازنویسی آدرس های توابع ابزار رجیستر شده بوسیله مولد اعداد شبه تصادفی (PRNG) با تابعی می نماید که حاوی آدرس های کد حمله می باشد. بنابر این توابع اولیه هرگز اعمال نمی گردند. این توابع به هنگامی که واحدهای تصادفی از ادوات /dev/random یا /dev/urandom درخواست می گردند، غالبا صفر را برمی گردانند. توجه شود که با وجود آنکه چنین مبحثی مشابه با حمله بوسیله روتکیت های متعارفی می باشد که به اشاره گرهای تابع قلاب می شوند، تفاوت مشخصی بین آنها وجود دارد. از آنجایی که این ابزار خاص بر روی نگرش سطح کاربر این آبجکت ها تاثیر نمی گذارد، چنین موردی را به عنوان هدف برای حاصل آوردن رفتار مخفیانه به شمار نیاورده و از این رو به وسیله سیستم های کنترل کننده جامعیت کرنل تحت مراقبت قرار نخواهد گرفت.
پس زمینه: لینوکس فراهم آورنده یک معماری انعطاف پذیر میباشد که در آن فایل سیستم ها و ابزارهای مختلف قابلیت استفاده از یک رابط مشترک را خواهند داشت. این رابط بوسیله سطحی تحت عنوان سطح فایل سیستم مجازی (VFS) فراهم می شود. یک فایل سیستم جدید یا ابزار جدید فراهم آورنده تعدادی از این قلاب ها و به هنگامی می باشد که اقدام به رجیسترینگ با لایه VFS می نمایند.
تشریح حمله: این کرنل فراهم آورنده توابعی برای خواندن و نوشتن به ابزارهای /dev/random و /dev/urandom  می باشد. ساختارهای داده ای استفاده شده جهت رجیسترینگ توابع ابزار تحت عنوان random_state_ops و urandom_state_ops برای ابزارهای /dev/random و /dev/urandom به ترتیب خوانده می شوند. این علائم به وسیله کرنل ۴/۲ صادر می شوند اما امکان صدور آنها درکرنل ۶/۲ وجود ندارد. ما قابلیت یافتن این ساختار داده ای از طریق پویش اولیه برای کدهای عملیاتی تابع و یا توابع مشخص شده در random_state_ops و urandom_state_ops  را خواهیم داشت.
اضافه سازی یک فرمت باینری جدید
هدف از این حمله تحریک کد مخرب در هر زمانی است که یک فرآیند جدید بر روی سیستم تولید می شود. در حالیکه روتکیت ها به طور معمول این فرم از روش هوکینگ یا قلاب زنی را با استفاده از تغییر داده های کنترلی کرنل انجام می دهند، نظیر جدول فراخوانی سیستم، چنین حمله ای از طریق درج یک فرمت باینری جدید درسیستم اعمال می گردد.
حمله. این حمله از طریق ارائه یک فرمت باینری جدید در لیست فرمت های پشتیبانی شده به وسیله سیستم اجرا می شود. اجرا کننده جهت پشتیبانی  این  فرمت  در حقیقت یک سیستم مخرب می باشد یک فرمت باینری که به وسیله این سیستم پشتیبانی شده است به وسیله کرنل در یک لیست لینک کلی تحت عنوان فرمت ها حفظ می شود. این هندلر یا اجرا کننده باینری، که مختص فرمت باینری مشخص شده است، همچنین به هنگامی که فرمت جدید رجیستر می شود نیز اعمال می گردد.
تشخیص روتکیت از طریق استنتاج تغییر ناپذیری اتوماتیک
جهت شناسایی اتوماتیک حملات مخفیانه‌ای که بر روی کرنل، نظیر موردی که در بخش آخر بحث شد، انجام می‌شوند، ما یک دیدگاه جدید، بر اساس استنتاج اتوماتیک پارامترهای تغییر ناپذیر در ساختار های داده، را عنوان می نماییم. این دیدگاه بر مبنای این فرضیه است که ساختارهای داده کرنل معرف تغییرناپذیری در طی عملیات معمولی آنها می باشد. یک روتکیت کرنل که رفتار الگوریتم های کرنل را در بر دارد اقدام به نادیده گرفتن برخی از این موارد نموده و بنابر این می‌تواند خود را مخفی سازد. چنین دید گاهی می تواند به صورت یکنواخت آن دسته از روتکیت‌هایی را تشخیص دهد که اقدام به تغییر داده های کنترلی و غیر کنترلی می‌نمایند. جهت ارزیابی این فرضیه، ما یک پروتوتایپ گیبرالتر (Gibraltar) را ایجاد می نماییم که با طراحی و اجرای آن می توان موارد ذیل را تشریح نمود.
 سیستم واکشی صفحه
گیبرالتر بر روی سیستمی اجرا می شود که به صورت مجزا از سیستم هدف کار می نماید. سیستم واکشی صفحه گیبرالتر در حقیقت مولفه ای به شمار می آید که از آدرس حافظه فیزیکی به عنوان ورودی استفاده نموده و صفحات حافظه منطبق را از ماشین هدف حاصل می آورد. این هدف از یک کارت Myrinet PCI استفاده می نماید که برای آن یک واکش صفحه درخواستی را برای یک صفحه حافظه فیزیکی ارسال داشته است. در پی دریافت این درخواست، سفت افزار موجود بر روی هدف یک درخواست  DMAرا برای صفحه مشخص شده درخواست می نماید. بر این مبنا محتویات صفحه فیزیکی به سیستم کنترل کننده در پی تکمیل DMA ارسال می شود. کارت Myrinet بر روی ماشین هدف یک نگارش ارتقا یافته از سفت افزار اصلی را اجرا می نماید. رویه ارتقا ما این اطمینان را خواهد داد که به هنگامی که کارت مربوطه درخواستی را از واکش صفحه درخواست نمود، این درخواست به طور مستقیم به وسیله سفت افزار تفسیر و خدمات مربوطه عرضه می شود.
 
استخراج کننده ساختار داده
این مولفه اقدام به بازسازی یک نسخه فوری یا اسنپ‌شوت (Snapshot) از ساختارهای داده کرنل هدف از صفحات حافظه خام فیزیکی می نماید. استخراج کننده ساختار داده با استفاده از دو ورودی جهت تشخیص ساختارهای داده در داخل این صفحات اقدام به پردازش صفحات حافظه خام فیزیکی خواهد نمود. در ابتدا، این سیستم یک سری از علائم ریشه ای را مورد استفاده قرار می‌دهدکه متشکل از داده های کرنلی، که موقعیت های فیزیکی آنها ثابت می باشند و همچنین ساختارهای داده ای که بر روی بخش هدف قابل دسترسی هستند، می‌باشند. در رویه اجرایی ما، از علائم داخل سیستمی استفاده شد. فایل نگاشت کرنل هدف/ مقصد به عنوان مجموعه ای از روت ها یا مسیر‌ها مشخص گردید. در وهله دوم، از یک سری از تعاریف نوعی ساختارهای داده در کرنل هدف استفاده شد. تعاریف نوعی همانگونه که ذیلاً تشریح می شوند جهت مشخص نمودن کلیه ساختارهای داده قابل دسترسی به کار گرفته می شوند. ما به طور اتوماتیک اقدام به استخراج ۱۲۹۲تعریف نوعی از طریق تحلیل کد اصلی کرنل  لینوکس-۲۰-۴-۲ مقصد با استفاده از ماژول CIL نمودیم.
مولد اقلام تغییرناپذیر
در این حالت فراگیری، خروجی استخراج کننده ساختار داده به وسیله مولد اقلام تغییرناپذیر مورد استفاده قرار می گیرد که به صورت مشابه موارد نامتغیر ساختار داده را مشخص می سازد. این موارد به عنوان مشخصه های جامعیت ساختارداده به کار گرفته می شوند.
مانیتور
در طی فاز اجرا، مانیتور این اطمینان را خواهد داد که ساختارهای داده در حافظه مقصد قابلیت ارضای اقلام تغییر ناپذیر حاصله در طی فاز فراگیری را خواهند داشت. همانند مولد موارد تغییر ناپذیر، این مانیتور اقدام به حاصل آوردن نسخه‌های فوری از سیستم استخراج کننده ساختار داده می نماید و همچنین ساختارهای داده در هر نسخه‌ فوری را در برابر این پارامترهای تغییر ناپذیر کنترل می کند. چنین عملی این اطمینان را بوجود خواهد آورد که هرگونه تغییر مخربانه ای در حافظه کرنل که می تواند سبب نقض یک مورد تغییر ناپذیر شود را بتوان به صورت اتوماتیک تشخیص داد.
 
مداومت در برابر تغییر ناپذیری گذار
پارامترهای تغییر ناپذیر یا ثابت مشخص شده بوسیله گیبرالتر را می توان به دو دسته مداومت پایدار و گذرا تقسیم کرد. موارد دارای مداومت یا پایداری از ویژگی هایی برخوردار می باشند که در خلال ریبوت های ماشین مقصد، به شرط آنکه کرنل هدف بطور مجدد پیکر بندی نشده باشد، و یا بین این بوت های مجدد کامپایل نشده باشد، معتبر می‌باشند. کلیه مثال های شکل ۱۱ الی ۱۵ معرف مداومت یا پایداری هستند.
نتایج تجربی
این بخش ارائه دهنده نتایج تجربی در زمینه آزمایش میزان تأثیر و عملکرد نظر گیبرالتر در مبحث تشخیص روتکیت هایی است که قابلیت تغییر هر دو مورد ساختارهای داده ای کنترلی و غیر کنترلی را خواهند داشت. بر این مبنا ما بر روی سه مبحث تمرکز خواهیم نمود.
دقت تشخیص. ما میزان تأثیر گیبرالتر را با استفاده از آن جهت تشخیص حضور نرم افزارهای مخرب روتکیت و همچنین موارد ارائه شده در مباحث تحقیقاتی دیگر را عرضه می نماییم. گیبرالتر قابلیت تشخیص کلیه این روتکیت ها را دارد (بخش ۲ ـ ۴).
مثبت های کاذب. در طی اعمال این موارد، به هنگامی که یک نقض تغییر ناپذیر مشاهده شده باشد، گیبرالتر هشداری را صادر می‌کند. در صورتی که این نقض بواسطه تغییر مخربانه نباشد، چنین هشداری به عنوان مثبت کاذب تلقی خواهد شد. آزمایشات ما نشان دهنده آن است که گیبرالتر دارای نرخ مثبت کاذب صفر به ۶۵/۰ درصد می باشد (بخش ۳ـ۴).
عملکرد. ما سه ویژگی عملکرد گیبرالتر را مورد سنجش قرار داده و دریافتیم که چنین موردی سبب به بار آمدن یک رویه نظارتی نادیده انگاشته شده ای در زمینه بررسی سربار خواهد شد (بخش۴ـ۴).
روش شناسی تجربی
آزمایشات ما همراه با گیبرالتر به شرح ذیل انجام شد. در ابتدا ما گیبرالتر را در مد آموزشی اجرا نموده و سپس اقدام به اجرای یک بار کاری نمودیم که رفتار کاربر (به شرح ذیل) بر روی سیستم مقصد را تقلید می نمود. ما گیبرالتر را پیکر بندی نموده تا آنکه توانایی حاصل آوردن ۱۵ نسخه فوری در طی دوره آموزشی را داشته باشیم. گیبرالتر این نسخه‌های فوری را مورد بررسی قرار داده و موارد تغییر ناپذیر را از آنها استنتاج نمود. پس از آن ما گیبرالتر را بگونه‌ای پیکر بندی نمودیم تا آن را در مد اجرایی با استفاده از پارامترهای تغییر ناپذیر حاصله از این رویه فراگیری اجرا کنیم. در طی این اجرا، ما روتکیت هایی را بر روی سیستم هدف نصب نموده و هشدار های ایجادی بوسیله گیبرالتر را مشاهده نمودیم. در نهایت، ما نرخ مثبت کاذب گیبرالتر، از طریق اجرای یک بار کاری سازگار با کاربردهای سالم، را مورد مطالعه قرار دادیم.
دقت تشخیص
در این مبحث ما نتایج حاصله در استفاده از داده های تغییر ناپذیر جهت تشخیص روتکیت های متعارف و حملات نهان کارانه مدرن که بوسیله ما و دیگر محققین پیشنهاد شده است را گزارش می‌کنیم.
تشخیص روتکیت های متعارف. ما از ۱۴ روتکیتی که بصورت عام در دسترس می باشند جهت تغییر ساختارهای داده کرنل به منظور تست میزان تاثیر گیبرالتر استفاده می کنیم. اغلب این روتکیت ها آبجکت های سطح کاربر را از طریق تغییر اشاره گرهای تابع به کرنل مخفی می سازند. ما همچنین یکی از روتکیت های پیشنهاد شده در مبحث تحقیقاتی پترونی،۲۰۰۶، را نیز شامل نمودیم که این روتکیت قابلیت مخفی سازی فرایند های مخربانه از طریق جایگزینی داده های غیر کنترلی را خواهد داشت. این روتکیت بر مبنای این حقیقت استوار است که که یوتیلیتی های پردازش حسابداری نظیر ps و برنامه های زمان بندی وظایف کرنل دارای لیست های فرایندی مختلفی هستند.
تشخیص حملات مخفیانه مدرن. ما از پنج حمله مخفی توسعه یافته بوسیله ما و دیگر موارد به بحث گذاشته شده در مقوله قبلی جهت تست گیبرالتر استفاده نمودیم. جدول ۵ این حملات را خلاصه کرده و نشان دهنده ساختارهای داده تغییر یافته بوسیله این حمله، نوع تغییر ناپذیری (مجموعه/آبجکت) که شامل موارد نقص شده هستند و قالبی که اقدام به دسته بندی چنین مواردی می نماید، می‌باشد. تمامی این موارد بصورت مداوم بوده که به هنگام بوت مجدد ماشین مقصد نیز همچنان تداوم می یابند. ما اقدام به بحث موارد نقص شده بوسیله هر حمله به تفصیل خواهیم نمود. جزئیات اولین چهار حمله ذکر شده ذیل قبلاً در بخش ۲ توصیف شده است.
غیر فعال سازی حمله فایروال
گیبرالتر اقلام تغییر ناپذیری که در شکل ۱۱ در چهارچوب netfilter برای غیر فعال نمودن حمله فایروال مشخص شده است را استنتاج نموده است. این حمله اقدام به رونویسی هوک/ قلاب با تابع حمله می نماید و از این طریق اقدام به نقض اقلام تغییر ناپذیری می‌نماید. در عین حال اشاره گر تابع nf_hooks[2][1].next.hook یک ثابت است. از آنجایی که این حمله اقدام به تغییر اشاره گرهای تابع کرنل می نماید، این معضل را می توان بوسیله SBCFI تشخیص داد، که بصورت اتوماتیک اقدام به استخراج و اعمال جامعیت جریان کنترل کرنل می نماید. در حقیقت، پارامترهای تغییر ناپذیر اشاره گر تابع که بوسیله گیبرالتر مشخص شده اند، بطور تلویحی مشخص کننده یک خط مشی جامعیت جریان کنترل می باشند که مساوی با SBCFI است.
حمله اتلاف منابع
گیبرالتر مشخص کننده پارامترهای تغییر ناپذیری است که در شکل ۱۲ برای سه مورد از حملاتی که موجب اتلاف منابع می شوند نشان داده شده است. این مقادیر در زمان شروع بکار سیستم آغاز شده و بطور معمول در یک کرنل عادی تغییر نمی یابند. این حمله اقدام به تغییر معیارهای صفحات میانی، صفحات پایینی و صفحات بالایی به ۲۱۰۰۰۰، ۲۱۵۰۰۰ و ۲۲۰۰۰۰ بترتیب می‌نماید. مقادیر این معیارها نزدیک به ۲۲۵۲۸۰ می باشند که مجموعه کل صفحات موجود در سیستم ما است. گیبرالتر این حمله را تشخیص می دهد که چراکه موارد تغییر ناپذیر نشان داده شده در شکل ۱۲ نقص شده اند.
حمله آلوده کننده انباره آنتروپی
شکل ۱۳ نشان دهنده موارد تغییر ناپذیری است که گیبرالتر برای ضرایب چند اسمی مشخص ساخته است و جهت تحرک انبارهای آنتروپی در یک کرنل معمولی و بدون مشکل بکار گرفته می‌شود (ساختار داده ای poolinfo که در این شکل نشان داده شده است بوسیله کرنل بصورت random_state->poolinfo / sec_random_state->pooinfo نشان داده شده است. این ضرایب در زمان آغاز بکار سیستم راه اندازی شده و نباید در طی اجرای کرنل تغییر کنند. این حمله اقدام به نقض این موارد تغییر ناپذیر و به هنگامی می نماید که ضرایب چند اسمی ها صفر می گردند. گیبرالتر این حمله را زمانی تشخیص می دهد که پارامترهای تغییر ناپذیر نقص می شوند.
 
 
حمله غیر فعال سازیPRNG
پارامترهای تغییر ناپذیر حاصله از سوی گیبرالتر برای سیستم ما در زمینه random fops و urandom fops در شکل ۱۴ نشان داده شده است. کد حمله اقدام به تغییر مقادیر دو اشاره گر تابع فوق نموده و از این طریق سبب نقص پارامترهای تغییر ناپذیر می شود. همانند حمله ۱، این حمله نیز با استفاده از SBCFI قابل تشخیص می باشد.
حمله اضافه نمودن فرمت باینری
پارامترهای تغییر ناپذیر حاصل آمده از گیبرالتر که در شکل ۱۵ در لیست فرمت های سیستمی ما نشان داده شده است دارای دو فرمت باینری رجیستر شده می‌باشند. اندازه این لیست پس از شروع بکار سیستم ثابت می باشد و تنها زمانی تغییر می یابد که یک فرمت باینری جدیدی نصب شده باشد. از آنجایی که این حمله یک فرمت باینری جدید را درج می کند، سبب تغییر طول لیست فرمتها شده و از این طریق موجب نقص پارامترهای تغییر ناپذیر در شکل ۱۰ شده و از این طریق گیبرالتر توانایی تشخیص این حمله را خواهد داشت.
 
اقلام تغییر ناپذیر و مثبت کاذب
پارامترهای تغییر ناپذیر. همانگونه که در بخش ۳ بحث شد گیبرالتر از نظریه دیکون جهت استنتاج این موارد استفاده نموده و ویژگی های آبجک های منفرد و همچنین مجموعه آبجکت ها را مشخص نمود (نظیر آبجک های دارای نوع یکسان، پارامترهای تغییر ناپذیر مشخص شده در لیست‌های لینک نیز به عنوان موارد تغییر ناپذیر در این مجموعه مشخص شده اند).جدول ۶ نشان دهنده تعداد موارد تغییر ناپذیر استنباط شده بوسیله گیبرالتر بر روی آبجکت های واحد و همچنین آبجکت های جمعی می باشد. جدول ۶ همچنین معرف دسته بندی پارامترهای تغییر ناپذیر از طریق تمپلت ها یا قالب ها است. طول و زیر مجموعه این موارد تنها در لیست های لینک شده بکار گرفته می شوند. همانگونه که این جدول نشان می دهد، گیبرالتر بطور اتوماتیک چندین هزار مورد از اقلام تغییر ناپذیر در ساختارهای داده کرنل را مشخص می‌سازد.
عملکرد
ما اقدام به اندازه گیری سه ویژگی عملکرد گیبرالتر نمودیم: (الف) زمان فراگیری، یعنی زمانی که بوسیله گیبرالتر صرف می شود تا آنکه قابلیت مشاهده هدف و استنتاج موارد تغییر ناپذیر بوجود آید، (ب) زمان تشخیص، یعنی زمانی که صرف شده تا آنکه هشداری پس از مشخص شدن روتکیت اعلام شود (ج) سربار عملکرد، یعنی سرباری که بر روی سیستم مقصد در نتیجه واکشی مقطعی صفحه از طریق DMA بوجود می آید.
زمان فراگیری یا آموزش. زمان فراگیری به عنوان مجموع زمان مشخص شده بوسیله گیبرالتر به منظور حاصل آوردن نسخه فوری از ساختار داده کرنل و استنتاج پارامترهای تغییر ناپذیر در زمان اجرا در حالات آموزشی صرف می شود. بطور کلی، فرایند کسب ۱۵ مورد از نسخه‌های فوری از حافظه کرنل مقصد تقریباً نیازمند ۲۵ دقیقه زمان می باشد و در پی آن ۳۱ دقیقه  جهت استنتاج موارد تغییر ناپذیر مورد نیاز می باشد که مجموع آن ۵۶ دقیقه را برای آموزش طلب می کند.
نتیجه گیری
 به طور متعارف، برنامه های روتکیت اقدام به ورود مخفیانه خود به داخل کرنل نموده تا آنکه بتوانند اقدامات نهانی خود را که دارای بیشترین عملکرد مخربانه می باشد را از طریق همراه سازی آنها با برنامه های فضایی کاربر پیاده کنند. بنابراین، رویه نهانی کاری از طریق سعی در مخفی سازی آبجکت ها نظیر فایلها، پردازش ها و اتصالات شبکه موجود در فضای کاربر و اتصال آن به فرد مهاجم اعمال می شود. از آنجایی که برنامه فضای کاربر قابلیت دسترسی و تغییر آبجکت های فضای کاربر با استفاده از تابع فراخوانی سیستمی را خواهند داشت، روتکیت تنها محدود به دستکاری کد یا ساختارهای داده ای هستند که تنها از طریق مسیرهای فراخوانی سیستم قابل دسترسی می باشند.
ما کلاس جدیدی از حملات مخفیانه را ارائه نمودیم که از رفتار مخفی کاری سنتی استفاده نکرده و بر این مبنا روتکیت ها با تکنیک های جدید سعی در طراحی روشهای مخفیانه نوینی نموده اند. آنها اقدام به دستکاری داده ها در داخل چندین زیر مجموعه مختلف در کرنل نموده تا آنکه اهداف مخربانه خود را انجام دهند. آنها بر مبنای این مشاهده فعالیت می کنند که روتکیت های کرنل الزاماً محدود به دستکاری ساختارهای داده، که در داخل مسیرهای فراخوانی سیستمی قرار گرفته‌اند، نمی باشند. دیگر زیر سیستم ها در داخل کرنل نیز در معرض خطر این حملات خواهند بود. جهت نمایش این خطر، ما اقدام به ایجاد چندین حمله جدید نمودیم. ما پروتوتایپ‌ها یا نمونه‌های حمله را طراحی نموده تا آنکه نشان دهیم که چنین حملاتی واقعی بوده و مشخص کننده مشکلات بیشتر سیستماتیک در کرنل می باشند.
تکنیک های تشخیص روتکیت ارائه شده قبلی به میزان زیادی قابلیت تشخیص حملاتی را داشتند که اقدام به تغییر داده های کنترلی کرنل می نمودند. تکنیکهایی که توانایی تشخیص حملات داده‌ای غیر کنترلی را دارند، مخصوصاً بر روی ساختارهای داده ای که بطور اتوماتیک تخصیص می‌یابند، نیازمند مشخصات جامعیت ساختاری داده ای هستند که باید آن را بصورت دستی تأمین نمود. در این مبحث، ما یک روش تشخیص روتکیت جدید را ارائه نمودیم که قابلیت تشخیص روتکیت ها بصورت یکنواخت در خلال داده های کنترلی و غیر کنترلی را خواهد داشت. این دیدگاه بر مبنای این فرضیه استوار است که چندین پارامتر تغییر ناپذیر بوسیله ساختارهای داده کرنل در زمان اجرا در طی عملیات صحیح آن وجود دارند. روتکیتی که اقدام به تغییر رفتار الگوریتم های کرنل می نماید برخی از این پارامترهای تغییر ناپذیر یا ثابت را نقص خواهد نمود. ما پروتوتایپ گیبرالتر، بعنوان ابزاری برای استنتاج اتوماتیک و بررسی مشخصه های جامعیت ساختار داده کرنل،  را عرضه نمودیم. گیبرالتر می تواند جامعیت و یکنواختی این  خصیصه های تغییر ناپذیر، در خلال داده های کنترلی و غیر کنترلی کرنل، را مشخص نموده و از آنها به عنوان مشخصه های جامعیت ساختار داده استفاده نماید. تجارب ما معرف آن است که گیبرالتر بصورت موفقیت آمیزی توانایی تشخیص روتکیت هایی را خواهد داشت که اقدام به تغییر هر دو حالت کنترلی و غیر کنترلی ساختارهای داده می نمایند و همچنین این عمل را با یک نرخ مثبت کاذب پایین و سربار عملکرد قابل اغماض انجام می دهند.

خطرات سیستماتیک بر علیه داده های کرنل : تکنیکهای حمله و دفاع

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *