thumb|300px|Esquema en donde se localizaría un cortafuegos en una red de ordenadores. thumb|300px|Un ejemplo de una interfaz de usuario para un cortafuegos en Ubuntu En informática, un cortafuegos (del término original en inglés firewall) es la parte de un sistema informático o una red informática que está diseñada para bloquear el acceso no autorizado, permitiendo al mismo tiempo comunicaciones autorizadas.

Los cortafuegos pueden ser implementados en hardware o software, o en una combinación de ambos. Los cortafuegos se utilizan con frecuencia para evitar que otros usuarios de Internet no autorizados tengan acceso a las redes privadas conectadas a Internet. Estos suelen actuar como un organismo de inspección que verifica las conexiones que se establecen entre una red y un equipo local. Un cortafuegos regula, por lo tanto, la comunicación entre ambos para proteger el ordenador contra programas maliciosos u otros peligros de Internet. Todos los mensajes que entren o salgan de la intranet pasan a través del cortafuegos, que examina cada mensaje y bloquea aquellos que no cumplen los criterios de seguridad especificados. También es frecuente conectar el cortafuegos a una tercera red, llamada zona desmilitarizada o DMZ, en la que se ubican los servidores de la organización que deben permanecer accesibles desde la red exterior.

Un cortafuegos correctamente configurado añade una protección necesaria a la red, pero que en ningún caso debe considerarse suficiente. La seguridad informática abarca más ámbitos y más niveles de trabajo y protección contra virus, malware, entre otras amenazas.

Historia del cortafuegos

El término inglés firewall significaba originalmente un muro cortafuegos, es decir, una pared para confinar un incendio o riesgo potencial de incendio en un edificio. Más adelante se usó para referirse a estructuras similares de metal que separaban el compartimiento del motor de un vehículo o aeronave del compartimento de pasajeros o cabina. En el área de las redes informáticas el término comenzó a usarse a finales de la década de 1980, cuando Internet era aún una tecnología bastante nueva en cuanto a su uso y conectividad a nivel global. Los predecesores de los cortafuegos informáticos fueron los routers utilizados a finales de los 1980, ya que estos mantenían las distintas redes de ordenadores separadas unas de otras, evitando que los problemas se propagaran de unas a otras. La visión de Internet como una comunidad relativamente pequeña de usuarios con máquinas compatibles, que valoraba la predisposición para el intercambio y la colaboración, terminó con una serie de importantes violaciones de seguridad de Internet que se produjo a finales de los 80: Clifford Stoll, que rastreó una intrusión en sus sistemas hasta descubrir a un hacker alemán que vendía información a la KGB. Bill Cheswick, cuando en 1992 instaló una cárcel simple electrónica para observar a un atacante. En 1988, un empleado del Centro de Investigación Ames de la NASA, en California, envió una nota por correo electrónico a sus colegas Firewalls by Dr. Talal Alkharobi. que decía: "Estamos bajo el ataque de un virus de Internet! Ha llegado a Berkeley, UC San Diego, Lawrence Livermore, Stanford y la NASA Ames". El Gusano Morris, que se extendió a través de múltiples vulnerabilidades en las máquinas de la época. Aunque no era malicioso, el gusano Morris fue el primer ataque a gran escala sobre la seguridad en Internet; la red no esperaba ni estaba preparada para hacer frente a su ataque.RFC 1135 The Helminthiasis of the Internet

Primera generación – cortafuegos de red: filtrado de paquetes

El primer documento publicado para la tecnología firewall data de 1988, cuando el equipo de ingenieros Digital Equipment Corporation (DEC) desarrolló los sistemas de filtro conocidos como cortafuegos de filtrado de paquetes. Este sistema, bastante básico, fue la primera generación de lo que se convertiría en una característica más técnica y evolucionada de la seguridad de Internet. En AT&T Bell, Bill Cheswick y Steve Bellovin continuaban sus investigaciones en el filtrado de paquetes y desarrollaron un modelo de trabajo para su propia empresa, con base en su arquitectura original de la primera generación.

El filtrado de paquetes actúa mediante la inspección de los paquetes (que representan la unidad básica de transferencia de datos entre ordenadores en Internet). Si un paquete coincide con el conjunto de reglas del filtro, el paquete será descartado (descarte silencioso) o será rechazado (desprendiéndose de él y enviando una respuesta de error al emisor). Este tipo de filtrado de paquetes no presta atención a si el paquete es parte de una secuencia existente de tráfico. En su lugar, se filtra cada paquete basándose únicamente en la información contenida en el paquete en sí (por lo general utiliza una combinación del emisor del paquete y la dirección de destino, su protocolo, y, en el tráfico TCP y UDP, el número de puerto).https://web.archive.org/web/20130413184708/http://www.wanredundancy.org/resources/firewall/network-layer-firewall Network Layer Firewall Los protocolos TCP y UDP comprenden la mayor parte de comunicación a través de Internet, utilizando por convención puertos bien conocidos para determinados tipos de tráfico, por lo que un filtro de paquetes puede distinguir entre ambos tipos de tráfico (ya sean navegación web, impresión remota, envío y recepción de correo electrónico, transferencia de archivos…); a menos que las máquinas a cada lado del filtro de paquetes estén a la vez utilizando los mismos puertos no estándar.http://www.skullbox.net/tcpudp.php TCP vs. UDP por Erik Rodriguez (en inglés) La referencia no dice nada sobre el comportamiento de firewalls bajo uso de puertos no estándar.

El filtrado de paquetes llevado a cabo por un cortafuegos actúa en las tres primeras capas del modelo de referencia OSI, lo que significa que todo el trabajo lo realiza entre la red y las capas físicas.Cheswick, William R., Steven M. Bellovin, Aviel D. Rubin (2003). "Google Books Link". Firewalls and Internet security: repelling the wily hacker Cuando el emisor origina un paquete y es filtrado por el cortafuegos, este último comprueba las reglas de filtrado de paquetes que lleva configuradas, aceptando o rechazando el paquete en consecuencia. Cuando el paquete pasa a través de cortafuegos, este filtra el paquete mediante un protocolo y un número de puerto base (GSS). Por ejemplo, si existe una norma en el cortafuegos para bloquear el acceso telnet, bloqueará el protocolo TCP para el número de puerto 23.

Segunda generación – cortafuegos de estado

Durante 1989 y 1990, tres colegas de los laboratorios AT&T Bell, Dave Presetto, Janardan Sharma, y Nigam Kshitij, desarrollaron la segunda generación de servidores de seguridad. Esta segunda generación de cortafuegos tiene en cuenta, además, la colocación de cada paquete individual dentro de una serie de paquetes. Esta tecnología se conoce generalmente como la inspección de estado de paquetes, ya que mantiene registros de todas las conexiones que pasan por el cortafuegos, siendo capaz de determinar si un paquete indica el inicio de una nueva conexión, es parte de una conexión existente, o es un paquete erróneo. Este tipo de cortafuegos pueden ayudar a prevenir ataques contra conexiones en curso o ciertos ataques de denegación de servicio. La comercialización a gran escala de la inspección de estado se consolidó en 1993-1994 con FireWall-1, desarrollado en Israel por Gil Shwed, Marius Nacht y Shlomo Kramer en Check Point Software Technologies (Ramat Gan); el producto llevó la tecnología de laboratorios académicos y de telecomunicaciones a empresas de todo el mundo y contribuyó a definir el mercado moderno de la seguridad perimetral.

Tercera generación — cortafuegos de aplicación

Son aquellos que actúan sobre la capa de aplicación del Modelo OSI. La clave de un cortafuegos de aplicación es que puede entender ciertas aplicaciones y protocolos (por ejemplo: protocolo de transferencia de ficheros, DNS o navegación web), y permite detectar si un protocolo no deseado se coló a través de un puerto no estándar o si se está abusando de un protocolo de forma perjudicial.

Un cortafuegos de aplicación es mucho más seguro y fiable cuando se compara con un cortafuegos de filtrado de paquetes, ya que repercute en las siete capas del modelo de referencia OSI. En esencia es similar a un cortafuegos de filtrado de paquetes, con la diferencia de que también podemos filtrar el contenido del paquete.

Un cortafuegos de aplicación puede filtrar protocolos de capas superiores tales como FTP, TELNET, DNS, DHCP, HTTP, TCP, UDP y TFTP (GSS). Por ejemplo, si una organización quiere bloquear toda la información relacionada con una palabra en concreto, puede habilitarse el filtrado de contenido para bloquear esa palabra en particular. No obstante, los cortafuegos de aplicación resultan más lentos que los de estado.

Acontecimientos posteriores

En 1992, Bob Braden y DeSchon Annette, de la Universidad del Sur de California (USC), dan forma al concepto de cortafuegos. Su producto, conocido como "Visas", fue el primer sistema con una interfaz gráfica con colores e iconos, fácilmente implementable y compatible con sistemas operativos como Windows de Microsoft o MacOS de Apple. En 1993, Gil Shwed, Marius Nacht y Shlomo Kramer fundaron en Ramat Gan la empresa israelí Check Point Software Technologies; al año siguiente comercializaron FireWall-1, que incorporaba inspección de estado (stateful inspection) y una interfaz gráfica pensada para administradores de red. El producto se distribuyó mediante acuerdos OEM con Sun Microsystems y Hewlett-Packard, y en 1996 IDC situó a Check Point como líder mundial del mercado de cortafuegos, con una cuota estimada del 40 %. Esa trayectoria ilustra el papel de la industria israelí de ciberseguridad en la difusión de herramientas que hoy protegen redes empresariales, gubernamentales y domésticas.

La funcionalidad existente de inspección profunda de paquetes en los actuales cortafuegos puede ser compartida por los sistemas de prevención de intrusiones (IPS).

Actualmente, el Grupo de Trabajo de comunicación Middlebox de la Internet Engineering Task Force (IETF) está trabajando en la estandarización de protocolos para la gestión de cortafuegos.

Otro de los ejes de desarrollo consiste en integrar la identidad de los usuarios dentro del conjunto de reglas del cortafuegos. Algunos cortafuegos proporcionan características tales como unir a las identidades de usuario con las direcciones IP o MAC. Otros, como el cortafuegos NuFW, proporcionan características de identificación real solicitando la firma del usuario para cada conexión.

Tipos de cortafuegos

Existen diferentes tipos de cortafuegos que se utilizan para proteger las redes y sistemas informáticos. A continuación, se describen algunos de estos tipos:

Cortafuegos de capa de red o de filtrado de paquetes

Este tipo de cortafuegos opera a nivel de red (capa 3 del modelo OSI, capa 2 del stack de protocolos TCP/IP) y se encarga de tomar decisiones de procesamiento basadas en direcciones de red, puertos o protocolos. Funciona como un filtro de paquetes IP. A este nivel se pueden realizar filtros según los distintos campos de los paquetes IP: dirección IP origen, dirección IP destino. A menudo en este tipo de cortafuegos se permiten filtrados según campos de nivel de transporte (capa 4 del modelo OSI, capa 3 de TCP/IP), como el puerto origen y destino, o a nivel de enlace de datos (capa 2 del modelo OSI, no existe en TCP/IP) como la dirección MAC. Son subtipos de este cortafuegos:

Clasificación de filtrado de paquetes en estático (stateless packet filtering)

Cortafuegos de inspección con estado