Para que entiendas mejor el concepto.
Un puerto es una especie de canal por donde pasa cierta información.
Para que no se haga un lío de información, y que cada servicio pueda trabajar mejor, esta información se va derivando a traves de los puertos.
Por ejemplo el puerto 21 es FTP, por donde se hace transferencia de archivos. (De ahí el nombre,Protocolo de Transferencia de Archivos (File transfer protocol)).
Tenes el puerto SMTP, el NETBIOS , si creas un servidor web y te bajas el apache y mysql se te habilitan otros puertos en fin, y así en adelante no?.
Bueno, entonces, cada servicio recibe cierta información específica, y como te decía antes, puede para que no se haga un lío de información, el router la redirige a traves de los puertos.
¿Que sucedería si no hubiera puertos?. Bueno, sencillo no habría lugar por donde la informacion pudiera pasar, por ende. Son canales de comunicación. Hasta ahí es lo que tenes que saber, porque después podes habilitar puertos en una red interna, o puertos en que comunican a una red externa etc. Pero esto ya depende de las configuraciones que tengas hechas en tu red blah. No va al caso. Son canales de comunicación. Quedate con eso por ahora.
Entonces, volviendo a tu pregunta.
Voy a poner de ejemplo la famosa y ultra quemada (pero nunca deja de ser cool
vulnerabilidad del protocolo SMB en el puerto 445) yeah!.
El servico SAMBA(linux) NETBIOS (windows). Permite la comunicación y transferencia de datos entre dos o mas sistemas operativos de diferentes tipos (por ejemplo window con linux linux con mac windows con mac etc).
Si un servicio, tiene una vulnerabilidad y esa vulnerabilidad se explota, entonces tiene una consecuencia.
Por ejemplo en el puerto 445, se puede obtener una shell inversa y se entra en el sistema operativo remoto. Bien (también por este protocolo se realizaron las infecciones del wannacry.
Entonces ,antes que nada quiero aclarar que es IMPORTANTE tener siempre las últimas actualizaciones, porque aunque sí existen los 0days que son los exploits de ultimo momento que explotan los fallos que pueda contener una actualización DISMINUYE el riesgo de que puedas ser infectado con algun malware anterior.
Cuando se realiza un ataque, se realiza a un dispositivo en concreto.
Pero, si vos tenes (por ejemplo) 2 o mas maquinas con windows 7 y no estan actualizadas, pudiese una persona desde adentro de tu pc, PIVOTEAR LA RED.
Es decir, se infectan todas las máquinas que se encuentran en la red víctima.
Esto tiene varias maneras de solucionarse. Aunque ninguna solución es 100% efectiva.
De hecho la seguridad informática no tiene en concreto la mision de EVITAR un ataque. Sino mas que nada de DISMINUIR LOS RIESGOS de un posible ataque, ya que, si trabajas en una empresa hay muchisimas computadoras las cuales no siempre están parcheadas correctamente.
Tambien puede ocurrir que un puerto quede mal cerrado. Por ende es importante (recalco) mantener actualizado el sistema operativo y todos los programas que tengas instalados en el.
Verificar siempre que puertos estan abiertos. Podes hacer un nmap a tu ip y vas a ver los puertos y servicios que se estan corriendo. Si ves alguno que corre un servicio que no estas utilizando, entonces lo podes cerrar.
El firewall lo que te permite hacer es filtrar puertos y cerrar puertos si, pero vas a cerrarlo para una maquina (si hablamos del firewall instalado en un sistema operativo). Si tenes un firewall físico es otra cosa distinta. No quiere decir que no se puedan vulnerar, porque sí, se puede Pero si tu red es hogareña y tus datos no figuran como empleado de alguna empresa importante, banco, o o que fuera, si sos una persona comun y corriente dudo que algun pirata informático serio se interese en tu red. Mas bien, los ataques que solemos recibir en nuestras redes hogareñas (porque sí recibimos ataques aunque no nos demos cuenta), son de aquellos que andan queriendo hacerse los "hackers" para impresionar a sus amigos o a alguna chica.
Otra solución es que utilices maquinas virtuales, claro que si una persona tiene acceso a tu red va a darse cuenta que tenes maquinas virtuales y bueno incluso puede extraerte la vm con tus datos adentro. Pero si vos tenes una red privada interna que NO TENGA contacto con la red exterior y en tu pc, no dejas abierto mas que aquellos puertos que son necesarios únicamente, vas a disminuir los riesgos de ataque.
En definitiva, se que la hice larga y te pido disculpas, espero haber sido claro. El riesgo SIEMPRE ESTÁ, no existe una manera de estar conectado a la red y ser intocable. Es como decir que podes salir a la calle y no te puede pasar nada, cosa que no es así. El resigo siempre está. La cuestión es tomar las precauciones necesarias para poder en su mayor porcentaje tratar de evitar que algo malo nos suceda a nosotros y a nuestra información. Saludos