Está en la página 1de 13

Definir Políticas de Seguridad

EJE 4 - Modelos de programación II


Grupo

Fundación Universitaria del Área Andina – Ingeniería de Sistemas

Notas del Autor


La correspondencia relacionada con este proyecto debe ser dirigido a Gustavo Enrique Tavares

Fundación Universitaria del Área Andina – Ingeniería de Sistemas, 2019


Contacto:

CONTENIDO

1 Introducción........................................................................................................................................2
1

2 Objetivos.............................................................................................................................................3
2.1 Objetivo General..........................................................................................................................3
2.2 Objetivo Específicos.....................................................................................................................3
3 Planteamiento del Problema...............................................................................................................4
4 Desarrollo............................................................................................................................................4
4.1 Infraestructura y seguridad en red..............................................................................................4
4.1.1 Proveedor de hosting...........................................................................................................4
4.1.2 Protección servidor seguridad WEB.....................................................................................5
4.1.3 protocolo HTTPS..................................................................................................................5
4.2 Integridad (garantizar que los datos sean los que se supone que son)........................................6
4.2.1 Integridad de entidad..........................................................................................................6
4.2.2 Integridad de dominio.........................................................................................................6
4.2.3 Integridad referencial..........................................................................................................6
4.3 Confidencialidad (asegurar que sólo los individuos autorizados tengan acceso a los recursos
que se intercambian):..............................................................................................................................7
4.4 Vulnerabilidades De Las Páginas Web.........................................................................................8
4.4.1 Vulnerabilidades más comunes e implementaciones ante cada una...................................8
4.5 Copias De Seguridad (Backups Base De Datos) Y Restauración De Información........................11
5 Referencias........................................................................................................................................12
6 Conclusiones......................................................................................................................................12
2

1 Introducción

Este documento tiene como finalidad establecer el procedimiento de seguridad que se enfoca en

la protección de la infraestructura web de la entidad, se describen los aspectos relacionados con

la concepción del sistema de seguridad y su implementación, especialmente la determinación de

las necesidades de protección, el análisis y la gestión de los riesgos que gravitan sobre el sistema

a desarrollar.

2 Objetivos
3

2.1 Objetivo General

 Dar a conocer los lineamientos, políticas, procesos, procedimientos, estructuras


organizativas, mecanismos y funciones de seguridad que se requieren en el
sistema.

2.2 Objetivo Específicos

 Proteger convenientemente frente a amenazas que pongan en peligro la disponibilidad, la

integridad, la confidencialidad de la información, la estabilidad de los procesos, aspectos

necesarios para alcanzar los objetivos de la entidad.

 Dar claridad e información detallada de las posibles aberturas o fallas en la seguridad,

cuáles son los métodos que utilizan los delincuentes.

 Incursionar en los conceptos de seguridad en el desarrollo de aplicaciones orientadas a la

web, definiendo los respectivos ítems que hagan de ellas soluciones más seguras
4

3 Planteamiento del Problema

Una cooperativa desea crear una aplicación web para que sus usuarios puedan realizar sus
transacciones online (consultas, aportes, retiros, actualizaciones, descarga de certificados,
extractos, etc.). se debe crear una estrategia que pueda brindar las técnicas, herramientas,
políticas y protocolos que le garanticen la seguridad necesaria para su buen funcionamiento.

4 Desarrollo

El factor más importante dentro de la protección de activos de información en la cooperativa, es


la administración de seguridad de la información, información alojada en el aplicativo web.

Con el creciente aumento de los servicios de correo electrónico externos, la pérdida de barreras
organizacionales a través del uso de facilidades de acceso remoto; exposiciones de seguridad
tales como virus, negaciones de servicio, intrusiones, accesos no autorizados, nos lleva a la
necesidad de una administración efectiva de la seguridad de la información.

Para la cooperativa los objetivos fundamentales de seguridad son la confidencialidad, la


integridad y la disponibilidad, por lo que hay que determinar cada amenaza sobre la base de
como pueda afectar a estas características de la información.

Dentro de las variables que conforman la seguridad del sistema para la cooperativa planteamos:

4.1 Infraestructura y seguridad en red

4.1.1 Proveedor de hosting


En primer lugar, es importante tener claro el alojamiento del sitio web, existen muchas opciones
en el mercado, y es fundamental elegir con cuidado viendo los beneficios que ofrece cada
proveedor para que el sitio web permanezca seguro, donde se garantice que el sistema se
encontrara en línea 7/24, con esto se asegura que los tiempos de respuesta ante una posible falla
sea lo más rápido posible.

Propiedades relevantes que debe tener el proveedor:


5

 Ser un Centro de Procesamiento de Datos.


 Control de acceso electrónico de seguridad en planta física, puntos de entrada con acceso
