1er Curso Internacional de Criminal�stica Cibern�tica

Document Sample
1er Curso Internacional de Criminal�stica Cibern�tica Powered By Docstoc
					1er Curso Internacional de Criminalística Cibernética


Curso: Criminalística Cibernética

Modulo: Informática Forense.


Docente Responsable:

Alonso Eduardo Caballero Quezada
Página Web: http://alonsocaballero.informatizate.net
Correo electrónico: reydes@gmail.com
Area de Sistemas de la Cámara de Comercio de la Libertad.
BrainBench Certified Linux Administration (Advanced)
Integrante del Grupo Peruano de Seguridad, Security Wari Projects
Integrante del Grupo de Seguridad de habla hispana RareGaZz Security Team..
Integrante y WebMaster del Portal de Noticias de Trujillo, NoticiasTrujillo.
Integrante del Grupo informatizate.


Número de Horas:

16 Horas Académicas.


Trujillo – Perú / 2005
1. Definiciones básicas

1.1 Sistemas Operativos:

 Un sistema operativo (SO) es un conjunto de programas o software destinado a
permitir la comunicación del usuario con un ordenador y gestionar sus recursos de
manera cómoda y eficiente. Comienza a trabajar cuando se enciende el
ordenador, y gestiona el hardware de la máquina desde los niveles más básicos.

 Hoy en día un sistema operativo se puede encontrar normalmente en
ordenadores o productos electrónicos como teléfonos móviles.

a. DOS

DOS es una familia de sistemas operativos para PC. El nombre son las siglas de
Disk Operating System ( sistema operativo de disco). Fue creado originalmente
para computadoras de la familia IBM PC, que utilizaban los procesadores Intel
8086/8088 de 16 bits, siendo el primer sistema operativo popular para esta
plataforma. Tenía una interfaz de línea de comandos vía su intérprete de
comandos, command.com.

Existen varias versiones de DOS. El más conocido de ellos es el MS-DOS, de
Microsoft (de ahí las iniciales MS). Otros sistemas son el PC-DOS, DR-DOS y,
más recientemente, el FreeDOS.

Con la aparición de los sistemas gráficos del tipo Windows, el DOS ha ido
quedando relegado a un segundo plano.

-MSDOS es un sistema operativo de Microsoft perteneciente a la familia DOS.
Fue un sistema operativo para el IBM PC que alcanzó gran difusión.

MS-DOS significa MicroSoft Disk Operating System (Sistema operativo de disco
MicroSoft), antiguamente Microsoft se escribía separado por un guión
("MicroSoft"). Al principio el MS-DOS se almacenaba en un único diskette.

 - Características: El DOS carece por completo de interfaz gráfica, y no utiliza el
ratón. Era incapaz de detectar el hardware (no existía el Plug-and-play), por lo que
todo debía ser configurado manualmente.

No era ni multiusuario ni multitarea. No podía trabajar con discos duros muy
grandes. Originalmente, por limitaciones del software, no podía manejar más de
64KB de memoria RAM. Poco a poco, con las mejoras en la arquitectura de los
PCs, llegó primero a manejar 640KB (la llamada "memoria convencional"), y luego
hasta 1 MegaByte (agregando a la memoria convencional la "memoria superior" o
UMB). Más tarde, aparecieron mecanismos como la memoria extendida (XMS) y la
memoria expandida (EMS), que permitían ya manejar varios megabytes.
Desde el punto de vista de los programadores, este sistema operativo permitía un
control total del ordenador, libre de las capas de abstracción y medidas de
seguridad a las que obligan los sistemas multiusuario y multitarea. Así, hasta la
aparición del DirectX, y con el fin de aprovechar al máximo el hardware, la mayoría
de los videojuegos para PC funcionaban bajo DOS.

La necesidad de mantener la compatibilidad con programas antiguos, hacía cada
vez más difícil programar para DOS, debido a que la memoria estaba segmentada,
es decir, la memoria apuntada por un puntero tenía como máximo el tamaño de un
segmento de 64KB. Para superar estas limitaciones del modo real de los
procesadores x86, se recurría al modo protegido de los procesadores posteriores
(80386, 80486...), utilizando programas extensores que hacían funcionar
programas de 32 bits sobre DOS.



b. GNU/Linux:

 GNU/Linux es la denominación defendida por Richard Stallman y otros para el
sistema operativo que utiliza el kernel Linux en conjunto con las aplicaciones de
sistema creadas por el proyecto GNU. Comúnmente este sistema operativo es
denominado simplemente Linux.

Desde 1984, Richard Stallman y voluntarios están intentando crear un sistema
operativo libre con un funcionamiento similar al UNIX, recreando todos los
componentes necesarios para tener un sistema operativo funcional que se
convertiría en el sistema operativo GNU. En el comienzo de los años 1990,
después de seis años, GNU tenía muchas herramientas importantes listas, como
compiladores, depuradores, intérpretes de comando etc, excepto por el
componente central: el núcleo. Con el surgimiento del kernel Linux, esta laguna
fue llenada y surgió el sistema operativo con el kernel Linux en conjunto con las
herramientas GNU. De esta manera, Stallman juzga que este sistema operativo es
una "versión modificada" del sistema GNU y por lo tanto debe tener la
denominación GNU/Linux. Esta denominación resolvería la confusión entre el
núcleo y el sistema operativo completo a que puede llevar, y de hecho ha llevado,
la denominación Linux en solitario. Stallman también espera que con el aporte del
nombre GNU, se dé al proyecto GNU que él encabeza el reconocimiento que
merece por haber creado las aplicaciones de sistema imprescindibles para ser un
sistema operativo compatible con UNIX. Es conocida la cita de Richard Stallman:
«It's GNU/Linux, dammit!» («¡Es GNU/Linux, maldita sea!»).

Richard Stallman ha reconocido que desde que existe Linux el desarrollo de un
núcleo específico del proyecto GNU (el Hurd) ya no es prioritario. Esto explica que
después de dos décadas desde el anuncio del proyecto GNU, un sistema
únicamente GNU no esté acabado.
Algunas distribuciones apoyan esta denominación, e incluyen GNU/Linux en sus
nombres, tal es el caso de Debian GNU/Linux o GNU/LinEx. En el proyecto Debian
también existe Debian GNU/Hurd y Debian GNU/BSD que combinan las
aplicaciones de sistema de GNU con esos núcleos.

En ocasiones, el proyecto KDE ha utilizado una tercera denominación:
GNU/Linux/X para enfatizar los tres proyectos sobre los que se apoya su entorno
de escritorio.

Algunos sectores de la comunidad de usuarios del sistema operativo han
rechazado la denominación GNU/Linux por varias razones, entre ellas que ya se
había empezado a denominar Linux al sistema operativo antes de que Richard
Stallman promocionase esta denominación. Otras personas se oponen a la
postura ideológica de Stallman radicalmente en contra del software no libre y por
ello son contrarios al uso de este nombre para evitar la promoción de las ideas del
fundador del proyecto GNU. Otros sectores de la comunidad han reconocido la
conveniencia de este nombre.

Hay que señalar que, al igual que es una simplificación denominar al sistema que
usa el usuario final Linux, obviando las aplicaciones GNU que completan el
sistema operativo, el conjunto linux+GNU representa solamente una parte (aunque
importante) del software encontrado en una distribución Linux. Existe una gran
cantidad de software original del sistema operativo BSD o producido
independientemente de los proyectos GNU y Linux por otras personas u
organizaciones, como por ejemplo Apache, el X Window System, Samba, KDE,
OpenOffice.org y miles de otros.

- Distribuciones: Una distribución Linux, o distribución GNU/Linux (abreviada con
frecuencia distro) es un conjunto de aplicaciones reunidas por un grupo, empresa
o persona para permitir instalar fácilmente un sistema Linux (también llamado
GNU/Linux). Son 'sabores' de Linux que, en general, se destacan por las
herramientas para configuración y sistemas de paquetes de software a instalar.

Existen numerosas distribuciones Linux. Cada una de ellas puede incluir cualquier
número de software adicional (libre o no), como algunos que facilitan la instalación
del sistema y una enorme variedad de aplicaciones, entre ellos, entornos gráficos,
suites ofimáticas, servidores web, servidores de correo, servidores FTP, etcétera.

La base de cada distribución incluye el núcleo Linux, con las bibliotecas y
herramientas del proyecto GNU y de muchos otros proyectos/grupos de software,
como BSD.

Usualmente se utiliza la plataforma XFree86 o la Xorg para sostener interfaces
gráficas (esta última es un fork de XFree86, surgido a raíz del cambio de licencia
que este proyecto sufrió en la versión 4.4 y que lo hacía incompatible con la
GPL).servidores web, servidores de correo, servidores FTP, etcétera.
La base de cada distribución incluye el núcleo Linux, con las bibliotecas y
herramientas del proyecto GNU y de muchos otros proyectos/grupos de software,
como BSD.

Usualmente se utiliza la plataforma XFree86 o la Xorg para sostener interfaces
gráficas (esta última es un fork de XFree86, surgido a raíz del cambio de licencia
que este proyecto sufrió en la versión 4.4 y que lo hacía incompatible con la GPL).




     Interfaz de Comandos GNU/Linux                   Entorno visual en GNU/Linux



c. Windows:

Microsoft Windows es el nombre de una familia de sistemas operativos no libres
desarrollados por la empresa de software Microsoft Corporation. Todos ellos
tienen en común el estar basados en una interfaz gráfica de usuario basada en el
paradigma de ventanas (de ahí su nombre en inglés). Las versiones de Windows
que existen hasta el momento se basan en dos líneas separadas de desarrollo
que finalmente convergen en una sola con la llegada de Windows XP.

Versiones basadas en MS DOS

La primera de esas líneas conformaba la apariencia de un Sistema Operativo,
aunque realmente requerían otro sobre el que ejecutarse (MS DOS). Todos los
Sistemas Operativos, desde Windows 1.0 a Windows ME necesitaban tener MS
DOS instalado, aunque desde la aparición de Windows 95, podía instalarse
Windows sobre un disco duro vacío, ya que durante su propia instalación, se
instalaba además una versión reducida de MS DOS. La arquitectura de Windows
comenzó siendo de 16 bits, hasta Windows 95, donde pasó a funcionar bajo una
arquitectura de 32 bits, aunque manteniendo bastantes módulos de 16 bits por
razones de compatibilidad.

Windows 1.x 3.x, 95, 98, ME

Versiones basadas en NT (Network Technology)

La segunda linea de desarrollo (NT) se basaba en emplear desde el origen un
sistema operativo en modo gráfico y con una arquitectura de 32 bits. Éste Sistema
Operativo no requiere tener instalado ningún otro previamente. Incluye en todas
sus versiones, un emulador de consola en modo texto. A modo de anécdota,
Windows NT 4.0, en origen no era compatible con tarjetas gráficas AGP. Requería
la instalación de un Service Pack o conjunto de parches (de la versión 3 en
adelante), que permitian su detección y la instalación de sus controladores.

Windows NT 3.x, 4. 2000, XP, Server 2003




Pantalla de un Windows 3.11                 Pantalla de un Windows XP


d. Macintosh:

Apple Macintosh (abreviado Mac) es el nombre de una serie de ordenadores
fabricados y comercializados por Apple Computer desde 1984. Apple autorizó a
otras compañías, como Motorola, Umax o PowerComputing para la fabricación de
clones Macintosh en los 90, aunque en la actualidad sólo Apple comercializa
ordenadores Macintosh.

Los primeros Macintosh estaban basados en los microprocesadores de la familia
68000 de Motorola, de tecnología CISC. En Marzo de 1994, Apple introdujo en la
gama Macintosh los chips PowerPC del Consorcio Apple/IBM/Motorola, que
suponían el cambio a la tecnología RISC. Desde la introducción de los Power Mac
G5 en Junio de 2003, utilizan el PowerPC de IBM.
Los Apple Macintosh son comercializados con el sistema operativo Mac OS X, con
soporte integrado para el sistema operativo anterior: Mac OS 9, pero también es
posible instalar en ellos Linux, NetBSD ó Darwin, entre otros.




                                   Pantalla de un Mac


e. Novell Netware:
Novell NetWare está en el mercado desde 1983, el mismo año en que IBM
introdujo la computadora personal IBM XT y el DOS 2.0 para IBM PC. Cada uno
de estos productos implantó estándares. El IBM XT fue la primera computadora de
IBM que incorporaba un disco fijo, mientras que el DOS 2.0 para el IBM PC fue el
primer sistema operativo de disco que controlaba discos fijos sin complementos
especiales. Ambos generaron un sistema de estándares para el crecimiento de los
PC hacia entornos y aplicaciones más sofisticadas basadas en ellos. NetWare iba
a convertirse en el sistema operativo en red a elegir para estos equipos.


Novell desarrolló originalmente NetWare para ejecutarse en un servidor basado en
el microprocesador Motorola MC68000 usando configuración de red Novell S-Net.
La presentación del XT de IBM y la versión 2 del DOS hizo ver a muchas
empresas, entre ellas Novell, la oportunidad de desarrollo del producto. Como el
código de NetWare estaba escrito en C, que es un lenguaje de los denominados
"portables", Novell pudo trasladar parte del código del NetWare existente al nuevo
equipo.


Como es sabido, el entorno DOS/Intel 8088 no es el mejor para ejecutar
aplicaciones multiusuario, especialmente un sistema operativo multiusuario como
NetWare. El BIOS (sistema básico de entradas/salidas), desarrollado para el PC
original (y necesario con el DOS), está diseñado para monousuario. Novell tomó la
importante decisión de dejar de lado completamente este sistema de E/S y crear
un sistema operativo que funcionase de forma más efectiva en modo multiusuario.
Debido a esto, NetWare se escribió específicamente para el hardware de los
sistemas basados en el 8088, sin tener en cuenta el DOS y su sistema de E/S.
Esta estrategia fue la que marcó la buena estrella de Novell desde entonces. Otras
empresas que han desarrollado sus sistemas operativos de red para funcionar
bajo DOS han sufrido sus limitaciones.


Las dificultades de Novell estribaron en la necesidad de escribir y actualizar
constantemente los controladores para ofrecer compatibilidad con el DOS a los
usarios. Estos problemas fueron solventados rápidamente usando un shell para
DOS en las estaciones de trabajo. El shell es un interfaz software que permite a
los usuarios de las estaciones trabajar con el DOS de forma normal, ejecutando
también órdenes NetWare. El shell intercepta las órdenes de la red y las dirige al
servidor. Casi todas las aplicaciones del DOS se pueden ejecutar en el sistema
operativo NetWare, gracias a su shell para DOS. Además, NetWare incluye
programas para seguridad y tolerancia a fallos que son imposibles de preparar en
la de estructura de archivos del DOS, marcando un nivel claramente superior.


Mientras tanto, Novell siguió mejorando NetWare al ritmo de los avances
tecnológicos. NetWare 286 funciona en modo protegido del procesador 80286, el
más eficiente. En 1989, Novell presentó NetWare 386, el primer sistema operativo
que aprovechaba al máximo las ventajas del microprocesador Intel 80386. El
80386 es especialmente adaptable a entornos multiusuario, como las redes.




                               Pantalla de Novell Netware
1.2 Sistemas de Archivos:

Un sistema de archivos consta de tipos de datos abstractos, que son necesarios
para el almacenamiento, organización jerárquica, manipulación, navegación,
acceso y consulta de datos.

La mayoría de los sistemas operativos poseen su propio sistema de archivos. Los
sistemas de archivos son representados ya sea textual o gráficamente utilizando
gestores de archivos o shells. En modo gráfico a menudo son utilizadas las
metáforas de carpetas (directorios) conteniendo documentos, archivos y otras
carpetas. Un sistema de archivos es parte integral de un sistema operativo
moderno.

Los sistemas de archivos más comunes utilizan dispositivos de almacenamiento
de datos que permiten el acceso a los datos como una cadena de bloques de un
mismo tamaño, a veces llamados sectores, usualmente de 512 bytes de longitud.
El software del sistema de archivos es responsable de la organización de estos
sectores en archivos y directorios y mantiene un registro de qué sectores
pertenecen a qué archivos y cuáles no han sido utilizados. En la realidad, un
sistema de archivos no requiere necesariamente de un dispositivo de
almacenamiento de datos, sino que puede ser utilizado también para acceder a
datos generados dinámicamente, como los recibidos a través de una conexión de
red.

Generalmente un sistema de archivos tiene directorios que asocian nombres de
archivos con archivos, usualmente conectando el nombre de archivo a un índice
en una tabla de asignación archivos de algún tipo, como FAT en sistemas de
archivos MS-DOS o los inodos de los sistemas Unix. La estructura de directorios
puede ser plana o jerárquica (ramificada o "en árbol"). En algunos sistemas de
archivos los nombres de archivos son estructurados, con sintaxis especiales para
extensiones de archivos y números de versión. En otros, los nombres de archivos
son simplemente cadenas de texto y los metadatos de cada archivo son alojados
separadamente.

En sistemas de archivos jerárquicos, en lo usual, se declara la ubicación precisa
de un archivo con una cadena de texto llamada "ruta". La nomenclatura para rutas
varía ligeramente de sistema en sistema, pero mantienen por lo general una
misma estructura. Una ruta viene dada por una sucesión de nombres de
directorios y subdirectorios, ordenados jerárquicamente de izquierda a derecha y
separados por algún caracter especial que suele ser una barra ('/') o barra
invertida ('\') y puede terminar en el nombre de un archivo presente en la última
rama de directorios especificada.

Los sistemas de archivos tradicionales proveen métodos para crear, mover y
eliminar tanto archivos como directorios, pero carecen de métodos para crear, por
ejemplo, enlaces adicionales a un directorio o archivo (enlaces "duros" en Unix) o
renombrar enlaces padres (".." en Unix).
El acceso seguro a sistemas de archivos básicos puede estar basado en los
esquemas de lista de control de acceso o capacidades. Las listas de control de
acceso hace décadas que demostraron ser inseguras, por lo que los sistemas
operativos experimentales utilizan el acceso por capacidades. Los sistemas
operativos comerciales aún funcionan con listas de control de acceso.


Sistemas de Archivos populares:

a. FAT:

(File Allocation Table o "tabla de ubicación de archivos") es el principal sistema de
archivos desarrollado para MS-DOS y Windows. El sistema de archivos FAT es
relativamente sencillo, y debido a eso es muy popular como formato para
disquetes. Adicionalmente, el formato FAT es soportado por casi todos los
sistemas operativos para IBM PCs, y debido a esto a menudo se lo utiliza para
compartir información entre diversos sistemas operativos.

FAT es un sistema de archivos relativamente anticuado, y debido a esto sufre de
varios problemas. Para comenzar, su distribución de archivos simple permite la
fragmentación, lo que produce eventuales pérdidas en el desempeño de
operaciones sobre archivos. Luego, FAT no fue diseñado para redundancia en
caso de fallos del sistema. Las primeras versiones de FAT permitían nombres de
archivo de hasta 8+3 caracteres (8 para el nombre y 3 para la extensión) , aunque
esto fue solucionado por Microsoft al inventar VFAT, el cual permite nombres de
hasta 255 caracteres. Finalmente, los sistemas de archivos FAT no permiten
directivas de seguridad, garantizando el acceso a todos los archivos de una
partición por cualquier usuario del sistema operativo.

FAT12

A la versión inicial de FAT se le nombra ahora como FAT12. Como sistema de
archivos para disquetes, tiene varias limitaciones: no tiene soportes para
directorios, las direcciones de clúster tenían una longitud de "sólo" 12 bits (que
hacía que el código que manipulaba el FAT fuera un poco delicado) y el tamaño
del disco era almacenado como una cuenta de 16 bits de sectores , lo que limitaba
el tamaño a 32MB.
FAT16

FAT16 es una versión del sistema de archivos FAT que soporta hasta 65.535
unidades de asignación (direccionables con 16 bits, de ahí el nombre) de hasta 32
KB cada una. De todas las unidades de asignación, 18 están reservadas para el
sistema. Por lo tanto, el tamaño máximo de una partición que use FAT16 es de
unos 2 GB (65.535-18 x 32 KB).




                            Estructura de un Volumen FAT16
FAT32

FAT32 es una versión del sistema de archivos FAT que maneja en teoría hasta
4.294.967.296 unidades de asignación (direccionables con 32 bits, de ahí el
nombre) de hasta 32 KB cada una. De estos 32 bits de direccionamiento solo se
usan 28 (268.435.456 unidades de asignación) y 18 de éstas están reservadas
para el sistema. Por lo tanto, el tamaño máximo teórico de una partición que use
FAT32 es de unos 8 TB (268.435.456-18 x 32 KB). Pero por problemas en el
diseño, algunas de las utilidades de Microsoft para el trabajo con FAT32 están
limitadas a 4.177.920 unidades de asignación, lo que hace que en la práctica solo
se puedan crear particiones de unos 124 GB.




                            Estructura de un Volumen FAT32


b. NTFS:

NTFS (siglas en inglés de New Technology File System) es un sistema de
archivos diseñado específicamente para Windows NT, con el objetivo de crear un
sistema de archivos eficiente, robusto y con seguridad incorporada desde su base.
También soporta compresión nativa de ficheros y encriptación (esto último sólo a
partir de Windows 2000).

NTFS permite definir el tamaño del cluster, a partir de 512 bytes (tamaño mínimo
de un sector) de forma independiente al tamaño de la partición.

Es un sistema adecuado para las particiones de gran tamaño requeridas en
estaciones de trabajo de alto rendimiento y servidores. Puede manejar discos de
hasta 2 Terabytes.

Los inconvenientes que plantea son:

 * Necesita para si mismo una buena cantidad de espacio en disco duro por lo que
no es recomendable su uso en discos menores de 400 MB.
 * No es compatible con MS-DOS, Windows 95 ni Windows 98.
 * La conversión a NTFS es unidireccional. Si elige actualizar la unidad, no podrá
volver a convertirla a FAT.

GNU/Linux sólo tiene soporte de lectura para este sistema de ficheros, y de
escritura experimental, aunque no se suele activar por defecto. Existe una
alternativa Captive-NTFS, que usa las librerías propietarias de Windows NT para
tener acceso completo a NTFS.




                 Compatibilidad de Sistemas de Archivos con NTFS y FAT

c. EXT2:

EXT2 (second extended filesystem o "segundo sistema de archivos extendido")
fue el sistema de archivos estándar en el sistema operativo Linux por varios años
y continúa siendo ampliamente utilizado. Fue diseñado originalmente por Rémy
Card. La principal desventaja de EXT2 es que no posee una bitácora, por lo que
muchos de sus usuarios están emigrando a ReiserFS y su sucesor EXT3.

Conceptos Básicos:

 Cada Sistema de archivos en Linux implementa un conjunto básico de conceptos
comunes derivados del sistema operativo UNIX, los archivos son representados
por “inodos”, directorios son simplemente archivos conteniendo una lista de
entradas y los dispositivos puede acceder mediante peticiones de E/S en archivos
especiales.

 Inodos: Cada archivo es representado por una estructura, llamada un inodo, cada
inodo contiene la descripción de un archivo: tipo de archivo, permisos de acceso,
propietarios, fecha, puntero a bloque de datos. Las direcciones de bloques de
datos localizados en un archivo son almacenados en su inodo. Cuando un usuario
hace una operación de E/S a un archivo, el código del kernel convierte el
desplazamiento actual a un numero de bloque, usando este numero como un
índice en la Tabla de direcciones de bloques y lee o escribe en el bloque físico. La
siguiente figura representa la estructura de un inodo.
Estructura de un inodo

-Directorios: Directorios son estructurados en un árbol jerárquico. Cada directorio
puede contener archivos y subdirectorios. Son implementados como un tipo
especial de archivos. Actualmente, un directorio es un archivo conteniendo una
lista de entradas. Cada entrada contiene un numero de inodo y un nombre de
archivo. Cuando un proceso usa una ruta, el código del kernel busca en su
directorio para encontrar el numero de inodo correspondiente. Después el nombre
tiene que ser convertido a un numero de inodo, el inodo es cargado en memoria y
es usado para futuras peticiones.




                             Representación de un Directorio

-Enlaces: El sistema de archivos UNIX implementa el concepto de enlace, Muchos
nombres pueden ser asociados con un inodo. El inodo contiene un campo
conteniendo el numero asociado con el archivo. Añadir un enlace simplemente
consiste en crear una entrada en el directorio, donde numero de inodo apunta al
inodo, e incrementando la cuenta de enlaces en el inodo. Cuando un enlace es
borrado; cuando se usa el comando “rm” para remover un archivo; el kernel
decrementa la cuenta de enlaces y desaloja el inodo, si la cuenta se convierte en
cero.

 Este tipo de enlaces es llamado un enlace duro y puede ser usado dentro un solo
sistema de archivos; es imposible crear un enlace duro entre sistemas de archivos
diferentes. Enlaces duros solo pueden apuntar a archivos: un enlace duro a
directorio no puede ser creado para prevenir la aparición de un ciclo en el árbol de
directorios.

 Otro tipo de enlaces existe en la mayoría de archivos de sistemas UNIX. Enlaces
simbólicos son simplemente archivos que contienen un nombre de archivo.
Cuando el kernel encuentra un enlace simbólico durante una ruta a una
conversión de inodo, este reemplaza el nombre del enlace por su contenido; por
ejemplo; el nombre de un archivo, es decir, el nombre del archivo objetivo, y
reinicia la interpretación de la ruta. Dado que un enlace simbólico no apunta a un
inodo, es posible crear enlaces simbólicos entre sistemas de archivos diferentes.
Enlaces simbólicos pueden apuntar a cualquier tipo de archivo, hasta archivos que
no existen. Enlaces simbólicos son muy útiles porque no tienen limitaciones
asociadas a los enlaces duros. Sin embargo usan el mismo espacio de disco,
localizado por sus inodos y sus bloques de datos, y causa un overhead en la ruta
hasta la conversión de inodo porque el kernel reinicia la interpretación del nombre
cuando este encuentra un enlace simbólico.

-Archivos Especiales de Dispositivos: En los sistemas similares a UNIX, los
dispositivos se pueden acceder mediante archivos especiales. Un Archivo de
Dispositivo no utiliza espacio en el sistema de archivos. Y tiene solo un punto de
acceso al controlador del dispositivo. Dos tipos de archivos especiales existen:
archivos especiales de carácter y bloque. El primero permite operaciones de E/S
en modo carácter mientras que el ultimo requiere que los datos sean escrito en
bloques mediante funciones de un buffer de cache. Cuando una petición de E/S es
realizada sobre un archivo especial, este es redireccionado a un (pseudo)
controlador de dispositivo. Un archivo especial es referido por un numero mayor, el
cual identifica el tipo de dispositivo, y un numero menor, el cual identifica la unida.



d. EXT3:

EXT3 (third extended filesystem o "tercer sistema de archivos extendido") es un
sistema de archivos con registro por diario (en inglés journaling), es un sistema de
archivo de registro por diario, por el solo hecho de tener un "espacio apartado para
el buffer de journaling". este sistema el cual se encuentra creciendo en
popularidad entre usuarios del sistema operativo Linux. A pesar de su menor
desempeño y escalabilidad frente a alternativas como ReiserFS o XFS, posee la
ventaja de permitir migrar del sistema de archivos EXT2 sin necesidad de
reformatear el disco.
La única diferencia entre EXT2 y EXT3 es el registro por diario. Un sistema de
archivos EXT3 puede ser montado y usado como un sistema de archivos EXT2.

Provee escalabilidad en el tamaño del sistema de archivos del disco Nos permite
hacer mas y mas grandes sistemas de archivos sin tener la penalidad del sistema
de archivos del disco La meta principal es proveer una funcionalidad plena en una
sola pieza Otra de las metas es proveer total, absoluta y completa combatibilidad
backward y forward entre EXT2 y EXT3.

Otra diferencia también importante, es que EXT3 utiliza un arbol binario
balanceado (AVL)



e. ISO 9660 (sistema de archivos de solo lectura para CD-ROM)

El estándar ISO 9660 es una norma publicada inicialmente en 1986 por la ISO,
que especifica el formato para el almacenaje de archivos en los soportes de tipo
disco compacto. El estándar ISO 9660 define un sistema de archivos para CD-
ROM. Su propósito es que tales medios sean leíbles por diferentes sistemas
operativos, de diferentes proveedores y en diferentes plataformas, por ejemplo,
MS-DOS, Microsoft Windows, Mac OS y UNIX.

La norma ISO 9660 es descendiente directa de un esfuerzo de estandarización
más temprano llamado 'HSG (acrónimo de High Sierra Group), el cual fue
propuesto por un conjunto de actores de la industria que se reunieron en 1985 en
el hotel High Sierra, de Lake Tahoe, Nevada. Aunque la ISO aceptó una gran
mayoría de las propuestas del HSG, existen algunas diferencias menores.
1.5 Redes de Computadoras:

Historia

El concepto de trabajo en redes es probablemente tan antiguo como lo es el de las
telecomunicaciones. Imagínese por un momento, gente viviendo en la Edad de
Piedra, en donde los individuos usen tambores para transmitirse mensajes.
Supóngase que un hombre de las cavernas A quiere invitar a otro hombre B a una
partida de choques de piedra. Lamentablemente viven tan distantes, que a B le
sería imposible escuchar el tambor de A cuando éste lo llame. ¿Qué puede hacer
A para remediar esto? Él podría 1) ir caminando al sitio de B, 2) conseguir un
tambor más grande, o 3) pedirle a C, quien vive a mitad de camino que reenvíe el
mensaje. La tercera elección es denominada Trabajo en Redes.

