درخواست های ارتباط
جستجو
    لیست دوستان من
    صندوق پیام
    همه را دیدم
    • در حال دریافت لیست پیام ها
    صندوق پیام
    رویدادها
    همه را دیدم
    • در حال دریافت لیست رویدادها
    همه رویدادهای من
    اطلاعات دوره آموزشی
    اطلاعات مطلب
      مدرس/نویسنده
      محمد نصیری
      امتیاز: 802020
      رتبه:1
      364
      1646
      801
      10551
      محمد نصیری ، بنیانگذار TOSINSO ، کارشناس امنیت اطلاعات و ارتباطات و کشف جرائم رایانه ای ، هکر کلاه سفید ، تخصص در حوزه امنیت سیستم عامل و تست های نفوذسنجی ، لینوکس ، مجازی سازی ، سرویس های کاربردی سرور و ... سابقه همکاری در بیش از 40 سازمان دولتی ، خصوصی و نظامی در حوزه پروژه ، مشاوره و آموزش ، بیش از 10 هزار ساعت سابقه آموزشی در طی 12 سال فعالیت حرفه ای ... پروفایل کاربر

      تفاوت Kernel Mode Rootkit و User Mode Rootkit در Rootkit های ویندوزی ::: قسمت اول

      تاریخ 5 ماه قبل
      نظرات 0
      بازدیدها 96
      با سلام به همه کاربران عزیز وب سایت توسینسو ، قبلا در جزیره امنیت در خصوص Rootkit ها و اینکه ماهیت آنها چیست صحبت کرده ایم اما امروز می خواهیم در خصوص نحوه عملکرد دو نوع Rootkit در سیستم عامل ویندوز صحبت کنیم . قبل از اینکه به معرفی آنها برسیم بایستی بدانید که واژه Rootkit در بحث سیستم عامل در اصل به مجموعه ای از ابزارها گفته می شود که با استفاده از آنها شما به عنوان یک هکر می توانید به یک سیستم عامل Unix دسترسی مدیریتی یا root پیدا کنید . این مجموعه ابزارها شامل برخی از ابزارهای مانیتورینگ شناخته شده در این سیستم عامل به همراه ابزارهای دستکاری شده و مخفی است که توسط کاربرهای غیرمجاز طراحی و ارائه می شوند . یک کاربر غیرمجاز می تواند ابزارهای مجاز سیستم عامل را دستکاری کرده و ابزارهای غیرمجاز خودش را جایگزین آنها کند و با اینکار یک حفره امنیتی در سیستم عامل ایجاد کند . این مفهوم در سیستم عامل Unix معنی دارد و در سیستم عامل ویندوز تعریف Rootkit به شکل دیگری انجام می شود.

      تصویر Rootkit یک


      زمانیکه صحبت از سیستم عامل های خانواده ویندوز می شود تعریف Rootkit نیز بعضا متفاوت تر از آن چیزی می شود که در Unix وجود داشته است . در سیستم عامل ویندوز وقتی صحبت از Rootkit می کنیم یعنی برنامه هایی که با استفاده از تکنیک System Hooking ( انتقال درخواست به یک برنامه دیگر ، قلاب کردن برنامه در برنامه ای دیگر ، ارجاع درخواست به سمت برنامه غیرمجاز ) یا دستکاری در فایل های سیستمی سعی می کنند رفتار یک برنامه ، فرآیند یا پروسس ، کلیدهای رجیستری و هر شیء دیگری در سیستم عامل را از حالت طبیعی خارج کرده و به سمت رفتار مورد نیاز هکر تغییر بدهند ، گفته می شود ، این تغییرات بصورت مخفی انجام می شوند . یکی از نقاط اساسی تفاوت بین Rootkit های ویندوزی و Unix ای این است که الزاما Rootkit های ویندوزی دسترسی مدیریتی به مهاجم نمی دهند اما برای اجرا شدن نیاز به دسترسی مدیریتی دارند . بصورت کلی دو کلاس یا نوع Rootkit ویندوزی وجود دارد که در ادامه برای شما نحوه عملکرد آنها را تشریح می کنیم .

      روتکیت های حالت کاربر یا User Mode Rootkits



      Rootkit های حالت کاربر یا User Mode Rootkits همانطور که از نامشان هم پیداست فرآیند System Hooking را در سطح User یا Application انجام می دهند. زمانیکه یک Application یک درخواست سیستمی را فراخواهی می کند ( در اصطلاح System Call ) می کند ، فرآیند اجرای درخواست سیستمی یک روال مشخص و از پیش تعریف شده را دارد ، وقتی که Rootkit ویندوزی سطح Application در اینجا فعال شده باشد این درخواست در هر زمانی که نیاز باشد در اصطلاح جایگزین یا سرقت ( Hijack ) شده و تغییراتی که هکر مورد نظرش است بر روی آن انجام می شود . یکی از مرسوم ترین روش های مورد استفاده در حالت User Mode انجام تغییرات بر روی حافظه DLL های سیستمی است . برنامه های ویندوزی از کدهای معمولی که توسط DLL های شرکت مایکروسافت ارائه می شوند استفاده می کنند. در زمان اجرا یا ( Runtime ) این DLL ها در فضایی که توسط Application از حافظه گرفته شده است Load می شوند و به Application اجازه فراخوانی و اجرای کدهای درون DLL ها را می دهند ، اینکار طبیعتا برای بالا بردن سرعت اجرا برنامه ها است و همانطور که می دانید همه برنامه ها برای اینکه با سرعت بهتری اجرا شوند بسیاری از اطلاعات پر استفاده خودشان را درون Memory یا RAM سیستم قرار می دهند .

       نمونه عکس User Mode Rootkit


      برای مثال فرض کنید که شما یک Application دارید که می خواهید کلیه کلیدهای رجیستری ویندوز را به شما خروجی بدهد ، برای انجام اینکار سیستم عامل ویندوز بایستی یک Windows API به نام RegEnumKey را فراخوانی کند که کدهای این API در یک فایل DLL به نام ADVAPI32.DLL قرار گرفته اند . در چنین شرایطی User Mode Rootkit محل قرارگیری API را درون ADVAPI32.DLL پیدا می کند و API را دستکاری می کند و کاری می کند که در زمان فراخوانی API فرآیند اجرا به کدهای قرارگرفته در Rootkit هدایت شوند و به جای کدهای API کدهای Rootkit اجرا می شوند. کدهای Rootkit در ابتدا خود API را فراخوانی کرده و سپس در بازگشت مقادیر را تغییر می دهد ، برای مثال در بازگشت می تواند محل ذخیره سازی خودش در ویندوز را تغییر بدهد یا آن را اصلا بازگشت ندهد.


      ادامه دارد ...

      نویسنده : محمد نصیری
      منبع : جزیره امنیت وب سایت توسینسو
      هرگونه نشر و کپی برداری بدون ذکر منبع و نام نویسنده دارای اشکال اخلاقی می باشد
      برچسب ها
      ردیفعنوان
      1تفاوت Kernel Mode Rootkit و User Mode Rootkit در Rootkit های ویندوزی ::: قسمت اول
      2تفاوت Kernel Mode Rootkit و User Mode Rootkit در Rootkit های ویندوزی ::: قسمت دوم
      دورهمجموعه کل دوره
      مطالب مرتبط

      در حال دریافت اطلاعات

      نظرات
      هیچ نظری ارسال نشده است

        برای ارسال نظر ابتدا به سایت وارد شوید

        arrow