viernes, 3 de enero de 2014

Proyecto de Seguridad Informatica | Primera parte, Terminologia y arquitectura.

Como muchos saben, estoy terminando (bendito dios) la maestria en tecnologias de la informacion, en una de las materias que curse (que creo la mejor de todas) seguridad Informatica, como proyecto final documente varias buenas practicas de seguridad en ambientes Linux y windows server 2012 en los servicios mas comunes que vemos en las compañias como lo son IIS, FTP, RDP, DC & AC y en Linux Apache, SSH. ahora con el visto bueno de mi maestro que no escribi nunguna tonteria comparto el poquito conosimiento del tema con el fin de ayudarlos si algun dia no tienen idea de como implementar con seguridad estos servicios en ambos ambientes.

Introducción

La seguridad informática es una rama de las TI las cuales a ganado bastante peso en los últimos años, las fallas en la seguridad de las plataformas, en los software, en los sitios web, dispositivos celulares y de reconocimiento de voz a impactado en el mercado realizando perdidas considerables millonarias, solo en los estados unidos se a perdido alrededor de 150,000 millones de dólares anuales por detalles con la seguridad de los sistemas informáticos y/o sus arquitecturas de seguridad con vulnerabilidades.

Windows es uno de los sistemas operativo más usados alrededor del mundo, tienen el 66% del mercado de escritorios en el mundo, el resto se distribuye en sistemas como Os X de la compañía de la manzana y las distintas distribuciones de Linux, otro tanto menos es para los sistemas Enterprise; HP-UX, Solaris, AIX, Red Hat, etc.
En este documento se expondrán diversos conceptos de seguridad informática así como los pasos para realizar la implementación de un ambiente Windows Server 2012 r2 Enterprise Edition donde se alojaran servicios como ISS, ftp, escritorio remoto, Directorio Activo, firmas digitales para web y FTP así como firmas de dominio del ambiente Windows para manejo de listas de accesos a recursos mediante un directorio activo que fungirá como gestión de acceso, roles, grupos y permisos. 

Objetivo

El objetivo de este documento es presentar la investigación de las fases del hacking, algunas contramedidas de ellas para contrarrestar las fallas o vulnerabilidades de seguridad tanto en el ámbito personal, estudiantil, profesional o empresarial como en nuestros hogares mismos, aplicar algunas recomendaciones a nuestros hijos, a nuestros equipos de computo personales o dispositivos móviles, con ello educar a las buenas y mejores practicas de seguridad de equipos de computo, identificar las fallas y huecos de seguridad mas notables en pymes y corporativos y así poder inculcar seguridad en nuestro mundo digital. Cada día mas aglomerado. 



EL enemigo numero uno de la seguridad de la información dentro de una compañía es el usuario final del propio sistema
 



 

Terminología

Para entrar de lleno en el tema hay varios temas y conceptos que hay que entender los cuales se enlistan algunos a continuación.

Controlador de Dominio Windows

EL controlador de dominio Windows es el centro de información de roles, permisos y accesos en un árbol de arquitectura de Servicios de negocios basado en NT o Nueva tecnología según Microsoft con sus sistemas operativos de plataforma empresarial. Las principales responsabilidades de un dominio o domain controler es la autorización, el proceso de garantizar el acceso a un determinado usuario o un grupo de ellos así mis denegar todo servicio.
Cada controlador de dominio usa un Security Account manager mejor conocido como SAM o NTDS en el ya obsoleto Windows 2003 server ( que es la forma promovida de la SAM al promover el Servidor con DCPROMO)

AD  o Active Directory, Directorio activo en español es le termino que se usa por Microsoft hacer referencia a su servicio de directorio en una red distribuida de computadoras, este usa distintos protocolos y puertos espesificos de un Windows server desde sus versiones NT 2000, 2003, 2008, 2008 R2 y ahora el 2013 Enterprise Edition. AD principalmente se base en LDAP, DNS, DHCP y kerberos los cuales se describen un poco a continuación;

Lightweight Directory Access Protocol (LDAP)