Por supuesto, la humanidad ha avanzado un poco desde la la Edad de Piedra; ya
no se usan aquellos primitivos artefactos ni tenemos los mismos inconvenientes
que nuestros antepasados. En la actualidad, contamos con computadoras que
hablan con otras sobre una colección de cables, fibra óptica, microondas, etc. tan
grande como para llenar el estadio en el partido de fútbol de los sábados. A
continuación, se hará referencia a los conceptos y métodos que son utilizados
para llevar a cabo todo esto. Sin embargo, dejaremos de lado tanto el tema de los
cables, como la parte del fútbol.

En esta guía se describirán tres tipos de redes. Sin embargo, se discutirá más
profundamente TCP/IP puesto que es el protocolo más usado, ya sea en Redes
Locales (Local Area Networks, LANs), o en Redes de Área Amplia (Wide Area
Networks, WANs), como por ejemplo, Internet. También se echará un vistazo a
UUCP e IPX. UUCP fue antiguamente el medio general para transportar las
noticias y los mensajes de correo, mediante una conexión telefónica. Es menos
usado en estos días, pero sigue siendo útil en muchas situaciones. El protocolo
IPX es usado más frecuentemente en los entornos Novell NetWare, y se detallará
cómo usarlo para conectar una máquina GNU/Linux a una red Novell. Cada uno
de estos protocolos de red son usados para transportar datos entre computadoras.
Se discutirá aquí cómo son usados y se hará una introducción a sus principios
fundamentales.

Se define una red, como una colección de nodos (del inglés hosts), capaces de
comunicarse entre sí, a veces confiando en los servicios de un número
determinado de máquinas que se encargan de transmitir datos entre quienes que
lo demanden. Los nodos son casi siempre computadoras, pero no
necesariamente; se puede pensar, sin equivocación, en terminales X o impresoras
inteligentes como nodos. Por otro lado, a las pequeñas aglomeraciones de éstos,
se las denomina sitios, (sites).

La comunicación, sería imposible sin algún tipo de lenguaje o código. En la jerga
de las redes de computadoras, estos lenguajes se denominan conjuntamente
como protocolos. No obstante, no se debería pensar aquí en lenguajes ya escritos
y definidos, sino más bien en el código de comportamiento altamente formalizado,
que se observa en una población cuando se reúnen jefes de estado, por citar un
ejemplo. Así, los protocolos usados en las redes de computadoras no son más
que reglas muy estrictas de intercambio de mensajes entre dos o más servidores.

Redes TCP/IP

Las aplicaciones modernas para trabajo en redes requieren de un sofisticado
método de transporte desde una máquina a otra. Si usted administra una máquina
GNU/Linux que posea muchos usuarios, los cuales desean estar conectados
simultáneamente a un servidor remoto o a una red, necesitará un modo de acceso
para que puedan compartir la conexión a la red, sin que las acciones de cada uno
interfieran con las de los demás. La estrategia que un gran número de protocolos
de red utilizan hoy día se llama conmutación de paquetes, (packet-switching). Un
paquete es nada más que un pequeño trozo de datos que se transfiere de una
máquina a otra a través de una red. Esta transferencia ocurre a medida que el
datagrama es transmitido a través de cada enlace en la red. Una red de
conmutación de paquetes comparte un único enlace con muchos usuarios,
enviando los paquetes alternadamente, desde un usuario a otro, a través de ese
enlace.

La solución que muchos sistemas Unix, (y posteriormente muchas otras
plataformas), han adoptado, se conoce como TCP/IP. Cuando se habla de redes
TCP/IP, siempre estará presente el término datagrama. Técnicamente, este
término tiene un significado especial, pero es a menudo usado de forma
intercambiable con paquete. En la siguiente sección, se echará un vistazo a los
conceptos fundamentales de los protocolos TCP/IP.


Ethernets

El tipo de hardware más utilizado en LANs es lo que comúnmente conocemos
como Ethernet. Descrito de una forma simple, consta de un solo cable con los
nodos unidos a él a través de conectores, clavijas o transceptores. Los
adaptadores Ethernet simples, son relativamente baratos de instalar, lo que unido
a un flujo de transferencia neto de 10, 100 o hasta 1,000 Mega bits por segundo,
avala gran parte de su popularidad.

Las redes Ethernet se pueden clasificar en tres tipos atendiendo al grosor del
cable: gruesos, finos, y de par trenzado. Los dos primeros pueden usar cable
coaxial, difiriendo en el grosor y el modo de conectar este cable a los nodos. El
cable Ethernet fino emplea conectores “BNC” con forma de T, que se pinchan en
el cable y se enganchan a los conectores de la parte trasera del ordenador. El
cable Ethernet grueso requiere que se realice un pequeño agujero en el cable, y
se conecte un transceptor utilizando un “conector vampiro” Luego, se podrán
conectar uno o más nodos al transceptor. Los cables Ethernet fino y grueso
pueden alcanzar una distancia de 200 y 500 metros, respectivamente, y es por ello
que se les llama también 10base-2 y 10base-5. La palabra “base” hace referencia
a “modulación de banda base” y significa, simplemente, que los datos que
alimentan al cable, fluyen directamente sin pasar por un módem. El número que se
encuentra delante de la palabra alude a la velocidad de transmisión, en Mega bits
por segundo, mientras que el número al final indica la máxima longitud que se le
puede dar al cable, en cientos de metros. El par trenzado usa un cable hecho de
dos hilos de cobre. Por lo común necesitan, además, hardware adicional que se
conoce como Núcleo Activo. A este Ethernet se le conoce también como 10base-
T, en donde “T” significa de par trenzado. Los pares trenzados con velocidad de
100 Mega bits por segundo son conocidos como 100base-T.

Para agregar un nodo a una instalación Ethernet fina se deberá suspender el
servicio de la red por al menos unos minutos, ya que se deberá cortar el cable
para insertar un conector. A pesar de que, por otro lado, agregar un nodo a un
sistema Ethernet grueso es un poco complicado no hará, por lo general, que el
servicio de la red se interrumpa. Un Ethernet de par trenzado es aún más simple.
Usa un dispositivo denominado “hub,” que trabaja como un punto de
interconexión. Se pueden insertar y quitar nodos de un núcleo sin interrumpir en
absoluto, a ninguno de los demás usuarios.

La mayoría de gente prefiere el Ethernet fino porque es barato: las tarjetas de PC
pueden encontrarse por unos 30 dollar; americanos (algunas compañías están
literalmente, regalándolas), y el cable por pocos centavos el metro. Sin embargo,
para instalaciones de gran escala, son más apropiados el Ethernet grueso o el de
par trenzado. Por ejemplo, en un principio, el Departamento de Matemáticas de la
GMU decidió utilizar el cableado Ethernet grueso, ya que el gran tráfico que posee
toda la red a lo largo de su gran recorrido, no se interrumpe cada vez que se
añade un nodo. Actualmente, son muy comunes los cables Ethernet de par
trenzado en una gran variedad de instalaciones. Los “hubs” son ahora más
accesibles, y pequeñas unidades están disponibles a precios que son atractivos,
incluso para pequeñas redes domésticas. El cable de par trenzado puede ser
significativamente más barato para grandes instalaciones. Además, el mismo
cable de par trenzado es mucho más flexible que los coaxiales usados por otros
sistemas Ethernet. Los administradores de la red en la división de matemáticas de
GMU, están planeando reemplazar su sistema por uno de par trenzado el año que
viene, ya que, además de ahorrar tiempo a la hora de agregar nuevos nodos, y
cambiar de lugar los viejos, también podrán ponerse al día con la tecnología
actual.

Uno de los inconvenientes de la tecnología Ethernet es su limitada longitud de
cable, que imposibilita cualquier uso fuera de las LANs. Sin embargo, pueden
enlazarse varios segmentos de red Ethernet entre sí utilizando repetidores,
puentes o encaminadores[2]. Los repetidores simplemente copian las señales
entre dos o más segmentos, de forma que todos los segmentos juntos actúan
como si fuese una única Ethernet. Debido a requisitos de tiempo, no puede haber
mas de cuatro repetidores entre cualquier par de nodos de la red. Los puentes y
encaminadores son más sofisticados, analizan los datos de entrada y los reenvían
sólo si el nodo receptor no está en la Ethernet local.

Ethernet funciona como un sistema de bus, donde un nodo puede mandar
paquetes (o marcos) de hasta 1500 bytes a otro nodo de la misma Ethernet. A
cada nodo se le asigna una dirección de seis bytes grabada en el firmware
(memoria fija) de su tarjeta Ethernet. Estas direcciones se especifican
generalmente como una secuencia de números hexadecimales de dos dígitos
separados por dos puntos, como por ejemplo aa:bb:cc:dd:ee:ff.

Una trama enviada por una estación es vista por todas las demás estaciones
conectadas, pero sólo el nodo destinatario la toma y la procesa. Si dos estaciones
intentan emitir al mismo tiempo, se produce lo que se llama una colisión. Una
colisión en un complejo Ethernet, es detectada electrónicamente por las tarjetas
de interfaz. Se resuelve por parte de las dos estaciones abortando el envío, y
reintentándolo al cabo de un intervalo de tiempo tomado al azar. Seguramente se
han escuchado muchas historias que afirmen que las colisiones en un Ethernet
son un problema, y que la verdadera tasa de transmisión de datos en un Ethernet,
sólo ocupa un 30 por ciento del ancho de banda disponible debido a ellas. La
verdad es que las colisiones en un sistema Ethernet son un fenómeno natural. Es
más, en un sistema muy activo, no se debería sorprender al ver que las colisiones
tienen un índice mayor al 30 por ciento. En la práctica, el administrador de una red
Ethernet sólo debería preocuparse cuando la tasa de transmisión se vea limitada a
aproximadamente un 60 por ciento del ancho de banda.[3]

El Protocolo IP (Internet Protocol)

Por supuesto, el administrador puede no querer que su red esté limitada
solamente a una Ethernet, o a un sólo enlace de datos punto-a-punto.
Seguramente la idea original consistirá en poder acceder a un servidor sin
importar el hardware del que dispone. Por ejemplo, en instalaciones grandes como
la Universidad de Groucho Marx, se encontrará muy a menudo con varias redes
distanciadas unas de otras, pero conectadas entre ellas de alguna manera. En la
GMU, el departamento de matemáticas tiene dos Ethernets: una red de máquinas
rápidas para profesores y graduados, y otra con máquinas más lentas para
estudiantes. Ambas redes están enlazadas de la red troncal FDDI del campus.

Esta conexión se gestiona con un nodo dedicado, denominado pasarela, o
gateway, que maneja los paquetes entrantes y salientes copiándolos entre las dos
Ethernets y el cable de fibra óptica. Por ejemplo, si se encuentra en el
Departamento de Matemáticas, y quiere acceder a quark situada en la LAN del
Departamento de Físicas, desde su máquina GNU/Linux, el software de red no
puede mandar paquetes a quark directamente, porque no esta en la misma
Ethernet. Por tanto, tiene que confiar en la pasarela para que actúe como
retransmisor. La pasarela (llamémosla sophus) reenvía entonces estos paquetes a
su pasarela homóloga niels del Departamento de Física, usando la red troncal, y
por fin niels los entrega a la máquina destino. El flujo de datos entre erdos y quark
se muestra en la Figura.




                          Los tres pasos del envío de un datagrama

Este esquema de envío de datos al nodo remoto se llama encaminamiento, y en
este contexto a los paquetes se les denomina datagramas. Para facilitar las cosas,
el intercambio de datagramas esta gobernado por un único protocolo que es
independiente del hardware utilizado: IP, o Internet Protocol (Protocolo de
Internet).

El principal beneficio del IP es su cualidad de convertir a redes físicamente
diferentes en una red aparentemente homogénea. A esto se le llama interconexión
de redes, y a la resultante “meta-red” se la denomina internet. Obsérvese aquí la
sutil diferencia entre una internet y la Internet. El último es el nombre oficial de una
internet global en particular.

Claro que el IP también necesita un esquema de direccionamiento independiente
del hardware. Esto se consigue asignando a cada nodo un número único de 32
bits, denominado dirección IP. Una dirección IP está definida normalmente, por 4
números en decimal, uno por cada división de 8 bits, y separados por puntos. Por
ejemplo, quark podría tener una dirección IP 0x954C0C04, que se escribiría como
149.76.12.4. Este formato de dirección, es comúnmente llamado notación decimal
de puntos, aunque también puede hacerse referencia a él como notación
cuadrangular de puntos. Sin embargo la denominación de IP, está cambiando del
nombre de IPv4, (por Internet Protocol, Version 4), a un nuevo estándar llamado
IPv6 que ofrece mucha más flexibilidad a la hora de direccionar y otras mejoras
modernas. Pasará por lo menos un año tras esta edición, antes de que IPv6
empiece a ser usado.
Se dará cuenta de que ahora tenemos tres tipos distintos de direcciones: primero,
tenemos el nombre del nodo, como por ejemplo quark, después tenemos las
direcciones IP, y por fin están las direcciones hardware, como la dirección
Ethernet de 6 bytes. De alguna forma todas ellas deben relacionarse, de modo
que cuando se escriba rlogin quark, se le pueda pasar la dirección IP de quark al
software de red; y cuando el nivel IP envíe datos a la Ethernet del Departamento
de Físicas, de algún modo tenga cómo encontrar a que dirección Ethernet
corresponde la dirección IP.


El Protocolo de Control de Transmisión, TCP

Pero la historia no se acaba con el envío de datagramas de un nodo a otro. Si se
registra en quark, necesita disponer de una conexión fiable entre su proceso rlogin
en erdos y el proceso del intérprete de órdenes en quark. Así, la información
enviada en uno u otro sentido debe dividirse por paquetes en el origen, y ser
reensamblada en un flujo de caracteres por el receptor. Esto que parece trivial,
implica varias tareas complejas.

Una cosa importante a saber sobre IP es que, por sí sólo, no es fiable. Suponga
que diez personas de su Ethernet comienzan a transferirse la última versión del
código fuente del Navegador web Netscape, usando el servidor FTP de GNU. La
cantidad de tráfico generada por esto podría ser excesiva para la pasarela, por ser
demasiado lenta, o tener poca memoria. Si en ese momento Ud. enviara un
paquete a quark, sophus podría tener agotado el espacio del búfer durante un
instante y por tanto no seria capaz de reenviarlo. IP resuelve este problema
simplemente descartando el paquete el cual se pierde irrevocablemente. Esto
traslada, por consiguiente, la responsabilidad de comprobar la integridad y
exactitud de los datos a los nodos extremos, y su retransmisión en caso de error.

De este proceso se encarga otro protocolo: el Protocolo de Control de
Transmisión, (TCP, Transmission Control Protocol), que construye un servicio
fiable por encima de IP. La propiedad esencial de TCP es que usa IP para dar al
usuario la impresión de una conexión simple entre los procesos en su equipo y la
máquina remota, de modo que no tiene que preocuparse de cómo y sobre el
recorrido de los datos a través de la ruta por la que viajan. Una conexión TCP
funciona básicamente como una tubería de doble sentido, en la que ambos
procesos pueden escribir y leer; Se puede usar la analogía de una conversación
telefónica para comprender el funcionamiento de este protocolo.

TCP identifica los extremos de una conexión específica por las direcciones IP de
los dos nodos implicados, y el número de los puertos de cada nodo. Los puertos
se pueden ver como puntos de enganche para conexiones de red. Para seguir
utilizando el ejemplo del teléfono un poco más, si pensamos en una analogía entre
las ciudades como nodos, se puede comparar las direcciones IP con los prefijos
de área (los números representarían ciudades), y los números de puerto con los
códigos locales (números que representan teléfonos de personas concretas). Un
nodo en particular puede soportar diferentes servicios, cada uno diferenciado por
su propio número de puerto.

En el ejemplo con rlogin, la aplicación cliente (rlogin) abre un puerto en erdos y se
conecta al puerto 513 de quark, en el cual se sabe que el servidor rlogind está
escuchando. Esto establece una conexión TCP. Usando esta conexión, rlogind
desempeña el procedimiento de autorización para luego, generar un servicio de
ontérprete de órdenes. La entrada y salida estándar de la shell se redirigen a la
conexión TCP, de tal forma que cualquier cosa que se teclee a rlogin en nuestra
máquina será pasada al flujo TCP para ser luego transmitida a la entrada estándar
del intérprete de órdenes.

El Protocolo de Datagramas de Usuario

Sin embargo, TCP no es el único protocolo de usuario en redes TCP/IP. Aunque
adecuado para aplicaciones como rlogin, la sobrecarga que impone es prohibitiva
para aplicaciones como NFS, la cual utiliza un protocolo derivado de TCP llamado
UDP, o User Datagram Protocol (Protocolo de Datagramas de Usuario). De igual
modo que TCP, UDP permite que una aplicación contacte con un servicio en un
puerto concreto de la máquina remota, pero no establece una conexión para ello.
En cambio, se puede usar para enviar paquetes sueltos al servicio destino - de ahí
su nombre.

Supóngase que se ha solicitado una pequeña cantidad de información de un
servidor de base de datos. Esto tomará, al menos tres datagramas para establecer
la conexión TCP, otros tres para enviar y confirmar la cantidad de datos y otros
tres para cerrar la conexión. UDP nos facilita el hacer la mayor parte de todo esto,
pero solamente usando dos datagramas. Este protocolo es caracterizado por tener
un método de conexión y desconexión mucho más rápido, y no requiere que el
usuario establezca y cierre una conexión. El mecanismo es simple: UDP coloca
los datos en un datagrama y lo envía al servidor. Éste realiza un proyecto del
reenvío, poniendo los datos dentro de un datagrama direccionado a nuestra
máquina, y luego lo transmite. Mientras que este procedimiento es más rápido y
más eficiente que el de TCP para transacciones simples, UDP no fue construido
para tratar con posibles pérdidas de datos. Lidiar con estas dificultades dependerá
de la aplicación en cuestión.

Más sobre Puertos

Los puertos se pueden ver como puntos de anclaje para conexiones de red. Si una
aplicación quiere ofrecer un cierto servicio, se engancha ella misma a un puerto y
espera a los clientes (a esto también se le llama escuchar en el puerto). Un cliente
que quiera usar este servicio se asigna un puerto libre en su nodo local, y se
conecta al puerto del servidor en el nodo remoto. El puerto del servidor podrá ser
abierto por diferentes máquinas, pero nunca podrán usarlo más de una al mismo
tiempo.
Una propiedad importante de los puertos es que, una vez que se ha establecido
una conexión entre el cliente y el servidor, otra copia del servidor puede
engancharse a su mismo puerto y aguardar a otros clientes. Esto permite, por
ejemplo, varios accesos remotos simultáneos al mismo nodo, usando todos ellos
el mismo puerto 513. TCP es capaz de distinguir unas conexiones de otras, ya que
todas ellas provienen de diferentes puertos o nodos. Por ejemplo, si accede dos
veces a quark desde erdos, el primer cliente rlogin usará el puerto local 1023, y el
segundo el 1022. Sin embargo, ambos se conectarán al mismo puerto 513 de
quark. Las dos conexiones se distinguirán según el puerto que cada una use en
erdos.

Este ejemplo muestra el uso de puertos como puntos de encuentro, donde un
cliente se contacta con un puerto específico para obtener un servicio específico.
Para que un cliente pueda conectarse al número de puerto correcto, se ha tenido
que llegar a un acuerdo entre los administradores de los dos sistemas para definir
la asignación de estos números. Para servicios ampliamente usados, como rlogin,
estos números tienen que administrarse de modo universal. Esto lo realiza el IETF
(o Internet Engineering Task Force), que regularmente publica un RFC (Request
For Comment) denominado Assigned Numbers (Números Asignados, RFC-1700).
Describe, entre otras cosas, los números de puerto asignados a servicios
reconocidos. GNU/Linux utiliza un archivo para hacer corresponder los nombres
con números, llamado /etc/services.

Merece la pena indicar que aunque las conexiones TCP y UDP se basan en
puertos, estos números no entran en conflicto. Esto significa que el puerto TCP
513, por ejemplo, es diferente del puerto UDP 513. De hecho, estos puertos sirven
como puntos de acceso para dos servicios diferentes, como rlogin (TCP) y rwho
(UDP).


