Nie raz som čítal názory, že držanie portu RDP (Remote Desktop Protocol) otvoreného na internete je dosť nebezpečné a robiť to by sa nemalo. Prístup k RDP by sa mal poskytovať buď cez VPN alebo len z určitých "bielych" IP adries.
Administrujem niekoľko Windows Serverov pre malé firmy, kde som bol požiadaný o zabezpečenie vzdialeného prístupu k Windows Serveru pre účtovníkov. Takýto moderný trend — práca z domu. Rýchlo som zistil, že trápiť účtovníkov VPN je vďačné zamestnanie, a že dostatočne zhromaždiť všetky IP pre bielu listinu nie je možné, pretože IP adresy ľudí sú dynamické.
Preto som sa rozhodol pre najjednoduchšiu cestu — presmeroval som port RDP von. Teraz na to, aby sa účtovníci dostali, potrebujú spustiť RDP a zadať názov hostiteľa (vrátane portu), meno používateľa a heslo.
V tomto článku sa podelím o svoje skúsenosti (pozitívne aj menej pozitívne) a odporúčania.
Riziká
Čím riskujete otvorením portu RDP?
1) Neautorizovaný prístup k citlivým údajom
Ak si niekto vylomí heslo k RDP, dostane sa k údajom, ktoré chcete udržiavať v súkromí: stav účtov, zostatky, údaje klientov, …
2) Strata údajov
Napríklad v dôsledku činnosti šifrovacieho vírusu.
Alebo cielenej činnosti útočníka.
3) Strata pracovnej stanice
Zamestnanci potrebujú pracovať, a systém je skompromitovaný, treba ho preinštalovať / obnoviť / nakonfigurovať.
4) Kompromitácia miestnej siete
Ak útočník získal prístup k Windows počítaču, môže z tohto počítača získať prístup k systémom, ktoré nie sú dostupné zvonka, z internetu. Napríklad k zdieľaným súborom, k sieťovým tlačiarňam atď.
Mal som prípad, keď Windows Server chytal šifrovateľa
a tento šifrovateľ najprv zašifroval väčšinu súborov na disku C:, a potom začal šifrovať súbory na NAS v sieti. Keďže NAS bola Synology s nastavenými snapshotmi, potom som sa NAS obnovil za 5 minút, zatiaľ čo Windows Server som preinštaloval od nuly.
Pozorovania a odporúčania
Monitorujem Windows Servery pomocou , ktoré posielajú logy do ElasticSearch. V Kibane je niekoľko vizualizácií a ja som si navyše nastavil vlastný dashboard.
Sám monitoring neochráni, ale pomáha určiť potrebné opatrenia.
Tu sú niektoré pozorovania:
a) RDP budú bruteforciť.
Na jednom zo serverov som RDP nastavil nie na štandardný port 3389, ale na 443 — akoby som sa zamaskoval pod HTTPS. Zmenit štandardný port sa možno oplatí, ale z toho nie je veľký úžitok. Tu sú štatistiky z tohto servera:

Je vidieť, že za týždeň bolo takmer 400 000 neúspešných pokusov o prístup cez RDP.
Je vidieť, že pokusy o prístup boli z 55 001 IP adries (niektoré IP adresy som už zablokoval).
Tu sa priamo núka záver, že treba nainštalovať fail2ban, ale
pre Windows taká utilita — neexistuje.
Existuje pár opustených projektov na Githube, ktoré to údajne robia, ale ani som sa ich nepokúšal nainštalovať:
Sú aj platené utility, ale tie som nezvažoval.
Ak poznáte otvorenú utilitu na tento účel — podeľte sa v komentároch.
Aktualizácia: V komentároch naznačili, že port 443 — nie je najlepšia voľba, a lepšie je zvoliť vysoké porty (32000+), pretože 443 sa skenuje častejšie a identifikovať RDP na tomto porte — nie je problém.
Aktualizácia: V komentároch naznačili, že taká utilita existuje:
b) Existujú určité používateľské mená, ktoré útočníci preferujú
Je vidieť, že preberanie prebieha podľa slovníka s rôznymi menami.
Ale čo som si všimol: značný počet pokusov — to je používanie mena servera ako prihlasovacieho mena. Odporúčanie: nepoužívajte rovnaké meno pre počítač a pre používateľa. Okrem toho, niekedy sa pokúšajú meno servera nejako rozpoznať: napríklad pre systém so menom DESKTOP-DFTHD7C najviac pokusov o prístup sa uskutočnilo s menom DFTHD7C:

