Dažnai skaičiau nuomonę, kad RDP (Remote Desktop Protocol) prievadą laikyti atvirą internetui yra labai nesaugu ir to daryti nereikėtų. Bet jums reikia suteikti prieigą prie KPP arba per VPN, arba tik iš tam tikrų „baltų“ IP adresų.
Administruoju keletą Windows serverių mažoms įmonėms, kuriose man buvo pavesta buhalteriams suteikti nuotolinę prieigą prie Windows Server. Tai šiuolaikinė tendencija – darbas iš namų. Gana greitai supratau, kad kankinti VPN buhalterius yra nedėkingas darbas, o rinkti visus IP baltajam sąrašui nepavyks, nes žmonių IP adresai yra dinamiški.
Todėl pasirinkau paprasčiausią kelią – persiunčiau KPP prievadą į išorę. Norėdami gauti prieigą, buhalteriai dabar turi paleisti KPP ir įvesti pagrindinio kompiuterio pavadinimą (įskaitant prievadą), vartotojo vardą ir slaptažodį.
Šiame straipsnyje pasidalinsiu savo patirtimi (teigiama ir nelabai) bei rekomendacijomis.
Rizika
Kuo rizikuojate atidarydami KPP prievadą?
1) Neteisėta prieiga prie jautrių duomenų
Jei kas nors atspės KPP slaptažodį, jis galės gauti duomenis, kuriuos norite išlaikyti privačius: sąskaitos būseną, likučius, klientų duomenis, ...
2) Duomenų praradimas
Pavyzdžiui, dėl išpirkos reikalaujančio viruso.
Arba tyčinis užpuoliko veiksmas.
3) Darbo vietos praradimas
Darbuotojai turi dirbti, bet sistema pažeista ir ją reikia iš naujo įdiegti/atkurti/konfigūruoti.
4) Vietinio tinklo kompromisas
Jei užpuolikas gavo prieigą prie „Windows“ kompiuterio, tada iš šio kompiuterio jis galės pasiekti sistemas, kurios yra nepasiekiamos iš išorės, iš interneto. Pavyzdžiui, failų bendrinimui, tinklo spausdintuvams ir kt.
Turėjau atvejį, kai „Windows Server“ sugavo išpirkos reikalaujančią programinę įrangą
ir ši išpirkos programa pirmiausia užšifravo daugumą C: diske esančių failų, o tada pradėjo šifruoti failus NAS tinkle. Kadangi NAS buvo „Synology“, su sukonfigūruotomis momentinėmis nuotraukomis, atkūriau NAS per 5 minutes ir iš naujo įdiegiau „Windows Server“ nuo nulio.
Pastabos ir rekomendacijos
Stebiu Windows serverius naudodamas
Pats stebėjimas neapsaugo, bet padeda nustatyti būtinas priemones.
Štai keletas pastebėjimų:
a) KPP bus žiauriai priverstinė.
Viename iš serverių KPP įdiegiau ne į standartinį 3389 prievadą, o į 443 - gerai, aš užmaskuosiu HTTPS. Tikriausiai verta pakeisti prievadą iš standartinio, bet tai nieko gero neduos. Štai šio serverio statistika:
Matyti, kad per savaitę buvo beveik 400 000 nesėkmingų bandymų prisijungti per KPP.
Matosi, kad buvo bandoma prisijungti iš 55 001 IP adreso (kai kurie IP adresai jau buvo mano užblokuoti).
Tai tiesiogiai rodo išvadą, kad reikia nustatyti fail2ban, bet
Tokios „Windows“ programos nėra.
„Github“ yra keletas apleistų projektų, kurie, atrodo, tai daro, bet aš net nebandžiau jų įdiegti:
Yra ir mokamų komunalinių paslaugų, bet aš jų nesvarsčiau.
Jei žinote šiam tikslui skirtą atvirojo kodo priemonę, pasidalykite ja komentaruose.
Atnaujinti: Komentaruose pasirodė, kad 443 prievadas yra blogas pasirinkimas, o geriau rinktis aukštus prievadus (32000+), nes 443 skenuojamas dažniau, o atpažinti RDP šiame prievade nėra problema.
b) Užpuolikai teikia pirmenybę tam tikriems naudotojų vardams
Matyti, kad paieška atliekama skirtingų pavadinimų žodyne.
Bet štai ką pastebėjau: daug kartų bandoma naudoti serverio pavadinimą kaip prisijungimą. Rekomendacija: nenaudokite to paties pavadinimo kompiuteriui ir vartotojui. Be to, kartais atrodo, kad jie bando kažkaip išanalizuoti serverio pavadinimą: pavyzdžiui, sistemoje, kurios pavadinimas DESKTOP-DFTHD7C, dažniausiai bandoma prisijungti pavadinimu DFTHD7C:
Atitinkamai, jei turite DESKTOP-MARIA kompiuterį, tikriausiai bandysite prisijungti kaip MARIA vartotojas.
Kitas dalykas, kurį pastebėjau iš žurnalų: daugumoje sistemų dažniausiai bandoma prisijungti su pavadinimu „administratorius“. Ir tai ne be priežasties, nes daugelyje „Windows“ versijų šis vartotojas egzistuoja. Be to, jo negalima ištrinti. Tai supaprastina užpuolikų užduotį: užuot atspėję vardą ir slaptažodį, jums tereikia atspėti slaptažodį.
Beje, išpirkos reikalaujančią programą sugavusi sistema turėjo vartotoją Administratorius ir slaptažodį Murmansk#9. Vis dar nesu tikras, kaip į tą sistemą buvo įsilaužta, nes pradėjau stebėti iškart po to incidento, bet manau, kad per daug tikėtina.
Taigi, jei administratoriaus vartotojo negalima ištrinti, ką daryti? Galite pervardyti!
Rekomendacijos iš šios pastraipos:
- nenaudokite vartotojo vardo kompiuterio pavadinime
- įsitikinkite, kad sistemoje nėra administratoriaus vartotojo
- naudoti stiprius slaptažodžius
Taigi, jau maždaug porą metų stebiu, kaip keli mano kontroliuojami „Windows“ serveriai yra žiauriai priversti, ir nesėkmingai.
Kaip man žinoti, kad nepavyko?
Kadangi aukščiau esančiose ekrano kopijose matote, kad yra sėkmingų KPP skambučių žurnalai, kuriuose yra tokia informacija:
- iš kurio IP
- iš kurio kompiuterio (host name)
- Vartotojo vardas
- GeoIP informacija
Ir aš ten tikrinu reguliariai – jokių anomalijų nerasta.
Beje, jei konkretus IP yra ypač sunkiai įveikiamas, galite blokuoti atskirus IP (arba potinklius), pavyzdžiui, 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
Beje, Elastic, be Winlogbeat, taip pat turi
Na, paskutinės rekomendacijos:
- Reguliariai kurkite automatines atsargines kopijas.
- laiku įdiegti saugos naujinimus
Premija: 50 vartotojų, kurie dažniausiai buvo naudojami bandant prisijungti prie KPP, sąrašas
"user.name: mažėjimo tvarka"
Skaičiuoti
dfthd7c (pagrindinio kompiuterio pavadinimas)
842941
winsrv1 (prieglobos serverio pavadinimas)
266525
ADMINISTRATORIUS
180678
administratorius
163842
administratorius
53541
Michael
23101
serveris
21983
Steve
21936
John
21927
Paulius
21913
priėmimas
21909
mikrofonas
21899
tarnyba
21888
skaitytuvas
21887
skenuoti
21867
David
21865
Chris
21860
savininkas
21855
vadovas
21852
administrateur
21841
Brian
21839
administratorius
21837
ženklas
21824
personalas
21806
ADMINIS
12748
ŠAKNIAVAISIAI
7772
ADMINISTRATORĖS
7325
PAGALBA
5577
PARAMA
5418
VARTOTOJAS
4558
VYTEGA
2832
TESTAS
1928
mysql
1664
Administratorius
1652
SVEČIAS
1322
VARTOTOJAS1
1179
SKANERIS
1121
SCAN
1032
ADMINISTRATORĖS
842
ADMINISTRATORIUS1
525
BACKUP
518
MySqlAdmin
518
PRIĖMIMAS
490
VARTOTOJAS2
466
TEMP
452
SQLADMIN
450
VARTOTOJAS3
441
1
422
VADYBININKAS
418
SAVININKAS
410
Šaltinis: www.habr.com