Archivos para 30 November 1999

El viérnes tuve la suerte por segunda vez, de poder dictar, en nombre de Openware, un módulo de la especialización en Seguridad Informática que se dicta aquí en Rosario en la Fundación Libertad. En este caso, el módulo se titulaba «Seguridad Avanzada«. Entre los temas que me tocó dar, el más interesante y que nos llevó toda la mañana (la mitad de la jornada) es criptografía.

El tema de la criptografía es muy interesante, y no hace falta ser un matemático avanzado para entender los conceptos principales del tema. Es una realidad, que es un área dedicada exclusivamente a personas apasionadas o con vocación matemática, pero a ellos vamos a dejarles el estudio de la ciencia y el desarrollo de algoritmos de encripción potentes. Nosotros, intentemos entender los principales conceptos y las ideas más importantes.

Para empezar: ¿Qué es criptografía? Podría dar definiciones más extensas pero acorde a lo prometido recientemente, la definiré como la técnica que se utiliza para convertir un mensaje legíble, en uno que no lo es. Es decir, si yo quiero decir «HOLA», podría trasformar cada letra en la que sigue en el abecedario y decir «IPMB». Quién no sepa cómo codifiqué mi mensaje, no podrá volver atrás ese mensaje ilegíble.

Entonces pensemos ahora por qué encriptamos la información. Para empezar, vale la pena clarificar que la criptografía no es una ciencia moderna, de hecho, antes de que existiera la informática, se consideraba a la criptografía no solo como una técnica, sino como un arte. El «arte de ocultar la información». La usaron los griegos, la usaron los romanos, la usaron nuestros antepasados. Sin un ordenador que procese un algoritmo, históricamente era más complejo pensar formas de ocultar la información de forma tal que solo la entienda quién nosotros querramos que lo haga. De una u otra forma, el fundamento principal, como arrancaba el parrafo, para encriptar un texto es evitar que este sea entendido al transportarlo (o alojarlo) por un medio inseguro. En el pasado, era enviar una carta que podía ser interceptada. ¿Cuál es el medio inseguro de hoy? Sí amigos, es Internet. La red de redes fue desarrollada con un objetivo primario que nada tenía que ver con la seguridad de la información: comunicar. En su momento, fue una red utilizada solo por el departamento de defensa del Tío Sam, y su objetivo primario era comunicar eficientemente. Más tarde Internet se expandió, y de golpe nos dimos cuenta que era un medio inseguro, era un medio donde nuestra información podía ser fácilmente interceptada y, por ende, leída. También sabemos que la información que transmitimos por la web es cada vez más sensible por lo que la necesidad de que nuestros datos viajen encriptados, es cada vez más importante.

Es por ello, que se comenzó a utilizar un esquema muy simple:

  1. Al transmitir información sensible por la web, los datos antes de enviarse son procesados por un algoritmo que cifra la información.
  2. La información viaja encriptada por la web.
  3. Al llegar al otro extremos, la información es descifrada y se obtienen los datos legibles nuevamente.

Además, muchos habrán escuchado hablar de que para la criptografía, se utilizan claves. ¿Qué claves? Bien, básicamente (muuy básicamente 😉 ), el objetivo de utilizar claves para encriptar la información es el de omitir la necesidad de crear nuevos algoritmos constantemente. Se desarrollaron algoritmos que dependen de las claves y, de esta forma, mucha gente puede utilizar el mismo algoritmo, y el cifrado dependerá de la clave que se use para cifrar la información. Volviendo al ejemplo anterior y más simple; yo podría transmitir «Hola», utilizando el siguiente algoritmo: «Modificar cada caracter por los siguientes n caracteres en el abecedario». De esta forma, tendríamos:

  1. Si n=1, estamos en el caso del principio y la palabra cifrada es: IPMB
  2. Si n=2, la palabra cifrada es: JQNC.

Es decir, depende de la clave la salida del texto cifrado y, entonces, no dependemos del algoritmo sino de la clave para encriptar la información.

En resúmen, este es el uso que le damos hoy en día y las ideas principales de criptografía y voy a detenerme hoy Sábado aquí para no extenderme.

Para un próximo post, vamos a ver si es posible desencriptar un mensaje sin conocer la clave (vayan pensando en los ejemplos que aquí dejé) y conocer que existen dos tipos de algoritmos que se utilizan hoy en día: simétricos y asimétricos. También intentaré explicar las ventajas de cada uno y en qué se utilizan cada uno de ellos.

