آیا باز نگه داشتن RDP در اینترنت خطرناک است؟

من اغلب این عقیده را خوانده ام که باز نگه داشتن پورت RDP (پروتکل دسکتاپ از راه دور) برای اینترنت بسیار ناامن است و نباید انجام شود. اما شما باید از طریق VPN یا فقط از آدرس های IP "سفید" خاصی به RDP دسترسی داشته باشید.

من چندین سرور ویندوز را برای شرکت‌های کوچک مدیریت می‌کنم که در آنها وظیفه فراهم کردن دسترسی از راه دور به Windows Server برای حسابداران را بر عهده دارم. این روند مدرن است - کار از خانه. خیلی سریع متوجه شدم که عذاب حسابداران VPN یک کار ناسپاس است و جمع آوری تمام IP ها برای لیست سفید کار نخواهد کرد، زیرا آدرس های IP افراد پویا هستند.

بنابراین، من ساده ترین مسیر را انتخاب کردم - پورت RDP را به خارج منتقل کردم. برای دسترسی، حسابداران اکنون باید RDP را اجرا کرده و نام میزبان (شامل پورت)، نام کاربری و رمز عبور را وارد کنند.

در این مقاله تجربیات (مثبت و نه چندان مثبت) و توصیه های خود را به اشتراک می گذارم.

خطرات

با باز کردن پورت RDP چه چیزی را به خطر می اندازید؟

1) دسترسی غیرمجاز به داده های حساس
اگر شخصی رمز عبور RDP را حدس بزند، می‌تواند داده‌هایی را که می‌خواهید خصوصی نگه دارید به دست آورد: وضعیت حساب، موجودی، داده‌های مشتری، ...

2) از دست دادن اطلاعات
به عنوان مثال، در نتیجه یک ویروس باج افزار.
یا اقدام عمدی توسط مهاجم.

3) از دست دادن ایستگاه کاری
کارگران باید کار کنند، اما سیستم به خطر افتاده است و باید دوباره نصب/بازیابی/پیکربندی شود.

4) به خطر افتادن شبکه محلی
اگر یک مهاجم به یک رایانه ویندوزی دسترسی پیدا کرده باشد، از این رایانه می تواند به سیستم هایی دسترسی پیدا کند که از خارج، از اینترنت، غیرقابل دسترسی هستند. به عنوان مثال، به اشتراک گذاری فایل، به چاپگرهای شبکه و غیره.

من موردی داشتم که ویندوز سرور یک باج افزار را گرفت

و این باج افزار ابتدا بیشتر فایل های موجود در درایو C: را رمزگذاری کرد و سپس شروع به رمزگذاری فایل های NAS از طریق شبکه کرد. از آنجایی که NAS Synology بود، با پیکربندی عکس های فوری، NAS را در 5 دقیقه بازیابی کردم و ویندوز سرور را دوباره از ابتدا نصب کردم.

مشاهدات و توصیه ها

من با استفاده از سرورهای ویندوز نظارت می کنم Winlogbeat، که گزارش ها را به ElasticSearch ارسال می کند. کیبانا چندین تصویرسازی دارد و من یک داشبورد سفارشی نیز راه اندازی کردم.
نظارت به خودی خود محافظت نمی کند، اما به تعیین اقدامات لازم کمک می کند.

در اینجا برخی از مشاهدات وجود دارد:
الف) RDP بی رحمانه خواهد بود.
در یکی از سرورها، من RDP را نه در پورت استاندارد 3389، بلکه در 443 نصب کردم - خوب، من خودم را به عنوان HTTPS پنهان می کنم. احتمالا ارزش تعویض پورت را از پورت استاندارد دارد، اما فایده چندانی نخواهد داشت. در اینجا آمار این سرور آمده است:

آیا باز نگه داشتن RDP در اینترنت خطرناک است؟

می توان مشاهده کرد که در یک هفته تقریباً 400 تلاش ناموفق برای ورود از طریق RDP انجام شد.
مشاهده می شود که تلاش هایی برای ورود از 55 آدرس IP صورت گرفته است (بعضی از آدرس های IP قبلاً توسط من مسدود شده بودند).

این به طور مستقیم نتیجه گیری را نشان می دهد که شما باید fail2ban را تنظیم کنید، اما

چنین ابزاری برای ویندوز وجود ندارد.

چند پروژه رها شده در Github وجود دارد که به نظر می رسد این کار را انجام می دهند، اما من حتی سعی نکرده ام آنها را نصب کنم:
https://github.com/glasnt/wail2ban
https://github.com/EvanAnderson/ts_block

آب و برق پولی نیز وجود دارد، اما من آنها را در نظر نگرفته ام.

اگر یک ابزار منبع باز برای این منظور می شناسید، لطفاً آن را در نظرات به اشتراک بگذارید.

بروزرسانی: در نظرات پیشنهاد شد که پورت 443 انتخاب بدی است و بهتر است پورت های بالا (32000+) را انتخاب کنید زیرا 443 بیشتر اسکن می شود و تشخیص RDP روی این پورت مشکلی ندارد.