1.4 Internet:

Internet es una red de redes a escala mundial de millones de computadoras
interconectadas con el conjunto de protocolos TCP/IP. También se usa este
nombre como sustantivo común y por tanto en minúsculas para designar a
cualquier red de redes que use las mismas tecnologías que la Internet,
independientemente de su extensión o de que sea pública o privada.

Al contrario de lo que se piensa comúnmente, "Internet" no es sinónimo de World
Wide Web. Ésta es parte de aquella, siendo la World Wide Web uno de los
muchos servicios ofertados en la red Internet. La Web es un sistema de
información mucho más reciente (1995) que emplea la red Internet como medio de
transmisión.

Algunos de los servicios disponibles en Internet aparte de la Web son el acceso
remoto a otras máquinas (telnet y SSH | ssh), transferencia de archivos (FTP),
correo electrónico (SMTP | e-mail), boletines electrónicos (NNTP | news o grupos
de noticias), conversaciones en línea (IRC|chat), mensajería instantánea (ICQ,
YIM, Jabber), etcétera.

Historia de Internet

A finales de 1972 se realizó la primera demostración pública de ARPANET, una
nueva red de comunicaciones financiada por la DARPA que funcionaba de forma
distribuída sobre la red telefónica conmutada. El éxito de esta nueva arquitectura
sirvió para que, en 1973, la DARPA iniciara un programa de investigación sobre
posibles técnicas para interconectar redes (orientadas al tráfico de paquetes) de
distintas clases. Para este fin, desarrollaron nuevos Protocolo|protocolos de
comunicaciones que permitiesen este intercambio de información de forma
"transparente" para los ordenadores conectados. De la filosofía del proyecto surgió
el nombre de "Internet", que se aplicó al sistema de redes interconectadas
mediante los protocolos TCP IP|TCP e IP.

El 1 de enero de 1983 ARPANET cambió el protocolo NCP por TCP/IP. Ese
mismo año, se creó el IAB con el fin de estandarizar el protocolo TCP/IP y de
proporcionar recursos de investigación a Internet. Por otra parte, se centró la
función de asignación de identificadores en la IANA que, más tarde, delegó parte
de sus funciones en el IR que, a su vez, proporciona servicios a los DNS.

En 1986 la NSF comenzó el desarrollo de NSFNET que se convirtió en la principal
red troncal de Internet, complementada después con las redes NSINET y ESNET,
todas ellas en EE.UU. Paralelamente, otras redes troncales en Europa, tanto
públicas como comerciales, junto con las americanas formaban el esqueleto
básico ("backbone") de Internet.

A partir de 1989, con la integración de los protocolos OSI en la arquitectura de
Internet, se inició la tendencia actual de permitir no sólo la interconexión de redes
de estructuras dispares, sino también la de facilitar el uso de distintos protocolos
de comunicaciones.

El protocolo de transferencia de archivos (FTP o File Transfer Protocol) es el
protocolo estándar en la red para efectuar transferencias de archivos de un
servidor a un ordenador o entre ordenadores.

En 1989 también, en el CERN de Ginebra, un grupo de Físicos encabezado por
Tim Berners-Lee, crearon el lenguaje HTML, basado en el SGML. En 1990 el
mismo equipo construyó el primer cliente Web, llamado WorldWideWeb (WWW), y
el primer servidor web.

Actualmente Internet incluye aproximadamente 5000 redes en todo el mundo y
más de 100 protocolos distintos basados en TCP/IP, que se configura como el
protocolo de la red.
En algunos países el acceso a Internet está restringido únicamente a entidades
gubernamentales y empresas extranjeras o fuertemente controlado por el estado.

Internet2 es un consorcio de universidades estadounidenses y empresas
tecnológicas con el objetivo de crear nuevos protocolos y aplicaciones que
mejoren el rendimiento y la calidad que se consigue en la actual Internet. Los
miembros de Internet2 han creado la Red Abilene con estas tecnologías. Esta red
a menudo se denomina de manera informal, Internet2.




                             Uso de Internet en SudAmerica



1.5 Informática o Computo Forense:

 Computo Forense es sobre la evidencia de computadoras la cual es suficiente
confiable para ser presentada en un juzgado. Es un conjunto de técnicas
especializadas que tiene como finalidad la reconstrucción de hechos pasados
basados en los datos recolectados, para lo cual se procesa la información que
pueda ser usada como evidencia en un equipo de cómputo

 Computo Forense, es refiere como Análisis de Computo forense, Hallazgo
electrónico, Hallazgo de evidencia electrónica, hallazgo digital, Recuperación de
Datos, Hallazgo de Datos, Análisis de Computadoras, y examen de computadoras.



1.6 El Investigador Forense:
 El Perito Forense debe ser un experto en su campo, y ante una juzgado puede
ser consultado sobre sus logros personales; Educación recibida y grados
realizados, entrenamiento profesional recibido, Certificaciones, detalle de su
experiencia, casos en los que haya testificado como experto.



1.7 Seguridad Física y Lógica:

Seguridad Física:

 La seguridad física de los sistemas informáticos consiste en la aplicación de
barreras físicas y procedimientos de control como medidas de prevención y
contramedidas contra las amenazas a los recursos y la información confidencial.
Más claramente, por “seguridad física” podemos entender todos aquellas
mecanismos generalmente de prevención y detección destinados a proteger
físicamente cualquier recurso del sistema; estos recursos son desde un simple
teclado hasta una cinta de backup con toda la información que hay en el sistema,
pasando por la propia CPU de la máquina.

Protección del Hardware:
Acceso Físico
Desastres Naturales
Desastres del entorno

Protección de Datos:
Interceptación
Copias de Seguridad (backups)
Otros elementos


Seguridad Lógica:

La Seguridad Lógica consiste en la aplicación de barreras y procedimientos que
resguardan el acceso a los datos y sólo permiten acceder a ellos a las personas
autorizadas para hacerlo.

Existe un viejo dicho en la seguridad informática que dicta: "lo que no está
permitido debe estar prohibido" y esto es lo que debe hacer ésta seguridad lógica.

Los objetivos para conseguirlo son:

 Restringir el acceso (de personas de la organización y de las que no lo son) a los
programas y archivos.
 Asegurar que los operadores puedan trabajar pero que no puedan modificar los
programas ni los archivos que no correspondan (sin una supervisión minuciosa).

 Asegurar que se utilicen los datos, archivos y programas correctos en/y/por el
procedimiento elegido.

 Asegurar que la información transmitida sea la misma que reciba el destinatario al
cual se ha enviado y que no le llegue a otro.

 Asegurar que existan sistemas y pasos de emergencia alternativos de transmisión
entre diferentes puntos.



1.8 Hackers, Crackers, definiciones:

-   Hacker: (del inglés hack, recortar), también conocidos como white hats
    (sombreros blancos) o black hats (sombreros negros), según una clasificación
    de sus acciones (según sean solo destructivas o no, etc.). Su entendimiento
    es más sofisticado y profundo respecto a los Sistemas informáticos, ya sea de
    tipo hardware o software. El término "Hacker" trasciende a los expertos
    relacionados con la informática, para también referirse a cualquier profesional
    que está en la cúspide de la excelencia en su profesión, ya que en la
    descripción más pura, un "Hacker" es aquella persona que le apasiona el
    conocimiento, descubrir o aprender nuevas cosas y entender el
    funcionamiento de éstas. En definitiva, la versión actual del filósofo.

-   Cracker: El término deriva de la expresión "criminal hacker", y fue creado
    alrededor de 1985 por contraposición al termino hacker, en defensa de estos
    últimos por el uso incorrecto del término. Se considera que la actividad de esta
    clase de cracker es dañina e ilegal. También se denomina cracker a quien
    diseña o programa cracks informáticos, que sirven para modificar el
    comportamiento o ampliar la funcionalidad del software o hardware original al
    que se aplican, sin que en absoluto pretenda ser dañino para el usuario del
    mismo.

-   Phreaker: Un phreaker es una persona que interfiere en los sistemas
    telefónicos, de forma ilegal, mediante el uso de tecnología para poder obtener
    algún tipo de beneficio. El término proviene de las palabras
    phone+phreak+hacker (telefono+loco+hacker) y surgió en los Estados Unidos
    en los años 60. Durante muchos años los phreakers usaron las llamadas
    boxes, artefactos que provocaban diversas anomalías en la línea telefónica,
    estos dispositivos se conocen por un color identificativo -blue boxes, black
    boxes, beige boxes. En la actualidad, los phreakers tienen también como
    blanco a la telefonía móvil y a las tecnologías inalámbricas.
-   Malware: La palabra malware proviene de una agrupación de las palabras
    malicious software. Este programa o archivo, que es dañino para el ordenador,
    está diseñado para insertar virus, gusanos, troyanos o spyware intentando
    conseguir algún objetivo, como podría ser el de recoger información sobre el
    usuario o sobre el ordenador en sí.

    Virus: Los virus informáticos utilizan una variedad de portadores. Los blancos
    comunes son los archivos ejecutables que son parte de las aplicaciones, los
    documentos que contienen macros, y los sectores de arranque de los discos
    de 3,1/2 pulgadas.

    Gusanos (worms): Los gusanos informáticos son similares a los virus, pero los
    gusanos no dependen de archivos portadores para poder contaminar otros
    sistemas. Estos pueden modificar el sistema operativo con el fin de auto
    ejecutarse como parte del proceso de inicialización del sistema. Para
    contaminar otros sistemas, los gusanos explotan vulnerabilidades del objetivo
    o utilizan algún tipo de ingeniería social para engañar a los usuarios y poderse
    ejecutar.

    Caballos de Troya: Un programa caballo de troya es una pieza de software
    dañino disfrazado de software legítimo. Los caballos de troya no son capaces
    de replicarse por si mismos y pueden ser adjuntados con cualquier tipo de
    software por un programador o puede contaminar a los equipos por medio del
    engaño. Una puerta trasera es un software que permite el acceso al sistema
    de la computadora ignorando los procedimientos normales de autenticación.

    SpyWare: El spyware es todo aquel software que recolecta y envía
    información de los usuarios. Normalmente trabajan y contaminan sistemas
    como lo hacen los caballos de troya.


1.9 Conceptos de criptografía:

La palabra criptografía deriva del griego kryptos (ocultar) y grafos (escribir), lo cual
puede traducirse como escritura oculta, la criptografía es el arte o ciencia de cifrar
y descifrar información utilizando técnicas que hagan posible el intercambio de
mensajes de manera que sólo puedan ser leídos por las personas a quienes van
dirigidos.

La criptografía es la ciencia que estudia la transformación de un determinado
mensaje en un código de forma tal que a partir de dicho código solo algunas
personas sean capaces de recuperar el mensaje original. En general se utiliza
para ello una palabra clave o 'password' con la cual se cifra el mensaje, el código
resultante solamente puede ser descifrado por aquellos que conozcan el
password.
La criptografía es una actividad muy antigua: Ya en la época de los griegos se
supone que existían métodos para codificar los mensajes que se enviaban a las
tropas en regiones alejadas, sin embargo, el primer criptosistema del cual se
tienen pruebas de su existencia fue utilizado en la época del imperio romano y se
llamaba 'CAESAR' el sistema era utilizado por Julio Cesar para enviar mensajes
cifrados a sus allegados mas cercanos, hablaremos del criptosistema 'CAESAR'
muy pronto.

Junto a la criptografía coexiste necesariamente otra disciplina: el criptoanálisis,
mientras que los criptógrafos se encargan de desarrollar criptosistemas cada vez
mas seguros y difíciles de descifrar los criptoanalistas tratan de 'romper' un
criptosistema obteniendo el mensaje a partir del código cifrado. De estos dos
bandos con objetivos diametralmente opuestos siempre se afirma que alguno de
los bandos es el 'lado bueno' y el otro inevitablemente 'los chicos malos' estos
roles se pueden intercambiar indefinidamente dependiendo de la situación y el
contexto en el cual estudiemos el tema. En este texto desarrollaremos la teoría
operativa y técnicas mas habituales tanto de los criptógrafos como de los
criptoanalistas.

Lamentablemente la criptografía y su ciencia paralela el criptoanálisis son
disciplinas que experimentan marcados avances en épocas de guerra, allí es
necesaria la comunicación de estrategias, planes tácticos e informes super
secretos entre las distintas fuerzas de cada bando de forma tal que si el código es
interceptado por un eventual enemigo este no pueda hacerse de la información
que se envío. La criptografía experimenta su mayor avance durante el transcurso
de la segunda guerra mundial en donde adquiere un protagonismo singular, allí, el
criptosistema de la maquina alemana 'Enigma' es roto por los criptoanalistas de
las fuerzas aliadas siendo éste un factor que contribuyo en gran medida a la
victoria final de los aliados. En este caso los criptógrafos alemanes eran los
'malos' y los criptoanalistas aliados eran 'los buenos', pero si nosotros queremos
enviar un mensaje secreto a alguien y el mismo resulta publicado en un diario
vamos a pensar que los criptoanalistas son personas sumamente viles. Como
vemos todo depende de la situación.

Afortunadamente la criptografía experimenta su segundo gran auge con la
masificación de las comunicaciones digitales y el advenimiento de la era de las
computadoras. Hoy en día suele ser necesario enviar y recibir mensajes a través
de Internet de forma tal que el mensaje solo pueda ser entendido por alguna
persona en particular, por ejemplo si enviamos nuestro numero de tarjeta de
crédito queremos que lo obtenga solamente el vendedor y no algún criptoanalista
pakistaní que pasaba por allí. En los últimos años la criptografía se ha convertido
en una ciencia de enorme importancia y a la cual se le destina cada vez un
tratamiento más serio y más científico de forma tal de lograr comunicaciones
seguras. Como veremos esto no es una tarea para nada sencilla.

a Conceptos de Seguridad en computadoras digitales:
Uno de los puntos que siempre estuvo en discusión sobre el almacenamiento de
información en computadoras digitales, fue la seguridad de los mismos frente a
posibles miradas indiscretas, desde que la primera computadora hizo su aparición
en alguna organización militar o gubernamental la necesidad de resguardar la
información allí almacenada se hizo evidente.

Para proteger la información almacenada se suele recurrir a las denominadas
técnicas de encriptación, la encriptación consiste básicamente en convertir un
mensaje en otro de forma tal que el mensaje original solo pueda ser recuperado
por un determinado grupo de personas que saben como "desencriptar" el mensaje
codificado. El esquema básico de encriptación implica la utilización de un
password para encriptar de forma tal que solo puedan desencriptar el mensaje
aquellos que conocen el password utilizado, esto trae varios problemas como
veremos mas adelante.

Con el advenimiento de Internet y la masificación absoluta de las comunicaciones
la privacidad de los datos se ha vuelto un tema muy en boga en los últimos
tiempos, originando todo tipo de problemas que involucran desde el mas simple e
inocente usuario de internet hasta las mas altas organizaciones gubernamentales
del planeta.

En el mundo de las computadoras la criptografía puede ser utilizada para varias
cosas, algunas áreas importantes en donde se utiliza la criptografía son:
. La encriptación de información 'critica' que debe ser almacenada en
computadoras, actos gubernamentales, informaciones secretas, etc.
. La encriptación de mensajes enviados a través de redes, redes locales, redes
publicas e internet.
. La certificación de identidad de quienes envían mensajes importantes a través de
internet.
. Protección de información 'delicada' que deba enviarse a través de internet
como, por ejemplo, números de tarjetas de crédito.
. Encriptación de comunicaciones telefónicas, radiales o televisivas que pueden
ser interceptadas.

b.Encriptación de Datos:

Las técnicas de encriptación suelen dividir a los algoritmos en dos grupos: los
algoritmos de clave privada y los algoritmo de clave publica. A los algoritmos de
clave privada se los llama también algoritmos de encriptación simétricos mientras
que los de clave pública suelen denominarse algoritmos antisimétricos.

c.Algoritmos de Clave Simétrica:

Los algoritmos de clave simétrica, también llamados de clave secreta o privada,
son los algoritmos clásicos de encriptación en los cuales un mensaje es encriptado
utilizando para ello una cierta clave sin la cual no puede recuperarse el mensaje
original.

El esquema básico de los algoritmos de clave simétrica es:

MENSAJE + CLAVE = CÓDIGO (encriptación)
CÓDIGO + CLAVE = MENSAJE (desencriptación)


Esto se lleva a cabo sustituyendo porciones del mensaje original por porciones de
mensaje encriptado usando la clave. La sustitución puede ser de varias formas:

Monoalfabética:
Cuando se encripta, cada caracter encriptado corresponde a un caracter del
mensaje original y viceversa.
Homofónica:
Cuando un caracter de texto original se encripta en varios caracteres del texto
encriptado.

Poligráfica:
Cuando n caracteres del mensaje original generan n caracteres del mensaje
encriptado.

Polialfabética:
Cuando n caracteres del texto original se encriptan en m caracteres del texto
encriptado (m≠n) .

Cabe destacar que la sustitución poligráfica y la sustitución homofónica son casos
particulares de la sustitución polialfabética.

Criptosistemas

Definiremos a un criptosistema como un conjunto de tres elementos:

.Un espacio de mensajes: PT que es la colección de todos los posibles mensajes
pt que pretendemos enviar.
.Un espacio de claves K. Cada clave k determina un método de encriptación Ek y
un método de desencriptado Dk. De forma tal que Ek(pt) = código y Dk(código)=pt.
.Un espacio de códigos: CT que es la colección de todos los posibles códigos ct.

Sistemas Monoalfabéticos y polialfabéticos:

Un algoritmo de encriptación por clave privada es monoalfabético si cada
ocurrencia de un mismo caracter en el mensaje original es reemplazada siempre
por un mismo caracter en el código cifrado.
Un algoritmo de encriptación por clave privada es polialfabético si cada ocurrencia
de un mismo caracter en el mensaje original es reemplazada por distintos
caracteres en el código cifrado.

Desarrollaremos a continuación algunos de los criptosistemas de clave privada
mas conocidos, desde los más básicos hasta los más complejos.

Criptosistema Caesar
Criptosistema Hill
Criptosistema Afines
Criptosistema Playfair
Criptosistema DES

Deficiencia de los Algoritmos de clave privada:

Los algoritmos de clave privada pueden construirse tan eficientes como se desee
utilizando passwords mas y mas largos, sin embargo por mas largo que sea el
password estos algoritmos presentan una vulnerabilidad evidente: el password.

En un esquema de encriptación por clave privada todo aquel que conozca el
password es capaz de desencriptar un mensaje, de aquí que a veces, es mas
importante estudiar como proteger el password que como trabaja el algoritmo
elegido. Además, muchas veces es necesario transmitir, o enviar el password a
alguna persona por lo que será necesario a su vez encriptar el password
ingresando en un loop infinito.

Muchas veces el password es tan vulnerable que los criptoanalistas no se
molestan en descifrar el código interceptado sino que directamente intentan
averiguar el password. Uno de los ejemplos mas habituales consiste en averiguar
passwords que permiten el acceso a determinados sistemas: cuentas bancarias,
computadoras, computadoras donde se guardan otros passwords, etc. A
continuación mencionamos algunas de las técnicas mas utilizadas para 'robo de
passwords'.

.Shoulder Surfing:

Esta técnica es la más básica y consiste en merodear a aquellas personas que
conocen el password que se quiere averiguar intentando ver si se consigue
visualizar el momento en que el password es tipeado en un teclado o escrito en
algún papel, variantes más modernas de esta técnica incluyen programas
residentes que monitorean las teclas que se oprimen en el teclado, cámaras que
registran lo que se tipea desde un punto elevado, etc. La forma mas elemental es
como su nombre lo indica observar por encima del hombro de la persona que tipea
el password, parece tonto pero se utiliza muchísimo.

.Caballos de Troya:
Los caballos de Troya son programas que se diseñan con el fin específico de
robar passwords. El programa es introducido en una computadora y lo que hace
es simplemente cada vez que es ejecutado pedirle el password al usuario y si este
lo tipea (grave error) guardarlo en un archivo. Luego lo único que hay que hacer es
cada tanto consultar el archivo y ver que es lo que nuestro caballo de Troya ha
'pescado'. Una de las reglas de seguridad mas importantes que establecen los
administradores de sistemas es adiestrar a los usuarios para que JAMAS ingresen
su password una vez que se han logoneado en el sistema, además suele ser
recomendable resetear la terminal antes de logonearse al sistema por si el usuario
anterior dejo andando un caballo de Troya que imita al programa de login.

.Ingeniería Social:

Esta disciplina puede parecer ridícula pero es la más exitosa en cuanto a robo de
passwords. La Ingeniería Social consiste en conseguir que una persona,
simplemente, le diga su password a otra. Las técnicas son de lo mas variadas:
llamados telefónicos pidiendo el password pues se cayó un disco y hay que
backupear la información de cada usuario, pedidos de password para
'verificaciones rutinarias', encuestas a ver quien tiene el password mas seguro
(!!!!), etc, etc...

Aunque parezca mentira hay personas realmente especializadas en este tipo de
ataques.

La importancia del mensaje:

Contrariamente a lo que se cree habitualmente, la fuerza de un criptosistema de
clave privada no reside únicamente en el algoritmo utilizado, o en la longitud de la
clave sino que depende, también, del mensaje a enviar. Hay mensajes que por
sus características propias serán mas fáciles de descifrar que otros, dado un
mismo criptosistema, por lo tanto a la hora de enviar un texto ultra-secreto
debemos tener en cuenta varios factores relacionados con el mensaje en sí.

Recomendaciones a la hora de escribir un texto altamente critico que deba ser
encriptado por clave privada:

.No utilizar espacios en blanco, escribir todo el texto de corrido. Cualquier caracter
de alta probabilidad de ocurrencia, como por ejemplo los espacios en blanco, son
un punto débil en el mensaje aun cuando se utilice un esquema polialfabético.

.Si es muy necesario separar las palabras del mensaje a enviar, utilizar cualquier
caracter elegido arbitrariamente en reemplazo del espacio en blanco.

.Escribir con mucho cuidado el texto intentando que la distribución de cada
caracter utilizado en el texto sea lo mas pareja posible, esto es de gran
importancia, evitar el uso de uno o mas caracteres en forma predominante, usar
palabras sinónimos, o incluir faltas de ortografía y sintaxis si es necesario. Escribir
por ejemplo 'salujdhos pedfdro' que puede ser entendido fácilmente cuando se
descifra el código pero podría llegar a complicar sensiblemente el criptoanálisis.

.Empezar algunas palabras con caracteres que no tengan sentido alguno como
por ejemplo la llave que cierra '}' o un punto y coma ';', esto puede desalentar
varios intentos criptoanalíticos correctamente orientados.

.Escribir algunas palabras al revés o con todas las vocales al final y las
consonantes al principio, una especie de doble codificación.

Por ejemplo: 'sldsauo qrdueio pdreo' quiere decir 'saludos querido pedro'.

Los criptoanalistas que consideren como factor cierto la alternancia de vocales y
consonantes en un texto tendrán problemas para descifrar nuestro mensaje. En
algunas palabras se pueden poner todas las vocales al final y en otras todas al
principio.

.Jamas utilizar dos veces la misma palabra en un texto, aun en sistemas
polialfabéticos esto constituye una debilidad.

-Escribir todos los mensajes de la forma mas breve que sea posible, evitar el uso
de artículos salvo que sean estrictamente necesarios para comprender el texto.
Las chances de éxito de un buen criptoanálisis aumentan vertiginosamente a
medida que se consigue mas información sobre el mensaje a descifrar.


d. Sistemas de clave pública:

Los sistemas de encriptación de datos por clave publica han revolucionado el
mundo de la criptografía y se han impuesto ampliamente en el mercado de las
comunicaciones, la idea aunque sencilla recién surgió en la década del '70, los
expertos en criptografía no logran ponerse de acuerdo en cual fue el motivo que
demorara tanto el surgimiento de este tipo de sistema de encriptación.

La idea de los sistemas de clave publica es sencilla: cada usuario genera 2 (dos)
claves: una publica y una privada, el usuario debe conservar su clave privada a
salvo mientras que la clave publica es distribuida en forma masiva.

El juego de claves funciona de la siguiente forma: los mensajes que son
encriptados con la clave publica de un usuario solo pueden ser desencriptados
con la clave privada del mismo.

El algoritmo de encriptación es publico, de forma tal que cualquiera pueda
encriptar un mensaje, el algoritmo de desencriptación debe de forma tal que sin la
clave privada sea muy difícil desencriptar el código mientras que con la clave
privada esto es una tarea sencilla. Todos los algoritmos de encriptación por clave
publica se basan en algún problema en general de tipo matemático de cuyo
tiempo de resolución no pueda establecerse una cota inferior.

RSA:

El algoritmo de clave publica más probado y utilizado en todo el mundo es el
algoritmo RSA, denominado así debido a sus autores: Rivest, Shamir y Adleman.