Protocolo ligero de acceso a directorios, hacen referencia a un protocolo a nivel aplicación que permite acceder a un servicio de directorios ordenado y distribuido para buscar diversa información en un entorno de red, LDAP se aloja en una base de datos en donde se realizan cambios, consultas y peticiones administrada atreves de una interface grafica como gestor o línea de comando, un conjunto de objetos, atributos organizados en una manera lógica y jerárquica es el árbol de LDAP.
En la actualidad las implementaciones de LDAP sin basadas sobre Sistemas de nombres de dominios o DNS para estructurar los niveles mas alto de jerarquía, conforme se desciende en el directorio pueden topar con dispositivos, personas, computadoras, dispositivos de red y/o aplicativos.

Domain Name System (DNS)

El sistema de nombres de dominio es un sistema de nomenclatura jerarquica para los equipos de computo, asi sea un servicio o cualquier otro recurso conectad a  una red distribuida el sistema gestiona la información y la asocia variada con un nombre de dominio asignado a cada uno de los dispositivos, la función mas critica de un DNS es traducir o resolver nombres inteligibles para las personas en indentificadores binarios asociados con los equipos de una red, es decir que a nivel lenguaje maquina que prácticamente son 0101010101 nosotros tendríamos muchos probemas para pasar una dirección ip a binario y de binario a un lenguaje ordinario como el ABC por ello la criticidad del DNS gracias a el nosotros podemos escribir en nuestro navegador google.com.mx y el navegador interpreta mediante un DNS que las palabras que nosotros llamamos google en realidad esta asociado a un IP homologada que en hexadecimal seria 201.44.65.81, pero bajando un poco el nivel a decimal 513.265625 y aun mas en binario 1000000001.010001, es por ello la importancia de los DNS nosotros no podríamos grabar en nuestro cerebro una dirección de internet como 1000000001.010001 es mucho mas rápido a prender google.com

Kerberos

Es un protocolo de autenticación de redes de computadoras creado por el MIT, este permite a dos computadoras en una red insegura demostrar su identidad mutuamente de manera segura, kerberos se basa en criptografía de clave simétrica y requiere un tercero de confianza, esto además existe extensiones de protocolo para poder utilizar criptografía de clave asimétrica.

Ataque informático

El ataque informático comprende el explotar una vulnerabilidad entro del sistema informático, ambiente, arquitectura o software, los ataque no necesariamente son negaciones del servicio como por ejemplo de un sitio web,  cuando un sitio web no esta disponible y hay un hacker detrás de esa indisponibilidad muy posiblemente este atacando al servidor web llenándolo de peticiones para que los usuarios reales no tengan respuesta del servidor del sitio web este ejemplo es una negación de servicio o ataque de negación de servicios  uno de los ataques mas usados a nivel web hay varias variantes de ellos en futuros temas los tomaremos mas a detalle, otro ataque por ejemplo es cuando se realiza una des encriptación de algún password de administrador de sistemas, este es un ataque menos obvio  se puede realizar a bajo nivel, tomando la idea de ambos ejemplos como podremos imaginar estos son solo dos ejemplos de la gran cantidad de ataques y aun que la palabra es un tanto agresiva en la mayoría de los casos lo ultimo que quiere un hacker es ser detectado por lo que los ataques obvios o agresivos son una opción no muy recurrente en la mente de los hackers.  

Exploit

Una brecha de seguridad que puede ser explotada , una vulnerabilidad latiente, el termino exploit se usa por ejemplo en el siguiente escenario, una compañía tiene un sitio web alojado en un servidor físico conectado con dos tarjetas de red eth0 y eth1 donde eth0 es la comunicación interna con el resto de la compañía y la eth1 es la comunicación con las peticiones web desde la nube de internet, se encuentra una vulnerabilidad en el software con el cual se baso el sitio web en este ejemplo usaremos moodle (software de gestión de contenido sumamente inseguro) muy usado por pymes y escuelas por su sencillez en la administración y su nulo costo de implementación al ser open source , supongamos que este software lo usa una universidad el cual en sitios de exploit de vulnerabilidades donde se exponen las top 10 de las aplicaciones web mas usadas ya sea por sus distintas divisiones y ramos (educativos para este ejemplo) en ese sitio web se expone una vulnerabilidad de inicio de sesión moodle al no usar HTTPS un protocolo de http pero en su versión seguro la contraseña viaja en texto plano, esa seria una brecha de seguridad y la exploit podría indicar que si el sitio s usa para autenticación de sus usuarios en modo http “texto plano” puede ser capturado mencionado password cuando el usuario realiza el login. Poniéndolo en otras palabras se denomina exploit a la vulnerabilidad latiente que puede ser explotada por un tercero, es una vulnerabilidad reconocida la cual se pasa por alto o se asumen los riesgos de tenerla latiente pero sin realizar una contramedida a esta.

