دسته‌ی آسیب پذیری‌های مربوط به ضعف در ایمنی سیستم‌عامل؛ Insecure OS/Firmware

دسته‌ی آسیب پذیری‌های مربوط به ضعف در ایمنی سیستم‌عامل؛ Insecure OS/Firmware

۳۱۰

اگر بخواهیم اصل‌ونصب آسیب پذیری‌های را براساس اطلاعات ‌ثبت‌شده در شناسنامه‌ی VRT شان، به رسمیت بشناسیم، می‌توان گفت در دنیای امنیت هم، آسیب پذیری‌های خانواده‌ دارند، که در ستون مربوط به دسته‌بندی آن‌ها در جدول VRT قابل‌مشاهده‌اند.اعضای خانواده‌ی آسیب پذیری‌ها نیز، ویژگی‌های مشترکی دارند. ما در این بلاگ‌پست قصد داریم به معرفی خانواده‌ی Insecure OS/Firmware و اعضای آن از رده‌بندی آسیب پذیری‌های VRT بپردازیم.

آن‌چه در این بلاگ‌پست خواهید خواند:

• رده‌بندی آسیب پذیری‌ VRT چیست؟

• دسته‌ی آسیب پذیری‌های Insecure OS/Firmware چیست؟ و شامل چه آسیب پذیری‌هایی است؟

• آسیب پذیری‌های خانواده‌ی Insecure OS/Firmware تا چه میزان خطرناکند؟

• معرفی آسیب پذیری‌های دسته‌ی Insecure OS/Firmware:

• • آسیب پذیری Command Injection

• • آسیب پذیری Hardcoded Password گونه‌ی Privileged User

• • آسیب پذیری Hardcoded Password گونه‌ی Non-Privileged User

رده‌بندی آسیب پذیری‌ VRT چیست؟

در بلاگ‌پست «چگونه بفهمیم هر آسیب پذیری چقدر خطرناک است؟ (معرفی ۳ سنگ محک جهانی)» رده‌بندی VRT را به عنوان یکی از راه‌هایی که به کمک آن‌ها می‌توان آسیب پذیری‌ها را بیش‌تر شناخت، معرفی کردیم. و در بلاگ‌پست آشنایی با رده‌بندی Vulnerability Rating Taxonomy؛ VRT به معرفی مفصل‌تر VRTپرداختیم. در رده‌بندی VRT، اصل‌ونسب هر آسیب پذیری، با مولفه‌های "دسته‌"ی آسیب پذیری، "نام یا زیردسته"ی آسیب پذیری و "گونه‌"ی آسیب پذیری، مشخص می‌شود. BugCrowd در این رده‌بندی، آسیب پذیری‌ها را بر اساس شدت خطر آن‌ها در پنج رده‌ی P4، P3، P2، P1 و P5 رتبه‌بندی کرده است. در دو سر این طیف، P1 خطرناک‌ترین و رایج‌ترین آسیب پذیری‌‌ها و P5 کم‌خطرترین و نامتداول‌ترین آسیب پذیری‌ها قرار دارند.

دسته‌ی آسیب پذیری‌های خانواده‌ی Insecure OS/Firmware چیست؟ و شامل چه آسیب پذیری‌هایی است؟

همان‌طور که در بلاگ‌پست آشنایی با رده‌بندی Vulnerability Rating Taxonomy؛ VRT اشاره کردیم، ستون دوم در جدول رده‌بندی VRT دسته‌ی هر آسیب پذیری را مشخص می‌کند. دسته‌ی آسیب پذیری‌های Insecure OS/Firmware یکی از دسته‌هایی ست که در این جدول به چشم می‌خورد. Insecure OS/Firmware همان‌طور که از نامش پیداست، مربوط به آسیب پذیری‌هایی می‌شود که از نقص‌های موجود در سیستم‌عامل یا Firmware یک سخت‌افزار بروز پیدا می‌کنند. می‌توان این آسیب پذیری‌ها را اغلب ناشی از خطای انسانی دانست، اما نقص در پیکربندی الزامات امنیتی در یک سیستم‌عامل یا Firmware نیز نقش بسزایی در بروز آسیب پذیری‌های این دسته‌ی آسیب پذیری‌ها دارند. اعضای خانواده‌ی Insecure OS/Firmware عبارتند از:

• آسیب پذیری Command Injection

• آسیب پذیری Hardcoded Password که دو گونه دارد:

آسیب پذیری Hardcoded Password گونه‌ی Privileged User

و آسیب پذیری Hardcoded Password گونه‌ی Non-Privileged Use

آسیب پذیری‌های خانواده‌ی Insecure OS/Firmware تا چه میزان خطرناکند؟

آسیب پذیری‌های این خانواده، مسیر مستقیمی را برای دسترسی هکر به مقصود نهایی‌اش فراهم می‌کنند. آسیب پذیری Command Injection از آسیب پذیری‌های RCE به شمار می‌رود و اجازه‌ی دسترسی مستقیم به خط فرمان سامانه‌ی قربانی را برای هکر مهیا می‌کند. آسیب پذیری Hardcoded Password نیز اطلاعاتی را که هکر برای ورود به سامانه‌ی قربانی نیاز دارد، تقدیمش می‌کند. اگر نگاهی به جدول VRT بندازیم نیز، آسیب پذیری‌های دسته‌ی Insecure OS/Firmware را در رده‌بندی‌های باخطربالا (P1 و P2) می‌یابیم که با توجه به میزان خطر متفاوتی که ایجاد می‌کنند، در دو رده‌ی P1 و P2 قرار می‌گیرند:

در رده‌ی P1:

• آسیب پذیری Command Injection