Podľa toho, ak máte počítač DESKTOP-MARIA, pravdepodobne budú prebiehať pokusy o prístup pod používateľom MARIA.
Ešte, čo som si všimol z protokolov: na väčšine systémov, väčšina pokusov o prístup — je s menom "administrator". A to nie je náhodné, pretože v mnohých verziách Windows, tento používateľ existuje. Navyše — nemožno ho odstrániť. To uľahčuje úlohu pre útočníkov: namiesto uhádania mena a hesla stačí uhádnuť len heslo.
Mimochodom, systém, ktorý u mňa zachytil ransomvér, mal používateľa Administrator a heslo Murmansk#9. Ešte nie som si istý, ako ho ten systém hackli, pretože som začal monitorovať práve po tom prípade, ale myslím si, že preberanie — je pravdepodobné.
Ak teda používateľa Administrator nemožno odstrániť, čo robiť? Môže sa premenovať!
Odporúčania z tohto bodu:
- nepoužívajte meno používateľa v názve počítača
- ujistite sa, že v systéme nie sú používateľia Administrator
- používajte silné heslá
Takto sledujem, ako niekoľko serverov Windows pod mojím dohľadom je už niekoľko rokov brutálne skúšaných bez úspechu.
Odkiaľ viem, že bez úspechu?
Pretože na obrázkoch vyššie je vidieť, že existujú záznamy o úspešných prihláseniach cez RDP, kde sú uvedené informácie:
- z akého IP
- z akého počítača (hostname)
- meno používateľa
- GeoIP informácie
A pravidelne sa na to pozerám — anomálie neboli zistené.
Mimochodom, ak sa brutálne pokúša o prihlásenie z nejakého IP, jednotlivé IP (alebo podsiete) je možné zablokovať pomocou PowerShellu takto:
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 BlockMimochodom, Elastic má okrem Winlogbeat aj , ktorý môže sledovať súbory a procesy na systéme. Existuje aj SIEM (Security Information & Event Management) aplikácia v Kibana. Skúšal som oboje, ale nevidel som v tom veľký prínos - zdá sa, že Auditbeat bude užitočnejší pre systémy Linux, zatiaľ čo SIEM mi nič zrozumiteľné neukázal.
A na záver odporúčania:
- vykonávajte pravidelné automatické zálohy.
- včas inštalujte bezpečnostné aktualizácie.
Bonus: zoznam 50 používateľov, ktorí sa najčastejšie pokúšali o prihlásenie cez RDP
"user.name: Descending"
Počet
dfthd7c (hostname)
842941
winsrv1 (hostname)
266525
ADMINISTRATOR
180678
administrator
163842
Administrator
53541
michael
23101
server
21983
steve
21936
john
21927
paul
21913
reception
21909
mike
21899
office
21888
scanner
21887
scan
21867
david
21865
chris
21860
owner
21855
manager
21852
administrateur
21841
brian
21839
administrador
21837
mark
21824
staff
21806
ADMIN
12748
ROOT
7772
ADMINISTRADOR
7325
SUPPORT
5577
SOPORTE
5418
USER
4558
admin
2832
TEST
1928
MySql
1664
Admin
1652
GUEST
1322
USER1
1179
SCANNER
1121
SCAN
1032
ADMINISTRATEUR
842
ADMIN1
525
BACKUP
518
MySqlAdmin
518
RECEPTION
490
USER2
466
TEMP
452
SQLADMIN
450
USER3
441
1
422
MANAGER
418
Často som počul názor, že udržiavať RDP (Remote Desktop Protocol) port otvorený na internete je veľmi nebezpečné a nemali by ste to robiť.
410
Zdroj: habr.com
