FACULTAD DE INGENIERIA EN SISTEMAS DE INFORMACION Y
CIENCIAS DE LA COMPUTACION
INTRODUCCIN
Una de las vas ms utilizadas para ataques informticos a las instituciones y empresas y que ha crecido considerablemente es el ataque web, por lo que los profesionales en el rea de informtica deben de regirse a estndares, estrategias, planes de seguridad y normas informticas, las cuales prevengan, detengan y restauren los procesos que se realizan con la informacin.
Un profesional de informtica debe de establecer un control adecuado y correcto para evitar vulnerabilidades, riesgos y contrarrestar amenazas que pueda incurrir en daos a la institucin. Se deben de crear y establecer planes de seguridad web, para as prevenir ataques a la informacin.
Uno de los principales medios de seguridad web, es el de establecer amplias defensas, como el resguardo de informacin, acceso a la misma, y control de trfico en red, lo cual debe ser planeado y dirigido por el director de informtica y el equipo de trabajo, con el apoyo de Gerencia y de todo el personal.
OBJETIVOS
Crear un plan de seguridad web, siguiendo estndares, estrategias y medidas para la prevencin, deteccin y restauracin de la informacin.
Utilizar un sistema capaz de realizar copias de seguridad en dispositivos de red, externos para el resguardo de la misma, de forma sincronizada, espejada o simplemente de resguardo.
Utilizar un sistema de monitoreo del trfico de red, para control de movimientos de paquetes, protocolos y direcciones lgicas y fsicas de computadoras que acceden.
Crear estrategias de seguridad web basadas en el Top 10 de Owasp.
SEGURIDAD WEB
La explotacin comercial de Internet, exige a los programadores y administradores de red, el disponer de sistemas de comunicacin seguros, capaces de adaptarse a las necesidades de los nuevos servicios, como la compra electrnica o bancas a distancia. Utilizando bsicamente dos conceptos fundamentales, la Autenticacin, que es garantizar que el usuario y el cliente web como un determinado servidor de informacin son quienes dicen ser, y la confidencialidad que se refiere a que la informacin intercambiada no pueda ser interceptada por terceros.
Por lo tanto, con los sistemas de comunicacin, es posible entrar a un enlace de comunicaciones e interceptar el contenido de las comunicaciones que se transmiten. Cuando se envan informaciones privadas, por ejemplo un nmero de tarjeta de crdito en un formulario de compra, es vital garantizar que la informacin sea recibida exclusivamente por su destinatario, y que la identidad es la esperada.
El rea de seguridad est enfocada a la proteccin de la infraestructura computacional, incluyendo toda la informacin que se maneja. Por lo tanto se debe de seguir estndares, protocolos, mtodos, reglas, herramientas y leyes para reducir los posibles riesgos. Comprende software, base de datos, metadatos, archivos y todos los activos del negocio, y que signifique un riesgo si otras personas tengan acceso a ello. Con los riesgos de la seguridad de la informacin se debe de planear un buen mtodo para la seguridad informtica y en especial el de la Web.
Con todos estos aspectos que conlleva la seguridad web, se presentan estrategias para el resguardo de informacin, basada en los siguientes aspectos.
Implementacin de un sistema de Base de Datos con servicios de Apache, PHP y FTP. Utilizando XAMPP (X que hace referencia al Sistema operativo, Apache, MySQL, PHP, Perl), el cual es un servidor independiente de plataforma, software libre, y que consiste en la base de datos MySQL, servidor web Apache e intrpretes para lenguajes de script PHP y Perl.
Creacin de Sistemas de Respaldo, Espejado, Sincronizacin de la informacin en unidades locales, extrables y en red.
Utilizacin de Auditores de red y sniffers para monitorear y analizar el trfico en la red.
Creacin de estrategias de seguridad para reducir vulnerabilidades, riesgos y amenazas potenciales a nivel mundial, como lo es la Inyeccin, Secuencia de Comandos en Sitios Cruzados (XSS), Almacenamiento Criptogrfico Inseguro, Falla de Restriccin de Acceso a URL, entre otros, basndose en el Top 10 de OWASP.
Creacin y utilizacin de un plan de Seguridad (DRP-BCP).
MANUAL DE INSTALACIN Y CONFIGURACIONES XAMPP PARA WINDOWS VERSIN 1.6.4
Lo primero que se debe hacer es visitar la pgina oficial de XAMPP y bajar el instalador. En esta ocasin se van a configurar dos mquinas con Windows XP Profesional con SP2 y se utilizar el instalador siguiente: (http://www.apachefriends.org/en/xampp-windows.html). Tambin se puede instalar sin instalador descomprimiendo el ZIP directamente en cada mquina.
Una vez descargado el instalador se procede a instalar....
Se elige el Idioma Espaol y se pulsa OK.
Seguidamente se pulsa el botn Next.
Luego se selecciona la carpeta destino donde se instalar la herramienta, la cual tendr que realizarse en la unidad por defecto C:\
En este paso se elige instalar los distintos mdulos como servicios de Windows. Teniendo que hacerlo nicamente para el Apache y MySQL.
Cuando la instalacin termine se hace click en el botn Finish.
Administracin y Seguridad
Una vez instalado correctamente XAMPP se vern las posibles opciones de configuracin y administracin de la herramienta y sus mdulos instalados, para ello se arranca en el panel de control de XAMPP.
En este panel de control se pueden visualizar todos los mdulos instalados. Para cada mdulo es posible parar su servicio (Stop), arrancarlo (Start), ver su estado (Stop / Running), marcarlo como servicio (checkbox Svc) y entrar en su panel de administracin (Admin). Para probar que la instalacin de XAMPP fue exitosa basta con colocar en el navegador "http://localhost"o "http://127.0.0.1"y aparecer la aplicacin de administracin web.
En la primera seccin se podr ver toda la informacin relativa al PHP instalado (phpinfo()). Como se puede ver en la opcin de chequear seguridad hay muchos agujeros y deficiencias. Para solucionar estos agujeros vaya a este enlace:
"http://localhost/security/xamppsecurity.php" antes de publicar en la website.
En la seccin de herramientas encontramos phpMyAdmin. La herramienta mencionada nos permitir administrar MySQL. Antes de empezar a trabajar con esta herramienta hay que configurar ciertos aspectos.
Inicialmente MySQL crea un usuario por defecto llamado root sin password. Para poder cambiar la password de root se debe acceder a la administracin de MySQL a travs del Panel de Control de XAMPP. Despus de guardar los cambios, hay que modificar el fichero "config.inc.php" situado en "$HOME_XAMPP/phpMyAdmin/" y editar las siguientes lneas:
En este fichero se configurarn las variables necesarias para que phpMyAdmin pueda acceder a MySQL, las ms importantes son auth_type para el tipo de autenticacin, user y password. Para la variable auth_type podemos poner el mtodo de autenticacin http y cuando accedamos a phpMyAdmin nos aparecer una ventana para introducir el usuario y password de MySQL.
LOS USUARIOS Y CONTRASEAS DEL SUPER USUARIO Y DEL USUARIO SE PODRN ENCONTRAR CON EL OFICIAL DE INFORMTICA DE LA EMPRESA.
Las aplicaciones web, para poder ejecutarlas con XAMPP deben estar alojadas dentro de la carpeta "htdocs" situada en la carpeta principal de la instalacin de XAMPP.
LAS APLICACIONES WEB A UTILIZAR ESTN A CARGO DEL OFICIAL DE INFORMTICA DE LA EMPRESA. APLICANDOLE SEGURIDAD A NUESTRO SERVIDOR WEB (APACHE)
Antes de esto es importante deshabilitar algunas directivas que se encuentran en el archivo httpd.conf, el cual est en la carpeta conf de nuestro servidor web apache. No esta dems recomendarles que deben descomentar nicamente las directivas que se vayan a utilizar ya que el dejarlas todas descomentadas puede provocar vulnerabilidades en nuestro sitio web.
Las lneas a descomentar son las siguientes para que nuestro archivo .htaccess pueda funcionar correctamente:
CONFIGURACIN EN EL ARCHIVO .HTACCESS Se busca el archivo .htaccess en nuestro servidor web y si no lo encontramos pues creamos uno. Importante: el archivo no tiene ningn nombre excepto la extencin .htaccess
1. Para prevenir el hotlink (esto significa que no utilizaran nuestro ancho de banda) simplemente colocaremos de preferencia al final de nuestro archivo las siguientes lneas:
Options +FollowSymlinks #Protect against hotlinking RewriteEngine On RewriteCond %HTTP_REFERER !^$ RewriteCond %HTTP_REFERER !^http://(www.)?nombrededominio.com/ [nc] RewriteRule .*.(gif|jpg|png)$ http://nombrededominio.com/img/no_robar_ancho_de_banda.gif[n c]
2. Para Bloquear las peticiones de todos los user-agents agregamos a nuestro mismo archivo lo siguiente:
En este caso agregamos estas lneas que contienen los errores ms comunes como el Error 404 que es el de Objeto no Encontrado, especificndole a .htaccess que cuando ocurra el error muestre la pgina que nosotros agregamos, por ejemplo en nuestro proyecto agregamos una carpeta denominada error las cual contiene las paginas 401.php, 403.php, 404.php y 500.php.
5. Tambin en el .htaccess podemos prohibir que ciertas IPs accedan a nuestro sitio con las siguientes lneas:
allow from all deny from 145.186.14.122 deny from 124.15
6. Podemos proteger cualquier archivo al que no deseamos que se tenga acceso, para lo cual nuestro .htaccess mostrar la pagina de error 403.php.
#Protect the .htaccess File order allow,deny deny from all
7. Podemos proteger tambin archivos y directorios con contraseas agregando al .htaccess lo siguiente:
#proteger un archivo con contrasea AuthType Basic AuthName Prompt AuthUserFile /home/path/.htpasswd Require valid-user
# proteger un directorio con contrasea resides AuthType basic AuthName "This directory is protected" AuthUserFile /home/path/.htpasswd AuthGroupFile /dev/null Require valid-user
Como podrn notar se necesita de un archivo con extensin .htpasswd el cual validara nuestro usuario y contrasea. Este archivo lo podemos buscar dentro de nuestro servidor web, en este caso apache, pero podemos crear uno y agregarlo al directorio que aloja nuestra pagina web, especificando en las lneas anteriores la ruta del archivo. El archivo nicamente debe contener nuestro usuario seguido de dos puntos y nuestra contrasea.
#.htpasswd usuario:contrasea
8. Y tambin para deshabilitar la navegacin desde la web por nuestros directorios agregamos a .htaccess las siguientes lneas.
Options All Indexes
Estas configuracin por dems esta decir que son completamente sencillas y entendibles en el archivo .htaccess pueden hacer la diferencia entre un sitio web totalmente vulnerable y uno no vulnerable.
NOTA: Es importante aplicar toda la seguridad anteriormente descrita en el documento de configuracin de apache al servidor para impedir el acceso a personas no deseadas.
CREACIN DE COPIAS DE RESPALDO, SINCRONIZACIN Y ESPEJADO EN COMPUTADORAS LOCALES Y EN RED.
SyncBackSE
SyncBacSE es una prctica y til herramienta que permite sincronizar directorios y realizar copias de seguridad, de modo que se puedan mantener actualizados los documentos, en distintas ubicaciones de una forma muy sencilla y rpida. Su instalacin es casi automtica y no necesita muchas configuraciones tcnicas.
Instalacin de SyncBackSE Versin 5:
Utilizacin y Entorno del programa.
Luego de instalar el programa, se nos pedir ingresar un perfil, con el cual se realizarn operaciones con la computadora.
Despus nos aparece la siguiente ventana, en la cual podemos escoger la opcin deseada:
Aqu nos muestra el tipo de perfil que deseamos crear: Copia: Para copiar archivos a otra carpeta, unidad, server ftp, etc. esto mantiene una copia segura de archivos.
Sincronizar Para mantener dos carpetas idnticas. Cuando los archivos cambian en ambos lugares.
Espejado. Para copiar archivos a otra carpeta, unidad, servidor ftp, etc. mantiene una imagen espejada de Archivos.
Grupo: En esta opcin, se puede unificar varios perfiles, lo que permite ejecutarlos en un solo proceso.
Supongamos que se escoge la opcin de Copia. Luego se muestra la opcin de copiar/sincronizar a un servidor FTP?
Luego muestra la opcin de copiar en un Zip nico o en varios:
Se escribe donde estn los archivos a copiar y un nombre para los archivos.
Se selecciona el destino, ya sea USB, Disco Duro externo, red, etc.
Luego aparece la ventana de copias:
Luego se elige Ok.
Luego en la siguiente ventana se muestra el mensaje si se desea hacer un simulacro.
Si se selecciona esta opcin, mostrar la ventana siguiente, en la cual se debe de realizar la copia, despus de que termine. Y se escoge el de Espejar todos a Destino.
Borramos archivos, que estaban en la carpeta destino, si los hubiera, por lo tanto debe ser una carpeta sin documentos.
Se espera a que siga el proceso y finalizado exitosamente:
DETECCIN Y AUDITORIA DEL TRFICO EN LA RED
Sniffer: WireShark Wireshark es una herramienta tili y my dinmica, es multiplataforma de anlisis en red. As mismo es un producto de la evolucin de Ethereal, un snifer muy potente y uno de los mejores a nivel mundial. Funciona al igual que lo hace cualquier otro sniffer (Windump, TCPDump dsniff). La diferencia es su entorno, ya que ste lo hace en uno grfico y ms prctico, entendible y amigable. Ethereal es una herramienta grfica y muy utilizada por los profesionales y/o administradores de red, con lo cual pueden analizar e identificar el tipo de trfico en la misma. Tambin se denomina analizador de protocolos de red, de paquetes, packet sniffer o sniffer. Ethereal brinda la facilidad de analizar los paquetes de datos en una red activa como desde un archivo de lectura generado con anterioridad. Desde el ao 2006, Ethereal se conoce como WireShark y est categorizado entre el Top 10 como sniffer, junto a Nessus y Snort, ocupando el segundo lugar entre estos.
Caractersticas de WireShark: Disponibilidad para Unix, Linux, Windows y Mac OS. Captura paquetes desde interfaz de red. Obtiene detalladamente informacin de protocolos utilizados. Puede importar/exportar paquetes capturados desde y hacia otros programas. Filtra Paquetes. Busca paquetes que cumplan con criterios. Permite visualizar estadstica. Sus funciones grficas son muy poderosas ya que identifica mendiante el uso de colores los paquetes que cumplen con filtros establecidos. WireShark no es un Sistema de Deteccin de Intrusos, ya que no es capaz de generar una alerta cuando se presentan casos especiales en una red.
Instalacin y Configuracin de Wireshark Wireshark se puede descargar desde la pgina oficial, y se encuentra disponible para varias plataformas: www.wireshark.org
Luego de descargar el archivo, se procede a la instalacin del mismo, esta instalacin es para el Sistema Operativo Windows XP Profesional:
Aqu se selecciona:
WireShark, GUI del analizador de protocolos.
TShark, lnea de comando del analizador de protocolos. Plugins/Extensions, especificar plugins y extensiones para TShark y Wireshark en este punto deber seleccionar todos los tems listados.
Tool, ofrece herramientas adicionales aplicar a los archivos que contienen los paquetes para su anlisis seleccionar todas las ofrecidas durante la instalacin.
Editcap, para manipular los archivos.
Text2Pcap, convierte un archivo ASCII en formato libpcap.
Mergecap, permite obtener un archivo desde la combinacin de 2 o ms archivos de paquetes capturados.
Capinfos, es un programa que proporciona informacin de los paquetes capturados.
Se selecciona Instalar WinPcap 4.0.2
Interfaz de usuario: El Men principal es utilizado para iniciar las acciones y/o funciones de la aplicacin.
File, similar a otras aplicaciones GUI este contiene los tems para manipular archivos y para cerrar la aplicacin WireShark.
Edit, este men contiene tems aplicar funciones a los paquetes, por ejemplo, buscar un paquetes especifico, aplicar una marca al paquete y configurar la interfaz de usuario.
View, permite configurar el despliegue de la data capturada.
Go, contiene tems que permiten el desplazamiento entre los paquetes.
Capture, para iniciar y detener la captura de paquetes. Analyze, contiene tems que permite manipular los filtros, habilitar o deshabilitar protocolos, flujos de paquetes, etc.
Statistics, contiene tems que permiten definir u obtener las estadsticas de la data capturada. Help, men de ayuda.
Barra de herramientas principal: Permite el acceso rpido a las funciones ms utilizadas.
Barra de herramientas para filtros, aqu se especifica el filtro que se desea aplicar a los paquetes que estn siendo capturados.
Esta barra es muy importante, aqu se pueden hacer filtros de bsqueda por protocolos, es decir, si se desean ver slo los movimientos con el protocolo http se debe de escribir en el filtro, y WireShark mostrar todos los movimientos con este protocolo.
Panel de paquetes capturados, en este panel se despliega la lista de paquetes capturados. Al hacer clic sobre algunos de estos se despliega cierta informacin en los otros paneles.
Panel para detalles del paquete: Aqu se despliega informacin detallada del paquete seleccionado en el panel de paquetes.
Panel de paquetes capturados en bytes: Despliega en bytes la informacin contenida en el campo seleccionado desde el panel de detalles del paquete seleccionado en el panel de paquetes.
La barra de estado: Muestra informacin acerca del estado actual del programa y de la data capturada.
Captura de paquetes: En esta opcin se debe se debe de hacer clic en captura y luego en interfaz, despus iniciar el adaptador:
Para detener o reiniciar la captura de paquetes se debe de presionar el botn de Stop. Despus de iniciado los paquetes se mostrarn en la siguiente ventana.
Firewall ACL Rules (Control de reglas Firewall) Esta opcin permite denegar o permitir un control de trfico en la red, la mejor opcin es escoger el producto: Cisco IOS (extended)
Denegacin de Servicio en WireShark
Este problema en Wireshark reside en el mdulo IKEV1 que puede entrar en un bucle infinito y permitir a un atacante remoto poder generar una denegacin de servicio a travs de paquetes IKE. El fallo est en la funcin proto_tree_add_item() en el archivo tshark.c con el que an no existe una solucin. Por lo tanto se debe de adquirir las ltimas versiones, con lo que se podra analizar la continuidad de este problema.
AUDITOR DE RED NetSupervisor:
Es un programa que ofrece una herramienta potente de supervisin de redes, y que avisa mediante distintos mtodos acerca de errores en una red.
Este programa rene gran cantidad de herramientas de supervisin de redes, con un entorno muy fcil de manejar. Permite disear, administrar y monitorizar cualquier red en tiempo real, incluido redes a travs de internet. Es multihilo, es decir, utiliza tecnologa MultiThreading, lo que permite utilizar herramientas disponibles a la vez.
Puede supervisar cualquier equipo conectado a una red que tenga direccin IP, desde un servidor hasta una cmara de video-vigilancia.
Funciones principales de NetSupervisor Interfaz grfica para creacin de esquemas de red y herramientas mltiples de monitorizacin. Supervisor continuo de cualquier equipo con IP conectado a cualquier red (LAN, WAN, Internet). Deteccin (configurable) de hasta 8 tipos de errores y configuracin de 6 acciones a realizar en caso de error. Configuracin de tiempo entre anlisis. Trazador de redes Buscador avanzado de equipos en cualquier red Analizador de rangos de direcciones IP. Analizador de puertos TCP y UDP para cualquier equipo (LAN, WAN, Internet) Identificacin avanzada de puertos (programas que usan el puerto, juegos, virus-troyanos y aplicaciones de terceros) Resolucin de direccin MAC, fabricante de tarjeta de red y nombre de dominio DNS para cualquier equipo Inventario de equipos y propiedades de los mismos Deteccin de cada de red. Representacin grfica de los datos de respuesta para cada equipo.
Esquemas de red
Seguimiento de Puertos encontrados, protocolos y gusanos o troyanos que podran atacar por los mismos.
PROYECTO OWASP
El proyecto abierto de seguridad en aplicaciones web (OWASP), es una comunidad abierta dedicada a habilitar a las organizaciones para desarrollar, comprar y mantener aplicaciones confiables.
El objetivo del proyecto Top 10 es crear conciencia sobre la seguridad en aplicaciones mediante la identificacin de algunos riesgos ms crticos que enfrentan las organizaciones.
La Fundacin OWASP es una entidad sin nimo de lucro para asegurar el xito a largo plazo del proyecto. Casi todos los miembros de OWASP son voluntarios, incluyendo el Directorio OWASP, los Comits Globales, Lderes de Captulos, Lideres de Proyectos, y miembros de proyectos.
OWASP TOP 10-2010 (Nuevo)
A1- Inyeccin. A2- Secuencia de Comandos en Sitios Cruzados (XSS). A3- Prdida de Autenticacin y Gestin de Sesiones. A4- Referencia Directa Insegura a Objetos. A5- Falsificacin de Peticiones en Sitios Cruzados (CSRF). A6- Defectuosa Configuracin de Seguridad (NUEVO). A7- Almacenamiento Criptogrfico Inseguro. A8- Falla de Restriccin de Acceso a URL. A9- Proteccin Insuficiente en la Capa de Transporte. A10- Redirecciones y reenvos no validados (NUEVO).
Riegos de Seguridad en Aplicaciones Los atacantes pueden potencialmente usar diferentes rutas a travs de su aplicacin para causar dao en su negocio u organizacin. Cada una de las cuales representa un riesgo suficientemente serio.
OWASP TOP 10-2010
1. INYECCION:
Cuando se da un engao con una pgina falsa donde se solicita datos del usuario para luego ser explotados. Se presentan fallas de inyeccin como SQL, OS y LDAP, las cuales ocurren cuando datos no confiables se envan a un intrprete como parte de un comando o consulta.
Estos datos del atacante pueden engaar al intrprete en ejecutar comandos no intencionados o acceder a datos no autorizados.
EJEMPLO Efectuar una consulta a partir de un dato enviando como parmetro
http://localhost/usuario.php?id=8262 $sql='SELECT * FROM USERS where id =' $_GET['id'];
Eso funciona como robo de contraseas y usuarios por medio de sitios web falsos Qu pasa si ingreso sentencias SQL?
RIESGOS EXPLOTACION FACIL PREVALENCIA COMUN DETECCION MEDIA IMPACTO SEVERO
NOTA Inyeccin no es solo SQL LDAP (Protocolo Ligero de Acceso a Directorios) ENVIO DE E-MAIL COMANDOS SO
DEFENSA Usar una API segura que evite el uso del intrprete o provea una interface parametrizada.
$stmt = $dbh->prepare(select * from Users where id =?); If ($stmt->execute(array($_GET[id]))) Si no hay una API segura validar entradas If (is_int($_GET[id])))
2. SECUENCIA DE COMANDOS EN SITIOS CRUZADOS (XSS):
Permite a los atacantes ejecutar secuencias de comandos en el navegador de la vctima. Estas fallas XSS ocurren cuando una aplicacin toma datos no confiables y los enva al navegador web sin una validacin y codificacin apropiada. XSS permite a los atacantes ejecutar secuencias de comandos en el navegador de la vctima los cuales pueden secuestrar las sesiones de usuario, destruir sitios web, o dirigir al usuario hacia un sitio malicioso.
EJEMPLO El contenido de esta pgina se carga imprimiendo un dato ingresado previamente http://localhost/buscar.php?cadena=Equipos echo$cadena; Qu pasa si ingreso etiquetas HTML en la variable cadena. Y si comparto el enlace modificado Y si vuelvo persistente el dato en la base de datos
RIESGOS EXPLOTACION MEDIA PREVALENCIA MUY DIFUNDIDA DETECCION FACIL IMPACTO MODERADO
DEFENSA Escapar a todos los datos no confiables Echo htmlentities ($_GET[cadena]); Validacin de entradas positivas(permitir ciertas etiquetas) Funciones ms complicadas
3. PERDIDA DE AUTENTICACION Y GESTION DE SESIONES:
Cuando los atacantes asumen la identidad de otros usuarios. Con esto, existen fallos en implementacin, permitiendo a los atacantes comprometer contraseas, llaves, tokens de sesiones, o explotar fallas de implementacin para asumir la identidad de otros usuarios.
EJEMPLO
Un usuario mantiene su sesin activa siguiendo enlaces que incluyen su identificador de sesin. http://localhost.com/preferencias.php? sesionid=blbvbisicgyet87gch Si copio el enlace en otra PC, ingreso a la misma pagina?
EJEMPLO Un usuario inicia sesin desde una cabina de internet y luego cierra el navegador sin cerrar sesin Qu sucede si luego otro usuario entra en la misma web. Un atacante accede a la base de datos de contraseas sin cifrar.
RIESGOS Explotacin media Prevalencia comn Deteccin media Impacto severo
DEFENSA Un fuerte control de gestin de sesiones Tiempos limites de vigencia Cifrar las claves de tus usuarios Session_regenerate_id(TRUE)
4. REFERENCIA DIRECTA INSEGURA DE OBJETOS:
Los atacantes pueden tener acceso a los ficheros y directorios y manipularlos para acceder datos de los usuarios. Ocurre cuando un desarrollador expone una referencia a un objeto de implementacin interno, tal como un fichero, directorio, o base de datos. Sin un chequeo de control de acceso u otra proteccin, los atacantes pueden manipular estas referencias para acceder datos no autorizados.
EJEMPLO
El usuario accede a informacin personal con una direccin que incluye su identificador. http://localhost.com/cuenta.php?id=87392 Qu pasa si cambio el valor id?
Comprobar que el usuario tiene los privilegios para acceder al recurso If ($_GET[id]==$_SESSION[id])
5. FALSIFICACION DE PETICIONES EN SITIOS CRUZADOS (CSRF):
Un atacante obliga al navegador de una vctima a enviar una peticin falsa. Este ataque obliga al navegador de una vctima autenticada a enviar una peticin HTTP falsificado, incluyendo la sesin del usuario y cualquier otra informacin de autenticacin incluida automticamente, a una aplicacin web vulnerable. Esto permite al atacante forzar al navegador de la victima para generar pedidos que la aplicacin vulnerable piensa son peticiones legtimas provenientes de la vctima.
EJEMPLO
Una aplicacin de correo electrnico permite configurar una cuenta adicional para reenviar los mensajes. http://localhost.com/reenviar.php?mail=root@local Qu pasa si cre una pgina con una etiqueta HTML que hace una llamada a la URL con otra direccin e-mail.
RIESGOS Explotacin media Prevalencia muy comn Deteccin fcil Impacto moderado
DEFENSA Incluir token en la peticin, de preferencia de manera oculta: <input type=hidden name=token value=856c2f50ddc49fd710f14a406ec1fef652d3c9f>
6. DEFECTUOSA CONFIGURACION DE SEGURIDAD:
Mantener todo el software actualizado. Una buena seguridad requiere tener definida e implementada una configuracin segura para la aplicacin, marcos de trabajo, servidor de aplicacin, servidor web, base de datos, y plataforma. Todas estas configuraciones deben ser definidas, implementadas, y mantenidas ya que por lo general no son seguras por defecto. Esto incluye mantener todo el software actualizado, incluidas las libreras de cdigo utilizadas por la aplicacin.
EJEMPLO
Se descubre una vulnerabilidad en el framework empleado en la aplicacin Una aplicacin corrige el problema Qu pasa si nadie actualiza la versin de la aplicacin? Una herramienta administrativa es instalada en el servidor web y deja accesible sin clave http://localhost.com/phpmyadmin Qu sucede si empiezan a adivinar URLs? RIESGOS Explotacion fcil Prevalencia comn Deteccin fcil Impacto moderado
DEFENSA Definir procesos para actualizar versiones de herramientas empleadas Verificar que herramientas administrativas no se encuentran accesibles Proteger la configuracin de los componentes que usa la aplicacin Deshabilitar mensajes de errores, advertencias, o informacin.
7. ALMACENAMIENTO CRIPTOGRAFICO INSEGURO:
Muchas aplicaciones web no protegen adecuadamente los datos sensibles con mecanismos de cifrado y hashing. Muchas aplicaciones web no se protegen adecuadamente los datos sensibles, tales como tarjetas de crditos, NSSs y credenciales de autenticacin con mecanismos de cifrado o hashing, fraudes de tarjetas de crdito u otros crmenes.
EJEMPLO Una aplicacin almacena archivos cifrados pero la clave de cifrado es accesible. La base de datos de claves usa algn algoritmo hash pero sin sal (un dato adicional que se suma al valor original). Md5($_POST[clave]); Un ataque de fuerza bruta demora menos en encontrar la clave si esta no esta sumada a un sal
RIESGOS Explotacin fcil Prevalencia poco comn Deteccin difcil Impacto severo
DEFENSA Asegrese de que los datos cifrados y la clave que los descifra se encuentran en lugares distintos Utilice un sal al usar un algoritmo hash
NOTA Dejar de usar algoritmos MD5, SHA1, DES Usa SHA-256, AES, RSA
8. FALLA DE RESTRICCION DE ACCESO A URL:
Las aplicaciones web son verificadas antes de generar el enlace o botones protegidos. Las aplicaciones web verifican los privilegios de acceso a URLs antes de generar enlaces o botones protegidos. Sin embargo, las aplicaciones necesitan realizar controles similares cada vez que estas pginas son accedidas, o los atacantes podrn falsificar URLs para acceder a estas pginas igualmente.
EJEMPLO Generalmente una aplicacin web tiene una seccin administrativa http://localhost.com/admin la seccin administrativa requiere clave?
RIESGOS Explotacin fcil Prevalencia poco comn Deteccin media Impacto moderado
DEFENSA Verificar por cada pgina que se requiere que el usuario tenga los privilegios suficientes para acceder a ella.
9. PROTECCION INSUFICIENTE EN LA CAPA DE TRANSPORTE:
Las aplicaciones fallan al autenticar la confidencialidad e integridad de trfico de la red sensible. Las aplicaciones frecuentemente fallan al autentificar, cifrar, y proteger la confidencialidad e integridad de trfico de red sensible. Cuando ocurre, es debido a la utilizacin de algoritmos dbiles, certificados expirados, invlidos, o sencillamente no utilizados correctamente.
EJEMPLO Una aplicacin no utiliza certificados de seguridad en la transmisin de datos sensibles Qu sucede si un atacante lee las transmisiones del usuario? La aplicacin utiliza certificados de seguridad pero han sido mal configurados y muestran errores frecuentemente a los usuarios Qu sucede si un atacante crea una pgina falsa y que muestra errores similares?
DEFENSA Usar SSL para todas las pginas que utilizan datos sensibles. Verificar que el certificado sea vlido, no se haya vencido y este configurado para todos los dominios usados por la aplicacin.
10. REDIRECCIONES Y REENVIOS NO VALIDOS:
Las aplicaciones web redirigen a los usuarios hacia otras pginas o sitios web. Estas aplicaciones frecuentemente redirigen y reenvan a los usuario hacia otras pginas o sitios web, y utilizan datos no confiables para determinar la pgina de destino. Sin una validacin apropiada, los atacantes pueden redirigir a las vctimas hacia sitios de phishing o malware, o utilizar reenvos para acceder a pginas no autorizadas.
EJEMPLO Una aplicacin tiene pginas del tipo redirect, con un parmetro URL http://localhost.com/ir.php?url=curso.php Qu sucede si coloca una direccin externa en el url?
RIESGOS Explotacin media Prevalencia poco comn Deteccin fcil Impacto moderado
DEFENSA Evitar usar redirecciones Si se utiliza, evitar que el usuario pueda manipular el destino Tambin se debe asegurar que el destino ser vlido y autorizado
CONCLUSIN
Un plan de seguridad bien fundamentado, estructurado y planeado puede lograr minimizar considerablemente las posibles vulnerabilidades, riesgos y amenazas presentes en la web.
As mismo con la utilizacin de sistemas orientados a monitoreo de red y respaldo de informacin los datos pueden ser protegidos de posibles ataques.
Con el control de acceso al sistema y proteccin basado en el Top 10 de OWASP, se puede incurrir en estrategias de seguridad mundial muy tiles en los ataques de hackers y dems intrusiones al sistema.