He visto consejos que dicen que debe usar diferentes números de puerto para aplicaciones privadas (por ejemplo, intranet, base de datos privada, cualquier cosa que ningún extraño usará).
No estoy completamente convencido de que pueda mejorar la seguridad porque
- Existen escáneres de puertos
- Si una aplicación es vulnerable, permanece así independientemente de su número de puerto.
¿Me perdí algo o respondí mi propia pregunta?
x
período de tiempo. Ha demostrado ser efectivo contra el escaneo de puertos. Por supuesto, esta es solo una herramienta en la caja de herramientas de seguridad.Respuestas:
No proporciona ninguna defensa seria contra un ataque dirigido. Si su servidor está siendo apuntado, entonces, como usted dice, le escanearán el puerto y descubrirán dónde están sus puertas.
Sin embargo, mover SSH fuera del puerto predeterminado de 22 disuadirá algunos de los ataques de tipo kiddie de script no objetivo y amateur. Estos son usuarios relativamente poco sofisticados que utilizan scripts para escanear puertos de grandes bloques de direcciones IP a la vez específicamente para ver si el puerto 22 está abierto y cuando encuentran uno, lanzarán algún tipo de ataque (fuerza bruta, ataque de diccionario, etc) Si su máquina está en ese bloque de IP que se está escaneando y no está ejecutando SSH en el puerto 22, entonces no responderá y, por lo tanto, no aparecerá en la lista de máquinas para que este script kiddie ataque. Ergo, se proporciona cierta seguridad de bajo nivel, pero solo para este tipo de ataque oportunista.
A modo de ejemplo, si tiene tiempo, inicie sesión en su servidor (suponiendo que SSH esté en el puerto 22) y extraiga todos los intentos únicos de SSH fallidos que pueda. Luego mueva SSH fuera de ese puerto, espere un tiempo y vuelva a bucear. Sin duda encontrarás menos ataques.
Solía ejecutar Fail2Ban en un servidor web público y fue muy, muy obvio cuando saqué SSH del puerto 22. Cortó los ataques oportunistas por órdenes de magnitud.
fuente
Es muy útil mantener limpios los registros.
Si usted ve intentos fallidos con sshd en ejecución en el puerto 33201 se puede asumir con seguridad que la persona se dirige a usted y usted tiene la opción de tomar la acción apropiada si así lo desea .. Tal como ponerse en contacto con las autoridades, de instrucción que puede ser esta persona ( haciendo referencias cruzadas con las IP de sus usuarios registrados o lo que sea), etc.
Si usa el puerto predeterminado, será imposible saber si alguien lo está atacando o si solo son idiotas al azar haciendo escaneos aleatorios.
fuente
No lo hace Realmente no. El término para esto es Seguridad por Oscuridad y no es una práctica confiable. Tienes razón en tus dos puntos.
En el mejor de los casos, la Seguridad por Oscuridad disuadirá los intentos casuales que solo buscan puertos predeterminados sabiendo que en algún momento encontrarán a alguien que dejó la puerta principal abierta. Sin embargo, si alguna vez se enfrenta a una amenaza grave al cambiar el puerto desactivado, a lo sumo retrasará el ataque inicial, pero solo de manera marginal debido a lo que ya ha señalado.
Hágase un favor y deje sus puertos configurados correctamente, pero tome las precauciones adecuadas para bloquearlos con un firewall adecuado, autorizaciones, ACL, etc.
fuente
Es un ligero nivel de oscuridad, pero no un aumento de velocidad significativo en el camino hacia el pirateo. Es una configuración más difícil de soportar a largo plazo ya que todo lo que habla con ese servicio en particular tiene que ser informado sobre el puerto diferente.
Érase una vez una buena idea para evitar gusanos de red, ya que tendían a escanear solo un puerto. Sin embargo, el tiempo del gusano que se multiplica rápidamente ya pasó.
fuente
Como otros han señalado, cambiar el número de puerto no le ofrece mucha seguridad.
Me gustaría agregar que cambiar el número de puerto en realidad puede ser perjudicial para su seguridad.
Imagine el siguiente escenario simplificado. Un cracker escanea 100 hosts. Noventa y nueve de estos hosts tienen servicios disponibles en estos puertos estándar:
Pero luego hay un host que se destaca de la multitud, porque el propietario del sistema trató de ofuscar sus servicios.
Ahora, esto podría ser interesante para un cracker, porque el escaneo sugiere dos cosas:
Si fuera un cracker, ¿elegiría echar un vistazo a uno de los 99 hosts que ejecutan servicios estándar en puertos estándar, o este host que está utilizando la ofuscación de puertos?
fuente
Voy a ir en contra de la tendencia general, al menos parcialmente.
Por sí solo , cambiar a un puerto diferente puede ganarle un par de segundos mientras se busca, por lo tanto, no obtendrá nada en términos reales. Sin embargo, si combina el uso de puertos no estándar junto con medidas anti-escaneo, puede dar un aumento realmente valioso en la seguridad.
Aquí está la situación tal como se aplica a mis sistemas: los servicios no públicos se ejecutan en puertos no estándar. Cualquier intento de conexión a más de dos puertos desde una sola dirección de origen, ya sea exitosa o no, dentro de un período de tiempo especificado resulta en la caída de todo el tráfico de esa fuente.
Para vencer a este sistema requeriría suerte (golpear el puerto correcto antes de ser bloqueado) o un escaneo distribuido, que desencadena otras medidas, o un tiempo muy largo, que también se notaría y actuaría.
fuente
En mi opinión, mover el puerto en el que se ejecuta una aplicación no aumenta la seguridad en absoluto, simplemente porque la misma aplicación se está ejecutando (con las mismas fortalezas y debilidades) solo en un puerto diferente. Si su aplicación tiene una debilidad, mover el puerto que escucha a un puerto diferente no soluciona la debilidad. Peor aún, lo alienta activamente a NO abordar la debilidad porque ahora el escaneo automatizado no lo afecta constantemente. Oculta el problema real, que es el problema que debería resolverse.
Algunos ejemplos:
El verdadero problema es administrativo: la gente espera que SSH esté en 22, MSSQL en 1433 y así sucesivamente. Mover esto es una capa más de complejidad y documentación requerida. Es muy molesto sentarse en una red y tener que usar nmap solo para descubrir dónde se han movido las cosas. Las adiciones a la seguridad son efímeras en el mejor de los casos y las desventajas no son insignificantes. No lo hagas Soluciona el problema real.
fuente
Tiene razón en que no traerá mucha seguridad (ya que el rango de puertos del servidor TCP tiene solo 16 bits de entropía), pero puede hacerlo por otras dos razones:
Observación: no estoy diciendo que deba cambiar el puerto del servidor. Solo estoy describiendo razones razonables (IMO) para cambiar el número de puerto.
Si hace eso, creo que debe dejar en claro a todos los demás administradores o usuarios que esto no debe considerarse una característica de seguridad, y que el número de puerto utilizado ni siquiera es un secreto, y que describir esto como una característica de seguridad eso trae seguridad real no se considera un comportamiento aceptable.
fuente
Puedo ver una situación hipotética en la que habría un beneficio potencial de seguridad al ejecutar su sshd en un puerto alternativo. Eso sería en el escenario donde se descubre una vulnerabilidad remota explotada trivialmente en el software sshd que está ejecutando. En tal escenario, ejecutar su sshd en un puerto alternativo podría brindarle el tiempo adicional que necesita para no ser un objetivo aleatorio.
Yo mismo ejecuto el sshd en un puerto alternativo en mis máquinas privadas, pero eso es principalmente como una conveniencia para mantener el desorden en /var/log/auth.log. En un sistema multiusuario, realmente no considero que el pequeño beneficio de seguridad hipotético presentado anteriormente sea razón suficiente para la molestia adicional causada por el sshd que no se encuentra en la parte estándar.
fuente
Aumenta ligeramente la seguridad. En ese sentido, el atacante que ha encontrado el puerto abierto ahora tiene que resolver qué se está ejecutando en el puerto. Al no tener acceso a sus archivos de configuración (todavía :-)), no tiene idea de si el puerto 12345 está ejecutando http, sshd o uno de los miles de otros servicios comunes, por lo que deben hacer un trabajo adicional para descubrir qué se está ejecutando antes de que puedan atacarlo
También, como señaló otro póster, mientras que los intentos de iniciar sesión en el puerto 22, podrían ser secuencias de comandos para niños, troyanos zombis o incluso usuarios genuinos que escribieron mal una dirección IP. Es casi seguro que un intento de iniciar sesión en el puerto 12345 sea un usuario genuino o un atacante serio.
Otra estrategia es tener algunos puertos de "trampa de miel". Como ningún usuario genuino sabría sobre estos números de puerto, cualquier intento de conexión debe considerarse malicioso y puede bloquear / informar la dirección IP infractora automáticamente.
Hay un caso especial en el que usar un número de puerto diferente definitivamente hará que su sistema sea más seguro. Si su red está ejecutando un servicio público como un servidor web pero también un servidor web de uso interno, puede bloquear absolutamente cualquier acceso externo ejecutando en un número de puerto diferente y bloqueando cualquier acceso externo desde este puerto.
fuente
No por si mismo. Sin embargo, no usar el puerto predeterminado para una aplicación en particular (por ejemplo, SQL Server) básicamente obligará a su atacante a escanear sus puertos; Este comportamiento puede ser detectado por su firewall u otras métricas de monitoreo, y la IP del atacante bloqueada. Además, el "script kiddie" promedio probablemente se disuadirá cuando la herramienta simple o el script de comando que están utilizando no encuentre una instancia de servidor SQL en su máquina (porque la herramienta solo verifica el puerto predeterminado).
fuente