de placa única y lectores biométricos de mano proporcionado por ADT Security, más de
50 cámaras IP proporcionan la vigilancia en todo el centro de datos.
 Aire acondicionado constante 72F / 45% de control de precisión de humedad zonas de
enfriamiento separadas, 359 toneladas de capacidad de enfriamiento total.
 Infraestructura de energía 1 X 500KW generador diésel de Caterpillar 1 X 1250KW
Katolight Generador Diesel 1 X 500KVA Powerware 9315 UPS 1 X 480KVA
Powerware 9390 UPS en una configuración paralela N + 1 5 X Batería.

4.1.2 Protección servidor seguridad WEB


El hosting debe permitir en su configuración, seguridad para evitar ataques de fuerza bruta en el
servidor, Un ataque de fuerza bruta (brute force attack) es un método que usa un sistema
automatizado para adivinar la contraseña de su servidor o de los servicios web. La función
CpHulk provee protección contra ataques de fuerza bruta, y se usa para monitorear y bloquear
todos los intentos de inicio de sesión realizados en cPanel, WHM, FTP, correo electrónico y
SSH. Y puede ser usado para bloquear direcciones IP maliciosas en el firewall.

Bloquear inicios de sesión maliciosos, también puede especificar el número de intentos de inicio
de sesión fallidos antes de que se bloquee una dirección IP. Y permite definir algunas acciones
adicionales para realizar y desencadenar un bloqueo automático.

4.1.3 protocolo HTTPS


HTTPS (Hypertext Transfer Protocol Secure) es un protocolo utilizado para proporcionar
seguridad a través de Internet y garantizar a los usuarios que están comunicándose con el
servidor que los datos sensibles como contraseñas, usuarios, números de tarjetas de crédito o
débito enviados y recibidos son cifrados y que nadie más puede interceptar o cambiar el
contenido transmitido. Si tu sitio web maneja información de los usuarios muy delicada te
recomendamos que hagas uso de este protocolo.
6

4.2 Integridad (garantizar que los datos sean los que se supone que son)

La exigencia de integridad de los datos garantiza la calidad de los datos de la base de datos. Por
ejemplo, si se especifica para un empleado el valor de identificador de 158, la base de datos no
debe permitir que ningún otro empleado tenga el mismo valor de identificador.

4.2.1 Integridad de entidad


La integridad de entidad define una fila como entidad única para una tabla determinada. La
integridad de entidad exige la integridad de las columnas de los identificadores o la clave
principal de una tabla, mediante índices y restricciones UNIQUE, o restricciones PRIMARY
KEY.

4.2.2 Integridad de dominio


La integridad de dominio viene dada por la validez de las entradas para una columna
determinada. Puede exigir la integridad de dominio para restringir el tipo mediante tipos de
datos, el formato mediante reglas y restricciones CHECK, o el intervalo de valores posibles
mediante restricciones FOREIGN KEY, restricciones CHECK, definiciones DEFAULT,
definiciones NOT NULL y reglas.

4.2.3 Integridad referencial


La integridad referencial protege las relaciones definidas entre las tablas cuando se crean o se
eliminan filas. En el desarrollo de la aplicación web de la cooperativa la integridad referencial se
debe basar en las relaciones entre claves externas y claves principales o entre claves externas y
claves exclusivas, mediante restricciones FOREIGN KEY.

La integridad referencial garantiza que los valores de clave sean coherentes en las distintas
tablas. Para conseguir esa coherencia, es preciso que no haya referencias a valores inexistentes y
que, si cambia el valor de una clave, todas las referencias a ella se cambien en consecuencia en
toda la base de datos.

Antes de lanzar un desarrollo realizado al aplicativo, el departamento de desarrollo deberá velar


por hacer las respectivas pruebas del funcionamiento, igualmente deberá realizar una evaluación
7

semanal de módulos de mayor prioridad de la compañía, evaluaciones que serán registradas en el


módulo de control de áreas.

Debe existir una revisión del sistema por un área diferente al departamento de desarrollo, el cual
deberá tener conocimiento sobre los parámetros que opera el sistema, para poder realizar la
revisión de forma exacta.

4.3 Confidencialidad (asegurar que sólo los individuos autorizados tengan acceso a los
recursos que se intercambian):

Las contraseñas son un medio común de verificación de la identidad del usuario antes de acceder
al sistema de acuerdo a la autorización que tenga el usuario, pero es un método que puede ser
violado con relativa facilidad.

Se exigirá a los usuarios el cumplimiento de buenas prácticas de seguridad en la selección y el


uso de contraseñas. Todos los usuarios serán advertidos en cuanto a:

a) Mantener confidencialidad sobre la contraseña.


