Está en la página 1de 5

VULNERABILIDADES WEB

Tu sitio web puede ser blanco fcil de hackers, extorsionadores y otras alimaas de la red que usan
las vulnerabilidades de tu pgina como puntos de entrada. Entre los daos que puedes sufrir es el
robo de informacin de usuarios (desacreditando adems tu marca u organizacin), prdidas
financieras, convertir tu sitio en un punto de descarga de programas maliciosos o dejarte fuera de
lnea. De acuerdo al objetivo de tu web ya sea un portal empresarial o una pgina de
entretenimiento debes evaluar los riesgos e identificar los puntos vulnerables de tu proyecto.

El Open Web Application Security Project nos muestra los 10 tipos de vulnerabilidades ms comunes
y te comparto algunas soluciones:

1. Inyeccin Ocurre cuando a nuestro sistema entra informacin no confiable a travs de


formularios o comandos que son interpretados por queries en nuestra base de datos. Puede
resultar en robo o prdida de nuestra informacin.Solucin: Validar y limpiar todo lo que el
usuario ingrese a nuestro sistema antes de realizar cualquier proceso adems de usar
Prepared statements y stored procedures.
2. Secuencias de comandos en sitios cruzados (Cross-site scripting, XSS). Esta falla
permite desplegar en el navegador datos no confiables proporcionados por usuarios,
generalmente inyectando cdigo javascript malicioso. Estos datos pueden secuestrar tu sitio
web, permitiendo que tus usuarios sean redireccionados a sitios maliciosos o descarguen
malware.Solucin: Validar y escapar cualquier dato a ser impreso en tu sitio, trata siempre
de usar herramientas de templates los cuales te permitan optimizar este proceso
(Freemarker o Smarty).
3. Autenticacin rota. Se presenta cuando es posible suplantar la identidad del usuario al
obtener acceso a datos como contraseas o identificadores. Un ejemplo es poder modificar
el id de la sesin en la cookie y obtener as acceso como un administrador o cambiar el perfil
de acceso.Solucin: Verificar los procesos de autenticacin, usar mecanismos y libreras ya
existentes. No guardar informacin sobre permisos o identidad en cookies.
4. Solicitudes falsificadas en sitios cruzados. El atacante engaa a la vctima a enviar
solicitudes HTTP que no desea lo que permite al atacante ejecutar operaciones que el
usuario no desea.Solucin: Controlar el flujo de los procesos usnados tokens nicos por
sesin y por solicitud
5. Referencias directas e inseguras a objetos. Exponer referencias a objetos de
implementacin interna como archivos, directorios y base de dato por lo que pueden ser
manipulados. Por ejemplo si usamos un script de descarga que recibe como parmetro el
nombre del archivo, puede ser usado para enviar al atacante nuestro documento de
configuracin con la clave de nuestra Base de Datos.Solucin: Usar siempre controles de
acceso y no ofrecer datos sobre la implementacin interna.
6. Configuracin errnea de seguridad. Un parmetro mal especificado puede permitir el
acceso a nuestras aplicaciones.Solucin: Definir todos los elementos de seguridad y no usar
atributos por defecto (por ejemplo el usuario y password root), mantener nuestras
aplicaciones, servidores y libreras siempre actualizados.
7. Almacenamiento inseguro: Si un atacante tuviera acceso a nuestra informacin y esta no
se encontrar asegurada, podra acceder a contraseas y datos de tarjeta de crdito de
usuarios y clientes entre otra informacin sensitiva.Solucin: Encriptar informacin sensible
en nuestra base de datos.
8. Fallas al restringir acceso URL. Una pgina en nuestro sitio que no sea no validada puede
permitir el acceso reas restringidas mediante la manipulacin de la URL otorgando
permisos administrativos a un atacante. Por ejemplo tener una pgina admin.php como
centro de control y no validar su acceso.Solucin: Validar todas las pginas o controladores,
usar mtodos de autenticacin incorporados en el servidor.
9. Insuficiente proteccin en la capa de transporte. Todo el trfico en internet puede ser
escuchado, y al enviar informacin sensitiva como contraseas, nmeros de tarjeta o
documentos sin su apropiada autenticacin y encriptacin, alguien puede tener acceso a esa
informacin.Solucin: Usar SSL y TSL y evitar enviar informacin sensitiva que pueda ser
accedida por un escuchante.
10. Forwards y Redirects no validados. El permitir que tu aplicacin envi a tus visitantes a
otra pgina o sitio sin validar puede dejarlos caer en sitios de phising o malware.Solucin:
Valida y lleva un control sobre los links y forwards que aparecen en tu pgina.

