آسیبپذیری بحرانی LOG4J
خلاصه: آسیبپذیری بحرانی در کتابخانه بسیارکاربردی logging جاوا به نام log4j بسیاری از محصولات کاربردی از برندهای مطرحی را تحت تأثیر قرار داده است.
آسیبپذیری بحرانی در کتابخانه بسیارکاربردی logging جاوا به نام log4j کشف شده است. این آسیبپذیری روزصفر با شناسه CVE-2021-44228 از نوع اجرای کد از راه دور (RCE) است که میتواند کنترل کل سرور آسیبپذیر را به مهاجم بسپارد. برای این آسیب پذیری در حال حاضر اکسپلویت فعالی وجود دارد و سطح خطر آن از 10، 10 اندازه گیری شده است.
کتابخانه Log4j آپاچی، کتابخانه بسیار فراگیری است که برای ثبت پیغامهای خطا در میلیونها برنامه جاوا به کار گرفته شده است و آسیبپذیری به این شدت خطر میتواند بسیاری از کاربران و سرویسهای سراسر اینترنت را به خطر بیندازد.
برای سوءاستفاده از این آسیبپذیری، مهاجم میتواند از یک رشته متنی استفاده کند. این رشته برنامه را تحریک میکند تا با سیستم میزبان مهاجم ارتباط برقرار کند.
بنا به گزارش شرکتهای امنیتی اعم از BitDefender، Cisco Talos، Huntress Labs و Sonatype در حال حاضر اسکنهای انبوهی در حال انجام است که هدف آنها پیدا کردن سرورهای آسیبپذیر در سطح اینترنت است. همچنین با دردسترسی بودن اکسپلویت فعال برای این آسیبپذیری، حملاتی گستردهای علیه شبکههای Honeypot این شرکتها در حال وقوع است. این امر احتمال بسیار بالای حمله به سیستمهای آسیبپذیر را نشان میدهد. نکته قابل ذکر است که اجرای این حمله نیاز به دانش فنی بالایی نیز ندارد.
بسیاری از شرکتهای امنیتی اعم از BitDefender، Cisco Talos، Huntress Labs و Sonatype شواهدی مبنی بر اسکنهای انبوه برنامههای کاربردی آسیبپذیر در سطح اینترنت برای سرورهای آسیبپذیر و حملات ثبتشده علیه شبکههای Honeypot آنها پس از در دسترس بودن یک سوء استفاده اثبات مفهوم (PoC) تایید کردهاند. Ilkka Turunen از Sonatype گفت: "این یک حمله با مهارت کم است که اجرای آن بسیار ساده است."
سیستمهای آسیبپذیر
تمامی سیستمها و سرورهایی که از کتابخانه متنباز Java logging در نسخههای 2.0 تا 2.14.1 بهره میبرند تحت تأثیر این آسیبپذیری هستند. از همین رو بسیاری از برنامهها و سرویسهای جاوایی هم اکنون در معرض تهدید اکسپلویت فعال این آسیبپذیری هستند.
کتابخانه Log4j به عنوان یک بسته Logging به سیستم در انواع نرمافزارهای مختلف برندهای مطرحی از جمله Amazon، Apple iCloud، Cisco، Cloudflare، ElasticSearch، Red Hat، Steam، Tesla، Twitter و بازیهای ویدئویی مانند Minecraft استفاده میشود. به طور مثال در مورد آخر، مهاجمان توانستهاند به سادگی با قرار دادن یک پیام ساختگی در قسمت چت، اختیار اجرای RCE را در سرورهای Minecraft بدست بیاوردند.
برای تشخیص این که تحت تأثیر این آسیبپذیری میتوان از راهنمایی موجود در این لینک بهره گرفت.
جلوگیری از حمله
کتابخانه log4j را به log4j-2.15.0 بهروزرسانی کنید.
کاهش خطر
پارامتر log4j2.formatMsgNoLookups را به مقدار true تغییر دهید. بدین منظور بایستی "‐Dlog4j2.formatMsgNoLookups=True” را به دستور JVM برنامه خود اضافه کنید (البته این روش فقط برای نسخههای 2.10 و بالاتر کارآمد است).