Está basado en una idea asombrosamente sencilla de la teoría de números y
hasta la fecha ha resistido todo tipo de ataques criptoanalíticos.

La idea es simple: dados dos números primos p y q muy grandes es sencillo a
partir de p y q hallar su producto (p*q) pero es un problema muy complejo a partir
del producto hallar los números p y q en cuestión. Si bien hasta el momento no se
ha podido demostrar que la factorización prima de un numero es un problema NP-
complejo, todos los intentos realizados para factorizar un número en forma veloz
han fracasado.

Criptoanálisis:

Las técnicas criptoanalíticas más utilizadas contra el RSA, aunque sin éxito,
consisten en intentar factorizar el numero "n" que se distribuye en la clave publica
averiguando de esta forma los números p y q. Debido a que no existen algoritmos
eficientes para factorizar un número, el problema de descomponer un numero muy
grande insume un tiempo tan elevado que los ataques mas sofisticados contra el
RSA han fallado (o casi...)

El algoritmo RSA sin embargo presenta una vulnerabilidad: hay una leyenda que
indicaría que el algoritmo es vulnerable. Y la clave de todo se la ha llevado a la
tumba (una vez más) el misterioso Fermat.

PGP (Prett Good Privacy):

En esta sección analizamos el programa más utilizado para encriptar y
desencriptar datos mediante algoritmos de clave publica. El PGP se utiliza en
internet y en casi todas las redes de mensajería cada vez que quiere transmitirse
información privada.

PGP es un producto de distribución libre, es distribuido con sus fuentes y su
distribución le ha causado a su autor Philip Zimmerman más de un problema como
veremos más adelante.

PGP trabaja con el algoritmo RSA utilizando claves de 256,512 o 1024 bytes
según el nivel de seguridad que se necesite, las claves de 1024 bytes superan
ampliamente los mas estrictos requisitos militares sobre seguridad criptográfica.
PGP genera las claves públicas y privadas del usuario utilizando un algoritmo muy
avanzado de pseudoaleatorización que mide los tiempos transcurridos entre lo que
se tipea en un teclado. (PGP solicita al usuario que tipee durante un cierto tiempo
en la pantalla) o los movimientos del mouse (se solicita al usuario que lo mueva
aleatoriamente durante cierto tiempo).
La clave publica queda grabada en el disco y lista para ser distribuida, la clave
privada se almacena también en el disco, PGP en sus manuales destaca que el
acceso a la computadora donde se almacena la clave privada debe restringirse en
forma drástica pues el conseguir la clave privada anula todo el sistema, el autor
recomienda el uso de dispositivos que distorsionen las señales de radio en el
ambiente donde reside la computadora pues existen dispositivos ultra-avanzados
de las agencias gubernamentales que permiten leer la información de un disco a
distancia mediante ondas de radio (!!).

Las claves publicas que nos envían otros usuarios son almacenadas en un
conjunto de claves publicas (Public-key-ring) sobre el cual se pueden realizar
altas, bajas y modificaciones.

Cuando un usuario le envía a otro su clave pública, por ejemplo a través de
internet, el usuario que recibe la clave suele querer chequear que la clave publica
recibida sea la del usuario que el quiere y no cualquier otra. Para ello PGP permite
extraer de cada clave publica un numero conocido como 'FINGERPRINT' el
Fingerprint puede ser chequeado telefónicamente o personalmente, y si coincide
puede certificarse que la clave publica es de quien dice ser. (Cualquier cambio en
la clave publica modifica el Fingerprint). El fingerprint se calcula hasheando la
clave publica.

PGP dispone de varias opciones interesantes:

Envío del mensaje en forma clásica:
Este esquema sigue el mecanismo clásico de la encriptación por clave publica, el
mensaje es encriptado usando la clave publica de un determinado usuario de
forma tal que solo pueda ser desencriptado por la clave privada del mismo.

Certificación de mensajes:
Esta es una utilidad muy recomendable, y sirve para que un usuario firme un
mensaje de forma tal que se pueda autenticar su autoría. Lo que hace el PGP es
primero extraer un 'concentrado' del mensaje sometiéndolo a una función de
hashing, luego el concentrado es encriptado con la clave privada del usuario y
agregado al final del mensaje. Cuando el mensaje es recibido por un usuario la
firma digital es desencriptada usando la clave pública del usuario y luego el
mensaje es sometido a la función de hashing, si el concentrado coincide con el
concentrado desencriptado del mensaje entonces el mensaje fue escrito por quien
dice ser, de lo contrario o bien fue escrito por otra persona o bien fue modificado el
texto del mensaje.
Los mensajes certificados a su vez pueden ser encriptados para que solo puedan
ser leídos por una cierta persona.

Notar que la certificación utiliza el juego de claves en forma inversa al uso normal
de las mismas.

Mensaje solo para tus ojos:
Esta opción del PGP permite encriptar un mensaje para una cierta persona de
forma tal que cuando esta lo desencripte usando su clave privada el texto del
mensaje solo se pueda ver en pantalla y no pueda ser grabado en un archivo, esta
opción otorga una seguridad extra a quien envía el mensaje y tiene miedo que el
usuario que lo recibe lo trate en forma descuidada dejándolo por allí.

Borrado especial del archivo a encriptar:
Cuando se quiere encriptar un mensaje muy critico que esta escrito en un archivo,
PGP dispone de la opción de eliminar el archivo original del disco una vez
encriptado. PGP no utiliza un borrado común del archivo sino que sobreescribe el
área del disco con sucesivas pasadas de unos, ceros y unos y ceros alternados en
forma random, esto lo hace varias veces. El algoritmo de borrado del PGP
asegura que la información no podrá ser recuperada del disco. (Si el algoritmo no
es lo suficientemente seguro el análisis de trazas magnéticas del disco puede
permitir recuperar la información).

PGP es un programa sumamente seguro y es utilizado en todo el mundo para el
envío de e-mail en forma segura y la certificación de mensajes de importancia.


e. Criptografía Cuántica:

La criptografía cuántica es una nueva área dentro de la criptografía que hace uso
de los principios de la física cuántica para transmitir información de forma tal que
solo pueda ser accedida por el destinatario previsto.

Para poder llegar a explicar los detalles de la criptografía cuántica se necesitan
establecer algunos conceptos básicos de criptografía y física cuántica que serán
de ayuda para la comprensión del tema. Pero antes que nada se expone el
problema que la criptografía cuántica intentará solucionar.

En general observar un sistema cuántico perturba al mismo, e impide que el
observador conozca su estado exacto antes de la observación. Por lo tanto, si un
sistema cuántico es utilizado para transferir información, alguien que quiera espiar
la comunicación, o incluso el receptor previsto, podría verse impedido de obtener
toda la información enviada por el emisor. Este rasgo negativo de la mecánica
cuántica, conocido como principio de incertidumbre de Heisenberg, recientemente
ha encontrado un uso positivo en el área de las comunicaciones privadas y
seguras.
2. Como se producen los ataques y delitos informáticos.

2.1 Seguridad en los servidores Internet:

 Mientras que el computo forense en un ocupación reciente, tiene relación con
muchos precursores en tecnologías de información. Estas disciplinas padre no
solo incluyen la teoría y la practica de hardware, software y programación, sino
también notablemente Seguridad de computo, que ha madurado junto con la
tecnología de información para ayudar a proteger, no solo contra ataques, sino
también contra errores y accidentes.

 Hay dos importante observaciones que vienen a la mente sobre ésta relación
entre el computo forense y la seguridad de computadoras. Primero, las redes
remotas y empresas en línea, después del año 1991, ha hecho cada vez mas
difícil establecer el alcance de una política de seguridad. Antes era posible
maquetar un limite alrededor de las operaciones, para distinguir entre “los de
dentro”, quienes estaban permitidos de usar el sistema y los “de afuera”, quienes
no estaban permitidos, y enfocarse en la construcción de limites seguros. Esta
distinción ha llegado a no tener sentido, tanto como las empresas y los órganos
del gobierno arremeten para establecer su presencia en internet. Ahora el enfoque
se ha desplazado a rol de las aplicaciones, el lugar donde los roles son permitidos
están descritos en términos de derechos de acceso en jerarquías. Segundo
asesores de riesgo siempre tienen que advertir la actuación de estos “intrusos”
evitando el inadecuado monitoreo de roles, quienes probablemente comenten la
mayor parte de crímenes de computadora, se estima el 80%.

 El objetivo de la seguridad de computadoras en sus sentido mas amplio es
preservar un sistema; como es su significado; especificamentem como las politicas
de seguridad dictan. Computo forense, o al menos forense de intrusion, explica
como las politicas son violadas, un proceso puede revelar los agujeros fatales en
las politicas mismas. Existen algunas razones para la discrepancia seguridad /
forense:



2.2 Area de Actividades:

Uno de los primeros pasos es determinar el área de las actividades. Se desea
identificar enteramente a la organización o los limites de las actividades en ciertas
áreas.. En algunos casos puede resultar un poco complicado determinar todas las
entidades asociadas a la organización objetivo. Los proveedores de internet
contienen conjuntos de recursos que se pueden utilizar para el area de actividades
y también proporciona algo más; como el tipo y cantidad de información publica
disponible sobre la organización y los empleados.

La pagina web de una organización puede proporcionar una cantidad de
información que puede ser de ayuda a los atacantes, como por ejemplo:
Lugares
Entidades o empresas relacionadas
Noticias de adquisiciones
Números telefónicos
Nombre de contacto y direcciones de correo electrónico
Políticas de seguridad y privacidad indicando el tipo de mecanismo de seguridad
en el lugar
Enlaces a otros servidores web, relacionados con la organización.




                   Consulta Google, para enlaces a dominio especificado



2.3 Información general del objetivo (Web, Whois, news):

 Aquí se inicia el proceso de enumeración para identificar los nombres de dominio
y redes asociadas, que se relacionan a una organización en particular. Los
nombres de dominio representan la presencia de la empresa en internet y son el
equivalente en internet al nombre de la empresa, como “JugosDel.com” o
“hansgross.com”

 Para enumerar los dominios e iniciar a descubrir la redes anexas al objetivo, se
debe escudriñar la internet. Existen multiples bases de datos “whois” que pueden
ser consultadas para proporcionar información sobre cada entidad que se desea
invetigar. En los años 1999 la empresa network solutions tenia el monopolio de los
registro de dominios y mantenia esta inforamcion en sus servidores “whois”. Este
monopolio fue disuelto y actualmente hay una multitud de registradores
acreditados. Y se hace necesario realizar la consulta al registrador adecuado, para
obtener la información que se requiera.

 Existen diferentes mecanismos, pare realizar las consultas a las diferentes bases
de datos “whois“. En cualquier caso siempre se debe de obtener la misma
información

Interface Web:

http://www.networksolutions.com/
http://www.arin.net


Cliente WHOIS:

dig, host, nslookup (GNU/Linux)
SamSpade (Windows) http://www.samspade.org/




                        Consulta vía Web a una Base de Datos WHOIS
                    Consulta a una Base de Datos WHOIS via consola
 Diversa información puede ser obtenida con cada consulta realizada. Los
siguiente tipos de consulta proporcionan la mayoría de información que un
atacante puede utilizar:

Registrante (información del registrador y servidores whois asociados)
Organización (información relacionada con la organización)
Dominio (información relacionada con un dominio en particular)
Red (información relacionada a una red particular o una simple dirección IP)
Punto de Contacto (información de una persona especifica, contacto
administrativo)


2.4 Interrogación a DNS:

 Después de indentificar los dominios asociados, se inicia la consulta a los DNS.
DNS es una base de datos distribuida utilizado para mapear direcciones IP a
nombres de dominios y viceversa. Si el DNS esta configurada de manera
insegura, es posible obtener una revelación de información sobre la organización.

 Una de los mas comunes errores de configuración de los administradores de
sistemas es permitir a usuarios no permitidos realizar transferencias de zonas.

 Una transferencia de zona, permite a un servidor maestro secundario actualizar
su base de datos de zonas desde el servidor primario.

Un medio simple para realizar estas consultas en con el comando “host”:
2.5 Reconocimiento de la Red:

 Cuando se han identificado potenciales Redes, se intenta determinar la topología
de la Red y tambien las posibles rutas hacia la Red.

 Para realizar esta tarea, se puede usar “traceroute”, el cual puede encontrarse
con la mayoria de sistemas GNU/Linux y tambien para sistemas Windows.

 Tracerote es una herramienta de diagnostico que permite ver la ruta que un
paquete IP sigue de un host a otro. Usa la opción TTL (tiempo de vida) en el
paquete IP para obtener un mensaje ICMP TIME_EXCEEDED de cada router.
 VisualRoute es una herramienta Visual que no solo obtener información de los
“saltos” sino también la ubicación geográfica e información anexa.
2.6 Servidores accesibles:

 El escaneo es equivalente a tocar las paredes para encontrara puertas o
ventanas abiertas. Es importante recordar que el hecho de que una IP este listada
en una transferencia de zona, no significa que esta sea alcanzable vía internet. Se
necesita probar cada sistema objetivo para percibir si esta vivo, y si lo esta, que
puertos tiene activos.

 La manera mas básica de mapear una red es realizar un PING automatizado
sobre un rango de direcciones IP




                          nmap sobre conjunto de direcciones IP



2.7 Rastreo de puertos:

 El escaneo de puertos es un proceso de conectar a puertos TCP y UDP de un
sistema objetivo para determinar que servicios están ejecutándose o en estado
“LISTENING”

 Identificar puertos “a la escucha” es critico para determinar el tipo de sistema
operativo y aplicaciones utilizadas. Servicios activos que están “escuchando”
pueden permitir acceso no autorizado a usuarios para ganar acceso a sistemas
que estas mal configurados o ejecutando versiones de software que se conocen
tienen vulnerabilidades de seguridad. Las herramientas de escaneo han
evolucionado significativamente con el transcurrir de los años.
 Alguno de los objetivos que se persiguen al realizar un escaneo de puertos a un
sistema objetivo, son lo siguientes; pero no limitados a:

Identificar servicios ejecutándose tanto TCP como UDP, sobre el sistema objetivo
Identificar el tipo de sistema Operativo del sistema objetivo.
Identificar aplicaciones especificas o versiones de un servicio particular.




2.8 Rastreo de sistemas operativos:

 Es momento de identificar el tipo de sistema Operativo que ha sido objeto del
escaneo. Información sobre un sistema Operativo especifico es de utilidad durante
la fase de mapeo de vulnerabilidades. Es importante recordar que se intenta ser lo
mas preciso posible para determinar las vulnerabilidades asociadas de nuestro
sistema Objetivo. Y se hace necesario poder identificar el Sistema Operativo del
Sistema Objetivo.

 Se puede realizar un simple reconocimiento del Sistema Operativo utilizando
técnicas de reconocimiento de “banners”, esto aunado a los la información de
servicios como FTP, SMTP HTTP, POP3, y otros. Este es la manera mas simple
de detectar un sistema operativo y el numero de versión asociado del servicio
ejecutándose. Obviamente existen herramientas que nos ayudan en esta tarea.
Tenemos a nmap y xprobe2
2.9 Rastreadores de red (Sniffers):

Un packet sniffer es un programa de captura de paquetes de red, generalmente
utilizado con fines maliciosos.

Es algo común que, por necesidad material, el medio de transmisión sea
compartido entre varios ordenadores (cable coaxial, UTP, fibra óptica etc.) lo cual
hace posible que un ordenador capture paquetes no destinados a él, para lo cual
el sniffer pone la tarjeta de red en un estado llamado "modo promiscuo". De esta
manera se puede obtener todo tipo de información de cualquier aparato conectado
a la red como contraseñas, correos electrónicos o cualquier otro tipo información
personal (por lo que son muy usados por crackers, aunque también pueden ser
usados para realizar comprobaciones y solucionar problemas en la red de modo
legal por un administrador de dicha red).

Es importante remarcar el hecho de que los sniffer solo pueden ser usados en
redes que compartan el medio de transmisión (generalmente redes de área local)
como en redes sobre cable coaxial, redes sobre cables de par trenzado
conectados a un concentrador o redes WiFi. El uso de switch en lugar de hub
incrementa la seguridad de la red ya que impide el uso de sniffers al no pasar los
paquetes por ordenadores no destinatarios.


Ethereal: Es una herramienta utilizada por profesionales alrededor del mundo para
localizar averías, análisis, desarrollo de software y protocolos, y educación. Posee
todas las características estándar que se desea encontrar en un analizador de
protocolos e incluye varias características que no pueden ser localizadas en otros
productos. Tiene licencia Open Source , permite a talentos en redes de la
comunidad realizar mejoras. Se ejecuta en las más populares plataformas,
incluyendo Unix, Linux, Windows.




2.10 Secuestro y falsificación DNS:

Ataque DNS Spoofing:

DNS Spoofing se describe como un servidor DNS que hace uso de información
falsa recibida desde un host que no es autoridad para la información. Es una
amenaza significativa para la seguridad de las organizaciones que no han tomado
medidas para protegerse de ella. El DNS Spoofing puede permitir a los atacantes
acceder al correo de un sitio, y puede hacer que los usuarios sean redireccionados
a sitios Web incorrectos incluso proporcionando una abertura para un ataque de
Negación de Servicio.

Escenario: La compañía, TAMJTeK Inc., está compitiendo para acabar el
desarrollo del último software de juegos antes de que el capital de la empresa
salga. Se comienza a anunciar el aviso pendiente de una brecha en tecnología de
este juego en el sitio Web de Internet. Usted tiene una llamada de uno de los
socios de la empresa. Ella desea saber por que termina llegando a
www.hackncrack.net cuando intenta llegar a www.tamjtek.com. Usted intenta
conectarse al sitio Web y, seguro, termina llegando a www.hackncrac.net. Usted
prueba algunos otros sitios y todo parece muy bien excepto, que encuentra que su
competidor más fuerte ha anunciado una brecha en el mismo juego. Su sitio Web
demuestra una imagen de su juego, la cual parece notablemente similar a la suya
con aspectos virtualmente idénticos. ¿Coincidencia? Quizás no.


Ataque DNS ID Hacking:

El DNS ID Hacking no es una forma usual de hacking/spoofing o cualquier otro.
Este método se basa en una vulnerabilidad en protocolo del DNS. Más eficaz, el
DNS ID hack/spoof es muy eficiente y muy fuerte porque no hay generación de
demonios de DNS que se escape de ella (incluso WinNT).


Ataque DNS Caché Poisoning:

Siempre que un servidor DNS no tenga la respuesta a una consulta dentro de su
caché, el servidor DNS puede pasar la consulta a otro servidor DNS a nombre del
cliente. Si el servidor pasa la consulta a otro servidor DNS que tenga información
incorrecta, estará colocándola intencionalmente o no intencionalmente, pudiendo
ocurrir entonces un caché poisoning. EL Caché Poisoning es comúnmente referido
como DNS Spoofing.

Por ejemplo, suponga que hay un servidor de nombres, conocido como
dnsobjetivo.com, manteniendo una red de computadoras, como se muestra en la
Figura 1. Estas computadoras son en esencia clientes DNS. Una aplicación en un
sistema cliente, host1, hace una consulta DNS que es enviada a
dnsobjetivo.ejemplo.com. Entonces dnsobjetivo.ejemplo.com examina su caché
para ver si tiene la respuesta a la consulta. Para propósito del ejemplo,
dnsobjetivo.ejemplo.com no es autoritario para el nombre DNS en la consulta ni
tiene la respuesta para la consulta en su caché. Debe enviar la consulta a otro
servidor,     llamado       dnsinfectado.ejemplo.org.   La      información     en
dnsinfectado.ejemplo.org sucede que es incorrecta, comúnmente debido a la mala
configuración, y la respuesta enviada de regreso a dnsobjetivo.ejemplo.com
contiene información engañosa. Puesto que dnsobjetivo.ejemplo.com esta
almacenando las respuestas, almacena esta información engañosa y envía la
respuesta de regreso a host1. Mientras esta información exista en la caché de
dnsobjetivo.ejemplo.com, todos los clientes, no solo host1, son ahora susceptibles
para recibir esta falsa información.
2.11 Ataques contra servicios con autenticación, fuerza bruta:


Un Ataque por fuerza bruta consiste en probar todos los posibles códigos,
combinaciones o claves, hasta que se obtenga alguna valida. La dificultad de
estos ataques depende de muchos factores, como son:

. La longitud de la “clave”
.Cuantos posibles valores de puede tener cada componente de la clave
.Con que longitud debe tratar de probarse cada clave.
.Existencia de un mecanismo que bloquee al atacante después de un numero de
intentos fallidos

  Imagínese un sistema el cual permite códigos de 4 dígitos. Esto significa
que existe un máximo de 10000 posibles combinaciones del PIN. Un ataque por
fuerza bruta, puede siempre ser satisfactoria; eventualmente; sin embargo,
ataques por fuerza bruta contra sistemas con suficientemente sólidas claves,
puede requerir billones de años en ser completadas.


   Ataques por Fuerza Bruta vs. Ataques por Diccionario:

En muchos casos, un ataque por diccionario, puede trabajar mas rápidamente
      que un ataque por fuerza bruta, Sin embargo un ataque por fuerza bruta, es
mas certero para alcanzar resultados que un ataque por diccionario.

 Entre el software disponible se tiene a hydra; hydra explota uno de los mas
grandes agujeros en la seguridad, que son las contraseñas. Hydra es un
crackeador en paralelo de autenticación, que soporta numerosos protocolos que
pueden ser atacados. Nuevos módulos son fáciles de añadir, esto es flexible y
rápido.

 Actualmente la herramienta soporta: Telnet, ftp, http, https, http-proxy, smb,
smbnt, mysql, rexec, rsh, rlogin, cvs, etc, etc.

 Esta herramienta es una prueba de concepto, para proporcionar          a los
investigadores y consultores de seguridad, la posibilidad de mostrar cuan fácil
puede ser obtener acceso no autorizado remotamente a un sistema.
2.12 Desbordamiento de memoria (Buffer overflow)

Estos días han saltado a la opinión pública una serie de errores provocados por
desbordamiento de buffer (buffer overflow) los cuales permitían tomar el control
absoluto de nuestra máquina, o bien a un atacante remoto, o bien a gusanos /
virus (Blaster, por ejemplo) que usan dicha vulnerabilidad.

"Desbordamiento de buffer" es una de las frases que muchas veces asumimos sin
preguntar -aunque sólo sea en plan curiosidad-, qué es lo que significa. En el
presente artículo, creado para neófitos en informática, vamos a intentar clarificar
este concepto: qué es lo que realmente significa, y por qué sucede. Esto es
inherente a cualquier sistema operativo, por lo que no es exclusivo de Microsoft.

Vamos a utilizar en varios puntos de este artículo la palabra "exploit". Un exploit no
es nada más que una manera, o un código, o lo que sea, de manejar una
vulnerabilidad para tomar el control de una máquina, o bien para hacerla mal
funcionar y provocar la caída de sus servicios.

Un programa tiene su área de código ejecutable, y usa en memoria un espacio
para almacenamiento del propio código y también para almacenamiento de los
datos que vaya a utilizar. Igualmente, si el programa recibe parámetros o datos,
debe guardarlos temporalmente en memoria.
Por ejemplo, imaginemos un programa servidor de páginas web. Cuando el
usuario teclea en un navegador: "http://www.microsoft.com/directx", el texto
tecleado: "www.microsoft.com/directx" viaja como dato al servidor web de
Microsoft. Dicho servidor es un programa que recibe ese texto, y que tiene que
almacenarlo en memoria.

Imaginemos que desde nuestro navegador, podemos teclear lo que queramos sin
tener un tamaño máximo para escribir. Es decir que tecleamos
"http://www.microsoft.com/xx....xxxx" y el texto que ponemos en las xxxxx es
enorme. Pongamos que enviamos 10.000 caracteres... a ver que pasa.

Si el programa servidor que se está ejecutando en los servidores de Microsoft no
tiene presente que pueda recibir toda esta cantidad de datos, y el programador
que lo ha realizado ha previsto sólo una cantidad, digamos razonable de 1000
caracteres, el propio programa al intentar guardarse esos 10.000 caracteres, está
"machacando" áreas de memoria que pueden ser de contenido de otros datos (en
cuyo caso se machacan) o incluso de código ejecutable del propio servidor. En
cualquier caso, hay destrucción de información que provocarán en el mejor de los
casos o un mal funcionamiento, o lo más probable, una "caída" del programar
servidor web por machacarse parte de su propio código

Evidentemente, la solución pasaría por comprobar el tamaño de lo tecleado antes
de moverlo a zonas de memoria.

Este es un caso muy sencillo y muy simplificado, pero nos puede servir como idea
de lo que sucede. Generalicemos un poco: un programa, se descompone en
funciones. Dicho programa recibe parámetros o datos, se los guarda, y los pasa al
resto de funciones o subprogramas que lo necesiten.