Para asegurar nuestro sitio debemos aceptar que nuestras aplicaciones pueden ser vulnerables. Se
debe Verifica cada una de esas vulnerabilidades y crea soluciones y medidas de contencin en caso
de que tu sitio se vea comprometido. Nunca olvides tener un respaldo.

Estos son los puntos y soluciones generales. Debes recordar que existen otros ataques y diferentes
variantes de los mismos. De igual forma los ataques se manifiestan de diferentes formas
dependiendo del lenguaje, la plataorma, el servidor, el sistema operativo, etc.

Vulnerabilidades de un sistema informtico

En un sistema informtico lo que queremos proteger son sus activos, es decir, los recursos que
forman parte del sistema y que podemos agrupar en:

Hardware: elementos fsicos del sistema informtico, tales como procesadores, electrnica
y cableado de red, medios de almacenamiento (cabinas, discos, cintas, DVDs,...).
Software: elementos l gicos o programas que se ejecutan sobre el hardware, tanto si es el
propio sistema operativo como las aplicaciones.
Datos: comprenden la informacin lgica que procesa el software haciendo uso del
hardware. En general sern informaciones estructuradas en bases de datos o paquetes de
informacin que viajan por la red.
Otros: fungibles, personas, infraestructuras,.. aquellos que se 'usan y gastan' como puede
ser la tinta y papel en las impresoras, los soportes tipo DVD o incluso cintas si las copias se
hacen en ese medio, etc.

De ellos los ms crticos son los datos, el hardware y el software. Es decir, los datos que estn
almacenados en el hardware y que son procesados por las aplicaciones software.

Incluso de todos ellos, el activo ms crtico son los datos. El resto se puede reponer con facilidad
y los datos... sabemos que dependen de que la empresa tenga una buena poltica de copias de
seguridad y sea capaz de reponerlos en el estado ms prximo al momento en que se produjo la
prdida. Esto puede suponer para la empresa, por ejemplo, la dificultad o imposibilidad de reponer
dichos datos con lo que conllevara de prdida de tiempo y dinero.
Vulnerabilidad: definicin y clasificacin

Definimos Vulnerabilidad como debilidad de cualquier tipo que compromete la seguridad del sistema
informtico.

Las vulnerabilidades de los sistemas informticos las podemos agrupar en funcin de:

Diseo

Debilidad en el diseo de protocolos utilizados en las redes.


Polticas de seguridad deficiente e inexistente.

Implementacin

Errores de programacin.
Existencia de puertas traseras en los sistemas informticos.
Descuido de los fabricantes.

Uso

Mala configuracin de los sistemas informticos.


Desconocimiento y falta de sensibilizacin de los usuarios y de los responsables de
informtica.
Disponibilidad de herramientas que facilitan los ataques.
Limitacin gubernamental de tecnologas de seguridad.

Vulnerabilidad del da cero

Se incluyen en este grupo aquellas vulnerabilidades para las cuales no existe una solucin
conocida, pero se sabe cmo explotarla.

Vulnerabilidades conocidas

Vulnerabilidad de desbordamiento de buffer.

Si un programa no controla la cantidad de datos que se copian en buffer, puede llegar un


momento en que se sobrepase la capacidad del buffer y los bytes que sobran se almacenan
en zonas de memoria adyacentes.