b) Evitar mantener un registro de contraseñas en texto claro en cualquier medio (por
ejemplo, papel, archivo de software o dispositivo de mano).
c) Cambiar las contraseñas cuando haya una indicación de riesgo en el sistema o en la
contraseña.
d) Seleccionar contraseñas de calidad con suficiente longitud mínima que sean:
 Fáciles de recordar.
 No se basen en algo que alguien pueda adivinar fácilmente o usando información
relacionada con la persona, por ejemplo, nombres, números telefónicos, fechas de
nacimiento, etc.
 No vulnerables a ataques tipo diccionario (es decir, que no consistan en palabras
incluidas en diccionarios).
 Libres de caracteres idénticos sucesivos ya sean numéricos o alfabéticos.
8

e) Cambiar las contraseñas a intervalos regulares o basados en el número de accesos (las


contraseñas de cuentas privilegiadas deben ser cambiadas más frecuentemente que las
contraseñas normales), y evitar la reutilización o reciclaje de contraseñas.
f) Cambiar las contraseñas temporales en la primera conexión.
g) No incluir contraseñas en ningún proceso automatizado de conexión.
h) No compartir las contraseñas de usuario individuales.
i) No utilizar la misma contraseña para propósitos de trabajo y particulares.

Todo el personal de la cooperativa y personal nuevo que ingresan a esta, debe ser entregada sus
respectivas credenciales de acceso, los usuarios deberán realizar el cambio de la contraseña con
un link que es enviado al correo, la contraseña es cifrada con un sistema de seguridad
programado en el sistema que crea la contraseña cifrada.

En el caso que se desee bloquear algún usuario por temas interno del mismo, el departamento
responsable podrá realizar la gestión a través de la plataforma.

Cada usuario de sistema se encuentra vinculado a la empresa y un proyecto o área según


corresponda, todos los módulos que pueden llegar a tener el usuario están bajo la condición de la
empresa y área, por lo tanto, un usuario no podrá ver información indebida.

Cada usuario se puede programar con módulos específicos, se puede cambiar bajo la supervisión
de un administrador de sistema o del área encargada para estos procesos que se encuentre a cargo
de la empresa

4.4 Vulnerabilidades De Las Páginas Web

4.4.1 Vulnerabilidades más comunes e implementaciones ante cada una.


Inyección: Ocurre cuando a nuestro sistema entra información no confiable a través de
formularios o comandos que son interpretados por query en nuestra base de datos. Puede resultar
en robo o pérdida de nuestra información.

Solución: Validar y limpiar todo lo que el usuario ingrese a nuestro sistema antes de realizar
cualquier proceso.
9

Secuencias de comandos en sitios cruzados: Esta falla permite desplegar en el navegador datos
no confiables proporcionados por usuarios, generalmente inyectando código JavaScript
malicioso. Estos datos pueden secuestrar el sitio web, permitiendo que los usuarios sean re
direccionados a sitios maliciosos o descarguen malware.

Solución: Validar y escapar cualquier dato a ser impreso en el sitio, tratar siempre de usar
herramientas de templates los cuales permitan optimizar este proceso.

Autenticación rota: Se presenta cuando es posible suplantar la identidad del usuario al obtener
acceso a datos como contraseñas o identificadores. Un ejemplo es poder modificar el id de la
sesión en la cookie y obtener así acceso como un administrador o cambiar el perfil de acceso.

Solución: Verificar los procesos de autenticación, usar mecanismos y librerías ya existentes. No


guardar información sobre permisos o identidad en cookies.

Solicitudes falsificadas en sitios cruzados: El atacante engaña a la víctima a enviar solicitudes


HTTP que no desea lo que permite al atacante ejecutar operaciones que el usuario no desea.

Solución: Controlar el flujo de los procesos usando tokens únicos por sesión y por solicitud

Referencias directas e inseguras a objetos: Exponer referencias a objetos de implementación


interna como archivos, directorios y base de datos por lo que pueden ser manipulados. Por
ejemplo, si usamos un script de descarga que recibe como parámetro el nombre del archivo,
puede ser usado para enviar al atacante nuestro documento de configuración con la clave de
nuestra Base de Datos.

Solución: Usar siempre controles de acceso y no ofrecer datos sobre la implementación interna.

Configuración errónea de seguridad: Un parámetro mal especificado puede permitir el acceso


a nuestras aplicaciones.

Solución: Definir todos los elementos de seguridad y no usar atributos por defecto (por ejemplo
el usuario y password root), mantener nuestras aplicaciones, servidores y librerías siempre
actualizados.
10

Almacenamiento inseguro: Si un atacante tuviera acceso a nuestra información y esta no se