El problema es cuando el propio programa o los propios subprogramas o
funciones, tienen reservados tamaños inferiores a la longitud de los datos que
reciben. La solución, por supuesto, es que cada programa, función, modulo,
librería, DLL, etc... no se fíe de nadie y verifique exhaustivamente todo antes de
tomar ninguna acción y ni tan siquiera guardarlo en memoria.

Normalmente, los controles anteriores no se hacen excepto en entrada de datos,
debido a que esto implica sobrecargar excesivamente de código de comprobación,
y en tiempo de ejecución todos los parámetros y todas las zonas de memoria a las
que accede el programa.

El problema surge cuando muchas de las funciones diseñadas para ejecutarse
internamente, y que no tienen controles de los parámetros, deciden reutilizarse en
otros programas de nivel superior los cuales pueden no tener tampoco dichos
controles. En este caso, y aunque su funcionamiento sea normal, pueden
encontrarse situaciones en que alguien malintencionado lo descubra y decida
"explotar" esta vulnerabilidad. Es vulnerable un programa desde el momento en
que somos capaces de hacerlo "cascar". Si somos capaces de ello, también
seremos capaces de hacer lo que queramos: es decir de tomar control de él.




2.13 Vulnerabilidades de las aplicaciones web:

 Cuando una organización pone una aplicación web, están invitando a todo el
mundo a enviar peticiones HTTP. Este tipo de ataques pueden pasar fácilmente,
cortafuegos, filtros, sistemas detectores de intrusos, sin ser notados, debido a que
son peticiones HTTP legales.

 Lo que se plantea no es nuevo, este hecho se ha conocido por décadas, pero aun
hoy se esta comprometiendo la seguridad de los sistemas en internet. No existe
una solución mágica para poner una curar estos graves problemas, ahora la
prevención y la protección esta mejorando, pero en un subconjunto de temas
especifico en el mejor de los casos. Para tratar estos temas, las organizaciones
deben cambiar su cultura de desarrollo, entrenamiento de desarrolladores,
actualizar su proceso de desarrollo de software y utilizar la tecnología cuando sea
necesaria.

A continuación se detalla una lista relacionadas con este tópico:

.Entradas no Validadas

En la práctica, los atacantes pueden emplear información no validada para
alcanzar componentes secundarios
.Control de Acceso Roto

Debido a que no se establecen las adecuadas restricciones en la autenticación de
usuarios, los agresores pueden tener acceso a otras cuentas o acceder a
funciones no autorizadas.




.Autenticación Rota


Fallos en administración de sesiones y autenticación. Credenciales de cuentas y
tokens de sesión no están protegidos adecuadamente, lo que puede permitir que
los atacantes comprometan contraseñas, llaves, cookies de sesión, y que asuman
la identidad de otros usuarios.
.Cross Site Scripting

En este caso, la aplicación web se emplea como mecanismo para realizar ataques
contra el navegador de los usuarios finales, lo que puede posibilitar que queden al
descubierto cookies de sesión, o que se utilice contenido falso para engañar al
usuario.




.Buffer Overflows (Desbordamiento de buffer)

Componentes de la aplicación web escritos en lenguajes que no realicen una
validación de datos de entrada adecuada pueden fallar y, en algunos casos,
permitir tomar el control de un proceso.

.Inyección de banderas.
Las aplicaciones web pasan parámetros cuando acceden al sistema externo o al
sistema operativo. Si en los parámetros se incluyen comandos maliciosos, el
sistema externo puede ejecutarlos en nombre de la aplicación web.

.Manejo inadecuado de errores.

Puede ser empleada por los atacantes para obtener información detallada del
sistema o provocar denegaciones de servicio.




.Almacenamiento de errores

Se ha demostrado que las aplicaciones web que utilizan funciones criptográficas
para proteger la información y las credenciales no cifran adecuadamente, lo que
da como resultado una protección débil.




.Denegaciones de servicio a la aplicación

Como se ha mencionado anteriormente, los atacantes pueden consumir recursos
de la aplicación web hasta conseguir que los usuarios legítimos no puedan
acceder a ella. A su vez, los agresores podrán bloquear las cuentas de usuarios o
provocar la caída de la aplicación.
.Manejo inseguro de configuración

Los servidores web tienen muchas opciones de configuración que afectan la
seguridad y que no son seguras hacia fuera. Tener un estándar de configuración
fuerte es crítico.




2.14Denegación de servicio

  Los ataques de denegaciones de servicio (DoS) cuestan millones de dólares
anualmente a las empresas y son una seria amenaza a los sistemas y redes de
computadoras. Estos costos están relacionados al tiempo “muerto”, perdidas en
ventas, en la labor relacionada con la identificación y reacción ante estos ataques
.
 Un ataque de denegación de servicio altera o completamente deniega el servicio
a usuarios legítimos, redes, sistemas u otros recursos. La intención de tales es
generalmente de tendencia maliciosa, ya que se requieren muy pocos
conocimientos y las herramientas están libremente disponibles.

Tipos de ataque DoS:

.Consumo de Ancho de Banda: Esencialmente los atacantes consumen todo el
ancho de banda disponible de una red en particular, esto puede ocurrir en una red
local, pero es mucho mas común que los atacantes consuman estos recursos,
remotamente.


.Consumo de Recursos Hardware: Difiere del ataque de consumo al ancho de
banda en que este se enfoca en consumir recursos del sistema y también recursos
de la red. Esto involucra consumo de recursos de CPU, memoria, sistema de
archivos u otros procesos.


.Banderas en Programas: Son fallas de una aplicación, sistema operativo, o lógica
incrustada en un chip para manejar condiciones de excepcionales, estas
generalmente ocurren cuando un usuario envía datos a un elemento vulnerable.


.Ataque de enrutamiento y a DNS: este tipo de ataque involucra la manipulación
de la tabla de enrutamiento para denegar servicios a sistemas o redes legítimos.
Debido a que algunos protocolos no tienen un tipo de autenticación, es un
escenario ideal para este tipo de ataques para alterar rutas legitimas, falsificando
las direcciones IP e origen, para crear una condición de DoS. Las víctimas de este
tipo de ataques pueden percibir como su trafico es redireccionado a otra red o
simplemente a un hoyo negro.


DDoS: Este tipo de ataque ocurre cuando alguien utiliza software libremente
disponible y envía flujos constantes de paquetes a una red destino o host, en un
intento por saturar sus recursos. Pero la principal diferencia es que el ataque
provien de de diversas fuentes y la única manera de crear este escenario es
comprometer computadoras existentes en internet.
2.15Analizadores de Seguridad

CORE IMPACT:

  Es el primer producto automatizado para realizar “pruebas de penetración” y
exponer amenazas especificas a la seguridad en la organización. Con CORE
IMPACT, cualquier administrador de redes puede fácilmente y eficientemente
determinar exactamente como un atacante puede obtener control sobre su
información.. No se necesita ser un experto, o un especialista en seguridad, para
realizar este tipo de evaluaciones en la red, identificar los recursos que están
expuestos, y determinar su la inversión actual en seguridad esta actualmente
detectando y previniendo ataques. Este software ayuda a mejorar la seguridad
mientras se reducen costos.
Nessus:

 Nessus es el mas popular escaner de vulnerabilidades de codigo abierto a nivel
mundial, usado en mas de 75000 organizaciones alrededor del mundo. Muchas de
las mas grandes organizaciones están realizando reducciones significativas de
costos utilizando Nessus para auditar dispositivos y aplicaciones criticas de la
empresa.

 Nessus esta considerado actualmente como uno de los productos “top” de su tipo
en la industria de la seguridad y es avalado por profesionales en seguridad de la
información y organizaciones con la SANS Institute.




2.16 Ingeniería Social

Básicamente se denomina ingeniería social a todo artilugio, tretas y técnicas más
elaboradas a través del engaño de las personas en revelar contraseñas u otra
información, más que la obtención de dicha información a través de las
debilidades propias de una implementación y mantenimiento de un sistema.
El único medio para entender como defenderse contra esta clase de ataques es
conocer los conceptos básicos que pueden ser utilizados contra usted o su
compañía y que abren brechas para conseguir sus datos. Con este conocimiento
es posible adoptar una aptitud más saludable que lo alerte sin convertirse en un
ser paranoico.

*Los métodos

Intentando persuadir a un individuo para completar un objetivo o tarea se pueden
usar varios métodos:

El primero y más obvio es simplemente una demanda directa, donde a un
individuo se le pide completar su tarea directamente. Aunque probablemente
tenga menor éxito, éste es el método más fácil y el más sincero. El individuo sabe
lo que usted quiere que ellos hagan exactamente.

El segundo método es ejecutado indirectamente en una situación previamente
ideada donde el individuo es simplemente una parte de la misma. El mismo puede
ser persuadido porque cree en las razones suministradas. Esto involucra mucho
más trabajo para la persona que hace el esfuerzo de la persuasión, y casi
ciertamente se involucra obteniendo un conocimiento extenso del ' objetivo'. Esto
no significa que las situaciones no tienen que ser basadas en hecho real. Cuando
menos falsedades, mayor la factibilidad de que el individuo en cuestión juegue el
papel que le fue designado.

Una de las herramientas esenciales usadas para la ingeniería social es una buena
recolección de los hábitos de los individuos.

*Las situaciones

La ingeniería social se dirige a los individuos con menos conocimientos, dado que
los argumentos y otros factores de influencia tienen que ser construidos
generando una situación creíble que el individuo ejecute.

Algunos ejemplos que se pueden citar:

- La ejecución de un virus troyano por parte del usuario, adjunto a un correo
electrónico enviado por una casilla que le es familiar o simplemente con un
interesante título al destinatario como "es divertido, pruébalo", "mira a Anita
desnuda", etc.

- La voz agradable de un hombre o mujer, que pertenece al soporte técnico de
nuestra empresa o de nuestro proveedor de tecnología, que nos requiere
telefónicamente de información para resolver un inconveniente detectado en
nuestra red.
- El llamado de un usuario que necesita que se le asignen nuevamente su clave
porque la ha cambiado durante el transcurso del día y no la recuerda.

Esto son burdos ejemplos, citados simplemente para graficar algunos conceptos
anteriormente explicados. No es objetivo de este artículo un análisis profundo de
este tema, sino simplemente presentar al lector un panorama general sobre los
aspectos más simples que rodean al manejo de la información.

*La conclusión

Contrariamente a la creencia popular, es a menudo más fácil de utilizar a las
personas, que explotar vulnerabilidades o malas implementaciones de un sistema.
Pero toma más esfuerzo educar a los usuarios para que puedan prevenirse y
descubrir los esfuerzos a la ingeniería social que afianzar la seguridad operativa
con el administrador del sistema.

A los Administradores, no permita que el eslabón humano en su cadena de
seguridad desgaste su trabajo.

Al lector y usuario medio, asesórese sobre políticas de seguridad para sus datos,
como así también consulte si su empresa tiene implementadas tales medidas.



2.17 Phreaking

La primera historia sobre alguien capaz de trampear el sistema telefónico fue Joe
Engressia, también llamado "The Whistler". Esta persona, que era ciego, contaba
con un oido perfecto y podía, a base de silbidos, realizar llamadas telefónicas.

El primer Phreacker como tal fue el "Capitán Crunch". Su nombre deriva de una
caja de cereales que llevaba un silbato. Descubrió que el tono del silbato era el
mismo que activaba las comunicaciones entre centralitas analógicas de larga
distancia.

Tanto Steve Wozniak como Steve Jobs, fundadores de Apple, se dedicaron en sus
primeros años a idear un aparato electrónico que prescindiera de silbatos o
silbidos y automatizara el proceso. Dicho aparato se denominó bluebox y permitió
a ambos obtener el dinero necesario que les llevaría a proyectos más ambiciosos
como los primeros Apple.

Sin duda actualmente los mejores phreakers residen en Chile, el más famoso
Fox1 este personaje fue capaz de intervenir centrales telefónicas tanto en su país
de origen como en el extranjero. Estafó a las empresas de telefonía móvil y fija en
mas 48 millones de pesos sin contar los fraudes internacionales.
Con el tiempo, las centralitas analógicas se volvieron digitales e impidieron la
proliferación de las blueboxes, por lo que las miras se dirigieron a la alteración de
las centralitas de oficina para efectuar redirecciones de llamadas.



2.18 Carding y estafas bancarias

Se llama carding a la actividad de cometer un fraude o una estafa con un numero
de tarjeta de crédito.
Este concepto que parece simple tiene sus hontanares de cuestión. Primero no
todo fraude con tarjeta de crédito se transforma en carding, así se roba o se
encuentra una tarjeta y es utilizada por otra persona que no es su titular, ello no es
carding es solo un fraude.
El carding consiste entonces en usar un numero de tarjeta de crédito, ya sea real o
creado de la nada mediante procedimientos digitales, para realizar compras a
distancia por Internet y efectuar pagos.
El nivel de seguridad en Internet para realizar transacciones económicas no es
bueno, por ello existen fugas de información, muchos usuarios de la red ponen su
numero de tarjeta de crédito para hacer compras, estos números son captados por
otras personas que los reutilizan para hacer más compras sin ser los titulares de la
tarjeta.
A esta actividad debe agregarse la de generar números validos de tarjetas de
crédito para luego usarlos en compras a distancias.
Cuando una empresa de tarjetas asigna una tarjeta numerada a un usuario lo
hace a través de un sistema automatizado de creación de numero aleatorios. Por
ello basta usar el mismo sistema para crear números validos; cualquier estudiante
de ingeniería puede hacer un sistema de calculo de numero aleatorios.
El carding es sin duda la actividad más riesgosa de todas las entendidas como
delitos informáticos, pues si se quiere recibir lo que se compró hay que ordenar
que lo manden a algún sitio, he allí el problema: a qué sitio, pues quien compró
con un número de tarjeta que no era suyo, se arriesga a que en el ínterin lo
descubran y al ir a recoger la cosa, lo arresten.


3. Seguridad informática y sistemas de seguridad.

3.1   . Conceptos y principios de la administración de la seguridad

Podemos entender como seguridad una característica de cualquier sistema
(informático o no) que nos indica que ese sistema está libre de todo peligro, daño
o riesgo, y que es, en cierta manera, infalible. Como esta característica,
particularizando para el caso de sistemas operativos o redes de computadores, es
muy difícil de conseguir (según la mayoría de expertos, imposible), se suaviza la
definición de seguridad y se pasa a hablar de fiabilidad (probabilidad de que un
sistema se comporte tal y como se espera de él) más que de seguridad; por tanto,
se habla de sistemas fiables en lugar de hacerlo de sistemas seguros.
A grandes rasgos se entiende que mantener un sistema seguro (o fiable) consiste
básicamente en garantizar tres aspectos: confidencialidad, integridad y
disponibilidad. Algunos estudios integran la seguridad dentro de una propiedad
más general de los sistemas, la confiabilidad, entendida como el nivel de calidad
del servicio ofrecido. Consideran la disponibilidad como un aspecto al mismo nivel
que la seguridad y no como parte de ella, por lo que dividen esta última en sólo las
dos facetas restantes, confidencialidad e integridad. En este trabajo no
seguiremos         esa       corriente      por       considerarla      minoritaria.

Qué implica cada uno de los tres aspectos de los que hablamos? La
confidencialidad nos dice que los objetos de un sistema han de ser accedidos
únicamente por elementos autorizados a ello, y que esos elementos autorizados
no van a convertir esa información en disponible para otras entidades; la
integridad significa que los objetos sólo pueden ser modificados por elementos
autorizados, y de una manera controlada, y la disponibilidad indica que los
objetos del sistema tienen que permanecer accesibles a elementos autorizados;
es el contrario de la negación de servicio. Generalmente tienen que existir los
tres aspectos descritos para que haya seguridad.

3.2 Mecanismos de protección

Los tres elementos principales a proteger en cualquier sistema informático son el
software, el hardware y los datos. Por hardware entendemos el conjunto formado
por todos los elementos físicos de un sistema informático, como CPUs, terminales,
cableado, medios de almacenamiento secundario (cintas, CD-ROMs, diskettes...)
o tarjetas de red. Por software entendemos el conjunto de programas lógicos que
hacen funcional al hardware, tanto sistemas operativos como aplicaciones, y por
datos el conjunto de información lógica que manejan el software y el hardware,
como por ejemplo paquetes que circulan por un cable de red o entradas de una
base de datos. Aunque generalmente en las auditorías de seguridad se habla de
un cuarto elemento a proteger, los fungibles (elementos que se gastan o
desgastan con el uso continuo, como papel de impresora, tóners, cintas
magnéticas, diskettes...), aquí no consideraremos la seguridad de estos elementos
por ser externos al sistema.

Habitualmente los datos constituyen el principal elemento de los tres a proteger,
ya que es el más amenazado y seguramente el más difícil de recuperar: con toda
seguridad una máquina Unix está ubicada en un lugar de acceso físico restringido,
o al menos controlado, y además en caso de pérdida de una aplicación (o un
programa de sistema, o el propio núcleo de Unix) este software se puede restaurar
sin problemas desde su medio original (por ejemplo, el CD-ROM con el sistema
operativo que se utilizó para su instalación). Sin embargo, en caso de pérdida de
una base de datos o de un proyecto de un usuario, no tenemos un medio `original'
desde el que restaurar: hemos de pasar obligatoriamente por un sistema de copias
de seguridad, y a menos que la política de copias sea muy estricta, es difícil
devolver los datos al estado en que se encontraban antes de la pérdida.

Contra cualquiera de los tres elementos descritos anteriormente (pero
principalmente sobre los datos) se pueden realizar multitud de ataques o, dicho de
otra forma, están expuestos a diferentes amenazas. Generalmente, la taxonomía
más elemental de estas amenazas las divide en cuatro grandes grupos:
interrupción, interceptación, modificación y fabricación. Un ataque se clasifica
como interrupción si hace que un objeto del sistema se pierda, quede inutilizable
o no disponible. Se tratará de una interceptación si un elemento no autorizado
consigue un acceso a un determinado objeto del sistema, y de una modificación
si además de conseguir el acceso consigue modificar el objeto; algunos autores
consideran un caso especial de la modificación: la destrucción, entendiéndola
como una modificación que inutiliza al objeto afectado. Por último, se dice que un
ataque es una fabricación si se trata de una modificación destinada a conseguir
un objeto similar al atacado de forma que sea difícil distinguir entre el objeto
original y el `fabricado'. En la figura se muestran estos tipos de ataque de una
forma gráfica.



3.3 Técnicas de identificación y autenticación

Ya sabemos que unos requerimientos primordiales de los sistemas informáticos
que desempeñan tareas importantes son los mecanismo de seguridad adecuados
a la información que se intenta proteger; el conjunto de tales mecanismos ha de
incluir al menos un sistema que permita identificar a las entidades (elementos
activos del sistema, generalmente usuarios) que intentan acceder a los objetos
(elementos pasivos, como ficheros o capacidad de cómputo), mediante procesos
tan simples como una contraseña o tan complejos como un dispositivo analizador
de                               patrones                              retinales.

Los sistemas que habitualmente utilizamos los humanos para identificar a una
persona, como el aspecto físico o la forma de hablar, son demasiado complejos
para una computadora; el objetivo de los sistemas de identificación de usuarios no
suele ser identificar a una persona, sino autenticar que esa persona es quien
dice ser realmente. Aunque como humanos seguramente ambos términos nos
parecerán equivalentes, para un ordenador existe una gran diferencia entre ellos:
imaginemos un potencial sistema de identificación estrictamente hablando, por
ejemplo uno biométrico basado en el reconocimiento de la retina; una persona
miraría a través del dispositivo lector, y el sistema sería capaz de decidir si es un
usuario válido, y en ese caso decir de quién se trata; esto es identificación. Sin
embargo, lo que habitualmente hace el usuario es introducir su identidad (un
número, un nombre de usuario...) además de mostrar sus retinas ante el lector; el
sistema en este caso no tiene que identificar a esa persona, sino autenticarlo:
comprobar los parámetros de la retina que está leyendo con los guardados en una
base de datos para el usuario que la persona dice ser: estamos reduciendo el
problema de una población potencialmente muy elevada a un grupo de usuarios
más reducido, el grupo de usuarios del sistema que necesita autenticarlos.

Los métodos de autenticación se suelen dividir en tres grandes categorías, en
función de lo que utilizan para la verificación de identidad: (a) algo que el usuario
sabe, (b) algo que éste posee, y (c) una característica física del usuario o un acto
involuntario del mismo. Esta última categoría se conoce con el nombre de
autenticación biométrica. Es fácil ver ejemplos de cada uno de estos tipos de
autenticación: un password (Unix) o passphrase (PGP) es algo que el usuario
conoce y el resto de personas no, una tarjeta de identidad es algo que el usuario
lleva consigo, la huella dactilar es una característica física del usuario, y un acto
involuntario podría considerarse que se produce al firmar (al rubricar la firma no se
piensa en el diseño de cada trazo individualmente). Por supuesto, un sistema de
autenticación puede (y debe, para incrementar su fiabilidad) combinar
mecanismos de diferente tipo, como en el caso de una tarjeta de crédito junto al
PIN a la hora de utilizar un cajero automático o en el de un dispositivo generador
de      claves      para     el      uso      de      One       Time      Passwords.

Cualquier sistema de identificación (aunque les llamemos así, recordemos que
realmente son sistemas de autenticación) ha de poseer unas determinadas
características para ser viable; obviamente, ha de ser fiable con una probabilidad
muy elevada (podemos hablar de tasas de fallo de en los sistemas menos
seguros), económicamente factible para la organización (si su precio es superior al
valor de lo que se intenta proteger, tenemos un sistema incorrecto) y ha de
soportar con éxito cierto tipo de ataques (por ejemplo, imaginemos que cualquier
usuario puede descifrar el password utilizado en el sistema de autenticación de
Unix en tiempo polinomial; esto sería inaceptable). Aparte de estas características
tenemos otra, no técnica sino humana, pero quizás la más importante: un sistema
de autenticación ha de ser aceptable para los usuarios , que serán al fin y al cabo
quienes lo utilicen. Por ejemplo, imaginemos un potencial sistema de identificación
para acceder a los recursos de la Universidad, consistente en un dispositivo que
fuera capaz de realizar un análisis de sangre a un usuario y así comprobar que es
quien dice ser; seguramente sería barato y altamente fiable, pero nadie aceptaría
dar un poco de sangre cada vez que desee consultar su correo.

Contraseñas:

El modelo de autenticación más básico consiste en decidir si un usuario es quien
dice ser simplemente basándonos en una prueba de conocimiento que a priori
sólo ese usuario puede superar; y desde Alí Babá y su `Ábrete, Sésamo' hasta los
más modernos sistemas Unix, esa prueba de conocimiento no es más que una
contraseña que en principio es secreta. Evidentemente, esta aproximación es la
más vulnerable a todo tipo de ataques, pero también la más barata, por lo que se
convierte en la técnica más utilizada en entornos que no precisan de una alta
seguridad, como es el caso de los sistemas Unix en redes normales (y en general
en todos los sistemas operativos en redes de seguridad media-baja); otros
entornos en los que se suele aplicar este modelo de autenticación son las
aplicaciones que requieren de alguna identificación de usuarios, como el software
de cifrado PGP o el escáner de seguridad NESSUS. También se utiliza como
complemento a otros mecanismos de autenticación, por ejemplo en el caso del
Número de Identificación Personal (PIN) a la hora de utilizar cajeros automáticos.

En todos los esquemas de autenticación basados en contraseñas se cumple el
mismo protocolo: las entidades (generalmente dos) que participan en la
autenticación acuerdan una clave, clave que han de mantener en secreto si
desean que la autenticación sea fiable. Cuando una de las partes desea
autenticarse ante otra se limita a mostrarle su conocimiento de esa clave común, y
si ésta es correcta se otorga el acceso a un recurso. Lo habitual es que existan
unos roles preestablecidos, con una entidad activa que desea autenticarse y otra
pasiva que admite o rechaza a la anterior (en el modelo del acceso a sistemas
Unix, tenemos al usuario y al sistema que le permite o niega la entrada).

Como hemos dicho, este esquema es muy frágil: basta con que una de las partes
no mantenga la contraseña en secreto para que toda la seguridad del modelo se
pierda; por ejemplo, si el usuario de una máquina Unix comparte su clave con un
tercero, o si ese tercero consigue leerla y rompe su cifrado (por ejemplo, como
veremos luego, mediante un ataque de diccionario), automáticamente esa persona
puede autenticarse ante el sistema con éxito con la identidad de un usuario que no
le corresponde.

Tarjetas inteligentes (smartcards)

Las ventajas de utilizar tarjetas inteligentes como medio para autenticar usuarios
son muchas frente a las desventajas; se trata de un modelo ampliamente
aceptado entre los usuarios, rápido, y que incorpora hardware de alta seguridad
tanto para almacenar datos como para realizar funciones de cifrado. Además, su
uso es factible tanto para controles de acceso físico como para controles de
acceso lógico a los hosts, y se integra fácilmente con otros mecanismos de
autenticación como las contraseñas; y en caso de desear bloquear el acceso de
un usuario, no tenemos más que retener su tarjeta cuando la introduzca en el
lector o marcarla como inválida en una base de datos (por ejemplo, si se equivoca
varias veces al teclar su PIN, igual que sucede con una tarjeta de crédito normal).
Como principal inconveniente de las smartcards podemos citar el coste adicional
que supone para una organización el comprar y configurar la infraestructura de
dispositivos lectores y las propias tarjetas; aparte, que un usuario pierda su tarjeta
es bastante fácil, y durante el tiempo que no disponga de ella o no puede acceder
al sistema, o hemos de establecer reglas especiales que pueden comprometer
nuestra seguridad (y por supuesto se ha de marcar como tarjeta inválida en una
base de datos central, para que un potencial atacante no pueda utilizarla).
También la distancia lógica entre la smartcard y su poseedor - simplemente nos
podemos fijar en que la tarjeta no tiene un interfaz para el usuario - puede ser
fuente de varios problemas de seguridad
Aparte de los problemas que puede implicar el uso de smartcards en sí, contra la
lógica de una tarjeta inteligente existen diversos métodos de ataque, como realizar
ingeniería inversa - destructiva - contra el circuito de silicio (y los contenidos de la
ROM), adulterar la información guardada en la tarjeta o determinar por diferentes
métodos el contenido de la memoria EEPROM..



3.4 Seguridad Física

la seguridad física de los sistemas informáticos consiste en la aplicación de
barreras físicas y procedimientos de control como medidas de prevención y
contramedidas contra las amenazas a los recursos y la información confidencial.
Más claramente, y particularizando para el caso de equipos Unix y sus centros de
operación, por `seguridad física' podemos entender todas aquellas mecanismos -
generalmente de prevención y detección - destinados a proteger físicamente
cualquier recurso del sistema; estos recursos son desde un simple teclado hasta
una cinta de backup con toda la información que hay en el sistema, pasando por la
propia CPU de la máquina.