• آسیب پذیری Hardcoded Password گونه‌ی Privileged User

آسیب پذیری باگ بانتی

و در رده‌ی P2:

• آسیب پذیری Hardcoded Password گونه‌ی Non-Privileged User

قرار دارند.

آسیب پذیری باگ بانتی

معرفی آسیب پذیری‌های دسته‌ی Insecure OS/Firmware

آسیب پذیری Command Injection

این آسیب پذیری می‌تواند برای شکارچی و هکر کلاه‌سفید دسترسی مستقیمی به سرور قربانی ایجاد کند، امکان اجرای کد از راه دور را برایش فراهم آوَرَد و زمینه‌‌ساز اکسپلویت و بهره‌جویی از سایر آسیب پذیری‌های موجود در سامانه شود.

حمله‌ی مبتنی بر آسیب پذیری Command Injection از ارسال دستورهای خط فرمان مانند whoami و cp از سمت شکارچی به سمت سرور قربانی آغاز می‌شود. این کار معمولا از طریق برنامه‌ای کاربردی‌ مانند یک وب‌سایت که سرور بر روی آن در‌حال‌اجرا و آسیب‌پذیر است، انجام می‌شود. این حمله بر پایه‌ی نقص در اعتبارسنجی یا Validation ورودی‌های مختلف سامانه، از جمله فرم‌های ورودی کاربر، استوار است. در حمله‌ی Command Injection مهاجم می‌تواند با تزریق دستورهایی از طریق ورودی‌های سامانه، به خط فرمان سرور قربانی دسترسی پیدا کند. به دنبال آن نیز امکان جمع‌آوری اطلاعات از سرور قربانی و هم‌چنین اجرای کد از راه دور یا RCE بر روی سرور قربانی برایش فراهم می‌شود.

پیشنهاد خواندنی: «آسیب پذیری Command Injection؛ دربست تا دروازه‌ی بزرگ دسترسی»

آسیب پذیری Hardcoded Password گونه‌ی Privileged User

در برخی از سامانه‌ها و یا سیستم‌ها، معمولا با هدف استفاده‌ی آسان از سامانه برای اولین بار، کدها و گذرواژه‌هایی به صورت آشکار در بخشی از سامانه قرار داده می‌شوند. آسیب پذیری Hardcoded Password نیز از همین بابت به آشکار بودن اطلاعاتی از جمله گذرواژه در سیستم‌عامل و یا Firmware اشاره دارد. مشهورترین و ساده‌ترین مثال این آسیب پذیری انتخاب نام کاربری Admin و گذرواژه‌ی Admin است. در صورتی که اطلاعات ذکرشده مربوط سبب ایجاد دسترسی سطح بالا به سامانه برای مهاجم شود، گونه‌ی Privileged User آسیب پذیری Hardcoded Password رخ می‌دهد.

آسیب پذیری Hardcoded Password گونه‌ی Non-Privileged User

این آسیب پذیری صرفا از لحاظ گونه‌ی آن با آسیب پذیری Hardcoded Password در رده‌ی P1 تفاوت دارد. اگر اطلاعاتی که به طور آشکار در سامانه قرار داده شده اند، منجر به دسترسی سطح پایین یا کم‌اهمیت شوند، گونه‌ی Non-Privileged آسیب پذیری Hardcoded Password رخ می‌دهد. Non-Privileged User به دلیل کم‌بودن خطر آن یک رده پایین‌تر از Privileged User و در رده‌ی P2 قرار گرفته است.

باگ بانتی

چگونه می‌توان از بروز این آسیب پذیری‌ها در سامانه جلوگیری کرد؟

آسیب پذیری Command Injection از دسته‌ی آسیب پذیری‌های تزریقی (Injection) ست. یکی از اصلی‌ترین راه‌های جلوگیری از بروز آسیب پذیری‌های تزریقی نیز، اعتبارسنجی ورودی‌های کاربر، هم در سمت کاربر و هم در سمت سرور است. آسیب پذیری دیگر این خانواده، ناشی از خطای انسانی است. برخی از سامانه‌ها از ابتدای استفاده‌ی کاربر اطلاعات محرمانه‌‌ای مانند نام‌کاربری و رمزعبور به سامانه را به صورت پیش‌فرض انتخاب می‌کنند. در صورتی که کاربر این اطلاعات را تغییر ندهد، هکر کلاه‌سیاه می‌تواند با دانستن آن اطلاعات بدون هیچ زحمت خاصی بدون آگاهی کاربر وارد سامانه‌ی شما شود.

پیشنهاد خواندنی: کنترل ورودی کاربر، چرا و چگونه؟

سخن آخر

دسته‌ی آسیب پذیری Insecure OS/Firmware یکی از دسته‌‌ آسیب پذیری‌های بسیار خطرناک برای یک سامانه محسوب می‌شود. اجرای کد از راه دور و عدم تغییر پسورد پیش‌فرض سامانه می‌تواند به هکر فرصت جولان در سامانه را بدهد. ما در این بلاگ‌پست به معرفی آسیب‎‌پذیری‌های این دسته، میزان خطرشان و راه جلوگیری از آن‌ها پرداختیم.

مایلید جمعی از شکارچیان آسیب پذیری‌ها و هکرهای کلاه‌سفید را به کشف آسیب پذیری‌ها و حفره‌های امنیتی سامانه‌ی کسب‌وکارتان دعوت کنید؟ به عنوان میدان در باگ‌بانتی راورو ثبت‌نام کنید.

بلاگ‌پست‌های مرتبط:

SQL Injection؛ راهبردها و ترفندها

آسیب پذیری iframe Injection؛ پیدای پنهان