ب) نام های کاربری خاصی وجود دارد که مهاجمان ترجیح می دهند
مشاهده می شود که جستجو در فرهنگ لغت با نام های مختلف انجام شده است.
اما این چیزی است که من متوجه شدم: تعداد قابل توجهی از تلاش ها از نام سرور به عنوان ورود استفاده می کنند. توصیه: از یک نام برای رایانه و کاربر استفاده نکنید. علاوه بر این، گاهی اوقات به نظر می رسد که آنها سعی می کنند نام سرور را به نحوی تجزیه کنند: به عنوان مثال، برای سیستمی با نام DESKTOP-DFTHD7C، بیشترین تلاش برای ورود به سیستم با نام DFTHD7C انجام می شود:

آیا باز نگه داشتن RDP در اینترنت خطرناک است؟

بر این اساس، اگر یک رایانه DESKTOP-MARIA دارید، احتمالاً سعی خواهید کرد به عنوان کاربر MARIA وارد شوید.

نکته دیگری که از لاگ‌ها متوجه شدم: در اکثر سیستم‌ها، بیشتر تلاش‌ها برای ورود به سیستم با نام "administrator" انجام می‌شود. و این بی دلیل نیست، زیرا در بسیاری از نسخه های ویندوز، این کاربر وجود دارد. علاوه بر این، نمی توان آن را حذف کرد. این کار را برای مهاجمان ساده می کند: به جای حدس زدن نام و رمز عبور، فقط باید رمز عبور را حدس بزنید.
به هر حال، سیستمی که باج افزار را گرفتار کاربر Administrator و رمز عبور Murmansk#9 بود. من هنوز مطمئن نیستم که این سیستم چگونه هک شده است، زیرا من دقیقاً پس از آن حادثه نظارت را شروع کردم، اما فکر می کنم که بیش از حد ممکن است.
بنابراین اگر کاربر Administrator قابل حذف نیست، پس چه باید کرد؟ می توانید نام آن را تغییر دهید!

توصیه های این بند:

  • از نام کاربری در نام کامپیوتر استفاده نکنید
  • اطمینان حاصل کنید که هیچ کاربر Administrator در سیستم وجود ندارد
  • از رمزهای عبور قوی استفاده کنید

بنابراین، من حدود چند سال است که چندین سرور ویندوز تحت کنترل خود را تماشا می‌کنم که به صورت brute-force انجام می‌شوند و موفقیتی هم نداشته است.

از کجا بفهمم ناموفق است؟
زیرا در اسکرین شات های بالا مشاهده می کنید که گزارش هایی از تماس های موفق RDP وجود دارد که حاوی اطلاعات زیر است:

  • از کدام آی پی
  • از کدام کامپیوتر (نام میزبان)
  • نام کاربری
  • اطلاعات GeoIP

و من مرتباً آنجا را بررسی می کنم - هیچ ناهنجاری پیدا نشده است.

به هر حال، اگر یک IP خاص به‌شدت سخت تحت فشار قرار می‌گیرد، می‌توانید IP‌ها (یا زیرشبکه‌ها) را مانند این در PowerShell مسدود کنید:

New-NetFirewallRule -Direction Inbound -DisplayName "fail2ban" -Name "fail2ban" -RemoteAddress ("185.143.0.0/16", "185.153.0.0/16", "193.188.0.0/16") -Action Block

در ضمن الاستیک علاوه بر Winlogbeat هم داره ضربان حسابرسی، که می تواند فایل ها و فرآیندهای روی سیستم را نظارت کند. همچنین یک برنامه SIEM (اطلاعات امنیتی و مدیریت رویداد) در کیبانا وجود دارد. من هر دو را امتحان کردم، اما فایده زیادی ندیدم - به نظر می رسد Auditbeat برای سیستم های لینوکس مفیدتر خواهد بود، و SIEM هنوز چیزی قابل فهم به من نشان نداده است.

خوب، توصیه های نهایی:

  • بک آپ گیری خودکار به طور منظم.
  • به روز رسانی های امنیتی را به موقع نصب کنید

پاداش: لیستی از 50 کاربر که اغلب برای تلاش برای ورود به سیستم RDP استفاده می شدند

"user.name: نزولی"
شمردن

dfthd7c (نام میزبان)
842941

winsrv1 (نام میزبان)
266525

مدیر
180678

مدیر
163842

مدیر
53541

مایکل
23101

سرور
21983

استیو
21936

جان
21927

پل
21913

پذیرش
21909

مخفف کلمه میکروفون
21899

دفتر
21888

اسکنر
21887

اسکن
21867

داود
21865

کریس
21860

مالک
21855

مدیر
21852

مدیر
21841

برایان
21839

مدیر
21837

علامت
21824

کارکنان
21806

مدیر
12748

ریشه
7772

مدیر
7325

پشتیبانی
5577

متوسط
5418

USER
4558

مدیر سایت
2832

تست
1928

خروجی
1664

مدیر سایت
1652

مهمان
1322

USER1
1179

اسکنر
1121

SCAN
1032

مدیر
842

ADMIN1
525

پشتیبان گیری
518

MySqlAdmin
518

پذیرش
490

USER2
466

TEMP
452

SQLADMIN
450

USER3
441

1
422

مدیر
418

OWNER
410

منبع: www.habr.com

اضافه کردن نظر