En esta situacin se puede aprovechar para ejecutar cdigo que nos de privilegios de
administrador.

Vulnerabilidad de condicin de carrera (race condition).

Si varios procesos acceden al mismo tiempo a un recurso compartido puede producirse este
tipo de vulnerabilidad. Es el caso tpico de una variable, que cambia su estado y puede
obtener de esta forma un valor no esperado.
Vulnerabilidad de Cross Site Scripting (XSS).

Es una vulnerabilidad de las aplicaciones web, que permite inyectar cdigo VBSript o
JavaScript en pginas web vistas por el usuario. El phishing es una aplicacin de esta
vulnerabilidad. En el phishing la vctima cree que est accediendo a una URL (la ve en la
barra de direcciones), pero en realidad est accediendo a otro sitio diferente. Si el usuario
introduce sus credenciales en este sitio se las est enviando al atacante.

Vulnerabilidad de denegacin del servicio.

La denegacin de servicio hace que un servicio o recurso no est disponible para los
usuarios. Suele provocar la prdida de la conectividad de la red por el consumo del ancho
de banda de la red de la vctima o sobrecarga de los recursos informticos del sistema de la
vctima.

Vulnerabilidad de ventanas engaosas (Window Spoofing).

Las ventanas engaosas son las que dicen que eres el ganador de tal o cual cosa, lo cual
es mentira y lo nico que quieren es que el usuario de informacin. Hay otro tipo de ventanas
que si las sigues obtienen datos del ordenador para luego realizar un ataque.

En http://www.cert.org/stats/ hay disponibles unas tablas que indican el n de vulnerabilidades


detectadas por ao. Es interesante visitar la web de vez en cuando y comprobar el elevado nmero
de vulnerabilidades que se van detectando. Habra que ver cuntas no se detectan...

Herramientas

En el caso de servidores Linux/Unix para hacer el anlisis de vulnerabilidades se suele utilizar el


programa 'Nessus'.

Nessus es de arquitectura cliente-servidor OpenSource, dispone de una base de datos de patrones


de ataques para lanzar contra una mquina o conjunto de mquinas con el objetivo de localizar sus
vulnerabilidades.

Existe software comercial que utiliza Nessus como motor para el anlisis. Por ejemplo est Catbird
(www.catbird.com) que usa un portal para la gestin centralizada de las vulnerabilidades, analiza
externamente e internamente la red teniendo en cuenta los accesos inalmbricos. Adems hace
monitoreo de servicios de red como el DNS y la disponibilidad de los portales web de las
organizaciones.

En otros sistemas tipo Windows est el MBSA Microsoft Baseline Security Analyzer que permite
verificar la configuracin de seguridad, detectando los posibles problemas de seguridad en el sistema
operativo y los diversos componentes instalados.

De qu queremos proteger el sistema informtico?

Ya hemos hablado de los principales activos o elementos fundamentales del sistema informtico que
son vulnerables y ahora veremos a qu son vulnerables dichos elementos.

Comenzamos definiendo el concepto de amenaza.

Entendemos la amenaza como el escenario en el que una accin o suceso, ya sea o no deliberado,
compromete la seguridad de un elemento del sistema informtico.
Cuando a un sistema informtico se le detecta una vulnerabilidad y existe una amenaza asociada a
dicha vulnerabilidad, puede ocurrir que el suceso o evento se produzca y nuestro sistema estar en
riesgo.

Si el evento se produce y el riesgo que era probable ahora es real, el sistema informtico sufrir
daos que habr que valorar cualitativa y cuantitativamente, y esto se llama 'impacto'.

Integrando estos conceptos podemos decir que un evento producido en el sistema informtico
que constituye una amenaza, asociada a una vulnerabilidad del sistema, produce un impacto
sobre l.

Si queremos eliminar las vulnerabilidades del sistema informtico o queremos disminuir el impacto
que puedan producir sobre l, hemos de proteger el sistema mediante una serie de medidas que
podemos llamar defensas o salvaguardas.

También podría gustarte