Desgraciadamente, la seguridad física es un aspecto olvidado con demasiada
frecuencia a la hora de hablar de seguridad informática en general; en muchas
organizaciones se suelen tomar medidas para prevenir o detectar accesos no
autorizados o negaciones de servicio, pero rara vez para prevenir la acción de un
atacante que intenta acceder físicamente a la sala de operaciones o al lugar
donde se depositan las impresiones del sistema. Esto motiva que en determinadas
situaciones un atacante se decline por aprovechar vulnerabilidades físicas en lugar
de lógicas, ya que posiblemente le sea más fácil robar una cinta con una imagen
completa del sistema que intentar acceder a él mediante fallos en el software.
Hemos de ser conscientes de que la seguridad física es demasiado importante
como para ignorarla: un ladrón que roba un ordenador para venderlo, un incendio
o un pirata que accede sin problemas a la sala de operaciones nos pueden hacer
mucho más daño que un intruso que intenta conectar remotamente con una
máquina no autorizada; no importa que utilicemos los más avanzados medios de
cifrado para conectar a nuestros servidores, ni que hayamos definido una política
de firewalling muy restrictiva: si no tenemos en cuenta factores físicos, estos
esfuerzos para proteger nuestra información no van a servir de nada. Además, en
el caso de organismos con requerimientos de seguridad medios, unas medidas de
seguridad físicas ejercen un efecto disuasorio sobre la mayoría de piratas: como
casi todos los atacantes de los equipos de estos entornos son casuales (esto es,
no tienen interés específico sobre nuestros equipos, sino sobre cualquier equipo),
si notan a través de medidas físicas que nuestra organización está preocupada
por la seguridad probablemente abandonarán el ataque para lanzarlo contra otra
red menos protegida.

Aunque como ya dijimos en la introducción este proyecto no puede centrarse en el
diseño de edificios resistentes a un terremoto o en la instalación de alarmas
electrónicas, sí que se van a intentar comentar ciertas medidas de prevención y
detección que se han de tener en cuenta a la hora de definir mecanismos y
políticas para la seguridad de nuestros equipos. Pero hemos de recordar que cada
sitio es diferente, y por tanto también lo son sus necesidades de seguridad; de
esta forma, no se pueden dar recomendaciones específicas sino pautas generales
a tener en cuenta, que pueden variar desde el simple sentido común (como es el
cerrar con llave la sala de operaciones cuando salimos de ella) hasta medidas
mucho más complejas, como la prevención de radiaciones electromagnéticas de
los equipos o la utilización de degaussers. En entornos habituales suele ser
suficiente con un poco de sentido común para conseguir una mínima seguridad
física; de cualquier forma, en cada institución se ha de analizar el valor de lo que
se quiere proteger y la probabilidad de las amenazas potenciales, para en función
de los resultados obtenidos diseñar un plan de seguridad adecuado. Por ejemplo,
en una empresa ubicada en Valencia quizás parezca absurdo hablar de la
prevención ante terremotos (por ser esta un área de bajo riesgo), pero no
sucederá lo mismo en una universidad situada en una zona sísmicamente activa;
de la misma forma, en entornos de I+D es absurdo hablar de la prevención ante
un ataque nuclear, pero en sistemas militares esta amenaza se ha de tener en
cuenta


3.5 Normas existentes.

a.ISO 17799:

ISO/IEC 17799:2005, establece lineamientos y principios generales para
inicializar, implementar, mantener, y mejorar el gerenciamiento de La seguriad de
Información en una organización. Los objetivos proporcionan una guia general
sobre los objetivos comunmente aceptados en el gerenciamiento de la Seguridad
de Información.-ISO/IEC 17799:2005 contiene las mejores practicas sobre el
control de objetivos y controles en las siguientes areas de gerenciamiento de
Seguridad de Información:

Políticas de Seguridad
Seguridad de la Información de la Organización
Gerenciamiento de Activos
Seguridad de Recursos Humanos
Seguridad física y ambiental
Gerenciamiento de Operaciones y Comunicaciones
Control de Acceso
Adquisición de los Sistemas de información, desarrollo y mantenimiento
Gerenciamiento de los incidentes de Seguridad de Información
Gerenciamiento de continuidad de la Empresa
Conformidad.

 El Control de objetivos y controles en ISO/IEC 17799:2005, se hicieron para ser
implementados y conocer los requrimientos identificados en un analisis de
riesgos. ISO/IEC 17799:2005 esta pensado como una base común y guia practica
para desarrollar standares en la Seguridad organizacional y standares efectivos en
el gerenciamiento de seguridad, y ayudar a construir confianza en las actividades
inter organizacionales.

b.BS 7799

 BS 7799 fue publicado en Febrero del año 1995, es un conjunto de controles que
comprende las mejores practicas en seguridad de información. BS 7799 esta
hecho para servircon un punto simple de referencia para identificar un rango de
controles necesarios para muchas situaciones donde los sistemas de información
son usados en la industria y comercio, y ser usados en grandes, medianas o
pequeñas organizaciones. Fue significativamente revisada y mejorada en el año
1999.

 Con los esquemas de acreditación y certificación en orden, BS 7799 puede
convertirse en un referente de ultima instancia contra la cual una empresa puede
ser comparada. Incluso se han realizado peticiones de inclusión obligatoria en los
reportes de estado de una organización.


3.6 Análisis de riesgos.

En un entorno informático existen una serie de recursos (humanos, técnicos, de
infraestructura...) que están expuestos a diferentes tipos de riesgos: los
`normales', aquellos comunes a cualquier entorno, y los excepcionales, originados
por situaciones concretas que afectan o pueden afectar a parte de una
organización o a toda la misma, como la inestabilidad política en un país o una
región sensible a terremotos. Para tratar de minimizar los efectos de un problema
de seguridad se realiza lo que denominamos un análisis de riesgos, término que
hace referencia al proceso necesario para responder a tres cuestiones básicas
sobre nuestra seguridad:

Qué queremos proteger?
Contra quién o qué queremos proteger?
Cómo lo queremos proteger

En la práctica existen dos aproximaciones para responder a estas cuestiones, una
cuantitativa y otra cualitativa. La primera de ellas es con diferencia la menos
usada, ya que en muchos casos implica cálculos complejos o datos difíciles de
estimar. Se basa en dos parámetros fundamentales: la probabilidad de que un
suceso ocurra y una estimación del coste o las pérdidas en caso de que así sea; el
producto de ambos términos es lo que se denomina coste anual estimado (EAC,
Estimated Annual Cost), y aunque teóricamente es posible conocer el riesgo de
cualquier evento (el EAC) y tomar decisiones en función de estos datos, en la
práctica la inexactitud en la estimación o en el cálculo de parámetros hace difícil y
poco                    realista                 esta                aproximación.
El segundo método de análisis de riesgos es el cualitativo, de uso muy difundido
en la actualidad especialmente entre las nuevas `consultoras' de seguridad
(aquellas más especializadas en seguridad lógica, cortafuegos, tests de
penetración y similares). Es mucho más sencillo e intuitivo que el anterior, ya que
ahora no entran en juego probabilidades exactas sino simplemente una estimación
de pérdidas potenciales. Para ello se interrelacionan cuatro elementos principales:
las amenazas, por definición siempre presentes en cualquier sistema, las
vulnerabilidades, que potencian el efecto de las amenazas, el impacto asociado a
una amenaza, que indica los daños sobre un activo por la materialización de dicha
amenaza, y los controles o salvaguardas, contramedidas para minimizar las
vulnerabilidades (controles preventivos) o el impacto (controles curativos). Por
ejemplo, una amenaza sería un pirata que queramos o no (no depende de
nosotros) va a tratar de modificar nuestra página web principal, el impacto sería
una medida del daño que causaría si lo lograra, una vulnerabilidad sería una
configuración incorrecta del servidor que ofrece las páginas, y un control la
reconfiguración de dicho servidor o el incremento de su nivel de parchado. Con
estos cuatro elementos podemos obtener un indicador cualitativo del nivel de
riesgo asociado a un activo determinado dentro de la organización, visto como la
probabilidad de que una amenaza se materialice sobre un activo y produzca un
determinado                                                                impacto.

En España es interesante la metodología de análisis de riesgos desarrollada
desde el Consejo Superior de Informática (Ministerio de Administraciones
Públicas) y denominada MAGERIT (Metodología de Análisis y Gestión de Riesgos
de los sistemas de Información de las AdminisTraciones públicas); se trata de un
método formal para realizar un análisis de riesgos y recomendar los controles
necesarios para su minimización. MAGERIT se basa en una aproximación
cualitativa que intenta cubrir un amplio espectro de usuarios genéricos gracias a
un enfoque orientado a la adaptación del mecanismo dentro de diferentes
entornos, generalmente con necesidades de seguridad y nivel de sensibilidad
también diferentes. En la página web del Consejo Superior de Informática
podemos encontrar información más detallada acerca de esta metodología, así
como        algunos      ejemplos      de     ejecución     de     la     misma.

Tras obtener mediante cualquier mecanismo los indicadores de riesgo en nuestra
organización llega la hora de evaluarlos para tomar decisiones organizativas
acerca de la gestión de nuestra seguridad y sus prioridades. Tenemos por una
parte el riesgo calculado, resultante de nuestro análisis, y este riesgo calculado se
ha de comparar con un cierto umbral (umbral de riesgo) determinado por la política
de seguridad de nuestra organización; el umbral de riesgo puede ser o bien un
número o bien una etiqueta de riesgo (por ejemplo, nivel de amenaza alto, impacto
alto, vulnerabilidad grave, etc.), y cualquier riesgo calculado superior al umbral ha
de implicar una decisión de reducción de riesgo. Si por el contrario el calculado es
menor que el umbral, se habla de riesgo residual, y el mismo se considera
asumible (no hay porqué tomar medidas para reducirlo). El concepto de asumible
es diferente al de riesgo asumido, que denota aquellos riesgos calculados
superiores al umbral pero sobre los que por cualquier razón (política, económica...)
se decide no tomar medidas de reducción; evidentemente, siempre hemos de huir
de                                  esta                                  situación.

Una vez conocidos y evaluados de cualquier forma los riesgos a los que nos
enfrentamos podremos definir las políticas e implementar las soluciones prácticas
- los mecanismos - para minimizar sus efectos. Los siguientes; son los puntos a
considerar al responder a las preguntas que nos hemos planteado al principio de
este punto:

Identificación de los Recursos
Identificación de la Amenazas
Medidas de Protección



4. Rastreo, identificación y análisis de redes.


4.1 Clasificación de las redes:
Como ya hemos visto, se denomina red de computadoras una serie de host
autónomos y dispositivos especiales intercomunicador entre sí.
Ahora bien, este concepto genérico de red incluye multitud de tipos diferentes de
redes y posibles configuraciones de las mismas, por lo que desde un principio
surgió la necesidad de establecer clasificaciones que permitieran identificar
estructuras de red concretas.
La posibles clasificaciones de las redes pueden ser muchas, atendiendo cada una
de ellas a diferentes propiedades, siendo las más comunes y aceptadas las
siguientes:
Clasificación de las redes según su tamaño y extensión:
       Redes LAN. Las redes de área local (Local Area Network) son redes de
    ordenadores cuya extensión es del orden de entre 10 metros a 1 kilómetro.
    Son redes pequeñas, habituales en oficinas, colegios y empresas pequeñas,
    que generalmente usan la tecnología de broadcast, es decir, aquella en que a
    un sólo cable se conectan todas las máquinas. Como su tamaño es
    restringido, el peor tiempo de transmisión de datos es conocido, siendo
    velocidades de transmisión típicas de LAN las que van de 10 a 100 Mbps
    (Megabits por segundo).
       Redes MAN. Las redes de área metropolitana (Metropolitan Area Network)
    son redes de ordenadores de tamaño superior a una LAN, soliendo abarcar el
    tamaño de una ciudad. Son típicas de empresas y organizaciones que poseen
    distintas oficinas repartidas en un mismo área metropolitana, por lo que, en su
    tamaño máximo, comprenden un área de unos 10 kilómetros.
       Redes WAN. Las redes de área amplia (Wide Area Network) tienen un
    tamaño superior a una MAN, y consisten en una colección de host o de redes
    LAN conectadas por una subred. Esta subred está formada por una serie de
    líneas de transmisión interconectadas por medio de routers, aparatos de red
    encargados de rutear o dirigir los paquetes hacia la LAN o host adecuado,
    enviándose éstos de un router a otro. Su tamaño puede oscilar entre 100 y
    1000 kilómetros.
        Redes internet. Una internet es una red de redes, vinculadas mediante
    ruteadores gateways. Un gateway o pasarela es un computador especial que
    puede traducir información entre sistemas con formato de datos diferentes. Su
    tamaño puede ser desde 10000 kilómetros en adelante, y su ejemplo más
    claro es Internet, la red de redes mundial.
        Redes inalámbricas. Las redes inalámbricas son redes cuyos medios
    físicos no son cables de cobre de ningún tipo, lo que las diferencia de las
    redes anteriores. Están basadas en la transmisión de datos mediante ondas
    de radio, microondas, satélites o infrarrojos.
Clasificación de las redes según la tecnología de transmisión:
    a. Redes de Broadcast. Aquellas redes en las que la transmisión de datos se
       realiza por un sólo canal de comunicación, compartido entonces por todas
       las máquinas de la red. Cualquier paquete de datos enviado por cualquier
       máquina es recibido por todas las de la red.
    b. Redes Point-To-Point. Aquellas en las que existen muchas conexiones
       entre parejas individuales de máquinas. Para poder transmitir los paquetes
       desde una máquina a otra a veces es necesario que éstos pasen por
       máquinas intermedias, siendo obligado en tales casos un trazado de rutas
       mediante dispositivos routers.
Clasificación de las redes según el tipo de transferencia de datos que soportan:
    I. Redes de transmisión simple. Son aquellas redes en las que los datos
         sólo pueden viajar en un sentido.
    II. Redes Half-Duplex. Aquellas en las que los datos pueden viajar en ambos
         sentidos, pero sólo en uno de ellos en un momento dado. Es decir, sólo
         puede haber transferencia en un sentido a la vez.
    III. Redes Full-Duplex. Aquellas en las que los datos pueden viajar en ambos
         sentidos a la vez.


4.2 Topologías de red:
Hemos visto en el tema sobre el modelo OSI y la arquitectura TCP/IP que las
redes de ordenadores surgieron como una necesidad de interconectar los
diferentes host de una empresa o institución para poder así compartir recursos y
equipos específicos.
Pero los diferentes componentes que van a formar una red se pueden
interconectar o unir de diferentes formas, siendo la forma elegida un factor
fundamental que va a determinar el rendimiento y la funcionalidad de la red.
La disposición de los diferentes componentes de una red se conoce con el nombre
de topología de la red. La topología idónea para una red concreta va a depender
de diferentes factores, como el número de máquinas a interconectar, el tipo de
acceso al medio físico que deseemos, etc.
Podemos distinguir tres aspectos diferentes a la hora de considerar una topología:
    1. La topología física, que es la disposición real de las máquinas, dispositivos
       de red y cableado (los medios) en la red.
    2. La topología lógica, que es la forma en que las máquinas se comunican a
       través del medio físico. Los dos tipos más comunes de topologías lógicas
       son broadcast (Ethernet) y transmisión de tokens (Token Ring).
    3. La topología matemática, mapas de nodos y enlaces, a menudo formando
       patrones.
La topología de broadcast simplemente significa que cada host envía sus datos
hacia todos los demás hosts del medio de red. Las estaciones no siguen ningún
orden para utilizar la red, sino que cada máquina accede a la red para transmitir
datos en el momento en que lo necesita. Esta es la forma en que funciona
Ethernet.
En cambio, la transmisión de tokens controla el acceso a la red al transmitir un
token eléctrico de forma secuencial a cada host. Cuando un host recibe el token
significa que puede enviar datos a través de la red. Si el host no tiene ningún dato
para enviar, transmite el token hacia el siguiente host y el proceso se vuelve a
repetir.
Vamos a ver a continuación los principales modelos de topología.
Modelos de topología
Las principales modelos de topología son:
Topología de bus
La topología de bus tiene todos sus nodos conectados directamente a un enlace y
no tiene ninguna otra conexión entre nodos. Físicamente cada host está
conectado a un cable común, por lo que se pueden comunicar directamente,
aunque la ruptura del cable hace que los hosts queden desconectados.


La topología de bus permite que todos los dispositivos de la red puedan ver todas
las señales de todos los demás dispositivos, lo que puede ser ventajoso si desea
que todos los dispositivos obtengan esta información. Sin embargo, puede
representar una desventaja, ya que es común que se produzcan problemas de
tráfico y colisiones, que se pueden paliar segmentando la red en varias partes.
Es la topología más común en pequeñas LAN, con hub o switch final en uno de los
extremos.
Topología de anillo
Una topología de anillo se compone de un solo anillo cerrado formado por nodos y
enlaces, en el que cada nodo está conectado solamente con los dos nodos
adyacentes.


Los dispositivos se conectan directamente entre sí por medio de cables en lo que
se denomina una cadena margarita. Para que la información pueda circular, cada
estación debe transferir la información a la estación adyacente.
Topología de anillo doble
Una topología en anillo doble consta de dos anillos concéntricos, donde cada host
de la red está conectado a ambos anillos, aunque los dos anillos no están
conectados directamente entre sí. Es análoga a la topología de anillo, con la
diferencia de que, para incrementar la confiabilidad y flexibilidad de la red, hay un
segundo anillo redundante que conecta los mismos dispositivos.
La topología de anillo doble actúa como si fueran dos anillos independientes, de
los cuales se usa solamente uno por vez.



Topología en estrella
La topología en estrella tiene un nodo central desde el que se irradian todos los
enlaces hacia los demás nodos. Por el nodo central, generalmente ocupado por un
hub, pasa toda la información que circula por la red.


La ventaja principal es que permite que todos los nodos se comuniquen entre sí de
manera conveniente. La desventaja principal es que si el nodo central falla, toda la
red se desconecta.



Topología en estrella extendida:
La topología en estrella extendida es igual a la topología en estrella, con la
diferencia de que cada nodo que se conecta con el nodo central también es el
centro de otra estrella. Generalmente el nodo central está ocupado por un hub o
un switch, y los nodos secundarios por hubs.
La ventaja de esto es que el cableado es más corto y limita la cantidad de
dispositivos que se deben interconectar con cualquier nodo central.
La topología en estrella extendida es sumamente jerárquica, y busca que la
información se mantenga local. Esta es la forma de conexión utilizada actualmente
por el sistema telefónico.
Topología en árbol
La topología en árbol es similar a la topología en estrella extendida, salvo en que
no tiene un nodo central. En cambio, un nodo de enlace troncal, generalmente
ocupado por un hub o switch, desde el que se ramifican los demás nodos.


El enlace troncal es un cable con varias capas de ramificaciones, y el flujo de
información es jerárquico. Conectado en el otro extremo al enlace troncal
generalmente se encuentra un host servidor.



Topología en malla completa
En una topología de malla completa, cada nodo se enlaza directamente con los
demás nodos. Las ventajas son que, como cada todo se conecta físicamente a los
demás, creando una conexión redundante, si algún enlace deja de funcionar la
información puede circular a través de cualquier cantidad de enlaces hasta llegar a
destino. Además, esta topología permite que la información circule por varias rutas
a través de la red.


La desventaja física principal es que sólo funciona con una pequeña cantidad de
nodos, ya que de lo contrario la cantidad de medios necesarios para los enlaces, y
la cantidad de conexiones con los enlaces se torna abrumadora.
Topología de red celular
La topología celular está compuesta por áreas circulares o hexagonales, cada una
de las cuales tiene un nodo individual en el centro.


La topología celular es un área geográfica dividida en regiones (celdas) para los
fines de la tecnología inalámbrica. En esta tecnología no existen enlaces físicos;
sólo hay ondas electromagnéticas.
La ventaja obvia de una topología celular (inalámbrica) es que no existe ningún
medio tangible aparte de la atmósfera terrestre o el del vacío del espacio exterior
(y los satélites). Las desventajas son que las señales se encuentran presentes en
cualquier lugar de la celda y, de ese modo, pueden sufrir disturbios y violaciones
de seguridad.
Como norma, las topologías basadas en celdas se integran con otras topologías,
ya sea que usen la atmósfera o los satélites.
Topología irregular
En este tipo de topología no existe un patrón obvio de enlaces y nodos. El
cableado no sigue un modelo determinado; de los nodos salen cantidades
variables de cables. Las redes que se encuentran en las primeras etapas de
construcción, o se encuentran mal planificadas, a menudo se conectan de esta
manera.
Las topologías LAN más comunes son:
   ●   Ethernet: topología de bus lógica y en estrella física o en estrella extendida.
   ●   Token Ring: topología de anillo lógica y una topología física en estrella.
   ●   FDDI: topología de anillo lógica y topología física de anillo doble.

Redes LAN Ethernet
Ethernet es la tecnología de red LAN más usada, resultando idóneas para
aquellos casos en los que se necesita una red local que deba transportar tráfico
esporádico y ocasionalmente pesado a velocidades muy elevadas. Las redes
Ethernet se implementan con una topología física de estrella y lógica de bus, y se
caracterizan por su alto rendimiento a velocidades de 10-100 Mbps.
El origen de las redes Ethernet hay que buscarlo en la Universidad de Hawai,
donde se desarrollo, en los años setenta, el Método de Acceso Múltiple con
Detección de Portadora y Detección de Colisiones, CSMA/CD (Carrier Sense
and Multiple Access with Collition Detection), utilizado actualmente por Ethernet.
Este método surgió ante la necesidad de implementar en las islas Hawai un
sistema de comunicaciones basado en la transmisión de datos por radio, que se
llamó Aloha, y permite que todos los dispositivos puedan acceder al mismo medio,
aunque sólo puede existir un único emisor encada instante. Con ello todos los
sistemas pueden actuar como receptores de forma simultánea, pero la información
debe ser transmitida por turnos.
El centro de investigaciones PARC (Palo Alto Research Center) de la Xerox
Corporation desarrolló el primer sistema Ethernet experimental en los años 70,
que posteriormente sirvió como base de la especificación 802.3 publicada en 1980
por el Institute of Electrical and Electronic Engineers (IEEE).
Las redes Ethernet son de carácter no determinista, en la que los hosts pueden
transmitir datos en cualquier momento. Antes de enviarlos, escuchan el medio de
transmisión para determinar si se encuentra en uso. Si lo está, entonces esperan.
En caso contrario, los host comienzan a transmitir. En caso de que dos o más host
empiecen a transmitir tramas a la vez se producirán encontronazos o choques
entre tramas diferentes que quieren pasar por el mismo sitio a la vez. Este
fenómeno se denomina colisión, y la porción de los medios de red donde se
producen colisiones se denomina dominio de colisiones.
Una colisión se produce pues cuando dos máquinas escuchan para saber si hay
tráfico de red, no lo detectan y, acto seguido transmiten de forma simultánea. En
este caso, ambas transmisiones se dañan y las estaciones deben volver a
transmitir más tarde.
Para intentar solventar esta pérdida de paquetes, las máquinas poseen
mecanismos de detección de las colisiones y algoritmos de postergación que
determinan el momento en que aquellas que han enviado tramas que han sido
destruidas por colisiones pueden volver a transmitirlas.


Existen dos especificaciones diferentes para un mismo tipo de red, Ethernet y
IEEE 802.3. Ambas son redes de broadcast, lo que significa que cada máquina
puede ver todas las tramas, aunque no sea el destino final de las mismas. Cada
máquina examina cada trama que circula por la red para determinar si está
destinada a ella. De ser así, la trama pasa a las capas superiores para su
adecuado procesamiento. En caso contrario, la trama es ignorada.
Ethernet proporciona servicios correspondientes a las capas física y de enlace de
datos del modelo de referencia OSI, mientras que IEEE 802.3 especifica la capa
física y la porción de acceso al canal de la capa de enlace de datos, pero no
define ningún protocolo de Control de Enlace Lógico.
Ethernet es una tecnología de broadcast de medios compartidos. El método de
acceso CSMA/CD que se usa en Ethernet ejecuta tres funciones:
    1. Transmitir y recibir paquetes de datos.
    2. Decodificar paquetes de datos y verificar que las direcciones sean válidas
       antes de transferirlos a las capas superiores del modelo OSI.>
    3. Detectar errores dentro de los paquetes de datos o en la red.
Tanto Ethernet como IEEE 802.3 se implementan a través de la tarjeta de red o
por medio de circuitos en una placa dentro del host.
Formato de trama Ethernet
Según hemos visto, los datos generados en la capa de aplicación pasan a la capa
de transporte, que los divide en segmentos, porciones de datos aptas para su
transporte por res, y luego van descendiendo pos las sucesivas capas hasta llegar
a los medios físicos. Conforme los datos van bajando por la pila de capas, paso a
paso cada protocolo les va añadiendo una serie de cabeceras y datos adicionales
;necesarios para poder ser enviados a su destino correctamente. El resultado final
es una serie de unidades de información denominadas tramas, que son las que
viajan de un host a otro.
La forma final de la trama obtenida, en redes Ethernet, es la siguiente:


Y los principales campos que la forman son:



Preámbulo: Patrón de unos y ceros que indica a las estaciones receptoras que
una trama es Ethernet o IEEE 802.3. La trama Ethernet incluye un byte adicional
que es el equivalente al campo Inicio de Trama (SOF) de la trama IEEE 802.3.
   ●   Inicio de trama (SOF): Byte delimitador de IEEE 802.3 que finaliza con dos
       bits 1 consecutivos, y que sirve para sincronizar las porciones de recepción
       de trama de todas las estaciones de la red. Este campo se especifica
       explícitamente en Ethernet.
   ●   Direcciones destino y origen: Incluye las direcciones físicas (MAC) únicas
       de la máquina que envía la trama y de la máquina destino. La dirección
       origen siempre es una dirección única, mientras que la de destino puede ser
       de broadcast única (trama enviada a una sola máquina), de broadcast
       múltiple (trama enviada a un grupo) o de broadcast (trama enviada a todos
       los nodos).
   ●   Tipo (Ethernet): Especifica el protocolo de capa superior que recibe los
       datos una vez que se ha completado el procesamiento Ethernet.
   ●   Longitud (IEEE 802.3): Indica la cantidad de bytes de datos que sigue este
       campo.
   ●   Datos: Incluye los datos enviados en la trama. En las especificación IEEE
       802.3, si los datos no son suficientes para completar una trama mínima de
       64 bytes, se insertan bytes de relleno hasta completar ese tamaño (tamaño
       mínimo de trama). Por su parte, las especificaciones Ethernet versión 2 no
       especifican ningún relleno, Ethernet espera por lo menos 46 bytes de datos.
   ●   Secuencia de verificación de trama (FCS): Contiene un valor de verificación
       CRC (Control de Redundancia Cíclica) de 4 bytes, creado por el dispositivo
       emisor y recalculado por el dispositivo receptor para verificar la existencia
       de tramas dañadas.
Cuando un paquete es recibido por el destinatario adecuado, les retira la cabecera
de Ethernet y el checksum de verificación de la trama, comprueba que los datos
corresponden a un mensaje IP y entonces lo pasa a dicho protocolo para que lo
procese. El tamaño máximo de los paquetes en las redes Ethernet es de 1500
bytes.
Tipos de redes Ethernet
Existen por lo menos 18 variedades de Ethernet, relacionadas con el tipo de
cableado empleado y con la velocidad de transmisión.


Las tecnologías Ethernet más comunes y más importantes las son:
   ●   Ethernet 10Base2. Usa un cable coaxial delgado, por lo que se puede
       doblar más fácilmente, y además es más barato y fácil de instalar, aunque
       los segmentos de cable no pueden exceder de 200 metros y 30 nodos. Las
       conexiones se hacen mediante conectores en T, más fáciles de instalar y
       más seguros.
   ●   Ethernet 10Base5. También llamada Ethernet gruesa, usa un cable coaxial
       grueso, consiguiendo una velocidad de 10 Mbps. Puede tener hasta 100
       nodos conectados, con una longitud de cable de hasta 500 metros. Las
       conexiones se hacen mediante la técnica denominada derivaciones de
       vampiro, en las cuales se inserta un polo hasta la mitad del cable,
       realizándose la derivación en el interior de un transceiver, que contiene los
       elementos necesarios para la detección de portadores y choques. El
       transceiver se une al computador mediante un cable de hasta 50 metros.
   ●   Ethernet 10Base-T. Cada estación tiene una conexión con un hub central,
       y los cables usados son normalmente de par trenzado. Son las LAN más
       comunes hoy en día. Mediante este sistema se palian los conocidos
       defectos de las redes 10BAse2 y 10Base5, a saber, la mala detección de
       derivaciones no deseadas, de rupturas y de conectores flojos. Como
       desventaja, los cables tienen un límite de sólo 100 metros, y los hubs
       pueden resultar caros.
   ●   Ethernet 10Base-FX. Basada en el uso de fibra óptica para conectar las
       máquinas, lo que la hace cara para un planteamiento general de toda la red,
       pero idónea para la conexión entre edificios, ya que los segmentos pueden
       tener una longitud de hasta 2000 metros, al ser la fibra óptica insensible a
       los ruidos e interferencias típicos de los cables de cobre. Además, su
       velocidad de transmisión es mucho mayor.
   ●   Fast Ethernet. Las redes 100BaseFx (IEEE 802.3u) se crearon con la idea
       de paliar algunos de los fallos contemplados en las redes Ethernet 10Base-
       T y buscar una alternativa a las redes FDDI Son también conocidas como
       redes Fast Ethernet, y están basadas en una topología en estrella para fibra
       óptica. Con objeto de hacerla compatible con Ethernet 10Base-T, la
       tecnología Fast Ethernet preserva los formatos de los paquetes y las
       interfaces, pero aumenta la rapidez de transmisión hasta los 100 Mbps. En
       la redes Fast Ethernet se usan cables de cuatro pares trenzados de la clase
       3, uno de los cuales va siempre al hub central, otro viene siempre desde el
       hub, mientras que los otros dos pares son conmutables. En cuanto a la
       codificación de las señales, se sustituye la codificación Manchester por
       señalización ternaria, mediante la cual se pueden transmitir 4 bits a la vez.
       También se puede implementar Fast Ethernet con cableado de la clase 5 en
       topología de estrella (100BaseTX), pudiendo entonces soportar hasta 100
       Mbps con transmisión full dúplex.


Redes LAN Token Ring
Las redes Token Ring son redes de tipo determinista, al contrario de las redes
Ethernet. En ellas, el acceso al medio está controlado, por lo que solamente puede
transmitir datos una máquina por vez, implementándose este control por medio de
un token de datos, que define qué máquina puede transmitir en cada instante.
Token Ring e IEEE 802.5 son los principales ejemplos de redes de transmisión de
tokens.
Las redes de transmisión de tokens se implementan con una topología física de
estrella y lógica de anillo, y se basan en el transporte de una pequeña trama,
denominada token, cuya posesión otorga el derecho a transmitir datos. Si un nodo
que recibe un token no tiene información para enviar, transfiere el token al
siguiente nodo. Cada estación puede mantener al token durante un período de
tiempo máximo determinado, según la tecnología específica que se haya
implementado.


Cuando una máquina recibe un token y tiene información para transmitir, toma el
token y le modifica un bit, transformándolo en una secuencia de inicio de trama. A
continuación, agrega la información a transmitir a esta trama y la envía al anillo,
por el que gira hasta que llega a la estación destino.
Mientras la trama de información gira alrededor del anillo no hay ningún otro token
en la red, por lo que ninguna otra máquina puede realizar transmisiones.
Cuando la trama llega a la máquina destino, ésta copia la información contenida
en ella para su procesamiento y elimina la trama, con lo que la estación emisora
puede verificar si la trama se recibió y se copió en el destino.
Como consecuencia de este método determinista de transmisión, en las redes
Token Ring no se producen colisiones, a diferencia de las redes CSMA/CD como
Ethernet. Además, en las redes Token Ring se puede calcular el tiempo máximo
que transcurrirá antes de que cualquier máquina pueda realizar una transmisión, lo
que hace que sean ideales para las aplicaciones en las que cualquier demora
deba ser predecible y en las que el funcionamiento sólido de la red sea importante.
La primera red Token Ring fue desarrollada por la empresa IBM en los años
setenta, todavía sigue usándose y fue la base para la especificación IEEE 802.5
(método de acceso Token Ring), prácticamente idéntica y absolutamente
compatible con ella. Actualmente, el término Token Ring se refiere tanto a la red
Token Ring de IBM como a la especificación 802.5 del IEEE.
Las redes Token Ring soportan entre 72 y 260 estaciones a velocidades de 4 a 16
Mbps, se implementan mediante cableado de par trenzado, con blindaje o sin él, y
utilizan una señalización de banda base con codificación diferencial de
Manchester.
Tokens
Los tokens están formados por un byte delimitador de inicio, un byte de control de
acceso y un byte delimitador de fin. Por lo tanto, tienen una longitud de 3 bytes.


El delimitador de inicio alerta a cada estación ante la llegada de un token o de una
trama de datos/comandos. Este campo también incluye señales que distinguen al
byte del resto de la trama al violar el esquema de codificación que se usa en otras
partes de la trama.
    ●   El byte de control de acceso contiene los campos de prioridad y de reserva,
        así como un bit de token y uno de monitor. El bit de token distingue un
        token de una trama de datos/comandos y un bit de monitor determina si una
        trama gira continuamente alrededor del anillo.
    ●   El delimitador de fin señala el fin del token o de una trama de
        datos/comandos. Contiene bits que indican si hay una trama defectuosa y
        una trama que es la última de una secuencia lógica.
El tamaño de las tramas de datos/comandos varía según el tamaño del campo de
información. Las tramas de datos transportan información para los protocolos de
capa superior, mientras que las tramas de comandos contienen información de
control y no poseen datos para los protocolos de capa superior.
En las tramas de datos o instrucciones hay un byte de control de trama a
continuación del byte de control de acceso. El byte de control de trama indica si la
trama contiene datos o información de control. En las tramas de control, este byte
especifica el tipo de información de control.
A continuación del byte de control de trama hay dos campos de dirección que
identifican las estaciones destino y origen. Como en el caso de IEEE 802.5, la
longitud de las direcciones es de 6 bytes. El campo de datos está ubicado a
continuación del campo de dirección. La longitud de este campo está limitada por
el token de anillo que mantiene el tiempo, definiendo de este modo el tiempo
máximo durante el cual una estación puede retener al token.
Y a continuación del campo de datos se ubica el campo de secuencia de
verificación de trama (FCS). La estación origen completa este campo con un valor
calculado según el contenido de la trama. La estación destino vuelve a calcular el
valor para determinar si la trama se ha dañado mientras estaba en tránsito. Si la
trama está dañada se descarta. Como en el caso del token, el delimitador de fin
completa la trama de datos/comandos.
Sistema de prioridad
Las redes Token Ring usan un sistema de prioridad sofisticado que permite que
determinadas estaciones de alta prioridad usen la red con mayor frecuencia. Las
tramas Token Ring tienen dos campos que controlan la prioridad: el campo de
prioridad y el campo de reserva.
Sólo las estaciones cuya prioridad es igual o superior al valor de prioridad que
posee el token pueden tomar ese token. Una vez que se ha tomado el token y éste
se ha convertido en una trama de información, sólo las estaciones cuyo valor de
prioridad es superior al de la estación transmisora pueden reservar el token para el
siguiente paso en la red. El siguiente token generado incluye la mayor prioridad de
la estación que realiza la reserva. Las estaciones que elevan el nivel de prioridad
de un token deben restablecer la prioridad anterior una vez que se ha completado
la transmisión.


Mecanismos de control
Las redes Token Ring usan varios mecanismos para detectar y compensar los
fallos de la red. Uno de estos mecanismos consiste en seleccionar una estación
de la red Token Ring como el monitor activo. Esta estación actúa como una fuente
centralizada de información de temporización para otras estaciones del anillo y
ejecuta varias funciones de mantenimiento del anillo. Potencialmente cualquier
estación de la red puede ser la estación de monitor activo.
Una de las funciones de esta estación es la de eliminar del anillo las tramas que
circulan continuamente. Cuando un dispositivo transmisor falla, su trama puede
seguir circulando en el anillo e impedir que otras estaciones transmitan sus
propias tramas; esto puede bloquear la red. El monitor activo puede detectar estas
tramas, eliminarlas del anillo y generar un nuevo token.
La topología en estrella de la red Token Ring de IBM también contribuye a la
confiabilidad general de la red. Las MSAU (unidades de acceso de estación
múltiple) activas pueden ver toda la información de una red Token Ring, lo que les
permite verificar si existen problemas y, de ser necesario, eliminar estaciones del
anillo de forma selectiva.
Otro mecanismo de control de fallos de red es el conocido como Beaconing.
Cuando una estación detecta la existencia de un problema grave en la red (por
ejemplo, un cable roto), envía una trama de beacon. La trama de beacon define
un dominio de error. Un dominio de error incluye la estación que informa acerca
del error, su vecino corriente arriba activo más cercano (NAUN) y todo lo que se
encuentra entre ellos.
Entones el beaconing inicia un proceso denominado autoreconfiguración, en el
que los nodos situados dentro del dominio de error automáticamente ejecutan
diagnósticos. Este es un intento de reconfigurar la red alrededor de las áreas en
las que hay errores. Físicamente, las MSAU pueden lograrlo a través de la
reconfiguración eléctrica.


Redes LAN FDDI
Las redes FDDI (Fiber Distributed Data Interface - Interfaz de Datos Distribuida por
Fibra ) surgieron a mediados de los años ochenta para dar soporte a las
estaciones de trabajo de alta velocidad, que habían llevado las capacidades de las
tecnologías Ethernet y Token Ring existentes hasta el límite de sus posibilidades.
Están implementadas mediante una física de estrella (lo más normal) y lógica de
anillo doble de token, uno transmitiendo en el sentido de las agujas del reloj (anillo
principal ) y el otro en dirección contraria (anillo de respaldo o back up), que ofrece
una velocidad de 100 Mbps sobre distancias de hasta 200 metros, soportando
hasta 1000 estaciones conectadas. Su uso más normal es como una tecnología
de backbone para conectar entre sí redes LAN de cobre o computadores de alta
velocidad.
El tráfico de cada anillo viaja en direcciones opuestas. Físicamente, los anillos
están compuestos por dos o más conexiones punto a punto entre estaciones
adyacentes. Los dos anillos de la FDDI se conocen con el nombre de primario y
secundario. El anillo primario se usa para la transmisión de datos, mientras que el
anillo secundario se usa generalmente como respaldo.
Se distinguen en una red FDDI dos tipos de estaciones: las estaciones Clase B, o
estaciones de una conexión (SAS), se conectan a un anillo, mientras que las de
Clase A, o estaciones de doble conexión (DAS), se conectan a ambos anillos.


Las SAS se conectan al anillo primario a través de un concentrador que suministra
conexiones para varias SAS. El concentrador garantiza que si se produce una falla
o interrupción en el suministro de alimentación en algún SAS determinado, el anillo
no se interrumpa. Esto es particularmente útil cuando se conectan al anillo PC o
dispositivos similares que se encienden y se apagan con frecuencia.
Las redes FDDI utilizan un mecanismo de transmisión de tokens similar al de las
redes Token Ring, pero además, acepta la asignación en tiempo real del ancho de
banda de la red, mediante la definición de dos tipos de tráfico:
   1. Tráfico Síncrono: Puede consumir una porción del ancho de banda total de
      100 Mbps de una red FDDI, mientras que el tráfico asíncrono puede
      consumir el resto.
   2. Tráfico Asíncrono: Se asigna utilizando un esquema de prioridad de ocho
      niveles. A cada estación se asigna un nivel de prioridad asíncrono.
El ancho de banda síncrono se asigna a las estaciones que requieren una
capacidad de transmisión continua. Esto resulta útil para transmitir información de
voz y vídeo. El ancho de banda restante se utiliza para las transmisiones
asíncronas
FDDI también permite diálogos extendidos, en los cuales las estaciones pueden
usar temporalmente todo el ancho de banda asíncrono.
El mecanismo de prioridad de la FDDI puede bloquear las estaciones que no
pueden usar el ancho de banda síncrono y que tienen una prioridad asíncrona
demasiado baja.
En cuanto a la codificación, FDDI no usa el sistema de Manchester, sino que
implementa un esquema de codificación denominado esquema 4B/5B, en el que
se usan 5 bits para codificar 4. Por lo tanto, dieciséis combinaciones son datos,
mientras que las otras son para control.
Debido a la longitud potencial del amillo, una estación puede generar una nueva
trama inmediatamente después de transmitir otra, en vez de esperar su vuelta, por
lo que puede darse el caso de que en el anillo haya varias tramas a la vez.
Las fuentes de señales de los transceptores de la FDDI son LEDs (diodos
electroluminiscentes) o lásers. Los primeros se suelen usar para tendidos entre
máquinas, mientras que los segundos se usan para tendidos primarios de
backbone.
Tramas FDDI
Las tramas en la tecnología FDDI poseen una estructura particular. Cada trama se
compone de los siguientes campos:
Preámbulo, que prepara cada estación para recibir la trama entrante.
   ●   Delimitador de inicio, que indica el comienzo de una trama, y está formado
       por patrones de señalización que lo distinguen del resto de la trama.
   ●   Control de trama, que contiene el tamaño de los campos de dirección, si la
       trama contiene datos asíncronos o síncronos y otra información de control.
   ●   Dirección destino, que contiene la dirección física (6 bytes) de la máquina
       destino, pudiendo ser una dirección unicast (singular), multicast (grupal) o
       broadcast (cada estación).
   ●   Dirección origen, que contiene la dirección física (6 bytes) de la máquina
       que envió la trama.
   ●   Secuencia de verificación de trama (FCS), campo que completa la estación
       origen con una verificación por redundancia cíclica calculada (CRC), cuyo
       valor depende del contenido de la trama. La estación destino vuelve a
       calcular el valor para determinar si la trama se ha dañado durante el
       tránsito. La trama se descarta si está dañada.
   ●   Delimitador de fin, que contiene símbolos que indican el fin de la trama.
   ●   Estado de la trama, que permite que la estación origen determine si se ha
       producido un error y si la estación receptora reconoció y copió la trama.
Medios en las redes FDDI
FDDI especifica una LAN de dos anillos de 100 Mbps con transmisión de tokens,
que usa un medio de transmisión de fibra óptica.
Aunque funciona a velocidades más altas, FDDI es similar a Token Ring. Ambas
configuraciones de red comparten ciertas características, tales como su topología
(anillo) y su método de acceso al medio (transferencia de tokens).
Una de las características de FDDI es el uso de la fibra óptica como medio de
transmisión. La fibra óptica ofrece varias ventajas con respecto al cableado de
cobre tradicional, por ejemplo:
   ●   Seguridad: la fibra no emite señales eléctricas que se pueden interceptar.
   ●   Confiabilidad: la fibra es inmune a la interferencia eléctrica.
   ●   Velocidad: la fibra óptica tiene un potencial de rendimiento mucho mayor
       que el del cable de cobre.
Existen dos clases de fibra: monomodo (también denominado modo único); y
multimodo. La fibra monomodo permite que sólo un modo de luz se propague a
través de ella, mientras que la fibra multimodo permite la propagación de múltiples
modos de luz. Los modos se pueden representar como haces de rayos luminosos
que entran a la fibra en un ángulo determinado.



Cuando se propagan múltiples modos de luz a través de la fibra, éstos pueden
recorrer diferentes distancias, según su ángulo de entrada. Como resultado, no
llegan a su destino simultáneamente; a este fenómeno se le denomina dispersión
modal.
La fibra monomodo puede acomodar un mayor ancho de banda y permite el
tendido de cables de mayor longitud que la fibra multimodo. Debido a estas
características, la fibra monomodo se usa a menudo para la conectividad entre
edificios mientras que la fibra multimodo se usa con mayor frecuencia para la
conectividad dentro de un edificio. La fibra multimodo usa los LED como
dispositivos generadores de luz, mientras que la fibra monomodo generalmente
usa láser.


4.3 Modelo ISO/OSI:

En un principio, los computadores eran elementos aislados, constituyendo cada
uno de ellos una estación de trabajo independiente, una especie de "isla
informática".
Cada computador precisaba sus propios periféricos y contenía sus propios
archivos, de tal forma que cuando una persona necesitaba imprimir un documento
y no disponía de una impresora conectada directamente a su equipo, debía copiar
éste en un disquete, desplazarse a otro equipo con impresora instalada e
imprimirlo desde allí. La única solución a este problema era instalar otra impresora
en el primer equipo, lo que acarreaba una duplicación de dispositivos y de
recursos.
Además, era imposible implementar una administración conjunta de todos los
ordenadores, por lo que la configuración y gestión de todos y cada uno de los
equipos independientes y de los periféricos a ellos acoplados era una tarea ardua
para el responsable de esta labor.
Esta forma de trabajo era a todas luces poco práctica, sobre todo cuando las
empresas e instituciones fueron ampliando su número de computadores.
Se hizo necesario entonces implementar sistemas que permitieran la
comunicación entre diferentes ordenadores y la correcta transferencia de datos
entre ellos, surgiendo de esta forma el concepto de "redes de ordenadores" y de
"trabajo en red" (networking).
A mediados de los 70 diversos fabricantes desarrollaron sus propios sistemas de
redes locales. En 1980 la empresa Xerox, en cooperación con Digital Equipment
Corporation e Intel, desarrolló las especificaciones del primer sistema de red,
denominado EtherNet. En 1982 aparecen los ordenadores personales, y en 1986
IBM introdujo la red TokenRing.
El principal inconveniente de estos sistemas de comunicación en red fue que cada
uno de ellos era propietario de una empresa particular, siendo desarrollados con
hardware y software propios, con elementos protegidos y cerrados, que usaban
protocolos y arquitecturas diferentes. Como consecuencia de ello, la comunicación
entre ordenadores pertenecientes a distintas redes era imposible.
Cuando las empresas intentaron comunicar redes situadas en lugares diferentes,
cada una con una implementación particular, se dieron cuenta de que necesitaban
salir de los sistemas de networking propietarios, optando por una arquitectura de
red con un modelo común que hiciera posible interconectar varias redes sin
problemas.
Para solucionar este problema, la Organización Internacional para la
Normalización (ISO) realizó varias investigaciones acerca de los esquemas de red.
La ISO reconoció que era necesario crear un modelo que pudiera ayudar a los
diseñadores de red a implementar redes que pudieran comunicarse y trabajar en
conjunto (interoperabilidad) y por lo tanto, elaboraron el modelo de referencia OSI
en 1984.
En la actualidad, una adecuada interconexión entre los usuarios y procesos de
una empresa u organización, puede constituir una clara ventaja competitiva. La
reducción de costes de periféricos, o la facilidad para compartir y transmitir
información son los puntos claves en que se apoya la creciente utilización de
redes.

.El modelo OSI

El Modelo de Referencia de Interconexión de Sistemas Abiertos, OSI-RM (Open
System Interconection-Reference Model) proporcionó a los fabricantes un conjunto
de estándares que aseguraron una mayor compatibilidad e interoperabilidad entre
los distintos tipos de tecnología de red utilizados por las empresas a nivel mundial.
Para poder simplificar el estudio y la implementación de la arquitectura necesaria,
la ISO dividió el modelo de referencia OSI en capas, entendiéndose por capa una
entidad     que     realiza     de      por   sí    una     función      específica.
Cada capa define los procedimientos y las reglas (protocolos normalizados) que
los subsistemas de comunicaciones deben seguir, para poder comunicarse con
sus procesos correspondientes de los otros sistemas. Esto permite que un
proceso que se ejecuta en una computadora, pueda comunicarse con un proceso
similar en otra computadora, si tienen implementados los mismos protocolos de
comunicaciones de capas OSI.
Los criterios que llevaron a este modelo de referencia fueron:
    ●   Deberá crearse una nueva capa siempre que se precise un nuevo grado de
        abstracción.
    ●   A cada capa deberá asignarse un numero bien definido de funciones
        propias.
    ●   La funcionalidad de cada capa deberá tener en cuenta la posibilidad de
        definir protocolos normalizados a nivel internacional.
    ●   La frontera de las capas será tal que se minimice el flujo de información a
        través de la interfaz entre ambas.
    ●   El numero de capas será lo suficientemente grande como para no reunir en
        un nivel funcionalidades distinta y lo suficientemente pequeño para que el
        resultado final sea manejable en la práctica.BBB
En el modelo de referencia OSI hay siete capas numeradas, cada una de las
cuales ilustra una función de red particular. La división de la red en siete capas
presenta las siguientes ventajas:
    1. Divide la comunicación de red en partes más pequeñas y sencillas.
    2. Normaliza los componentes de red para permitir el desarrollo y el soporte
       de los productos de diferentes fabricantes.
    3. Permite a los distintos tipos de hardware y software de red comunicarse
       entre sí de una forma totalmente definida.
    4. Divide la comunicación de red en partes más pequeñas para simplificar el
       aprendizaje.
Una analogía del sistema de capas puede ser la forma en que una carta es
enviada desde el emisor hasta el destinatario. En este proceso intervienen una
serie de entidades o capas (carteros, oficinas postales, medios de transporte,
etc.), cada una de las cuales realiza una serie de funciones específicas,
necesarias para el funcionamiento de las demás y para la entrega efectiva de la
carta.
Las sietes capas OSI son:


Capa 7: La capa de aplicación.
La capa de aplicación es la capa del modelo OSI más cercana al usuario, y está
relacionada con las funciones de mas alto nivel, proporcionando soporte a las
aplicaciones o actividades del sistema, suministrando servicios de red a las
aplicaciones del usuario y definiendo los protocolos usados por las aplicaciones
individuales.
Es el medio por el cual los procesos las aplicaciones de usuario acceden a la
comunicación por red mediante el entorno OSI, proporcionando los procedimientos
precisos para ello.
Los procesos de las aplicaciones se comunican entre sí por medio de entidades
de aplicación propias, estando éstas controladas por protocolos específicos de la
capa de aplicación, que a su vez utilizan los servicios de la capa de presentación,
situada inmediatamente debajo en el modelo.
Difiere de las demás capas debido a que no proporciona servicios a ninguna otra
capa OSI, sino solamente a aplicaciones que se encuentran fuera del modelo
(procesadores de texto, hojas de cálculo, navegadores web, etc.).
La capa de aplicación establece la disponibilidad de los diversos elementos que
deben participar en la comunicación, sincroniza las aplicaciones que cooperan
entre sí y establece acuerdos sobre los procedimientos de recuperación de errores
y control de la integridad de los datos.
Capa 6: La capa de presentación.
La capa de presentación proporciona sus servicios a la capa de aplicación,
garantizando que la información que envía la capa de aplicación de un sistema
pueda ser entendida y utilizada por la capa de aplicación de otro, estableciendo el
contexto sintáctico del diálogo.
Su tarea principal es aislar a las capas inferiores del formato de los datos de las
aplicaciones específicas, transformando los formatos particulares (ASCII, EBCDIC,
etc.) en un formato común de red, entendible por todos los sistemas y apto para
ser enviado por red.
Es también las responsable de la obtención y de la liberalización de la conexión de
sesión cuando existan varias alternativas disponibles.
Para cumplir estas funciones, la capa de presentación realiza las siguientes
operaciones:
   ●   Traducir entre varios formatos de datos utilizando un formato común,
       estableciendo la sintaxis y la semántica de la información transmitida. Para
       ello convierte los datos desde el formato local al estándar de red y
       viceversa.
   ●   Definir la estructura de los datos a transmitir. Por ejemplo, en el caso de un
       acceso a base de datos, definir el orden de transmisión y la estructura de
       los registros.
   ●   Definir el código a usar para representar una cadena de caracteres (ASCII,
       EBCDIC, etc).
   ●   Dar formato a la información para visualizarla o imprimirla.
   ●   Aplicar a los datos procesos criptográficos cuando sea necesario.
Capa 5: La capa de sesión.
La capa de sesión proporciona sus servicios a la capa de presentación,
proporcionando el medio necesario para que las entidades de presentación de dos
host que se están comunicando por red organicen y sincronicen su diálogo y
procedan al intercambio de datos.
Sus principales funciones son:
   ●   Establecer, administrar y finalizar las sesiones entre dos hosts (máquinas
       en red) que se están comunicando.
   ●   Si por algún motivo una sesión falla por cualquier causa ajena al usuario,
       restaurar la sesión a partir de un punto seguro y sin perdida de datos o, si
       esto no es posible, terminar la sesión de una manera ordenada,
       chequeando y recuperando todas sus funciones, evitando así problemas en
       sistemas transaccionales.
   ●   Sincronizar el diálogo entre las capas de presentación de los dos hosts y
       administrar su intercambio de datos, estableciendo las reglas o protocolos
       para el dialogo entre máquinas, regulando quien habla y por cuanto tiempo.
   ●   Conseguir una transferencia de datos eficiente y un registro de excepciones
       acerca de los problemas de la capa de sesión, presentación y aplicación.
   ●   Manejar tokens . Los tokens son objetos abstractos y únicos que se usan
       para controlar las acciones de los participantes en la comunicación, base de
       ciertos tipos de redes, como Token Ring o FDDI.
   ●   Hacer checkpoints, que son puntos de recuerdo en la transferencia de
       datos, necesarios para la correcta recuperación de sesiones perdidas.
Capa 4: La capa de transporte.
La capa de transporte proporciona sus servicios a la capa de sesión, efectuando la
transferencia de datos entre dos entidades de sesión.
Para ello, divide los datos originados en el host emisor en unidades apropiadas,
denominadas segmentos , que vuelve a reensamblar en el sistema del host
receptor.
Mientras que las capas de aplicación, presentación y sesión están relacionadas
con aspectos de las aplicaciones de usuario, las tres capas inferiores se encargan
del transporte de datos. Además, la capa de transporte es la primera que se
comunica directamente con su capa par de destino, ya que la comunicación de las
capas anteriores es de tipo máquina a máquina.
La capa de transporte intenta suministrar un servicio de transporte de datos que
aísle las capas superiores de los detalles del mismo, encargándose de conseguir
una transferencia de datos segura y económica y un transporte confiable de datos
entre los nodos de la red.
Para ello, la capa de transporte establece, mantiene y termina adecuadamente los
circuitos virtuales, proporcionando un servicio confiable mediante el uso de
sistemas de detección y recuperación de errores de transporte.
Se conocen con el nombre de circuitos virtuales a las conexiones que se
establecen dentro de una red. En ellos no hay la necesidad de tener que elegir
una ruta nueva para cada paquete, ya que cuando se inicia la conexión se
determina una ruta de la fuente al destino, ruta que es usada para todo el tráfico
de datos posterior.
Podemos resumir las funciones de la capa de transporte en los siguientes puntos:
   ●   Controlar la interacción entre procesos usuarios en las máquinas que se
       comunican.
   ●   Incluir controles de integración entre usuarios de la red para prevenir
       perdidas o doble procesamiento de transmisiones.
   ●   Controlar el flujo de transacciones y el direccionamiento de procesos de
       maquina a procesos de usuario.
   ●   Asegurar que se reciban todos los datos y en el orden adecuado, realizando
       un control de extremo a extremo.
   ●   Aceptar los datos del nivel de sesión, fragmentándolos en unidades más
       pequeñas aptas para el transporte confiable, llamadas segmentos, que
       pasa luego a la capa de red para su envío.
   ●   Realizar funciones de control y numeración de las unidades de información
       (los segmentos).
   ●   Reensamblar los mensajes en el host destino, a partir de los segmentos
       que lo forman.
   ●   Garantizar la transferencia de información a través de la red.
Capa 3: La capa de red.
La capa de red proporciona sus servicios a la capa de transporte, siendo una capa
compleja que proporciona conectividad y selección de la mejor ruta para la
comunicación entre máquinas que pueden estar ubicadas en redes
geográficamente distintas.
Es la responsable de las funciones de conmutación y enrutamiento de la
información (direccionamiento lógico), proporcionando los procedimientos
necesarios para el intercambio de datos entre el origen y el destino, por lo que es
necesario que conozca la topología de la red (forma en que están interconectados
los nodos), con objeto de determinar la ruta más adecuada.
Sus principales funciones son:
    ●   Dividir los mensajes de la capa de transporte (segmentos) en unidades más
        complejas, denominadas paquetes , a los que asigna las direcciones
        lógicas de los host que se están comunicando.
    ●   Conocer la topología de la red y manejar el caso en que la máquina origen y
        la máquina destino estén en redes distintas.
    ●   Encaminar la información a través de la red en base a las direcciones del
        paquete, determinando los métodos de conmutación y enrutamiento a
        través de dispositivos intermedios (routers).
    ●   Enviar los paquetes de nodo a nodo usando un circuito virtual o
        datagramas.
    ●   Ensamblar los paquetes en el host destino.
En esta capa es donde trabajan los routers, dispositivos encargados de encaminar
o dirigir los paquetes de datos desde el host origen hasta el host destino a través
de la mejor ruta posible entre ellos.


Capa 2: La capa de enlace de datos.
La capa de enlace proporciona sus servicios a la capa de red, suministrando un
tránsito de datos confiable a través de un enlace físico.
Se ocupa del direccionamiento físico, la topología de red, el acceso a la misma, la
notificación de errores, la formación y entrega ordenada de datos y control de flujo.
Su principal misión es convertir el medio de transmisión en un medio libre de
errores de cualquier tipo, realizando para ello las siguientes funciones:
    ●   Establecer los medios necesarios para una comunicación confiable y
        eficiente entre dos máquinas en red.
    ●   Agregar una secuencia especial de bits al principio y al final de los paquetes
        de datos, estructurando este flujo bajo un formato predefinido, denominado
        trama , que suele ser de unos cientos de bytes.
    ●   Sincronizar el envío de las tramas, transfiriéndolas de una forma confiable
        libre de errores. Para detectar y controlar los errores se añaden bits de
        paridad, se usan CRC (Códigos Cíclicos Redundantes) y envío de acuses
        de recibo positivos y negativos, y para evitar tramas repetidas se usan
        números de secuencia en ellas.
    ●   Controlar la congestión de la red.
    ●   Regular la velocidad de tráfico de datos.
    ●   Controlar el flujo de tramas mediante protocolos que prohíben que el
        remitente envíe tramas sin la autorización explícita del receptor,
        sincronizando así su emisión y recepción.
    ●   Encargarse del acceso de los datos al medio (soportes físicos de la red).


Capa 1: La capa física.
La misión principal de esta capa es transmitir bits por un canal de comunicación,
de manera que cuanto envíe el emisor llegue sin alteración al receptor.
La capa física proporciona sus servicios a la capa de enlace de datos, definiendo
las especificaciones eléctricas, mecánicas, de procedimiento y funcionales para
activar, mantener y desactivar el enlace físico entre sistemas finales, relacionando
la agrupación de circuitos físicos a través de los cuales los bits son transmitidos.
Sus principales funciones las podemos resumir en:
    ●   Definir las características materiales (componentes y conectores
        mecánicos) y eléctricas (niveles de tensión) que se van a usar en la
        transmisión de los datos por los medios físicos.
    ●   Definir las características funcionales de la interfaz (establecimiento,
        mantenimiento y liberación del enlace físico).
    ●   Transmitir el flujo de bits a través del medio.
    ●   Manejar voltajes y pulsos eléctricos.
    ●   Especificar cables, conectores y componentes de interfaz con el medio de
        transmisión, polos en un enchufe, etc.
    ●   Garantizar la conexión (aunque no la fiabilidad de ésta).
Esta capa solamente reconoce bits individuales.


4.4 Medios de transmisión:

Cable de Par Trenzado.

 Los cables de Par trenzado son utilizados en Tokeng ring, Ethernet, 10BaseT
(ethernet 10MB/s)



Cable coaxial

El cable coaxial consta de un núcleo de cobre sólido rodeado por un aislante, una
especie de combinación entre pantalla y cable de tierra y un revestimiento
protector exterior. En el pasado, el cable coaxial permitió una transmisión más alta
(10 Mbps) que el cable de par trenzado, aunque las recientes técnicas de
transmisión sobre par trenzado igualan e incluso superan la velocidad de
transmisión por cable coaxial. Sin embargo, los cables coaxiales pueden conectar
los dispositivos de la red a distancias más largas que los de par trenzado. A pesar
de ser el cable coaxial el medio tradicional de transmisión en redes basadas en
Ethernet y ARCNET, la utilización de par trenzado y fibra óptica ya es muy común
hoy en día sobre este tipo de redes.



Fibra óptica

El cable de fibra óptica transmite señales luminosas (fotones) a través de un
núcleo de dióxido de silicio puro tan diáfano que un espesor de más de tres millas
del mismo no produce distorsión en una visión a su través. La transmisión fotónica
no produce emisiones externas al cable, sin ser afectada por la radiación exterior.
El cable de fibra se prefiere cuando existen ciertos requisitos de seguridad. La
conversión electrónica de los valores lógicos 1 y 0 en destellos de luz permite la
transmisión de las señales a través del cable de fibra óptica. Un diodo emisor de
luz, situado en un extremo, emite destellos que se transmiten por el cable hasta el
otro extremo, donde se recogen por un simple fotodetector y se convierten en
señales eléctricas. Puesto que no existe una resistencia a las señales
transmitidas, la velocidad de transmisión por fibra óptica supera en prestaciones
ampliamente a la transmisión por cable de cobre.




Inhalambrica:

Se basan en la propagación de ondas electromagnéticas a través del aire. Para
ello sólo requieren la estación emisora y receptora , además de posibles
repetidores intermedios para salvar la orografía del terreno, ya que este tipo de
transmisión exige visibilidad entre las dos estaciones emisora y receptora. En la
actualidad existen los siguientes tipos de radioenlaces: de onda corta, sistemas
terrestres de microondas y sistemas basados en satélites de comunicaciones. La
transmisión mediante microondas se lleva a cabo en una gama de frecuencias que
va desde 2 a 40 GHz. Cuando las distancias son extremadamente grandes, el
número de repetidores sería también grande. Además, si tenemos en cuenta la
superficie terrestre recubierta de agua donde la instalación de repetidores sería
compleja, se utilizan los satélites de comunicaciones soportados sobre satélites
artificiales geoestacionarios, es decir, que no modifican su posición respecto a la
tierra.
4.5 Dispositivos de Red (Ruteadores, gateways, switches, repetidores)

Repetidor:

Dispositivo hardware encargado de amplificar o regenerarla señal entre dos
segmentos de una red homogénea que se interconectan ampliando su cobertura.
El propósito de un repetidor es regenerar y retemporizar las señales de red a nivel
de los bits para permitir que los bits viajen a mayor distancia a través de los
medios.
Opera en el nivel físico del modelo de referencia OSI.


Routers (encaminadores)

El router (enrutador o encaminador) es un dispositivo hardware o software de
interconexión de redes de computadoras que opera en la capa 3 (nivel de red) del
modelo OSI. Este dispositivo interconecta segmentos de red o redes enteras.
Hacen pasar paquetes de datos entre redes tomando como base la información de
la capa de red.

Los routers toman decisiones lógicas con respecto a la mejor ruta para el envío de
datos a través de una red interconectada y luego dirigen los paquetes hacia el
segmento y el puerto de salida adecuados. Los routers toman decisiones
basándose en diversos parametros. La más importante es decidir la dirección de la
red hacia la que va destinado el paquete (En el caso del protocolo IP esta sería la
dirección IP). Otras serían la carga de tráfico de red en los distintos interfaces de
red del router y la velocidad de cada uno de ellos, dependiendo del protocolo que
se utilice.


Pasarela (Gateway)

Una pasarela o gateway es un dispositivo, con frecuencia un ordenador que
realiza la conversión de protocolos entre diferentes tipos de redes o aplicaciones.
Por ejemplo, un gateway de correo electrónico o de mensajes, convierte mensajes
entre dos diferentes protocolos de mensajes. La traducción de las unidades de
información reduce mucho la velocidad de transmisión a través de estos equipos.
En realidad es una puerta de acceso, teniendo lugar una conversión completa de
protocolos hasta la capa de aplicación del modelo de referencia OSI.


Switch (Conmutadores)

Un switch (en castellano "interruptor" o "conmutador") es un dispositivo de
interconexión de redes de computadoras que opera en la capa 2 (nivel de enlace
de datos) del modelo OSI Open Systems Interconection). Un switch interconecta
dos o más segmentos de red, funcionando de manera similar a los puentes
(bridges), pasando datos de una red a otra, de acuerdo con la dirección MAC de
destino de los datagramas en la red.

Los switches se utilizan cuando se desea conectar múltiples redes. Al igual que los
bridges, dado que funcionan como un filtro en la red, mejoran el rendimiento y la
seguridad de las LANs (Local Area Network- Red de Área Local)


Hub (Concentrador)

Dispositivo que permite centralizar el cableado de una red También conocido con
el nombre de hub.

Un concentrador funciona repitiendo cada paquete de datos en cada uno de los
puertos con los que cuenta de forma que todos los puntos tienen acceso a los
datos. Son la base para las redes de topología tipo estrella. Como alternativa
existen los sistemas en los que los ordenadores están conectados en serie, es
decir, a una línea que une varios o todos los ordenadores entre sí, antes de llegar
al ordenador central. Llamado también repetidor multipuerto, existen 3 clases.

Pasivo: No necesita energía eléctrica.
Activo: Necesita alimentación.
Inteligente: o smart hubs son hubs activos que incluyen microprocesador.

Dentro del modelo OSI el concentrador opera a nivel de la capa física.


4.6Paradigma cliente/servidor:

El paradigma cliente/servidor es uno de los más extendidos dentro de los servicios
a través de red. La idea básica y general que hay detrás de este modelo es que
hay alguien que ofrece algo (el servidor) y alguien que quiere algo (el cliente). En
el caso de las páginas web tenemos un servidor web que es aquél que tiene las
páginas web (o sea, la información) y un cliente (un navegador) que es el que pide
la página web (generalmente para mostrarla). El modelo cliente-servidor aparece
también en multitud de situaciones cotidianas que tienen poco que ver con la
informática: así cuando estamos en la cola de una hamburguesería somos los
clientes que estamos demandando un servicio (nuestra comida) de un servidor
(que sería el cajero y que nos "sirve" la comida).

Generalmente cuando navegamos por Internet nos encontraremos, por tanto, en el
lado del cliente. En esta asignatura vamos a ir adentrándonos paulatinamente en
la parte del servidor, ya que tendremos que gestionar convenientemente
contenidos y recursos para ofrecerlos a los clientes que así lo soliciten.
La siguiente figura muestra claramente el funcionamiento de este modelo.
Podemos ver cómo el cliente realiza peticiones al servidor, mientras que el
servidor se dedica simplemente a responderle. De por sí, un servidor no hace
nada; necesita que un cliente le demande algo. Todos los servicios de Internet
(WWW, correo, FTP, IRC, etc.) tienen clientes y servidores específicos, aunque en
tiempos recientes se intente integrar todo bajo un interfaz web que es más
amigable para el usuario.

La integración universal hacia el web es una de las características más
importantes de los últimos años y que afectará de manera notoria a lo que
hagamos en esta asignatura. Aún cuando nuestra labor sea gestionar contenidos y
recursos en el servidor, es muy probable, casi seguro, que estas acciones las
realizaremos mediante nuestro navegador.


El funcionamiento de las páginas web es básicamente el siguiente. Al introducir
una dirección web lo que estamos haciendo es pedir un fichero localizado en un
ordenador (que actuará de servidor). El servidor nos enviará este fichero y nuestro
navegador (el programa cliente) se encargará de interpretarlo para que nos
aparezca la página web (que será más o menos vistosa) en pantalla.

En general, sin embargo, la interacción entre el cliente y el servidor se reducía a
un simple "dame esa página web"; da igual que el cliente la pida ahora o mañana,
siempre recibirá el mismo fichero, porque éste no ha sufrido cambios. En los
buscadores, damos un paso más y como clientes le pedimos que nos devuelva
una página web con el resultado de una operación de búsqueda. Le estamos
pidiendo, por tanto, que genere la página web dinámicamente y nos la envíe.



4.6 Firewalls

Un cortafuegos (o firewall en inglés), es un elemento de hardware o software
utilizado en las redes para prevenir algunos tipos de comunicaciones prohibidas
por las políticas de red, las cuales se fundamentan en las necesidades del usuario.

La configuración correcta de cortafuegos se basa en conocimientos considerables
de los protocolos de red y de la seguridad de la computadora. Errores pequeños
pueden dejar a un cortafuego sin valor como herramienta de seguridad.

Tipos:

1.- Firewall de capa de red.- Funciona al nivel de la red de la pila de protocolos
(TCP/IP) como filtro de paquetes IP, no permitiendo que estos pasen el cortafuego
a menos que se atengan a las reglas definidas por el administrador del cortafuego
o aplicadas por defecto como en algunos sistemas inflexibles de cortafuego. Una
disposición más permisiva podría permitir que cualquier paquete pase el filtro
mientras que no cumpla con ninguna regla negativa de rechazo.

2.- Firewall de capa de aplicación.- Trabaja en el nivel de aplicación. Analizando
todo el tráfico de HTTP, (u otro protocolo), puede interceptar todos los paquetes
que llegan o salen desde y hacia las aplicaciones que corren en la red. Este tipo
de cortafuegos usa ese conocimiento sobre la información transferida para proveer
un bloqueo más selectivo y para permitir que ciertas aplicaciones autorizadas
funcionen adecuadamente. A menudo tienen la capacidad de modificar la
información transferida sobre la marcha, de modo de engañar a las aplicaciones y
hacerles creer que el contrafuegos no existe. Otros también tienen adosado
software para revisar por virus el correo electrónico.

Ventajas:

* Protege de intrusiones.- Solamente entran a la red las personas autorizadas
basadas en la política de la red en base a las configuraciones.

* Optimización de acceso.- Identifica los elementos de la red internos y optimiza
que la comunicación entre ellos sea más directa si así se desea. Esto ayuda a
reconfigurar rápida y fácilmente los parámetros de seguridad.

* Protección de información privada.- Permite el acceso solamente a quien tenga
privilegios a la información de cierta área o sector de la red.

* Protección contra virus.- Evita que la red se vea infestada por nuevos virus que
sean liberados.
4.7 Mapeo de Puertos

 El mapeo de Puertos o Port Address Translation (PAT) es el proceso donde los
paquetes que llegan a una dirección IP o Puerto puede ser traducida y de ésta
manera redireccionada a una dirección IP o puerto diferente. Esta funcionalidad es
una manera de crear un pasaje persistente mediante NAT, Port Mapping solo es
necesario para las conecciones entrantes, no para el tráfico de retorno.




4.9 Sistema de Detección de Instrusos


Un sistema de detección de intrusos (IDS) es un programa usado para detectar
accesos desautorizados a un computador o a una red. Estos accesos pueden ser
ataques de habilidosos hackers, o de Script Kiddies que usan herramientas
automáticas.

En el mercado existen diferentes versiones, de Hardware y de Software.

Por mencionar algunos esta el Intrusion Detection de Computer Associates y
SNORT.
De Hardware esta de Symantec, el Security gateway (como modulo), entre otros.

El funcionamiento de estas herramientas se basa en el análisis pormenorizado del
trafico de red, el cual al entrar al analizador es comparado con firmas de ataques
conocidos, y/o comportamientos sospechosos, como puede ser el scaneo de
puertos, paquetes malformados, etc.

Normalmente esta herramienta se integra con un firewall, El detector de intrusos
es incapaz de detener los ataques por si solo "excepto los que están embebidos
en un dispositivo de gateway con funcionalidad de firewall" , pero al estar
trabajando en conjunto con el firewall se convierten en una herramienta muy
poderosa ya que se une la inteligencia del IDS "el IDS no solo analiza que tipo de
trafico es, si no que también revisa el contenido y su comportamiento", y el poder
de bloqueo del firewall, este al ser el punto donde forzosamente deben pasar los
paquetes, ahí pueden ser bloqueados sin problema alguno.

				
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
views:24
posted:3/7/2012
language:Spanish
pages:99