Moitas veces lin a opinión de que manter un porto RDP (Remote Desktop Protocol) aberto a Internet é moi inseguro e non se debería facer. Pero cómpre dar acceso a RDP a través dunha VPN ou só desde certos enderezos IP "brancos".
Administre varios servidores de Windows para pequenas empresas nas que me encargou de proporcionar acceso remoto a Windows Server para contadores. Esta é a tendencia moderna: traballar desde casa. Moi rápido, decateime de que atormentar aos contadores VPN é unha tarefa ingrata e recoller todas as IPs para a lista branca non funcionará, porque os enderezos IP das persoas son dinámicos.
Polo tanto, tomei a ruta máis sinxela: reenvíe o porto RDP ao exterior. Para acceder, agora os contadores deben executar RDP e introducir o nome de host (incluído o porto), o nome de usuario e o contrasinal.
Neste artigo compartirei a miña experiencia (positiva e non tan positiva) e recomendacións.
Riscos
A que te arriscas abrindo o porto RDP?
1) Acceso non autorizado a datos confidenciais
Se alguén adiviña o contrasinal do RDP, poderá obter datos que quere manter privados: estado da conta, saldos, datos de clientes,...
2) Perda de datos
Por exemplo, como resultado dun virus ransomware.
Ou unha acción deliberada dun atacante.
3) Perda do posto de traballo
Os traballadores necesitan traballar, pero o sistema está comprometido e debe ser reinstalado/restaurado/configurado.
4) Compromiso da rede local
Se un atacante accedeu a un ordenador con Windows, entón desde este ordenador poderá acceder a sistemas inaccesibles desde o exterior, desde Internet. Por exemplo, para compartir ficheiros, para impresoras de rede, etc.
Tiven un caso no que Windows Server detectou un ransomware
e este ransomware primeiro cifraba a maioría dos ficheiros da unidade C: e despois comezou a cifrar os ficheiros do NAS a través da rede. Dado que o NAS era Synology, coas instantáneas configuradas, restaurei o NAS en 5 minutos e reinstalei Windows Server desde cero.
Observacións e recomendacións
Monitorizo servidores Windows usando
O seguimento en si non protexe, pero axuda a determinar as medidas necesarias.
Aquí tes algunhas observacións:
a) O RDP será forzado bruto.
Nun dos servidores, instalei RDP non no porto estándar 3389, senón no 443; ben, disfrazareime de HTTPS. Probablemente paga a pena cambiar o porto do estándar, pero non servirá de moito. Aquí están as estatísticas deste servidor:
Pódese ver que nunha semana houbo case 400 intentos infrutuosos de iniciar sesión a través de RDP.
Pódese ver que houbo intentos de iniciar sesión desde 55 enderezos IP (algúns enderezos IP xa foron bloqueados por min).
Isto suxire directamente a conclusión de que cómpre configurar fail2ban, pero
Non existe tal utilidade para Windows.
Hai un par de proxectos abandonados en Github que parecen facer isto, pero nin sequera intentei instalalos:
Tamén hai servizos públicos de pago, pero non os considerei.
Se coñeces unha utilidade de código aberto para este fin, compárteo nos comentarios.
Actualizar: Os comentarios suxiren que o porto 443 é unha mala opción, e é mellor escoller portos altos (32000+), porque o 443 é escaneado con máis frecuencia e recoñecer RDP neste porto non é un problema.
b) Hai certos nomes de usuario que prefiren os atacantes
Pódese observar que a busca se realiza nun dicionario con diferentes nomes.
Pero isto é o que notei: un número significativo de intentos están usando o nome do servidor como inicio de sesión. Recomendación: Non use o mesmo nome para o ordenador e o usuario. Ademais, ás veces parece que están tentando analizar o nome do servidor dalgún xeito: por exemplo, para un sistema co nome DESKTOP-DFTHD7C, a maioría dos intentos de iniciar sesión son co nome DFTHD7C:
En consecuencia, se tes un ordenador DESKTOP-MARIA, probablemente esteas tentando iniciar sesión como usuario de MARIA.
Outra cousa que notei nos rexistros: na maioría dos sistemas, a maioría dos intentos de iniciar sesión son co nome de "administrador". E isto non é sen razón, porque en moitas versións de Windows, este usuario existe. Ademais, non se pode eliminar. Isto simplifica a tarefa dos atacantes: en lugar de adiviñar un nome e un contrasinal, só tes que adiviñar o contrasinal.
Por certo, o sistema que capturou o ransomware tiña o usuario Administrador e o contrasinal Murmansk#9. Aínda non estou seguro de como se pirateou ese sistema, porque comecei a supervisar xusto despois dese incidente, pero creo que é probable que sexa excesivo.
Entón, se non se pode eliminar o usuario Administrador, que debes facer? Podes renomealo!
Recomendacións deste parágrafo:
- non use o nome de usuario no nome do ordenador
- asegúrese de que non hai ningún usuario administrador no sistema
- use contrasinais seguros
Entón, estiven vendo varios servidores Windows baixo o meu control sendo forzados a forza bruta desde hai un par de anos, e sen éxito.
Como sei que non ten éxito?
Porque nas capturas de pantalla anteriores podes ver que hai rexistros de chamadas RDP exitosas, que conteñen a información:
- dende que IP
- desde que ordenador (nome de host)
- Nome de usuario
- Información GeoIP
E comprobo alí regularmente: non se atoparon anomalías.
Por certo, se unha IP en particular está sendo forzada de forma brutal, pode bloquear IP individuais (ou subredes) como esta en 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
Por certo, Elastic, ademais de Winlogbeat, tamén ten
Ben, recomendacións finais:
- Fai copias de seguridade automáticas regularmente.
- instalar Actualizacións de seguranza de forma oportuna
Bonificación: lista de 50 usuarios que se utilizaron con máis frecuencia para os intentos de inicio de sesión RDP
"nome.usuario: descendente"
Contar
dfthd7c (nome de host)
842941
winsrv1 (nome de host)
266525
ADMINISTRADOR
180678
administrador
163842
Administrador
53541
Michael
23101
servidor
21983
Steve
21936
John
21927
Paul
21913
recepción
21909
micrófono
21899
oficina
21888
do escáner
21887
examinar
21867
david
21865
Chris
21860
propietario
21855
xerente
21852
administrador
21841
brian
21839
administrador
21837
marcar
21824
persoal
21806
ADMIN
12748
ROOT
7772
ADMINISTRADOR
7325
APOIO
5577
APOIO
5418
USUARIO
4558
administrador
2832
Comproba
1928
mysql
1664
administrador
1652
CONVIDADO
1322
USUARIO1
1179
ESCÁNER
1121
SCAN
1032
ADMINISTRADOR
842
ADMINISTRACIÓN 1
525
DERECHO
518
MySqlAdmin
518
RECEPCIÓN
490
USUARIO2
466
Temp
452
SQLADMIN
450
USUARIO3
441
1
422
XESTOR
418
Propietario
410
Fonte: www.habr.com