وصله اضطراری برای آسیبپذیری بدنام در کتابخانه جاوا Log4j بیخطا نیست. بنیاد نرم افزار آپاچی نسخه جدیدی را برای رفع آسیب پذیری یک بار برای همیشه منتشر می کند.
یک آسیبپذیری در یک کتابخانه بسیار محبوب برای جاوا، چشمانداز جهانی فناوری اطلاعات را متزلزل کرده است. تخمین زده می شود که کتابخانه در اکثر محیط های شرکتی وجود دارد.
Log4j عمدتا برای ورود به سیستم استفاده می شود. رویدادها در برنامه ها را می توان با یادداشت ها ثبت کرد. پس از تلاش برای ورود، به پرینت جزئیات ورود فکر کنید. یا در مورد یک برنامه وب در جاوا، نام مرورگری که کاربر سعی دارد به آن متصل شود.
نمونه های اخیر رایج هستند. در هر دو مورد، یک کاربر خارجی بر گزارش خروجی Log4j تأثیر می گذارد. امکان سوء استفاده از این نفوذ وجود دارد. گزارشهای هر نسخه Log4j بین 13 سپتامبر 2013 تا 5 دسامبر 2021 میتوانند به برنامههای جاوا دستور دهند تا کد را از یک سرور راه دور در یک دستگاه محلی اجرا کنند.
از سال 2013، Log4j یک API را پردازش می کند: JNDI، یا Java Naming and Directory Interface. اضافه شدن JNDI به یک برنامه جاوا اجازه می دهد تا کد را از یک سرور راه دور در یک دستگاه محلی اجرا کند. برنامه نویسان با افزودن یک خط از جزئیات مربوط به سرور راه دور در یک برنامه، دستور می دهند.
مشکل این است که نه تنها برنامه نویسان می توانند این قانون را به برنامه ها اضافه کنند. فرض کنید Log4j نامهای کاربری تلاشهای ورود به سیستم را ثبت کند. هنگامی که شخصی خط فوق الذکر را در قسمت نام کاربری وارد می کند، Log4j خط را اجرا می کند و برنامه جاوا دستوری را برای اجرای کد در سرور مشخص شده تفسیر می کند. همین امر در مورد مواردی که Log4j یک درخواست HTTPS را ثبت می کند نیز صدق می کند. اگر نام یک مرورگر را به خط تغییر دهید، Log4j خط را اجرا می کند و به طور غیرمستقیم به آن دستور می دهد تا کد مورد نظر را اجرا کند.
پچ اضطراری نیز می تواند ناامن باشد
در 9 دسامبر، این آسیبپذیری در مقیاس وسیع آشکار شد. بنیاد نرمافزار آپاچی، توسعهدهنده Log4j، یک وصله اضطراری (2.15) برای رفع این آسیبپذیری منتشر کرد. از آن زمان، پردازش نسخه 2.15 و ارائه یک وصله برای سازمانها، اولویت اصلی فروشندگان نرمافزار بوده است.
با این حال، سازمان امنیتی LunaSec بیان می کند که این وصله کاملاً ضد آب نیست. امکان تنظیم یک تنظیم و اجرای دستورات JNDI ثبت شده وجود دارد.
لطفاً توجه داشته باشید: تنظیمات مربوطه باید به صورت دستی تنظیم شود، به طوری که انواع اصلاح نشده 2.15 واقعاً ایمن باشند. با این وجود، Luna Sec توصیه می کند که تامین کنندگان و سازمان ها به Log4j 2.16 به روز شوند. 2.16 توسط بنیاد نرم افزار آپاچی در پاسخ به LunaSec منتشر شد. نسخه جدید به طور کامل تنظیمات آسیب پذیر را حذف می کند و ایجاد شرایط برای سوء استفاده را غیرممکن می کند.