Para cerrar, les dejo un desafío: ¿a ver quién comenta qué dice la frase de acá abajo?

FRDSGOP NOMSTOP

Les voy a dar una pista: de una u otra forma, existe una relación en la encripción que se utilizó y la temática del blog y los temas que se tratan en todos los post.

Actualización 22:00hs: Teniendo en cuenta las primeras opiniones de mi pareja (principal crítica del blog) voy a hacer algunas aclaraciones:

  1. El «algoritmo» de transformación que use para armar las palabras del desafío no utiliza clave, es un simple algoritmo en donde a cada letra de estas dos palabras le asigné otra letra, utilizando una lógica fija.
  2. Si nadie lo saca, en la semana pondré el desafío en el cuadro «Novedades» del home e iré poniendo pistas, pero los invito a pensarlo, no es tan difícil (aunque tampoco tan fácil como el ejemplo que puse en el post).

Hoy escribí para el laburo los siguientes pasos que, aunque elementales, nunca están de más…

Para verificar si un ordenador está infectado, seguir los siguientes pasos:

1.(optativo) Reiniciar el equipo en modo a prueba de fallos con funciones de red. Se pueden realizar todos los pasos en modo normal aunque se recomienda hacerlo de esta forma.

2.Verificar que el antivirus instalado en el ordenador esté actualizado. Caso contrario actualizarlo.

3.Verificar si el antivirus encuentra infecciones.

3.1.Si no encontró infecciones: continuar con el punto 4.
3.2.Si se encontraron infecciones:

a)Si el antivirus informa que fueron eliminados los archivos maliciosos, reiniciar el equipo y ejecutar nuevamente el paso 3. Asegurarse que no se detecten nuevamente las infecciones.
b)Si el antivirus informa que los archivos maliciosos fueron encontrados pero no se solucionó el problema, tomar nota del nombre de las amenazas e intentar ubicar en internet, procedimientos para eliminarlas. Se pueden utilizar los siguientes links:

Considerar, en caso de llegar a este punto, formatear el ordenador, como se indica al final de esta sección.

4.Escanear el ordenador con un anvirus on-line. Verificar que no se encuentren virus activos en el ordenador.

5.Ejecutar una herramienta de búsqueda de Spyware y archivos maliciosos. Se recomienda utilizar Spybot – Search And Destroy, ya que se actualiza periódicamente y es simple utilizarlo. En el siguiente link, puede encontrar un tutorial sobre su utilización:

Al igual que en el punto 3, la Pc está segura si, o bien no se encontraron amenazas, o bien se encontraron y fueron eliminadas (en este caso, reiniciar el equipo y ejecutar la aplicación hasta que no se encuentren amenazas).