Hablemos de los “Hackers”

Que son, por que se llaman así, cuales son sus fundamentos o modos, ¿acaso se hacen llamar hacker como los un apoco por su genero profesional? Así como los rockeros, los punketos, los depresivos que ahora les dicen emos, entre todas las variantes de las distintas ramificaciones del ser humano y sus modismos para generalizar a un grupo en especifico de gustos o de personas, por lo regular todos los antes mencionados tienen grupos, se reúnen, realizan actividades al aire libre en conjunto e incluso juegos,  con los hacker es prácticamente lo mismo,  con sus pequeñas diferencias lo primero que hay que saber claramente es que un hacker y los tipos de ellos que hay, conceptualmente hablando un hacker es una persona de cualquier genero que tiene un pación por la rama de la informática que se encarga de el reforzamiento de la seguridad y/o por descifrar y explotar las vulnerabilidades de los sistemas de información, como se menciono anteriormente hay distintos tipos de hacker los cuales se describen a continuación;

Hacker de sombrero negro (Black Hats)

Persona con extraordinarios conocimientos en informática, sistemas operativos Windows, sistemas operativos Linux, sistemas operativos Unix, bases de datos informix, db2, Oracle, mysql y mssql, aplicaciones web, redes, protocolos, comunicaciones, antivirus,  este particular personaje tiene una tendencia a buscar y explotar las vulnerabilidades de todos los antes mencionados, el sombrero negro tiene una inclinación por explotar las vulnerabilidades por el solo echo de hacerlo, no aporta contramedidas al tema, no solicita permiso para realizar la explotación de vulnerabilidades, scaneo y en el peor de los casos copia información sensible o de importancia para el o el objetivo hackeado, sombrero negro es el dañito de los 4 tipos de hacker que profesionalmente están normados y regidos por estatutos en el ambiente profesional este no respeta ninguno de ellos.

Hacker de sombrero blanco (White Hats)

Persona con excelente conocimientos (antes enlistados) los cuales son usados de forma profesional y responsable prestando sus servicios para el reforzamiento de la seguridad de todo el ambiente informático o de un ambiente en especifico, el sombrero blanco es totalmente lo contrario al sombrero negro no en conocimientos si no en cuanto a las acciones que realiza, sombrero blanco pide permiso, realiza las acciones de hacking informa y realiza pruebas, regularmente son los hacker con mas expertis y conocimientos en el área de seguridad informática ya que trabajan en equipo con el resto de los especialistas y en conjunto cierran las vulnerabilidades que el sombrero blanco les informa Nota: el hacker de sombrero blanco NO realiza las actividades de contramedidas a las vulnerabilidades, este las informa en ocasiones ayuda a los especialistas de esas herramientas, software o ambientes para validar una ves ya trabajado en ellas en realizar pruebas de penetración o scaneo para validar el cierre de las mismas. 

Hacker de sombrero gris (Gary Hats)

Multifacético, el hacker de sombrero gris es solitario trabaja de forma individual, por lo regular presta servicios profesionales pero no son de fial por que no tienen ética profesional y puede realizar búsquedas y encontrar información sensible de el objetivo pero no entregarlo a la persona que le presta el servicio o realizarlo por cuenta propia pero sin una metodología como el sombrero negro o sombrero blanco, el sombrero gris tiende a ser mas reactivo que proactivo.

Hacker Suicida (Suicide Hacker)