encontrará asegurada, podría acceder a contraseñas y datos de tarjeta de crédito de usuarios y
clientes entre otra información sensitiva.

Solución: Encriptar información sensible en nuestra base de datos.

Fallas al restringir acceso URL: Una página en nuestro sitio que no sea no validada puede
permitir el acceso áreas restringidas mediante la manipulación de la URL otorgando permisos
administrativos a un atacante. Por ejemplo, tener una página admin.php como centro de control y
no validar su acceso.

Solución: Validar todas las páginas o controladores, usar métodos de autenticación incorporados
en el servidor.

Insuficiente protección en la capa de transporte: Todo el tráfico en internet puede ser


escuchado, y al enviar información sensitiva como contraseñas o documentos sin su apropiada
autenticación y encriptación, alguien puede tener acceso a esa información.

Solución: Usar SSL y TSL y evitar enviar información sensitiva que pueda ser accedida por un
escuchante.

Forwards y Redirects no validados: El permitir que la aplicación envié a los visitantes a otra
página o sitio sin validar puede dejarlos caer en sitios de phishing o malware.

Solución: Valida y lleva un control sobre los links y forwards que aparecen en tu página.

Dentro del contexto de un ataque a una aplicación Web, un atacante primero tratará de probar y
manipular los campos de entrada para ganar acceso al servidor Web.

Cualquier proceso que se realice sobre el aplicativo web de la cooperativa deberá estar
autenticado por un inicio de sesión.

La ruta tiene que ser exacta, de lo contrario arrojara un mensaje de error en la url, si recortamos
la url hasta la raíz de una carpeta, el sistema deberá arrojar un mensaje de error en la url.

Si la sesión es finalizada por cantidad de tiempo por inactividad, el sistema devolverá al usuario
al sistema de login.
11

4.5 Copias De Seguridad (Backups Base De Datos) Y Restauración De Información.

Para alcanzar un nivel de respaldo adecuado se harán las copias de seguridad de la información y
del software que se determinen en cada caso y se comprobarán regularmente, los Backups deben
tener una periodicidad diaria y por horas.

Para la cooperativa, las disposiciones de respaldo cubrirán la información y datos para recuperar
el sistema completo en caso de un desastre.

Se deben implementar procedimientos de respaldo para asegurar que toda la información


esencial y el software puedan recuperarse tras un desastre o fallo, considerando los elementos
siguientes:

 Realizar copias seguras y completas de la información, y establecer los procedimientos


de restauración.
 Precisar las copias que deben ser almacenadas en un área apartada del lugar habitual de
procesamiento de la información que se preserva, a una suficiente distancia para la
salvaguarda de cualquier daño producto de un desastre en el sitio principal.
 Probar regularmente los soportes de respaldo para verificar que puede confiarse en ellos
para el uso cuando sean necesarios.
 Comprobar regularmente los procedimientos de restauración para asegurar que son
eficaces y que pueden ser utilizados dentro del tiempo asignado en los procedimientos de
recuperación.
 Proteger los respaldos por medio del cifrado en los casos que se requiera.

5 Referencias
12

Dongee. (29 de 07 de 2017). 8 MEDIDAS DE SEGURIDAD PARA NUESTRO SITIO WEB QUE
DEBERÍAMOS CONOCER. Obtenido de https://blog.dongee.com/8-medidas-de-
seguridad-para-nuestro-sitio-web-que-deber%C3%ADamos-conocer-f6f78c8980cf
González, P. J. (2019). MODELOS DE PROGRAMACION EJE 4. Fuente:
Shutterstock/460592098.
Ortiz, A. E. (09 de 03 de 2019). hostdime. Obtenido de ¿Cómo funciona CPHulk? Cuales son sus
usos; cómo configurar: https://blog.hostdime.com.co/como-funciona-cphulk-cuales-son-
sus-usos-configurar/
Whitepapers. (26 de 12 de 2013). Ataques de inyección SQL: qué son y cómo protegerse.
Obtenido de https://pressroom.hostalia.com/white-papers/ataques-inyeccion-sql/

6 Conclusiones

Cuando se libera un producto o servicio a internet se deben proteger los recursos y datos para
esto debemos utilizar mecanismos de protección que aseguren mantener la integridad,
confidencialidad, la autenticidad, el no repudio y el control de acceso, además se debe tener una
infraestructura solidad que permitan transmitir la información de una manera segura, que
garanticen el transporte seguro y la confirmación de seguridad de los usuarios.

En base a lo expuesto anteriormente la seguridad de los datos almacenados y descargados deben


estar supervisados, controlados y solo se enviara información a personas que tengan roles de
Administrador o que estén autorizados ya que se verificara previamente con los roles asignados
en el proceso de desarrollo.

También podría gustarte