No abras puertos al mundo, te romperás (riesgos)

No abras puertos al mundo, te romperás (riesgos)

Una y otra vez, después de realizar una auditoría, en respuesta a mis recomendaciones de ocultar los puertos detrás de una lista blanca, me encuentro con un muro de malentendidos. Incluso los administradores/DevOps más interesantes preguntan: "¿¡¿Por qué?!?"

Propongo considerar los riesgos en orden descendente de probabilidad de ocurrencia y daño.

  1. Error de configuración
  2. DDoS sobre IP
  3. fuerza bruta
  4. Vulnerabilidades del servicio
  5. Vulnerabilidades de la pila del kernel
  6. Aumento de ataques DDoS

Error de configuración

La situación más típica y peligrosa. Cómo sucede. El desarrollador necesita probar rápidamente la hipótesis; configura un servidor temporal con mysql/redis/mongodb/elastic. La contraseña, por supuesto, es compleja, la usa en todas partes. Abre el servicio al mundo: le resulta conveniente conectarse desde su PC sin estas VPN suyas. Y soy demasiado vago para recordar la sintaxis de iptables; el servidor es temporal de todos modos. Un par de días más de desarrollo: resultó genial, podemos mostrárselo al cliente. Al cliente le gusta, no hay tiempo para rehacerlo, ¡lo lanzamos a PROD!

Un ejemplo deliberadamente exagerado para pasar por todo el rastrillo:

  1. No hay nada más permanente que temporal; no me gusta esta frase, pero según sentimientos subjetivos, entre el 20 y el 40% de estos servidores temporales permanecen durante mucho tiempo.
  2. Una contraseña universal compleja que se utiliza en muchos servicios es malvada. Porque uno de los servicios donde se utilizó esta contraseña podría haber sido pirateado. De una forma u otra, las bases de datos de los servicios pirateados se agrupan en una sola, que se utiliza para [fuerza bruta]*.
    Vale la pena agregar que después de la instalación, redis, mongodb y elastic generalmente están disponibles sin autenticación y, a menudo, se reponen. colección de bases de datos abiertas.
  3. Puede parecer que nadie escaneará su puerto 3306 en un par de días. ¡Es una ilusión! Masscan es un escáner excelente y puede escanear a 10 millones de puertos por segundo. Y sólo hay 4 mil millones de IPv4 en Internet. En consecuencia, los 3306 puertos de Internet se encuentran en 7 minutos. ¡¡¡Charles!!! ¡Siete minutos!
    "¿Quién necesita esto?" - te opones. Por eso me sorprende cuando miro las estadísticas de paquetes caídos. ¿De dónde provienen cada día 40 intentos de escaneo de 3 IP únicas? Ahora todo el mundo está escaneando, desde los piratas informáticos de mamá hasta los gobiernos. Es muy fácil de verificar: tome cualquier VPS por $3-5 de cualquier** aerolínea de bajo costo, habilite el registro de paquetes abandonados y mire el registro de un día.

Habilitando el registro

En /etc/iptables/rules.v4 agregue al final:
-A ENTRADA -j LOG --prefijo-registro "[FW - TODOS] " --nivel-registro 4

Y en /etc/rsyslog.d/10-iptables.conf
:msg,contiene,"[FW - "/var/log/iptables.log
& detener

DDoS sobre IP

Si un atacante conoce su IP, puede secuestrar su servidor durante varias horas o días. No todos los proveedores de hosting de bajo coste tienen protección DDoS y tu servidor simplemente se desconectará de la red. Si escondió su servidor detrás de una CDN, no olvide cambiar la IP; de lo contrario, un hacker la buscará en Google y realizará un DDoS en su servidor sin pasar por la CDN (un error muy popular).

Vulnerabilidades del servicio

Todo el software popular, tarde o temprano, encuentra errores, incluso los más probados y críticos. Entre los especialistas de IB hay una media broma: la seguridad de la infraestructura se puede evaluar de forma segura en el momento de la última actualización. Si su infraestructura es rica en puertos que sobresalen del mundo y no la ha actualizado durante un año, cualquier especialista en seguridad le dirá sin mirar que tiene fugas y que lo más probable es que ya haya sido pirateado.
También vale la pena mencionar que todas las vulnerabilidades conocidas alguna vez fueron desconocidas. Imagínese un hacker que encontró tal vulnerabilidad y escaneó todo Internet en 7 minutos en busca de su presencia... Aquí hay una nueva epidemia de virus) Necesitamos actualizar, pero esto puede dañar el producto, dices. Y tendrá razón si los paquetes no se instalan desde los repositorios oficiales del sistema operativo. Por experiencia, las actualizaciones del repositorio oficial rara vez dañan el producto.

fuerza bruta

Como se describió anteriormente, existe una base de datos con XNUMX millones de contraseñas que es conveniente escribir desde el teclado. En otras palabras, si no generó una contraseña, pero escribió símbolos adyacentes en el teclado, tenga la seguridad* de que lo confundirán.

Vulnerabilidades de la pila del kernel.

También sucede que ni siquiera importa qué servicio abra el puerto, cuando la propia pila de red del núcleo es vulnerable. Es decir, absolutamente cualquier socket tcp/udp en un sistema de dos años de antigüedad es susceptible a una vulnerabilidad que provoque DDoS.

Aumento de ataques DDoS

No causará ningún daño directo, pero puede obstruir tu canal, aumentar la carga en el sistema, tu IP terminará en alguna lista negra ***** y recibirás abusos por parte del proveedor de alojamiento.

¿Realmente necesitas todos estos riesgos? Agregue la IP de su hogar y trabajo a la lista blanca. Incluso si es dinámico, inicie sesión a través del panel de administración del proveedor de alojamiento, a través de la consola web y simplemente agregue otro.

Llevo 15 años construyendo y protegiendo infraestructura de TI. He desarrollado una regla que recomiendo encarecidamente a todos: Ningún puerto debería destacarse en el mundo sin una lista blanca..

Por ejemplo, el servidor web más seguro*** es el que abre 80 y 443 sólo para CDN/WAF. Y los puertos de servicio (ssh, netdata, bacula, phpmyadmin) deberían estar al menos detrás de la lista blanca, y mejor aún, detrás de la VPN. De lo contrario, corre el riesgo de verse comprometido.

Eso es todo lo que quería decir. ¡Mantén tus puertos cerrados!

  • (1) UPD1: es puedes comprobar tu genial contraseña universal (no hagas esto sin reemplazar esta contraseña por una aleatoria en todos los servicios), si apareció en la base de datos fusionada. Pero aquí puede ver cuántos servicios fueron pirateados, dónde se incluyó su correo electrónico y, en consecuencia, averiguar si su genial contraseña universal se ha visto comprometida.
  • (2) Para crédito de Amazon, LightSail tiene escaneos mínimos. Al parecer lo filtran de alguna manera.
  • (3) Un servidor web aún más seguro es el que está detrás de un firewall dedicado, su propio WAF, pero estamos hablando de VPS/Dedicado público.
  • (4) Segmentación.
  • (5) Holo de fuego.

Solo los usuarios registrados pueden participar en la encuesta. Registrarsepor favor

¿Tus puertos sobresalen?

  • Siempre

  • A veces

  • Nunca

  • No lo sé, joder.

54 usuarios votaron. 6 usuarios se abstuvieron.

Fuente: habr.com

Añadir un comentario