El mas dañino de todos, el suicida por lo regular es un usuari@ subnormal sin conocimientos claros de la metodología de hackeo o de seguridad en general, los suicidas estudian poquito de esto, poquito de aquello, no tienen claro lo que hacen o como lo hacen, descargan software de “hackeo” de internet en el 98% con malware, virus o spyware el cual ellos desconocen, estos “hackers” solo usan y ejecutan herramientas y esperan a ver que pasa por ello son los mas dañinos tanto para ellos mismos como para el objetivo que tienen en mente ya que al no contar con una metodología y método de investigación sobre el objetivo realizan pruebas sin pensar en las consecuencias explotando ejecutables o lanzando shells a el objetivo estos por lo regular al no tener avance en su objetivo lo descartan, se aburren y en muchas ocasiones su ultimo intento es realizar una negación de servicio lo cual es atacar directamente de forma clara el objetivo,  por lo regular estos son fáciles de detectar, los verdaderos hackers por lo contrario son sigilosos , cuando un sombrero negro o sombrero blanco ataca el dueño del ambiente ni siquiera se da cuenta. 

Seguridad Informática

La seguridad informática se a desplazado a lo largo de los años como una de las áreas mas criticas de  las ramificaciones que tiene la hermosa área de informática, tantas ramificaciones de especialidades y diversidad en aplicaciones. Tan bella y tan enorme, vasta de oportunidades y de giros por si nos volvemos tan bueno en lo que hacemos no fuera suficiente la experiencia y estudio del área te permite migrar a otra especialidad como cambiar de departamento de compañía o de giro por la razón que gustemos, la seguridad como tal es el aseguramiento de un bien o de algo un con un valor definido, aplicando este concepto al área de informática o de computación ahora mejor llamada tecnología de la información la seguridad de la misma esta definida como el aseguramiento de lo vienes, activos, y dispositivos de los cuales dependa la operación de un negocio, de un corporativo, banco o institución, todos los activos críticos entran como activos y estos son llamados críticos o de misión critica si la falla o negación de sus servicios afecta la operación de un servicio de negocio.

En el estricto sentido se define a la seguridad informática como la disciplina que se encarga de proteger la integridad, disponibilidad y privacidad de la información almacenada en un sistema informático.

Principios de la Seguridad Informática

Existen tres leyes en la seguridad informática que tienen que ser salvo guardadas ella son Confidencialidad, Integridad, Disponibilidad las mismas se describen a continuación;

Confidencialidad: Se manifiesta o expone con la privacidad de los dispositivos informáticos, contenidos digitales, documentación, videos, contraseñas o información plana que sea de carácter confidencial o privada para un negocio o  un usuario final casero.

Integridad: Esta se refiere a la valides y consistencia de los elementos de información almacenados y procesados en un sistema informático, basándose en este principio las herramientas de seguridad de información tiene como objetivo fundamental asegurar que los elementos de sistemas se manipulen adecuadamente, esto haciendo referencia a los datos, implementaciones de aplicativos que soporten gestiones de negocio.

Disponibilidad: Se refiere a la continuidad de acceso a los elementos de información que soporte el sistema de gestión de disponibilidad del negocio o los servicios de negocios de la empresa o sus clientes, basándose en este principio las herramientas tienen como objetivo reforzar la permanencia del sistema informatico en condiciones de actividad adecuadas para que los usuarios puedan acceder a los recursos y aplicaciones de misión critica sin problemáticas que degraden el acuerdo de nivel organizacional. 

Ahora bien ya comprendidos el argot profesional que usaremos en este documento y las terminologias pasemos a lo tecnico.  Que es lo que vamos a implementar desde cero con esto

  

Descripción de ambiente

