اگر وب سرور شما روی Apache Tomcat اجرا میشود، هرچه سریعتر آخرین نسخه موجود برنامه سرور را نصب کنید تا از کنترل غیر مجاز هکرها جلوگیری کنید.
بله! درست شنیدید، این موضوع امکان پذیر است زیرا تمام ورژنهای (۹٫x/8.x/7.x/6.x) Apache Tomcat که طی ۱۳ سال گذشته منتشر شدهاند، در برابر CVSS 9.8 آسیبپذیر هستند، آسیبپذیری که اگر اجرا شود، میتواند تنظیمات پیشفرض را اکسپلویت کند.
اما این موضوع بسیار نگرانکنندهتر از این حرفها است، زیرا نمونههایی از اکسپلویت این آسیبپذیری در اینترنت هم ظاهر شده است که این قضیه، هک وب سرورهای آسیبپذیرِ در دسترس عموم را برای هر کسی آسان میکند.
این نقص که با نام “Ghostcat” و شناسه ردیابی CVE-2020-1938 شناخته میشود، به مهاجمان غیر مجاز اجازه میدهد که به صورت ریموت، محتوای هر فایلی را روی وب سرور آسیبپذیر بخوانند و فایلهای پیکربندی حساس یا کد منبع را به دست بیاورند، یا اگر وب سرور اجازه آپلود فایل را بدهد، کدهای دلخواه خود را آپلود کنند.
نقص Ghostcat چیست و چطور کار میکند؟
طبق گفته یک کمپانی امنیت سایبری چینی به نام Chaitin Tech، این آسیبپذیری در پروتکل AJP نرمافزار Apache Tomcat مستقر است و به دلیل استفاده نامناسب از یک ویژگی ایجاد شده است.
محققان میگویند: ” اگر سایت به کاربران اجازه آپلود فایل را بدهد، یک مهاجم در ابتدا میتواند یک فایل حاوی کد اسکریپت مخرب JSP را بر روی سرور آپلود کند (فایل آپلود شده میتواند از هر نوعی باشد؛ از جمله تصویری، فایل متنی ساده و غیره) و سپس فایل آپلود شده را با استفاده از اکسپلویت Ghostcat درج کنند که این کار در نهایت، منجر به اجرای کد از راه دور میشود.
پروتکل AJP اساساً یک نسخه بهینهسازی شده از پروتکل HTTP است که به Tomcat اجازه میدهد با یک وب سرور آپاچی ارتباط برقرار کند.
هرچند AJP به صورت پیشفرض فعال شده و به پورت TCP 8900 گوش میدهد، این پروتکل به IP آدرس ۰٫۰٫۰٫۰ محدود شده و فقط به صورت ریموت میتواند توسط کاربران غیرمجاز اکسپلویت شود.
بر اساس Onyphe، موتور جستجوگر دادههای منبع باز و هوش تهدید سایبری، بیش از ۰۰۰/۱۷۰ دستگاه وجود دارند که در زمان نوشتن، یک رابط AJP را در اینترنت به همه نشان میدهند.
آسبپذیری Apache Tomcat: وصله و کاهش انتشار
محققان Chaitin، ماه گذشته این نقص را کشف و به پروژه آپاچی گزارش کردند. هماکنون نسخههای ۹٫۰٫۳۱، ۸٫۵٫۵۱ و ۷٫۰٫۱۰۰ برای Patch کردن این مشکل موجود است. همچنین در نسخههای اخیر، ۲ مورد آسیبپذیری با شناسههای CVE-2020-1935 و CVE-2019-17569نیز رفع شده است.
به ادمینهای وب اکیداً توصیه میشود که هرچه سریعتر آخرین بروزرسانیهای نرمافزار را اعمال کنند و پورت AJP را هرگز در معرض دید کاربران مشکوک قرار ندهند، چرا که این پورت از طریق کانالهای ناامن ارتباط برقرار میکند و پیشنهاد میشود که در یک شبکه قابل اعتماد مورد استفاده قرار گیرد.
طبق گفته تیم Tomcat، کاربران باید توجه داشته باشند که تعدای از تغییرات در پیکربنی پیشفرض رابط AJP ورژن ۹٫۰٫۳۱ اعمال شده تا تنظیمات پیشفرض را سختتر کند. به نظر میرسد کاربرانی که ورژن ۹٫۰٫۳۱ یا بعد از آن را نصب کردهاند، لازم است تغییرات کوچکی در تنظیمات خود ایجاد کنند.
اگر به هر دلیلی نمیتوانید وب سرور آسیبدیده خود را فوراً بروزرسانی کنید، میتوانید رابط AJP را مستقیماً غیرفعال کنید یا آدرس شنود آن را به لوکال هاست تغییر دهید.