Seguridad en Web tiene distintos significados dependiendo del punto de vista que se tome. Para algunos significa poder observar la Web en paz, sabiendo que nadie esta husmeando lo que se está viendo. Para otros significa ejecutar en forma segura transacciones financieras. Para los operadores del Web significa la confianza de que sus sitios no serán invadidos por delincuentes o usados como una entrada para colapsar una red de área local.

En la actualidad la seguridad en Web, es muy simple y muy compleja a la vez. Simple por que es muy fácil quebrar la Web en partes y descubrir donde residen los problemas. Difícil por que no existen soluciones simples o mágicas que hagan a la Web segura.

Las tres partes de la seguridad en Web, la conexión en Web se compone de tres partes:

1. El browser
2. El servidor
3. La conexión entre los dos.

La seguridad considera los siguientes supuestos:

Desde el punto de vista del usuario:
El servidor es administrado por una organización que se supone que es la dueña de este. El documento que retorna el servidor se encuentra libre de virus malicioso. El servidor remoto no grabará y distribuirá información del usuario que este considere privada.

Desde el punto del administrador del servidor:
El usuario no irrumpirá el servidor y alterará su contenido. El usuario no ganará acceso a documentos no permitidos a él. El usuario no acaparará el servidor inhabilitando al resto de las personas. Si el usuario se identifica, que efectivamente corresponda a él.

Desde el punto de vista de ambos:
La conexión de red se encuentra libre terceras persona que están escuchando la comunicación. La información que se envía entre el browser y el servidor se mantiene intacta, libre de la corrupción que le puedan hacer terceras personas. El propósito de la seguridad en Web es asegurar que estas suposiciones sean válidas.

@ Seguridad por parte del cliente Proteger la privacidad del usuario y la integridad de su computador. Soluciones tecnológicas incluyen "guardaespaldas" que protegen al computador de los virus, programas maliciosos, y limitan la transmisión de información desde el browser sin la autorización del usuario.

@ Seguridad por parte del servidor Proteger al servidor de entradas sin autorización, vandalismo, y ataques que lo dejen fuera de servicio. Las soluciones tecnológicas abarcan desde sistemas de firewalls (cortafuegos) hasta sistemas de seguridad de sistema operativo.

Confidencialidad de documentos

Proteger información privada para que no sea divulgada por terceras personas. La principal solución es la Criptografía, y otras como el uso de passwords.


Formas de entrada de atacantes de un sitio.

Riesgos o formas de entrada de atacantes. Existen diversos riesgos, algunos afectan al usuario, otros al administrador del sitio y muchas veces a ambos al mismo tiempo. Esto es debido a que los "intrusos" dañan a cualquiera, por lo tanto la encriptación le interesa tanto al usuario como al administrador.

De hecho la seguridad por parte del cliente y por parte del servidor usualmente se traslapan complicadamente.

Riesgos que afectan al cliente y al servidor.

Si dos computadores se encuentran en lugares físicos distintos, la información viaja a través de muchos sitios intermediarios antes de llegar a su destino final. Un mensaje desde el browser puede viajar a través de la línea telefónica hasta el proveedor de servicios de Internet ISP, luego a través de una línea dedicada hasta el proveedor regional de ISP o RSP, y desde ahí transferido rápidamente al servidor de destino en alguna otra parte del mundo. En cualquier parte de este camino el mensaje puede ser interceptado por algún intruso. Pequeños programas llamados "rastreadores de paquetes" (packet sniffers) son enviados para escuchar o husmear el tráfico en la red, mirando ciertos elementos interesantes como passwords o números de tarjetas de crédito. Este programa puede ser instalado en cualquier nodo perteneciente al camino que recorre el mensaje. Para ello el individuo inescrupuloso debe irrumpir algún ISP o algún computador de la LAN o el mismo servidor Web. Los pequeños ISP son más vulnerables y por lo tanto son un objetivo común para los delincuentes.

Los "rastreadores de paquetes" pueden escuchar cualquier tráfico que esté circulando:

Ø URL requerido
Ø Documento retornado por el servidor
Ø Passwords
Ø Formularios llenados por el usuario

Más aún, un individuo puede alterar el contenido escuchado. Estos dañinos programas pueden residir en un servidor por varios días sin que sé de cuenta el administrador. La nueva generación de cable módem incrementa el riesgo del "rastreador de paquetes ", ya que estos comparten los paquetes enviados en una vecindad servida por un cable.
La defensa contra estos programas es la Criptografía. Esto es encriptar o codificar todo lo que se transmite entre el browser y el servidor.

