بهروزرسانی SAMBA و رفع آسیبپذیری CVE-2020-1472
تیم Samba برای رفع آسیبپذیری Netlogon با شناسه CVE-2020-1472 در نسخههای مختلف Samba بهروزرسانیهای امنیتی جدیدی را منتشر کرده است. این آسیبپذیری به مهاجم راه دور امکان میدهد تا کنترل سیستم آسیبپذیر را در دست بگیرد. پیش از این، برای اشکال امنیتی در پروتکل Netlogon، مایکروسافت در اگوست سال 2020 میلادی بهروزرسانی ارائه کرد. ازآنجاییکه Samba نیز این پروتکل را پیادهسازی کرده است پس Samba نیز آسیبپذیر است.
از آنجاییکه نسخه 4.8 از Samba و نسخههای بعد از آن به صورت پیشفرض از کانال امن پروتکل Netlogon استفاده میکنند و همین کانال امن برای مقابله با اکسپلویت موجود کافی است. مگر اینکه فایل پیکربندی smb.conf در این نسخهها تغییر داده شده و server schannelبرابر auto یاno قرار داده شود. نسخه 4.7 از Samba و نسخههای پیشتر از آن آسیب پذیر هستند مگر اینکه خط 'server schannel = yes' را در فایل پیکربندی smb.conf خود داشته باشند. بنابراین لازم است هر محصولی که نسخههای پیشتر از 4.7 از Samba را پشتیبانی میکند با افزودن این خط در فایل پیکربندی smb.conf محصول خود را در برابر این آسیب پذیری بهروزرسانی نماید.
بهرهبرداری از این آسیبپذیری امکان تغییر پسورد را فراهم میآورد. در Sambaهایی که به عنوان کنترلر دامنه NT4-like در حال اجرا هستند، خطر کمتر از زمانی است که Samba به عنوان کنترلر دامنهActive Directory اجرا میشود. تغییر حساب کاربری ماشین در این دامنهها به هکرها حق دسترسی محدودی مشابه دیگر اعضای سرور یا دامنههای مورد اعتماد را میدهد؛ اما در دامنههای AD تغییر پسورد کنترلر دامنه، امکان افشای کامل پایگاهداده پسوردها شامل پسوردkrbtgt، درهمسازی MD4 پسورد هر کاربر و درهمسازی پسورد LM را در صورتی که ذخیره شده باشد، فراهم میآورد. پسورد krbtgt به مهاجم این امکان را میدهد تا با صدور 'golden ticket' برای خود امکان بازگشت و در اختیار گرفتن دامنه را در هر زمانی در آینده داشته باشد.
Samba برای برخی از دامنهها که از نرمافزارهای شخص سوم استفاده میکنند و این نرمافزارها نمیتوانند با تنظیم 'server schannel = yes' کار کنند نیز راهحل دارد. در این مواقع کافیست در پیکربندی Samba به ماشینهای خاص اجازه دسترسی از کانال ناامن داده شود. برای مثال اگر تنظیمات زیر در smb.conf اعمال شود تنها به "triceratops$" و "greywacke$" این امکان میدهد که از کانال ناامن به Netlogon متصل شوند.
server schannel = yes
server require schannel:triceratops$ = no
server require schannel:greywacke$ = no
توجه به این نکته ضروریست که تنظیم schannel = yes در فایل پیکربندی به صورت کامل از شما محافظت نخواهد کرد. حتی در صورتی که این تنظیمات در فایل پیکربندی فعال باشد باز هم ممکن است Samba آسیبپذیر باشد. هر چند امکان دسترسی به وظیفهمندیهای دارای امتیاز خاص (privileged functionality) وجود نخواهد داشت.
Samba در بهروزرسانی خود که از طریق آدرس https://www.samba.org/samba/security در دسترس است بررسیهای بیشتری را در سرور در مقابل حملات به این پروتکلها افزوده است که این بهروزرسانی در صورتی که server schannel برابر no یا auto باشد از Samba محافظت خواهد کرد. همچنین آسیبپذیری در نسخه 4.12.7، 4.10.18 و 4.11.13 رفع شده است بنابراین از مدیران Samba در خواست میشود، محصولات خود را بهروزرسانی نمایند.