6.Ejecutar la aplicación Ccleaner (http://www.ccleaner.com/).

Descarga e instalación:
http://www.forospyware.com/453443-post2.html
Ejecución y utilidades:
http://www.forospyware.com/453444-post3.html

Estos son los pasos básicos para conocer si el ordenador está, o no, infectado y proceder a las opciones básicas de desinfección.

Si el equipo estuviera infectado por algún virus o archivo malicioso, lo más probable es que en alguno de los pasos indicados, el ordenador quede sano y desinfectado.

Sin embargo, si el equipo tiene un número elevado de infecciones, es probable que sea complejo eliminarlas todas y asegurar la desinfección del equipo. En este caso, es recomendable hacer un backup de la información y formatear el sistema. Es una tarea un poco más compleja pero a la vez, la solución es más efectiva que en los casos anteriores.

……………………………………………………………………………………………………………………………………..

Además, algunos consejos para mantener seguros los ordenadores…

1.Tener instalada un solución antivirus actualizada. Es recomendable utilizar una solución del tipo empresarial que permita una gesitón centralizada de las actualizaciones y seguimiento de infecciones.
Además, la sola instalación no es suficiente sino que es necesario hacer una gestión de la herramienta, asignando personal al seguimiento y análisis de las infecciones que puedan generarse en la red.

Herramientas pagas recomendadas:

Eset Smart Security 3.0 – http://www.eset-la.com

Herramientas gratuitas (estas herramientas no son soluciones empresariales pero, son antivirus que funcionan correctamente y son gratuitos a nivel local):

AVG Free 7.5 – http://free.grisoft.com/
Avira AntiVir Personal – http://seguridad-profesional.com/cms/content/view/12/33/
ClamAV – http://www.clamav.net/

2.Proteger el perímetro y fundamentalmente los servidores de correo con soluciones antivirus y antispam.

3.Controle las aplicaciones instaladas. Verificar regularmente que todas las aplicaciones instaladas se sabe para qué están y quién las instaló.

4.Hacer backups periódicamente es una buena práctica por si la información es infectada.

5.Limitar el uso de usuarios con permisos de administrador para loguearse regularmente en los ordenadores de la empresa.

6.Mantener los sistemas operativos y software con las últimas actualizaciones y service packs disponibles.

……………………………………………………………………………………………………………………………………..

Por último, algunos artículos recomendados al respecto:

  • Seguridad en la PC del hogar

Autor: Adolfo Fioranelli

Link: http://www.segu-info.com.ar/articulos/72-seguridad-pc-hogar.htm

  • Consejos para el uso seguro de la computadora

Autor: Cristian Borghello

Link: http://www.segu-info.com.ar/articulos/5-consejos-uso-seguro-computadora.htm

  • Herramientas de seguridad gratuitas

Link: http://www.rompecadenas.com.ar/articulos/1950.php

Hace un tiempo publiqué una entrada respecto al funcionamiento de los procesadores y la necesidad de comprender que, al igual que un auto puede fallar, una Pc puede colgarse y no es la muerte de nadie.

El post, fue disparado por una campaña de Intel, con la idea de promover sus procesadores de doble núcleo. Gracias a un comentario de Pablo en el post, puedo dejarles algo que debía, los videos que completan la campaña. Para quienes no vieron la primer parte, nuevamente les recuerdo leer la entrada original.

En el último video, cuando se arma la cola de aplicaciones me hace acordar a muchos usuarios que tienen tantas cosas abiertas que ya no saben ni dónde está cada una y que, encima, cuando la pc se cuelga, le hechan la culpa al ordenador.

En sí, insisto en que no me parecen las explicaciones más claras respecto a los procesadores, pero la iniciativa es divertida y vale la pena en un mercado tecnológico que, por momentos, es medio chato en lo que respecta a propagandas y publicidades. Los dibujitos, al final, resultan divertidos… Ah… ¡¡¡y mortal cuando bailan el bombón asesino!!!

«Quien tiene paciencia, obtendrá lo que desea.»

Benjamin Franklin, estadista y científico estadounidense.

Las computadoras muchas veces tienden a «colgarse» y lo digo entre comillas porque voy a intentar explicar muy brevemente qué pasa cuando la Pc se congela y veremos que muchas veces simplemente es porque no le tenemos la paciencia necesaria para usar un ordenador.

De forma muy simple se pude decir que cuando utilizamos la Pc indicamos a la compu «qué hacer» a través de comandos de entrada, generalmente utilizando el mouse o el teclado. La computadora «hace» lo que le pedimos y, por lo general, esto tiene una salida, generalmente por pantalla. Imaginen cualquier cosa que hacen con la Pc y verán que en su mayoría (o todas) responden a esta simple explicación.

Llamaré «cuelgue» de la Pc cuando uno está haciendo una operación y el mouse se queda congelado y la computadora «no responde» (a simple vista) a nuestros movimientos del mouse o instrucciones del teclado. Culquiera de nosotros habrá vivido alguna vez esta situación y lo que uno tiende a hacer es a repetir la acción que la Pc no detectó. Es decir, queremos cerrar una ventana y al hacer clic la Pc se congela y nosotros volvemos a hacer clic como suponiendo que la Pc no nos entendió.

Como ya comenté en otro post, las computadoras son entes limitados que muchas veces pueden fallar y cometer (o sufrir) errores y un buen ejemplo es compararlas con los autos: puedo tener el mejor auto (un BMW digamos) y lo puedo exigir tanto que se queme el motor y, por otro lado, puedo tener un fitito y llevarlo tranca a 40 km. por hora y andar tranquilo sin que falle en ningún momento.

Es decir, la Pc puede colgarse y eso no tiene nada de malo. Pero pensemos un ejemplo: yo decido preguntar a mucha gente cuál es el resultado de una cuenta (7 por 9 digamos). Está claro que estoy definiendo una entrada (la cuenta) y que espero del otro lado una salida (el resultado, en este caso 63). Seguramente la mayoría de las personas adultas que les pregunte van a poder responderme en unos pocos segundos y si le pregunto a alguien que no sepa calcular muy bien no podrá contestarme y se quedará pensando (se colgará). Pero la pregunta es: ¿cuánto tiempo puedo esperar yo para decidir que esa persona se colgó y no sabe la cuenta o que todavía la está calculando?

Eso es lo que muchas veces pasa con las computadoras: no están colgadas, simplemente están «pensando»; están procesando. Las computadoras tienen un componente central denominado procesador. Este se encarga (hablando en forma simple) de realizar las tareas que nosotros le encomendamos a la computadora realizar auxiliandocé con los otros componentes de la Pc. Haciendo una analogía con los humanos, es el cerebro de la Pc.

Al igual que un cerebro, el procesador tiene sus limitaciones y, cuando no puede hacer más de una tarea al mismo tiempo, poné las tareas pendientes en cola. Siguiendo con el ejemplo, si yo preguntara el resultado de dos cuentas cualesquiera, cualquier persona deberá calcular primero una y luego otra. Es decir, veamos de forma gráfica un procesador (cuadrado) y una lista de tareas a la espera del cerebro para trabajar.

11.gif

Si el procesador comienza a realizar alguna de las instrucciones que le encomendamos, tomará la primera de la fila (igualito a la cola de una caja del súper o para sacar las entradas al cine).

2.gif

Es verdad que la computadora y el procesador específicamente no pueden graficarse tan simplemente y alguien me dirá que un procesador puede realizar más de una tarea en simultaneo y esto es correcto, pero… miremos el gráfico siguiente:

3.gif

El hecho de que un procesador pueda realizar tareas en simultáneo no significa que en un momento dado agote su capacidad y tenga que poner otras instrucciones en espera.

Lo que quiero mostrar no es el funcionamiento de un procesador ni tampoco entender por qué se cuelga. Pero sí espero que se vea (y espero que las gráficas hayan ayudado) que cada vez que nosotros hacemos un clic o presionamos una tecla, «estamos agregando elementos a la fila». Si la Pc está colgada, esto no modifica para nada su comportamiento y, al contrario, lo perjudica ya que una vez que se libere de la instrucción que la demoró, tendrá más y más tareas que realizar y la probabilidad de que siga colgada aumenta. Esto no significa que muchas veces el cuelgue sea definitivo (y tengamos que reiniciar que es divino) pero muchas veces simplemente la Pc está procesando y por saturación, en la pantalla parece colgada. Lo mejor en estos casos, como ya se imaginarán, es esperar.

Siempre que una Pc se les congele recuerden que lo primero que hay que hacer es esperar unos segundos (si aguantan hasta 30 segundos será lo mejor). Después sí, presionen botones o lo que quieran (incluso llegar a niveles más complejos de agresividad) pero no antes ya que disminuyen la probabilidad de poder seguir trabajando tranquilamente sin reiniciar ni perder nada. Paciencia amigos, es la clave del éxito en estos casos. Estírense, tomense un vaso de agua, rasquencé la nariz o limpien el escritorio pero a la Pc, denle unos segundos de paciencia que les aseguro muy probablemente recuperará su performance.

Si no, si seguimos presionando botones e ingresando instrucciones estas quedan en cola y lo que pasa es lo siguiente…

4.gif

Ya se imaginan que con semejante cola de instrucciones, es más difícil que la computadora se recupere y al final, los únicos responsales fuimos nosotros, no fue ni Intel, ni Bill Gates…

Post anteriores: La computadora, los unos y los ceros..., ¿Cuántas clases de personas hay?

Llegamos tarde pero seguro… Realmente demoré en terminar este primer trío de post para comprender las ideas básicas del «por qué las compus utilizan unos y ceros«. En el anterior post había explicado brevemente cómo cada número en sistema decimal tiene su correspondiente número en sistema binario; lo cual no era tan complejo de comprender. El paso que sigue es preguntarse cómo representar con unos y ceros una letra o una palabra. Ya parece un poco más complejo y, de alguna forma, así lo es. De hecho, para resolver este problema, no alcanza la matemática sino más bien empiezan a jugar un rol fundamental los estándares.

La solución al problema de la representación de letras (y todo tipo de caracteres no numéricos) es la definición de un (o más de uno) estándar en donde a cada caracter se le asigna un número (en decimal digamos) correspondiente. De esta forma matemáticamente no hay un problema; ya sabemos convertir un número decimal en binario. Veamos un ejemplo simple y tonto que a mí me encantan. Yo tengo los números decimales 0, 1, 2 y 3. Puedo armar la tabla con los correspondientes números en binario:

0 – 00

1 – 01

2 – 10

3 – 11

Puedo ahora, agregar a cada valor un caracter que representaré con ese valor, como por ejemplo:

Continuar leyendo…