Para nuestra practica de laboratorio usaremos la distribución de servidores y roles según su función en los servicios que gestionarán, basándonos en las mejores practicas de Microsoft se a elegido el diseño diagrama de desarrollo de la infraestructura donde en la parte superior, el primer nivel tenemos un  controlador de dominio quien se encargara de la autenticación y autorización basada en usuarios, roles y grupos.  En un segundo nivel contamos con dos servidores uno que tendrá el rol de SMB, compartido de archivos en los equipos autorizados por el DC así como gestión de FTP,  no es una buena practica usar FTPs simples por lo que configuraremos certificados para aumentar la seguridad del trafico de archivos así como la gestión de autorización y acceso se determinara según el grupo en el Controlador de dominio, a la par en este nivel tenemos el servidor web el cual alojara el sitio web en base IIS este tendrá un certificado de seguridad en el cual no se manejara contenido sin cifrar y la transferencia de logins se basara en el LDAP del Active directory , en el ultimo nivel el tercero contaremos con dos equipos, el equipo de usuario Linux contara con un Linux 13.10 de 64 bits el cual se firmara a dominio Windows, se firmara el certificado de seguridad en el para poder visualizar el sitio web alojado en el servidor web IIS y se darán accesos en el grupo de compartidos para poder visualizar los compartidos mediante SMB de servidor FTP-01, del otro lado esta el equipo con Windows 7 de 64 bits el cual se firmara a dominio y tendrá permisos de escritorio remoto para los servidores remoto pero con una restricción, no podrá tener acceso a ningún otro programa que no sea paint. Esto con el fin de limitar la sesión de acceso y programas con ello demostraremos que se puede tener seguridad por RDP en ambientes compartidos tanto Linux como Windows, de forma inversa, el equipo Linux 13.10 tendrá el servicio de SSH con el cual solo el servidor de dominio podrá tener comunicación con el mediante una lista de control de accesos.

Pre requerimientos

Maquina local  con por lo menos 16GB de RAM
ISO de evaluación de Windows Server 2012 Enprise edition x64
ISO de CentoOS server
ISO de Ubuntu 13.X
6 Procesadores de 3.08 Ghz
Sistema de virtualización a usar; VMware Fusion
OS nativo Mac Os Maverik

para nuestro primer equipo virtual el DC-AC

Maquina virtual con 2GB de RAM
ISO de evaluación de Windows Server 2012 Enprise edition x64
2 Procesadores de 2.08 Ghz
40GB de HDD

Proceso de instalación de Sistema operativo Windows Server 2012



Elegimos la información con la cual queremos tener en la configuración de nuestro sistema en cuanto a la zona de horario y lenguaje.




El ISO de Windows server nos proporciona diversas funcionalidades o tipos de instalación de sistema así como una interface grafica de usuario para la administración o la utilidad de solo consola donde las configuraciones como en Linux se hacen atreves de una terminal




Creación de contraseña para el usuario administrador del servidor controlador de dominio.

Buenas practicas en sesiones Windows

Es recomendable retirar el usuario administrador de los servidores ya que este es un default y todas las configuraciones default son vulnerables, la buena practica de administración de servidores Windows es renombrar el Administrator por algún otro usuario X, asimismo es una mala practica de seguridad colocar en los nombres de los servidores el rol que fungen ya que con ello ya estamos dando información a los hackers antes de que nos escaneen la mejor practica es colocarle nombres a los servidores el cual no tenga nada que ver con el rol, por ejemplo nosotros en este ejercicio tenermos 3 servidores principales los cuales están descritos con su rol, una buena practica de seguridad seria colocar nombres como Cuitláhuac, Axayácatl, Moctezuma, Xocoyotzin, Quetzalcoatl, tlaloc, xolot, etc. 
 
 


 
El primer paso después de tener el OS instalado completamente es realizar el nombramiento, actualizar el OS con todos los parches de seguridad y realizar la configuración de la IP fija.

Ahora reiniciaremos el equipo y al regreso de el vamos a iniciar la carga del rol de controlador de dominio, en Windows 2012 se retiro el comando DCPROMO que existía en los anteriores Windows server lo que hace el servidor mas enfocado a depender de una interface grafica para realizar la administración, a continuación se muestra el seguimiento de pantallas se el proceso de promover el servidor como controlador de dominio y el directorio activo.
 
Con esto terminamos esta primera parte del proyecto, en la proxima continuaremos con como promover a controlador de dominio nuestro windows server 2012 y continuaremos con la creacion de nuestra arquitectura tecnologica de laboratorio. 

No hay comentarios.: