High-level overview of how LSM is integrated into the Linux kernel


  • در قسمت user space و در بخش process فرض کنید که کاربر دستور ls را برای دایکتوری root/ اجرا کرده است.
  • با اجرای دستور ls درخواست‌ها تحت عنوان system call به قسمت kernel space فرستاده می‌شود.
  • در صورتی که خطاهای منطقی وجود داشته باشد ،‌ به عنوان مثال cd در داخل یک فایل ، آن‌گاه خطای error از بخش error checks به سمت کاربر فرستاده می‌شود.
  • در صورتی که مشکلی یا خطای منطقی وجود نداشته باشد ، درخواست به سمت DAC فرستاده می‌شود
  • در بخش DAC بررسی می‌شود آیا process که در این جا دستور ls است ، دسترسی یا پرمیشن به مقصد (که دایرکتوری root/ است) دارد یا خیر. در صورتی که دسترسی وجود نداشته باشد خطایی برای کاربر ارسال می‌شود.
  • در صورتی که مشکلی در بخش DAC وجود نداشته باشد درخواست به سمت بخش LSM Hook ارسال می‌شود.
  • LSM نوعی Interface برای اجرای افزونه‌های امنیتی‌ای مثل SELinux و … است.
  • اگر این دسته از افزونه‌ها برای کرنل در نظر گرفته شده باشد ، آنگاه افزونه اجرا می‌شود.
  • حال اگر مشکلی از بابت خط‌مشی‌های افزونه و دستوری‌ (پروسه) کاربر اجرا کرده است ، وجود نداشته باشد ، آنگاه نتایج به سمت کاربر ارسال می‌شود. در غیر این صورت پیامی مبنی بر خطا برای کاربر ارسال می‌شود.

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

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