Seguridad de Redes, Sistemas y Comunicaciones..Dedicado a mi hermana Yolandita, con las patas torcías y el culo empinaó, como un Condenaó!!! JAJAJAJA!!!

INTRODUCCIÓN-CONCEPTOS BÁSICOS, AL PUTO GRANO...

Buenos, pues vamos a hacer un recorrido rápido por todo el entremado de la "Ingeniería de la Seguridad", desde el único punto de vista de la Ingeniería de Sistemas, que es en realidad, el único pto de vista a tener en cuenta..

Bien pues lo dicho, vamos a definir rápidamente que son las capas de red, cuales son y que protocolos actuan en cada una de ellas...

Bien, en la mente, para entender esto bien, nos tenemos que imaginar una simple conexión desde vuestra makina a google por ejemplo..que ocurre desde el mismo momento que ponemos en el explorador que queremos ir y ver la página oficial de Google..

Bien las capas de red, atiende a dos modelos independientes en su origen , pero fusionados hoy en día, aunque siempre queda la libre elección...

Bien, cuando estudiaba el CCNA en la Cisco Networking Academy..tenía 21 años(tengo 35..) aprendí muchsimo sobre teoría y práctica de redes, de la mano del Todoporoso Cisco Systems y su modelo OSI de red..empezaba para mi un mundo nuevo de Redes Ip, topologías de redes, Conexiones, Routing, Switching, Métricas, y por fin, configurar un Cisco, tanto físicamente en laboratorios, como en remoto..la Hostia, estaba configurando mediante conexiones remotas, al mes de empezar el curso, router cisco, estableciendo yo manualmente las configuraciones ip, caché de tablas y todo el copón bendito..y fue ahí cuando comencé a escuchr con más énfasis las debilidades del por aquel entonces windows 2000 ,tanto en estaciones clientes como sobre todo en estaciones window 2000 Advance Server..los ISS Bugs, Los Unicode/Decode, Los bug del CGI, y demás errores en la pila o Stack Tcp/Ip v4 de Microsoft...

Bien, El  modelo OSI de redes establece que:

1-Toda conexión a la red Internet desde el cableado hasta la recepción del resultado final en la interfaz en pantalla, pasa por siete capas independientes , pero obligatoriamente interconectadad(y este es el puto kit de toda ingeniería de la seguridad..cuanto más conocimiento se tenga en profundidad de las capas así como de los protocolos que intervienen en el proceso de interconexión de redes, más experto en Seguridad será....
2-El fallo de la implementación de los protocolos en cada una de las caas, ya sea por falta de formaación, ya sea por que eres una lammer, son la causa y efecto de TODOS, y digo TODOS los problemas de seguridad existentes!!!! y esto lo digo YO, Juan Carlos García de manera Taxativa, imperativa y condicional..si fallas en la securización de todos o alfuno los protocolos que utiliza tu empresa en las comunicaciones diarias(en protocolos de correo, en protocolos ip como web http, ftp(file transfer prtocol), telnet, rip, igrp, igmp, pues aparte de no tener ni puta idea de lo que haces, y de ir de los que "no puedes" o "wannabe", estás poniendo en un puto brete a todos los usuarios o trabajadores de la empresa, tanto directos, como indirectos(las relaciones de confianza son muy muy jodidas como veremos ..la empresa A confía en B, y ciertos usuarios podrán establecer conexiones remotas de A a B...Bien, tienes realmente controlado a todos los usuarios que pueden realizar conexiones de confianza con tu empresa A...quienes son esos sujetos?, en que dpto trabajan?, confías tu como Security Administrator en esas personas..yo? no!!, ni de coña , asi que EXIGE ciertas políticas de seguridad INCLUSO  a esa empresas o empresas que tu empresa A quiere tener con la B y C(hoy en día muy común,..fijaros una empresa de recobro, tiene conexiones "de confianza" con sus clientes..ejemplo real Empresa de recobro "INTRUM JUSTITIA", tiene conexiones con "ALCAMPO, BANO HISPAMER, LEROY MERLÍN etc, con todos los clientes que les hayan contratados..CLARO!!!, tienen acceso desde Intrum justitia a CIERTOS SERVIDORES pero encima de Datos muy muy golosos..Morosos, cuentas, tarjetas, números, direcciones...Imaginais si me da por estudiar las relaciones de confianza de Intrum Justita O cualquier otra que aparezca en Google..pues dependiendo el aDMIN QUE HAYA, pero vamos no creo que tardará más de cinco días enteros en descubrir algún fallos por parte de LAS OTRAS EMPRESAS porque algún usuario con privilegios ha cometido alguna tontería y me facilite que Sniffe sus datos cuando envía un e mail de Alcampo a Intrum justitia CON LOS NOMBRE DE LOS ÚLTIMOS MOROSOS A COBRAR...bien , me pillais no? Ok...sigo...

Hablemos de Segurida del Software
*****************************

Que estudiamos en referencia a la Ingeniería del Software respecto a su seguridad...?

1-Control , autorizado o no, del acceso...
2-Gestión de cuentas y privilegios de usuarios
2-Protección de ficheros
3-Diseño seguro del Software
4-Seguridad de bases de Datos
 Aquí nos vamos a centar siempre, cuando hablemos de Bases de datos , endos principalmente, que son las que cortan el cotarrro:Oracle(la grandíosa y mundial base de datos comprada por Sun Microsystems creadora de Solaris, grandioso sistema operativo bnasado en Unix , mpero a mi enetnder, mejor...y bueno, del puto error en si mismo, hablamos del todo conocido "SQL Server de Microsoft", donde ambas van a compartior(y con muchas otras) un lenguaje Stándard de Bases de Datos Relacionales, el lenguaje SQL(Stucture Query Language), que, vuelvo a decir, y siguiendo a mi compi Jesús Soldán, amigo y profesor de Programación orientada a objetos y Eventos de Microsoft, Sql es un "ERROR EN SI MISMO..SI SQL NUNCA SE HUBIERA CREADO, O SE HUBIERA CREADO ATENDIENTO A CRITERIOS QUE NO SE TUVIERON EN CUENTA, NO EXISTIRÍAN NI LA MITAD DE LOS PROBLEMAS EXISTENTES EN SEGURIDAD DE BASES DE DATOS..ES UN PUTO "BUG" DESDE SU ORIGEN,....", Y sin duda, llevo años realizando pruebas Stirngs Attacks Connections, que son las pruebas más avanzadas existentes en Hacking Oracle y Hackign Sql Mircrosoft (my sql ETC TAMBIÉN ENTRAN CLARO...)..y sigo diciendo que m ientras existan las llamdas strings connections, existiran agujeros enormes de seguridad en Bases De Datos Relacionales...

FAQ´S (..al respecto de esto claro...)
1-¿ Como se puede mantener una base de datos(cuantos más tocha más chungo..) en la que diferentes uusarios tienen "diferentes privilegios de acceso?
                                                        
                                                                         JA!!!

2-Como s puede asegurar que las aplicaciones que se utilizan son correctas y que no han sido midificadas?

3-Se puede estar seguro de que los datos no han sido modificados?

4-puede hacer fácilmente una compañia hacer cumplir una determinada política de licencías de software?

Necesito ahora que entendaís bien lo siguiente(que me cuesta "transformar muchos cosas ténicas a idioma "comúnu"..asi que hacer unn esfuerzo conmigo coño...ajajajjaja):

*Para poder hablar de Control de Acceso. que es lo que se hace continuamente(User Access Control List)(Las UAC de Microsoft Security), necesito definiros unas cositas..atention all the people...

"Casi todo se basa en un SUJETO que tiene ACCESO a un OBJETO

*Los "Accesos" nunca son del tipo Todo o Nada
 -Unix tienen 3 perimoso de accesos diferentes que son:Read, Write, Execute, independientes entre si, pero puede formar un todo, es decir, este "todo" será siempre el Gran ObJETIVO fINAL DE hACKING, el conseguir Acceso de R00t o Administator en Windows..Full Control vamos..por eso prefiero primero que entendaís en "continente" para que luego pasamos "al contenido concreto de hacking wen cada caso", pero si esto no se tienen presente, que coño de Objetivo te estás tu marcando en un hacking, porque un Ddos no es un hacking, es un atacque Hacker, pemro hay no haces Hcking, ahí utilizamos nuestros conocimientos en Buffers, memorias y demásd para saturar la memoria del lila o de la página, que no soporte más peticiones y cuando vayas a porner en el explorador policias punto es, pues que salga algo así "LA PÁGINA WEB NO HA SIDO ENCONTRADA"...zasss BufferOverflow, que hay provocado Una d enegación en "el servicio" que presta, ya sea comercial, informátio etc, es dcir, dejamos ala web KO haciendo que ningíun usuario en ninguna parte del mundo sea capaz de acceder a ella para consumir sus productos, ni la wem pemprearial puede ofertar y por tanto ganar pasta..ok? nos haCEMOS A LA IDEA DE ESTO NO?..ok...

En mi caso particular para conseguir Shell Root en Unix en un "envenamnimiento de la caché arp del kernel de unix" ARP POISONING, haciendole cree a su protocolo de resolution de direcciones Adress Resolution Protovol que "mi mconexión" es una de las autorizas y que por tanto están almacenadas en su CACHÉ ARP, y si su caché dice que mi dirección Ip es una de las autorizadas(o eso le hago creer claro) pues nada este que haga loo que quiera porque como coincide..pues Sabeis lo que va a pasar no?..Tras ca trus tris tras zASSS Tengo permisos de Root sudo su Who aim I = Root JA !!! a tomar por el culo, tu puto server Unix Apache it´s Mine POR Dios...JAJAJJAJA!!!!!!!! EGG SHELL el veneneno, el Apache pica, se envena y hace lo que el código envenenado mío quera que haga..fácil asi explicado no? eeeeeesoooooooo!!!!!!!!!!!!

Otra cosa a tener en cuenta....Hay una serie de ataques basados en peculiariddes de los protocolos(que no son Bugs, sino solo modos de funcionamiento interno)..por ejemplo majetes..ummm a ver que piense..vale!!...; los ataques relacionados con sniffers, que se aprovechan de que aplicaciones como Telnet o Ftp envían datos de autenticación(usuario y Contraseña) en texto claro, los ataques se suplantación(Spoofing) de direcciones IP o de Servidores DNS, http etc; el secuestro de sesiones Telnet, "el redireccionamiento de mensajes con fines ilícitos....

Más..la mayor parte de los virus y gusanos(que hablaremos de ello en otro capítulo, que hoy en día se propagan por la red, en forma de <partes de mensajes de correo SMTP....)

Muchas de las implemetaciones de los protocolos de aplicación más significativos de http, smtp, nuevos protocols multimedia se basan en código modular, en el que se podrían(y se pueden) garantizar la seguridad de cada módulo, pero prácticamente es imposible garantizar la seguridad del sistema completo.

El procolo IP(Internet Protocol) no fue diseñado para proporcionar seguridad, sino para transportar mensajes.En su diseño no hay nada sobre como autenticar sistemas ni como enviar mensajes secretos criptográficos.

Finalmente, por hoy, me gustaría terminar esta pequeña introducción en el Contienente de la Seguridad Informática...tenego que dejr una spalabras sobre el llamado código móvil, en el que se puede englobar en distintas tecnologías como JavaScript, Java, Active X y los Plug-ing´s descargables...; Toda y cada un de las opciones de código, a´sí como las famosas cookies de segumniento, porque toda son cookies de seguimiento..todfo esto, en conjunto, han demostrado(y de que manera..) tenber, en mayor o menor medida problemas de seguridad, relacionados con el mal diseño desde el punto de vista de la securización real de sistemas..malas implementaciones, malos usos o todos a la vez...

Por otro lado, es innegable su importancia en le mundo IP.Todo el mundo las utiliza, en mayor o menor medida, muchas veces sin saber que lo están haciendo tendrá consecuencias aboslutas y nefastas en la mayoría de los casos..Tendré qu vover más tranquilamente a hablar sobre esto

Bien aquí está lo que teneis que saber de las estaciones clienbtes y Servidores en general:

Sistemas operativos cliente y servidor


La clasificación de los sistemas operativos entre plataformas cliente y plataformas servidor responde a criterios funcionales.
Los sistemas operativos incluidos en las plataformas cliente están orientadas hacia un uso primordial como consumidores de servicios. Esto no significa que no puedan funcionar como servidores, pero en general cuando lo hagan será la excepción, y en muchos casos con limitaciones.

Un entorno de trabajo típico para una plataforma cliente es un puesto de trabajo de un usuario que usa aplicaciones cliente de correo electrónico para acceder a servidores de correo, que usa navegadores web para acceder a servidores de páginas web, que usa aplicaciones cliente específicas para acceder a servidores de aplicaciones de gestión, que accede a ficheros ubicados en servidores de archivos, que imprime informes a través de servidores de impresión en red, que usa autenticación y gestión de seguridad en accesos a través de un dominio...

Un ejemplo de excepción a la función cliente lo constituye el servidor web (IIS 7.5) que viene integrado por defecto en algunas ediciones de Windows 7, y que permite alojar un pequeño servidor web perfectamente funcional, aunque con algunas limitaciones, en una plataforma cliente.


Figura 1.- Activación del servidor web de Windows 7 desde "Programas y características" en el panel de control

Por su parte los sistemas operativos incluidos en las plataformas servidor están orientadas hacia la optimización en el servicio de recursos a sistemas cliente. Todo su diseño y arquitectura están pensados para dar soporte ágil y confiable a múltiples demandas concurrentes de acceso a distintos servicios.

Las plataformas servidor son el entorno adecuado para la ejecución de servidores de bases de datos, servidores de archivos, servidores de impresión, servidores DHCP, servidores DNS, servidores de máquinas virtuales...; de hecho algunos de los servicios de red más básicos ya se incluyen en las propias plataformas servidor por defecto, y sólo hay que configurarlos.


Figura 2.- Servidor DHCP incluido en Windows Server 2008 R2

Un entorno de trabajo típico para una plataforma servidor es un equipo que permanece permanentemente encendido, y que no es usado como puesto de trabajo por ningún usuario. Preferiblemente esté equipo tendrá unas características físicas específicas de servidor, como pueden ser varios procesadores, elementos redundantes, discos extraíbles en caliente...), aunque no es estrictamente necesario.

En este equipo podrían estar instaladas y configuradas funciones como las de servidor de dominio, servidor de DNS, servidor de DHCP, servidor de archivos, servidor de máquinas virtuales, servidor de copias de seguridad..., para que fueran accedidas por el resto de equipos de la red (las plataformas cliente u otras plataformas servidor).

Plataformas cliente de Microsoft


Entre las plataformas cliente de Microsoft actuales están todas las ediciones del sistema operativo Windows 7, Windows Embedded (que es un sistema operativo de Microsoft específicamente orientado hacia sistemas con características hardware limitadas, y con soporte para funciones que necesiten respuesta en tiempo real) y Windows Phone (el sistema operativo de Microsoft para smartphones y PDAs).


Figura 1.- Ediciones del sistemas operativo Microsoft Windows 7

Plataformas servidor de Microsoft


Entre las plataformas servidor de Microsoft actuales están todas las ediciones del sistema operativo Windows Server 2008 R2 y Windows Embedded Server.


Figura 2.- Distintas ediciones de Windows Server 2008 R2 y principales características de cada una de e

Direccionamiento de red


El término direccionamiento de red hace referencia a la manera en que se consigue que la información se transmita entre dos equipos conectados en red.
En el escenario más general para conseguir esto es necesario que cada equipo se identifique con una dirección única que permita que pueda ser localizado de forma unívoca para transmitirle la información.
Para poder entender mejor este concepto debemos introducir algunos principios básicos del funcionamiento en red de los
equipos.


Introducción a teoría de redes


En términos muy simples podemos decir que una red es un conjunto de equipos conectados que comparten información. Según esta definición dos equipos conectados directamente ya definen una red.

Las redes pueden clasificarse en función de múltiples características, como por ejemplo:

i) Topología: define de qué manera se interconectan los miembros de la red; algunos ejemplos típicos:

- Redes en anillo: cada equipo se conecta al anterior y al siguiente formando un anillo cerrado.
- Redes en estrella: cada equipo se une a un nodo central que a su vez lo une al resto de equipos
- Redes en malla: cada equipo se conecta directamente con todos los demás.
- Redes en bus: todos los equipos están conectados a un mismo único medio de transmisión.


Figura 1.- Ejemplos de topologías de red

Nota: la topología puede ser tanto física, es decir cómo están interconectados físicamente los equipos, como lógica, es decir, de qué manera fluye la información en la conexión; así por ejemplo existen redes que intercambian información con una topología lógica de anillo (cada nodo entrega información a los nodos inmediatamente anteriores y posteriores dentro de la secuencia lógica de ordenación), mientras que físicamente están interconectados en estrella, es decir, cada equipo se conecta sólo con el nodo central, que es quién controla físicamente la comunicación, encargándose de que la información llegue a su destino adecuado. Este tipo de redes se denomina Token Ring, y fueron desarrolladas por IBM en la década de los 70.

ii) Método de conexión: principalmente dos: conexión cableada o conexión inalámbrica.

iii) Tipos de conexión: en el caso de conexión cableada el cable puede ser fibra óptica, cable coaxial, par de cobre, cable eléctrico (Power Line Communications)...; en el caso de conexión inalámbrica se puede usar comunicación por microondas (satélite), WiFi, Bluetooth...

iv) Extensión de la red: algunos ejemplos son:

- PAN: redes de área personal; redes basadas en la interconexión de un equipo central y sus periféricos y accesorios más próximos; ejemplo: un portátil conectado a una impresora a través de un cable USB, a un teléfono móvil a través de una conexión bluetooth, a una cámara de fotos a través de firewire...
- LAN: redes de área local; engloban a todos los equipos interconectados ubicados en una misma área geográfica perfectamente delimitada (oficina, edificio, nave industrial...)
- WAN: redes de área amplia; redes que interconectan dispositivos, u otras redes, a través de grandes extensiones; Internet podría considerarse un ejemplo de WAN que abarca la totalidad del planeta.


Figura 2.- Ejemplo de interconexión de diversas redes

Cada tipo de red implementa la comunicación entre sus elementos en base a uno o varios protocolos que todos los miembros deben saber utilizar. Ejemplos de protocolos a distintos niveles del proceso de comunicación en red son: Ethernet, TCP/IP, HTTP...

Puesto que en el estudio de las redes existen muchas variables a considerar, se ha definido un modelo basado en siete capas para poder analizarlas mejor; este modelo se denomina el modelo de referencia OSI y sus siete capas son:

- Capa física: se refiere a los parámetros físicos de la transmisión de señal (medio físico a usar, valores de voltaje y su significado...).
- Capa de enlace: se refiere al protocolo a seguir para trasmitir datos de un punto a otro dentro de una misma red (protocolos como Ethernet, FDDI, Token Ring...).
- Capa de red: se refiere al protocolo a seguir para transmitir datos que deben ser enrutados entre redes distintas (protocolos como IP, IPX...).
- Capa de transporte: se refiere al protocolo que controla que la información que contienen los datos es correctamente entregada (protocolos como TCP, UDP, ICMP...).
- Capa de sesión: se refiere a los mecanismos que permiten el acceso de los procesos informáticos en ambos extremos de la comunicación a la recepción y envío de información (elementos como sockets, sesiones...).
- Capa de presentación: formatea los datos para que sean correctamente interpretados por los elementos de la capa de aplicación de ambos extremos; esta capa es necesaria ya que los datos sufren diversas transformaciones en su paso por el resto de capas del modelo OSI (conversiones ASCII/EBCDIC, algunos tipos de compresión y cifrado...).
- Capa de aplicación: es la capa a través de la cual los usuarios, y los procesos que estos están ejecutando, acceden a la comunicación en red; incluye todos los protocolos de aplicación más habituales (STMP, HTTP, DNS, DHCP, POP3...).

Otro modelo para estudio teórico de redes muy usado es el basado en el protocolo TCP/IP, que sólo define 4 capas, cada una de las cuales se corresponde con parte de las capas del modelo OSI:

- Capa de acceso a red: unifica para su estudio las capas física y de enlace del modelo OSI.
- Capa de Internet: se refiere específicamente al protocolo IP; se corresponde con la capa 3 del modelo OSI y con parte de la 4, ya que algunos parámetros de IP operan en la capa 4 del modelo OSI.
- Capa de transporte: alude a los protocolos de transporte basados en IP, como TCP, UDP, ICMP...; incluye parte de las capas 4 y 5 del modelo OSI, ya que incluye en el estudio parte del mecanismo de gestión de sesiones.
- Capa de aplicación: engloba el resto de procesos, elementos y protocolos que necesita cada tipo de transmisión; se corresponde al resto de capas del modelo OSI.


Figura 3.- Comparación de los modelos de referencia OSI y TCP/IP


Bueno gente, esto me ha llevado mucho tiempo hacerlo, revisarlo, expresarme de una manera meodológicamente adecuada a todo el mundo, experto o Amateurs, pero este blog trata de esto precisamente, de hacer llegar a Todos esto conocimientos cada día más inmersos en nuestras vidas...

Un abrazo muy fuerte...

Juan Carlos García

Este manual de Introducción de Redes está dedicado a mi Hermana Yolanda, sangre de mi sangre, la más directa y cercana..por ti Yola..espero que te guste..!!!

DukeMaquiavelo!!!

Entradas populares de este blog

Proteger ASP.NET de inyecciones SQL How T0? BEST PRACTICES

CERTIFICACIONES DE SEGURIDAD

HACKING MADRID_"EASY" XSS and Cross Site Tracing XST