Cuándo un usuario se conecta al sitio Web de su banco, ¿cómo puede saber él que el sitio conectado pertenece efectivamente al banco?, y en sentido contrario ¿cómo puede saber el banco que el cliente que se conectó corresponde efectivamente a un cliente legítimo?. Para ello debe existir un mecanismo de autentificación de individuos y organizaciones.

Las misma técnicas de encriptación son utilizadas para resolver este problema. Se crean "firmas digitales" y "certificados" para autentificar usuarios y servidores respectivamente.

Riesgos que afectan sólo a clientes.
Actualmente las páginas Web contienen una colección de tecnologías que las hacen más interesantes e interactivas. Los Java Applets, controles de ActiveX, plugs-in, Javascripts etc. son ejemplos de estas tecnologías.

Pero estos contenidos activos, pueden contener problemas de seguridad que comprometer la privacidad del usuario y la integridad de los datos almacenados en su computador.

Este problema es más bien potencial que real. Una variedad de "applets maliciosos" se han demostrado, pero muy pocos ataques se han denunciado. Por ejemplo existen "applets molestosos" que hacen congelar y caer al browser.

Infringir la privacidad
Cada vez que se trae una página de un sitio remoto, se libera en el servidor una tarjeta de llamado, que puede ser la dirección de Internet del usuario, o información personal.
Los sitios Web pueden extraer información del usuario de diversas maneras. La más básica es el log del servidor, el cual corresponde a la hora y fecha de conexión, otra es la dirección del usuario, la identidad del documento requerido, y el URL del documento solicitado previamente. Otra información esta disponible en los ISP donde los servidores proxy guardan cada servidor visitado por sus clientes.

Otra manera en que los sitios Web recolectan información es a través de los "cookies". Los "cookies" son diseñados para mejorar la navegación por la Web, ya sea customizando las páginas, acceso a bases de datos, recorrer mapas complejos y otras operaciones que requieren mantener continuidad a lo largo de la navegación. Lo que debe preocupar más es cuando el usuario entrega información voluntariamente, e-mails, news, formularios etc.

Riesgos que afectan solo a servidores.
Existe la posibilidad que un sitio de una organización sea irrumpido y modificado por delincuentes, los cuales explotan alguna debilidad tal como un sistema operativo o un servidor Web mal configurado.

Otra fuente de problemas de seguridad son los scripts de CGI. Los CGI corresponden a interfaces de motores de búsqueda y de bases de datos. Estos programas son muy usados y muy simples de construir, y por lo tanto son hechos por programadores sin experiencia en temas de seguridad.

Muchos delincuentes irrumpen servidores Web con diversos objetivos: atacar las bases de datos, sistemas de archivos, y otros sistemas de misión critica. Siempre el servidor provee una "puerta" para los intrusos.

El problema de los servidores Web es que son sistemas complejos con una presión constante al crecimiento, y cualquier error que se cometa es una "puerta" para intrusos.

La tecnología que hace un servidor protegido es el uso de cortafuegos (firewalls).

Inhabilitación del Servidor. Los intrusos pueden dejar el servidor fuera de servicio. Estos ataques se hacen al sistema operativo, software de Web y CGI's. No existe una fórmula para evitar este riesgo, simplemente se puede disminuir el daño poniendo límites a los recursos del servidor y de otros programas, cerrando las vulnerabilidades conocidas del sistema operativo y otro software.

Seguridad en el servidor.Si el servidor está conectado a Internet o si está restringido a una Intranet, tendrá un incremento de visibilidad que puede tener un efecto lateral indeseable: ser un objetivo natural para atacar.

Un software seguro es aquel que hace lo que se supone que hace y nada más. Sin embargo, casi todos los softwares tienen bugs; la mayoría son errores de programación inadvertidos, pero algunos son "back doors" (código deliberadamente ubicado en el programa por el desarrollador del software para ayudar al debugging, que luego olvidan quitar).

Los bugs son más frecuentes mientras más grande y complejo es el programa. Cuando ocurre un bug en un programa de aplicación, las consecuencias son molestas: el programa se cae, los documentos quedan corruptos, etc. Cuando un bug ocurre en un programa que actúa en un servidor en red, puede llegar a comprometer al servidor.

Bugs típicos de softwares de servidor aparecen cuando el servidor se expone a una situación no anticipada por los desarrolladores, o cuando subsistemas del software interactúan inesperadamente.

Los hackers están constantemente buscando bugs en los softwares de servidor ya que cada bug representa un potencial portal de entrada. Ya sea alimentando el input del servidor o manipulando el ambiente del servidor en una manera controlada, el hacker puede engañarlo para que desempeñe una acción determinada o conseguir acceso a alguna parte del sistema.

Los softwares contienen bugs relacionados con la seguridad debido a la complejidad de los servidores modernos y a la competencia entre los vendedores, que sacan rápidamente nuevas versiones, grandes, complejas y poco testeadas. Además, los bugs en cualquier sistema que interactúe con el servidor (bases de datos, scripts de CGI, módulos API de servidor) pueden abrir hoyos en la seguridad.

Configuración incorrecta del software de sistema.
Un sitio Web no será seguro a menos que el servidor y el sistema operativo subyacente estén configurados correctamente. La mayoría de los sistemas transportan datos en modo permisivo; servicios de red populares se activan por defecto, se habilitan facilidades de configuración remota, y la política de acceso a los archivos del sistema es muy liberal. Ejecutar un servidor de red sin saber sobre él es la mayor vulnerabilidad.

Otra vulnerabilidad son las cuentas de usuario creadas por defecto que algunos sistemas operativos crean como una conveniencia de instalación, pero que no las borran cuando ya no las necesitan.

La configuración por defecto de Windows NT Workstation es particularmente promiscua, aunque la versión de servidor no lo es tanto. Muchos dialectos de UNIX vienen con todo activado, y cuesta lograr un sistema que haga sólo lo que se necesita y nada más.
Los permisos de archivo desconfigurados son un gran problema. Sistemas operativos multiusuario (UNIX y Windows NT incluidos) usan privilegios de cuenta como su mecanismo de seguridad fundamental. Cada usuario tiene registrada una cuenta y cada cuenta es asociada a un diferente set de privilegios.

Estos mecanismos dan a usuarios confiables, tales como administradores de sistemas, la habilidad de hacer los ajustes necesarios en la configuración del sistema mientras previene que otros hagan cambios no autorizados. Si un usuario malicioso ve que un archivo de configuración puede ser manipulado, podría modificar el sistema y posiblemente expandir su acceso a este.

Como los usuarios, servidores de red y otros programas también tienen distintos privilegios. En teoría un servidor debería tener sólo los privilegios que necesita para hacer su trabajo; en la práctica, muchos sitios dan a sus servidores mucho más amplio acceso al sistema que el que necesitan. Cuando este es el caso, el servidor se vuelve un tentador objetivo para atacar. Los hackers de sistemas buscarán explotar hoyos en la seguridad del software del servidor para ejecutar comandos de su elección. Cuando son exitosos, los comandos se ejecutarán con privilegios de servidor, permitiendo acceso a información confidencial.

No tener una política de seguridad.
Sin una política de seguridad no se puede saber si un sitio es seguro. Esta política debiera estar escrita, con una lista de lo que es o no permitido; debe reflejar la realidad política de la organización y cualquier trade-off entre riesgo y conveniencia que se podría aceptar. Su importancia radica en que da algo concreto para diseñar y evaluar las medidas de seguridad. También sirve para evaluar cambios propuestos al sistema.

¿Qué sistema operativo es más seguro?

El Macintosh OS es él más seguro, debido a que no tiene un intérprete de comandos, y en general no ejecuta ningún servicio de red. Es más probable que un Macintosh se caiga a que deje entrar a alguien.

En Febrero de 1996, un consorcio de compañías desarrolladoras de software Internet para Macintosh, ofreció un premio a quien pudiera leer una página Web protegida con password en un Macintosh corriendo WebStar. Luego de miles de intentos, nadie pudo lograrlo.

La principal razón por la cual Macintosh es seguro es porque sus capacidades por defecto son limitadas. Al agregarle servicios especiales (CGI scripts, servidor FTP, etc.) rápidamente se vuelve más riesgoso (de hecho, en un concurso similar al descrito se logró hackear el sistema gracias a una extensión third-party para administración remota de servicios). Además Macintosh no es inmune a ataques de inhabilitación de servicio.
Si bien Unix y Windows NT han tenido problemas de seguridad, ambos sistemas operativos son razonablemente seguros si se configuran correctamente.

Finalmente, la experiencia de la gente que ejecuta el host y los softwares de los servidores es el aspecto más importante en la seguridad del sistema. El sistema más seguro es con el que se sienten más confortables y con el cual tienen mayor experiencia.

¿Son los servidores "seguros" realmente seguros?

Servidores "seguros" simplemente son aquellos que pueden proteger documentos en tránsito con encriptación. Desde un punto de vista más amplio, los servidores seguros son tan vulnerables a los hackers como cualquier otro.

El servidor más seguro es el más simple. Servidores Web que sólo recuperan páginas HTML estáticas tienen menos bugs que aquellos más elegantes. El servidor WN de John Frank para sistemas UNIX tiene fama de seguro y confiable; sin embargo, no corre CGI scripts, ni incluye oferta del lado del servidor, ni permite Java servelets, ni soporta esquemas de autentificación sofisticados. Por tanto, es impropio para muchos sitios.

Pocos servidores son diseñados específicamente para aplicaciones de alta seguridad. El servidor VirtualVault de la Hewlett Packard es un sistema turnkey que consiste en un Netscape Commerce Server corriendo sobre una sistema operativo HP-UX bastante modificado. Este sistema operativo divide el sistema en un área "interna" confiable (bases de datos, scripts de CGI privilegiados, y otra información delicada) y otra zona "exterior" no confiable, donde ejecutan los servidores Web. Todas las comunicaciones entre ambas zonas están duramente reguladas y analizadas.

¿Un sistema de firewall hará a un servidor web seguro?

Un sistema de firewall es sólo un componente más de una estrategia de seguridad integrada. Si el servidor está bien configurado, no se necesita en absoluto un sistema de firewall. Si no se tiene una política de seguridad ni una estrategia de implementación bien pensadas, el firewall puede empeorar la situación dando una falsa sensación de seguridad.

No se puede evitar que los usuarios desplieguen el documento HTML, bajen el código fuente y hagan con él lo que quieran. No se debe implementar un sistema de seguridad basado en información escondida dentro del documento HTML.

El código fuente de los scripts de CGI, en cambio, no se transmite al browser remoto, sólo el resultado. Lo mismo se aplica para los includes del lado del servidor (como las "active server pages" de Microsoft). Sólo el HTML producido después de un script de CGI o los include del lado del servidor se procesan y se obtienen a través de la red.

Pasos para asegurar un sitio web.

Asegurar el sistema operativo y el servidor Web. Hacer el sistema operativo tan seguro como sea posible, instalando los parches de los vendedores relacionados con seguridad, remover servicios innecesarios, y fijar las configuraciones por defecto para hacerlas menos permisivas ("endurecimiento"). Cuando el sistema operativo es seguro, se puede instalar el software del servidor.

Monitorear el servidor por actividad sospechosa. No todos los ataques son obvios, por ello se debe monitorear la actividad sospechosa del servidor.

Controlar el acceso a documentos confidenciales. No todas las partes del servidor Web son públicas. Muchos sitios tienen áreas privadas que sólo los usuarios registrados pueden visitar. En Intranets es deseable que el sitio entero sea accesible sólo por invitación. Servidores con SSL protegen información confidencial, encriptando documentos Web que pasan por la red, y usando certificados de clientes para autentificación de usuario confiable.

Escribir scripts de CGI seguros. Aún si el servidor, el sistema operativo y todos los programas que soporta son seguros, los scripts de CGI o módulos de servidor que se instalen pueden dejar al sitio abierto a un ataque.

Configurar las facilidades de autoría y administración remotas.

Proteger la LAN contra el servidor Web. Antes de conectar el servidor Web a Internet, debe asegurarse que no puede ser usado como trampolín para atacar otras máquinas de misión crítica dentro de la organización. Lo mismo se aplica para organizaciones grandes donde un departamento no confía en otro. A menudo esto se logra endureciendo cuidadosamente el servidor y removiendo relaciones confiables entre unos y otros miembros de la LAN. A veces es necesario ir más allá y levantar un muro entre al LAN y el servidor.

Mantenerse al día en problemas de seguridad. Hoyos en la seguridad se descubren todos los días. Se debe chequear periódicamente los sitios Web de los vendedores y fabricantes del sistema operativo y de software third-party que se han instalado. Si hay un parche de seguridad, se debe usar tan pronto como sea posible.

Seguridad en internet
Atras
Subir
Hosted by www.Geocities.ws

1