در صورت سوء استفاده، این نقص ها می توانند به مهاجمان اجازه دسترسی غیرمجاز به اطلاعات حساس را بدهند یا به طور کلی مشکلاتی ایجاد کنند.
یک آسیب پذیری شناسایی شده است (از قبل در فهرست CVE-2023-22809 ذکر شده است) en بسته sudo که برای اجرای دستورات از طرف دیگر کاربران استفاده میشود و به کاربر محلی اجازه میدهد تا هر فایلی را در سیستم ویرایش کند، که به نوبه خود اجازه میدهد با تغییر /etc/shadow یا اسکریپتهای سیستم، حقوق ریشه را به دست آورد. .
برای سوء استفاده از آسیب پذیری، کاربر باید حق اجرای ابزار sudoedit یا "sudo" را با پرچم "-e" در sudoers داشته باشد.
این باگ اشاره میکند که sudo (su "do") به مدیر سیستم اجازه میدهد تا به کاربران خاصی (یا گروههایی از کاربران) توانایی اجرای برخی (یا همه) دستورات را بهعنوان روت یا کاربر دیگری در حین اجرا تفویض کند. یک دنباله حسابرسی فراهم میکند. از دستورات و استدلال های آنها.
این آسیبپذیری به دلیل عدم مدیریت صحیح کاراکترهای «–» هنگام تجزیه متغیرهای محیطی است که برنامه فراخوانی شده برای ویرایش فایل را تعیین میکنند.
در sudo، دنباله "–" برای جدا کردن ویرایشگر و آرگومان ها استفاده می شود از لیست فایل های در حال ویرایش یک مهاجم می تواند “–file” را به متغیرهای محیطی SUDO_EDITOR اضافه کند, VISUAL یا EDITOR بعد از مسیر ویرایشگر که باعث می شود فایل مشخص شده با امتیازات بالا بدون بررسی قوانین دسترسی به فایل کاربر ویرایش شود.
درباره جزئیات آسیب پذیری موارد زیر ذکر شده است:
هنگامی که به عنوان sudo -e یا sudoedit اجرا می شود، sudo می تواند برای ویرایش فایل های دارای امتیازات در حالی که ویرایشگر را به عنوان یک کاربر غیرمجاز اجرا می کند، استفاده شود. فایل خط مشی sudoers تعیین می کند که آیا کاربر می تواند فایل های مشخص شده را ویرایش کند یا خیر. رفتار مورد انتظار این است که ماژول خط مشی sudoers یک بردار آرگومان را به sudo front-end حاوی ویرایشگر برگرداند تا همراه با فایل هایی که باید ویرایش شوند اجرا شود و با آرگومان «–» از هم جدا شده اند.
La ترتیب وقایع به شرح زیر است:
- sudo front-end یک درخواست بررسی خط مشی را به ماژول sudoers ارسال می کند که نشان می دهد کاربر sudoedit را اجرا کرده است و شامل لیست فایل هایی برای ویرایش است.
- ماژول خط مشی sudoers از فایل sudoers (یا LDAP) برای تعیین اینکه آیا کاربر می تواند فایل ها را ویرایش کند استفاده می کند.
- اگر بررسی خط مشی موفقیت آمیز باشد، ماژول خط مشی sudoers یک ویرایشگر بر اساس متغیرهای SUDO_EDITOR، VISUAL و EDITOR در محیط کاربر انتخاب می کند.
- ماژول sudoers یک بردار آرگومان جدید متشکل از ویرایشگر انتخاب شده می سازد. اگر ویرایشگر دارای گزینه های خط فرمان باشد، به چندین آرگومان تقسیم می شود.
- یک جداکننده "–" به بردار آرگومان اضافه می شود و به دنبال آن لیست فایل هایی که باید ویرایش شوند. این بردار آرگومان به sudo front-end برگردانده می شود.
- sudo front-end از جداکننده “–” برای تعیین اینکه کدام فایل ها را ویرایش کند استفاده می کند. کپی های موقت از فایل ها با تنظیم مالک برای کاربر تماس گیرنده ساخته می شود.
- sudo front-end یک بردار آرگومان جدید متشکل از همه عناصر قبل از جداکننده «–» (ویرایشگر) و به دنبال آن مسیرهای فایل موقت می سازد. بردار آرگومان جدید به عنوان کاربری که آن را فراخوانی می کند اجرا می شود.
- فایل های موقت به مکان اصلی خود کپی می شوند و نسخه های موقت حذف می شوند.
- اگر ویرایشگر مشخص شده توسط کاربر دارای آرگومان «–» نیز باشد، آسیب پذیری وجود دارد. این کار جلوی sudo را فریب میدهد تا همه چیز را پس از آرگومان «–» در ویرایشگر بهعنوان فایلی برای ویرایش در نظر بگیرد، حتی اگر خطمشی sudoers این اجازه را ندهد.
این آسیب پذیری از شعبه 1.8.0 وجود داشته است و در به روز رسانی اصلاحی sudo 1.9.12p2 رفع شد. انتشار به روز رسانی بسته در توزیع ها را می توان در صفحات مشاهده کرد: دبیان, اوبونتو, جنتو, ریل, سوس, کلاه نمدی مردانه, قوس, FreeBSD y NetBSD.
در نهایت ذکر می شود که به عنوان یک راه حل امنیتی، می توانید پردازش متغیرهای محیطی SUDO_EDITOR، VISUAL و EDITOR را با تعیین در sudoers غیرفعال کنید:
Defaults!sudoedit env_delete+="SUDO_EDITOR VISUAL EDITOR"
Fuente: https://www.synacktiv.com/
اولین کسی باشید که نظر