lunes, 24 de septiembre de 2007

Las variables

Alien [blackhat4all@gmail.com]

Las variables, en términos de programación, como su nombre lo indica son datos que pueden variar su valor a lo largo de un programa, lo cual no quiere decir que deban ser obligatoriamente modificadas.

Las variables, viéndolas desde un punto de vista más amplio, existen desde mucho antes de la programación. Es muy difícil poder darle un lugar en la historia, pues si la vemos en su estado más general, son utilizadas desde que el hombre necesitaba guardar determinados datos para luego realizar operaciones con ellos y los colocaba en su cerebro.

En el ámbito informático, las variables se usan como mismo se utilizan en la vida cotidiana. El ejemplo perfecto que tengo para ponerles es el de un niño cuando va a la escuela y la maestra le dice que resuelva una suma de dos números, ejemplo 4 + 5. De forma inconsciente, el niño esta reservando un espacio en su cerebro (o en su manito), para colocar el número 4, y a este le suma luego el 5, obteniendo como resultado… (disculpen, es que hace tiempo que no voy a primer grado). De esa misma manera realiza la computadora las operaciones matemáticas que le formulamos a través de los programas, primeramente guarda en un espacio libre de memoria el número 4, luego asigna a otro espacio el número 5 y a un tercero el resultado de la suma.

Hasta aquí hemos visto la parte básica y más fácil de saber como realiza una computadora las operaciones matemáticas. Pero las cosas se complican cuando nos convertimos de usuarios de un programa a programadores del mismo.

Tipos de variables:

Como todo programador debe saber, cada lenguaje tiene una forma específica de declarar sus variables, y estas a su vez pueden ser de varios tipos.

Complicaría mucho este artículo si me pusiera a citar todos los tipos de variables que existen, ya que cada lenguaje le da un nombre determinado a cada una, y lo que en C++ es int, en QuickBasic significa integer, sin embargo se podría hablar sobre ellas sin decir su nombre especifico, sino el valor o tamaño del mismo que guarda cada una. Una de las variables que menos espacio de memoria utilizan son las que almacenan un solo carácter o valor, entre ellas podemos citar las que sólo guardan una letra, o las que se encargan de evaluar la veracidad o falsedad de una expresión al asignarse un valor de 0 o 1. Otra que es bastante utilizada, y que necesita más espacio en memoria son las que comúnmente llamamos enteros, y que almacenan un valor desde -32000 hasta 32000, lo que las convierte en un número que realmente vale 64000, sólo que distribuido en partes iguales a ambos lados del 0. Pero no son estas las mas grandes, ya que tenemos luego otras que se encargan de almacenar cadenas de texto, y que pueden tener un tamaño casi ilimitado, los arreglos mal confeccionados pueden llegar a alcanzar proporciones gigantescas dentro de la PC, en ocasiones ocupando todo el espacio de memoria disponible.

Errores comunes::

Conocida las funciones y espacios de memoria utilizado por las variables, si me permiten, para los no expertos en computación, quisiera seguir con el ejemplo del niño, pero ahora véanlo con unos cuantos años más, ya estudiantes de una universidad, donde los contenidos son más fuertes y las pruebas de matemática tienen más letras que las de español.

Ante una prueba, un estudiante trata de guardar en su cerebro la mayor cantidad de datos posibles, ya que no sabe que contenidos saldrán y si quiere salir airoso debe estar preparado para todo. Imaginemos que en esa prueba universitaria le toca la batería A, y lo único que tiene que resolver es la misma suma que le salió en primer grado (ojalá). En ese caso aprobaría sin ninguna dificultad, y el espacio que ha reservado en su memoria no le traería mayores consecuencia que quizás luego un dolor de cabeza. Como programadores, tenemos que tener en cuenta que los microprocesadores no sufren de dolores de cabeza, sino de bloqueos permanentes que entre otras cosas pueden estar dados por el mal uso que hagamos de la memoria disponible.

Como todos sabemos las computadoras cuentan por desgracia con un limitado espacio de memoria y hacer un mal uso del mismo conlleva entre otras cosas a un menor rendimiento. A la hora de programar es fácil y a veces hasta común hacer una mala utilización de las variables, bastaría con crear una variable de punto flotante para contar los alumnos que están presentes en un aula, o definir como tipo de cadena de caracteres las baterías de una prueba, o lo que es peor, crear un arreglo fijo con 1000 espacios reservados y colocar dentro una estructura que tenga nombre, apellidos, sexo, edad, fecha de nacimiento, etc para cada uno de los trabajadores llamados a asistir a un trabajo voluntario. WARNING!!

Las variables se deben definir para almacenar sólo el tipo de dato necesario, ni más ni menos. Y en caso de que sea un arreglo, tratar siempre que se pueda que sea dinámico, ocupando este el espacio justo y necesario.

Otro de los errores que a mi entender son cometidos con frecuencia por los programadores, son los de asignar nombres de variables que no tienen nada que ver con el contenido que almacenan. A primera vista esto no trae ningún problema, ya que a las variables se les puede definir con casi cualquier letra o conjunto de estas, pero sucede con frecuencia que pasados meses o años, si tenemos que modificar la forma de trabajo de un programa que hemos creado, nos es imposible recordar que función cumple una variable llamada z en un programa de contabilidad, y esto nos conlleva a, en el mejor de los casos, tener que leernos todo el código o ejecutar el programa paso a paso para ir viendo los valores que va cogiendo dicha variable y darle o no permanencia en el programa; en el peor, tenemos que por obligación reprogramarlo todo nuevamente.

Longitud::

Hablé anteriormente de tipos de variables, el tamaño en memoria que ocupan, sin embargo omití a propósito la longitud, que puede ser fije o variable.
Se le llama longitud fija a la mayoría de las variables, ya que por generalidad permanecen invariables a lo largo del todo el programa, y lo que se definió en un principio como entero, persistirá como entero hasta que le llegue el End. Sin embargo, existen también las variables variables, y no son más que aquellas que el programador las haya definido como tal. En ese caso podemos citar los arreglos.

Definir un arreglo como variable puede tener ventajas desde el punto de vista de la utilización que se hace de la memoria, ya que puede ser definido con solamente 10 elementos a la hora de su creación y terminar la ejecución del programa con 1000, sin hacer un uso innecesario de la memoria. Cada lenguaje tiene sus especificidades a la hora de crear un arreglo dinámico, sin embargo, mostrado el código en pseudocódigo, luego de crear el arreglo sería algo como:

10 Añado un elemento
20 si el arreglo se ha llenado le agrego 5 nuevos espacio vacios
30 voy nuevamente a la línea 10

Con esto le estamos introduciendo elementos al arreglo, y cada vez que se llena vamos tomando más memoria para asignársela a el. De esta forma, en el peor de los casos, el arreglo sólo estará utilizando 5 espacios extras.

Donde se crean::

A la hora de utilizar una variable debemos pensar primero donde y cuando crearla. Por lo general al hacer doble clic sobre un botón o cualquier otro elemento colocado en el programa en la vista de edición o diseño, este nos lleva hasta su código, el cual sólo será ejecutado al acceder al mismo. Esto quiere decir que si declaramos una variable en ese lugar, esta sólo será utilizada al presionar el botón, no antes, no después, lo que evita que podamos acceder a esta variable desde otros controles. Cuando una variable es declarada de esta forma se le llama variables locales. No obstante, todos los lenguajes tienen un espacio para crear variables globales, que son aquellas que podemos llamar en cualquier momento, pues son establecidas desde que se ejecuta la aplicación y por lo general perduran hasta que esta finaliza.

Cuando se va a instaurar una variable, debemos pensar primero en que uso va a tener, y cuanto tiempo queremos conservar su valor, esto es lo que nos permitirá reconocer si se debe crear global o local.

No quisiera terminar el artículo sin decirles que nuestro joven del ejemplo afortunadamente aprobó el examen, ya que había reservado espacio de memoria para crear una variable global, por lo que los contenidos impartidos por el profesor a lo largo del curso estaban aún vigentes.

Continuar leyendo

De foros y forajidos

Ariel-NM [blackhat4all@gmail.com]

––¡Son unos piratas! –afirmaba furibundamente en la televisión un puritano defensor del software de alto costo. Y, por supuesto, se estaba refiriendo a los hackers…

Muy tarde ya, como a los veinte y tantos años, logré entender la diferencia semántica entre piratas, bucaneros y filibusteros. No incluyo aquí a los corsarios pues me refiero sólo a cuentapropistas.

La piratería es asunto viejo, muy anterior a la “dorada” época caribeña, caricaturizada en las películas de Hollywood, como también es práctica que aún no cesa. En los tiempos que corren, la nueva Mar Oceana son los vericuetos de Internet, los galeones ceden a las computadoras y las baterías de bombardas y culebrinas se truecan en ingeniosos softwares.

Decir piratas –si se les sufre– es decir horror y terror, robo y saqueo, violencia y violación… Mas ¿son siempre malos todos los piratas o debería hacerse una revisión a fondo del término?

No todos los piratas que rondaron nuestras costas vinieron con la expresa intención de chamuscar a San Cristóbal de La Habana o Puerto Príncipe. Muchos desembarcaron con el afán de proveerse de agua fresca, miel, bacalaos, tasajo, frutas en almíbar, vegetales en salmuera, aguardiente, música, mujeres de ocasión y cuanta cosa ofertase el contrabando local. Que lo diga, si no, Doña María la Gorda. Y lo cierto es que tal mercado negro resultaba un vivificante respiro a los productores criollos –devenidos merolicos–, cianóticos ya bajo la bota del monopolio comercial de España.

(¿Monopolio dije? Hmm… ¿Qué es, si no, la Microsoft, por solo citar?)

Y existe un tropel de piratas por ahí –bucaneros, más bien– que se dedican por puro ju-EGO a destripar costosos programas, hacer trizas los cerrojos, desentrañar combinaciones y luego, con idéntico desenfado, colgar la llave en Internet, a la vista de todos.

Eso es ilegal, claro está, porque está fuera de la Ley… pero resulta que la “ley” está muy mal concebida. A fin de cuentas, ¿quién es el verdadero ilegal? ¿Robin Hood o el amo de Sherwood? ¿El equipo de hackers (quizás debamos llamarles crackers) que nos pone en la mano la CD key del Office, el mismo que emplea aquel puritano para redactar sus diatribas y por el cual –apuesto– no pagó ni un centavo, o el magnate de la Microsoft, en cuya billetera hay diez veces lo necesario para barrer con el hambre y el SIDA en África?

¡Vamos, que –entre nos– el Photoshop, el Premiere o el AfterEffects, con que se arman los spots y las presentaciones de nuestra televisión de seguro no han reportado ni un hollejo a las arcas de Adobe!

Los crackers –esos bucaneros modernos– han instaurado un gran foro en la Red de Redes gracias al cual los pobres de la tierra tenemos acceso a lo inimaginable.

(Por cierto, ¿alguien tiene por ahí el generador de claves para el 3D Studio 2008? Está a punto de salir…)

Continuar leyendo

Criptosistemas

Alien [blackhat4all@gmail.com]

Criptografía, según el diccionario de la real academia española, es el Arte de escribir con clave secreta o de un modo enigmático. La palabra proviene del griego Kryptos, que significa ocultar y unido con grafos (escritura), vendría significando algo así como texto oculto.

La criptografía, contrario a lo que muchos podrían pensar, data de miles de años atrás. Desde las primeras guerras, fue necesario enviar información de un lado a otro, teniendo la seguridad que en caso de que el mensaje fuese capturado por el enemigo, no pudiera entender su significado y así no llevar a cabo una acción de defensa o contra ataque, lo que se conoce hoy en día como contrainteligencia, pero eso ya es otra historia.

Hoy en día se conocen varios sistemas de encriptación, unos muy buenos, otros regulares, otros… y casi cualquier persona, con un poco de ingenio, puede llegar a crear una nueva clave. De hecho, dudo que alguien en su vida no haya tenido un intercambio con otra persona en la que no disfrutara usado algún tipo de clave o enigma el cual es desconocido para el resto de los presentes, pudo suceder cuando niños y hablábamos en jerigonzas o ahora de grandes, cuando tratamos de con guiños y señas de tener comunicación única y exclusivamente con una persona dentro de un grupo de varias. En general, la criptografía esta presente en nuestras vidas aunque no la reconozcamos como tal.

Pero no se puede hablar de criptografía sin mencionar el criptoanálisis, como no se puede hablar de virus sin mencionar lo contrario. Así como los Hacker han modificado y fortalecido los sistemas de seguridad. El criptoanálisis ha perfeccionado la criptografía.

Hay disímiles formas de cifrar un texto, pero las dos mas utilizadas por personas no expertas en el tema, son la sustitución y la trasposición. El primero, como su nombre lo indica, consiste en sustituir caracteres, palabras o conjunto de palabras por otras, cambiando por completo el significado de la frase. Este método es utilizado para encriptar textos sencillos y cuyo contenido no sea tan secreto como podrían ser otros, y es sobre todo por la facilidad y rapidez con que se puede programar o generar un algoritmo que lo haga. En pseudocódigo vendría siendo algo como:

10 hacer un ciclo que recorra todo el texto.
20 tomar el código ASCII de cada carácter
30 aplicar a dicho código ASCII una función matemática que le haga cambiar el valor (suma, resta, multiplicación, división, exponente, etc.)
40 escribir luego el carácter correspondiente al nuevo número generado.

Para casos de emergencias y poca seguridad, este algoritmo puede resultar útil, siempre que se tenga en consideración que la tabla de caracteres ASCII sólo llega hasta 256, es decir, si alguien colocase en el texto a encriptar (o texto claro como generalmente se le llama) el carácter 250, al sumársele 10 sería el 260, y como está fuera de la tabla de caracteres ASCII, no sería representado, quedando al decodificarse un texto no similar al original.

Nota: Ver en la sección de códigos este algoritmo representado en Visual Basic 6.0

El otro método es un poco más complejo de programar, ya que consiste en usar una formula matemática para cambiar de posición las letras que conforman el texto claro. Un método podría ser el facilitado por Gandalf, y que consiste en tomar del texto grupos de 6 caracteres y darles una organización determinada, luego tomar las siguientes 6 letras hacer la misma operación y colocarlas en el medio de los anteriores. La organización se daría cambiando la posición delas letras, para esto se utilizarían los número del 1 al 6, sin repetir ni que falte ninguno. Utilizando para esto la clave 624351quedaría el 6to carácter en la primera posición, el segundo quedaría en su mismo lugar, intercambiar el tercer y cuarto carácter, el 5to conservaría su lugar y el primero se desplazaría hasta el final. Con este método, la palabra frase “esto es una prueba” se codificaría de la siguiente forma:

Texto claro: Esto es una prueba
Dividido en 6 letras:
“Esto e”
“s una ”
“prueba”
Fíjense que se cuentan los espacios también como caracteres.

Luego, aplicando la clave de codificación, cada una de estos conjuntos de palabras quedarían como:
“Esot E”
“ nuas” ‘aquí los dos espacios están al principio
“areubp”

Después de esto, sólo debemos tomar cada una de las palabras y situarlas en el medio de la anterior. Como la primera no tiene antecesor se quedaría de igual forma.
“esot E”
Pero al colocarle en el medio la segunda palabra codificada, el resultado sería:
“eso nuast E”
Y por último:
“eso nareubpuast E”
Siendo este el resultado final.

Si bien el método es un poco más complejo que el mostrado anteriormente, también es valido decir que el buscar una técnica para revertir el proceso es más difícil también, asegurando que no sea tan fácil dar con el texto claro.

Este procedimiento de encriptación puede facilitar que con una buena programación, se pueda cambiar la clave de encriptación en cualquier momento, haciéndolo un algoritmo complejo, ya que el mismo código con el que se encriptó no será el utilizado para aplicar el criptoanálisis, sino que habría que reorganizar la clave de encriptación, lo que nos daría un nuevo número, que será el utilizado para revertir el proceso.
El único inconveniente que tiene, es que como se tomaran cadenas de sólo 6 caracteres, se debe asegurar que el texto claro tenga una longitud equivalente a un múltiplo de 6, lo que se puede asegurar añadiendo espacios al final del texto antes de llevar a cabo el proceso de encriptación.

De igual forma, cualquiera que fuese el método de encriptación, se debe asegurar que tenga un proceso inverso, ya que sin el todo lo anterior carece de sentido.

Para los estudiantes de carreras informáticas o relacionadas con esta, el crear un programa de encriptación puede ser casi tan fascinante como crear un virus. Resulta para algunos hasta excitante, fabricar un programa que basado en un número de serie sea capaz de modificar un texto haciéndolo ilegible para cualquiera a quien no valla dirigido el mensaje.

Puede resultar un poco absurdo crear un criptosistema, sabiendo que la mayoría de los gestores de correo permiten cifrar mensajes, sin embargo, debe ser del conocimiento público el hecho de que por problemas de seguridad, no son todos los servidores que permiten la circulación a través de ellos de mensajes enigmáticos. Lo que hace de este método algo útil para aquellos que desean tener una correspondencia más segura, además, estos dos métodos sencillos pueden ser utilizados tanto para codificar archivos de texto como binarios.

Vale aclarar para evitar futuras confusiones, que los códigos citados en este artículo, así como las nociones de encriptación aquí mostradas son sólo como base de estudio, no queremos con esto que nadie se dedique a crear sistemas complejos de encriptación, sino sólo que sepan que es una realidad que existe, y que por lo tanto no se puede ignorar.

Continuar leyendo

Inyección SQL

Reinier Nápoles Martínez [rnapoles@ipihlg.rimed.cu]

La mayoría de la veces nos enseñan a programar, pero no nos enseñan sobre buffers overflow, ni como evitarlos. El siguiente articulo trata sobre una de las técnicas mas explotadas hoy en día.

La inyección SQL es una de las técnicas mas peligrosas que se han descubierto, ya que con una manipulación de una consulta SQL, permite a un usuario logearse como admin o como otro usuario registrado en la página, incluso, permite el borrado de tablas y BD según los privilegios que tenga el user con que se hace la consulta. Esta vulnerabilidad consiste en inyectar, como su nombre lo indica, código en sentencias SQL, debido a fallas a la hora de Programar. Numerosas son las aplicaciones web que son vulnerables a este tipo de ataque, como numerosos son los sitios que fueron atacados usando esta técnica.

Los ejemplos van desde la Casa Blanca, Nasa, ONU, páginas de gobierno, empresas, hasta páginas personales. Lo peor de todo es que incluso programadores expertos crean códigos vulnerables. A pesar de ser esta una técnica de algunos años, sigue teniendo un efecto sorprendente. Fue descubierta por rain.forest.puppy quien despues la uso para hacerse admin de Packetstorm.

Bueno vayamos al 'Hello Wordl' de esta técnica:

Imaginemos que tenemos un formulario en nuestra web con las siguientes Características:

<FORM action="validar.php" method="POST">
  Usuario:<INPUT type="text" name="usuario">
  Contraseña:<INPUT type="password" name="contraseña">
  <INPUT type="submit" name="enviar">
</FORM>

y en validar.php tenemos la consulta:

SELECT * FROM users WHERE User = usuario and pass = Contraseña

Si se introduce pepe como nombre de user y de pass 1234567 y si está registrado en la pág con este user y pass se le consedera el acceso, pero ¿que pasa si el user introduce ' or 1 = 1 -- y de pass lo mismo?, la consulta quedaría.

SELECT * FROM users where User ='' or 1 = 1 -- and pass = '' or 1 = 1 --

Podría permitirle entrar como un usuario registrado, o generar un error con información sobre la consulta hecha.

Hace un tiempo el colega ygonzalez descubrió una página en la red cubana vulnerable a este ataque.
Primero entramos como usuarios y luego como admins. Hubiéramos podido Dropear las BD pero, ¿qué ganábamos con eso?. Buscamos el teléfono del webmaster del sitio y lo llamamos informándole del fallo.

Una técnica para prevenir este tipo de ataques es usar funciones como Addslash, si alguien introduce ' or 1 = 1 -- se le añadirán \ con lo que el logeo no será válido crear usuarios los cuales a la hora de hacer consultas
solo tengan permiso de modificar sus tablas o su BD. Me he topado que mucha de la gente lo que usa es el root y en ocasiones hasta sin pass.
Con este pequeño aporte no trato de que se dediquen a ir atacando cuanta página haya en la red, trato de que se promueva la cultura informática. Por lo que los anímo a que investiguen y que compartan con nosotros lo que han aprendido. No soy un experto ni nada por el estílo, sólo soy un aprendiz, igual que ustedes.

Referencias:
http://es.wikipedia.org/wiki/Inyección SQL
http://www.wiretrip.net/rfp/txt/rfp2k01.txt

Continuar leyendo

Los reproductores MP3 pueden durar más

Jorge González Herrera [jorgel.gonzalez@infomed.sld.cu]

Seguramente muchos de ustedes se han preguntado en diversas ocasiones que los dispositivos de almacenamiento y a la vez de reproducción de música, los llamados reproductores MP3 son una basura, buenos para nada, sólo unos días disfrutando de ellos y…, un día termina su corta vida.

Bueno… de veras desean que les diga que es lo más probable, bueno…, lo más probable es que todos los que han pensado así estén equivocados, con esto no quiero decir que siempre esté en sus manos la solución del problema que está presentando dicho aparato chino, pero informáticamente casi siempre les aseguro que sí, al menos a mí me ha dado resultado.

Antes de empezar debo decirles que continuaré con este tema, porque en este artículo haré referencia sólo a aquellos afortunados que tengan el disco (CD) de fábrica que viene con el dispositivo, digo afortunado porque pocas son las personas que lo tienen, al menos es lo que he podido contemplar.

Para comenzar es sabido por todas las personas que han presentado dificultades con estos aparatos que, dentro de muchos más problemas, alguno de los principales son:

  1. La memoria es reconocida a modo de recuperación (ADFU).
  2. Es reconocida normalmente como un dispositivo físico, pero “Mi PC” no indica ninguna torre para ella, y por supuesto, cuado hacemos clic derecho en Mi PC, pinchamos “Administrar” y posteriormente Almacenamiento-Administración de discos, tampoco se encuentra.
  3. El dispositivo no enciende, incluso con baterías nuevas.
  4. La música se reproduce con un carácter “chillón”, por así decirlo.

He mencionado alguno de los problemas principales, tal vez se me quede alguno, o no mencioné algún otro por no tener conocimiento. Esta solución es rápida y casi siempre efectiva, al no ser que no sea esa la forma de VENCER.

Una ves ya con un problema de los mencionados anteriormente o algún otro que no he mencionado, debemos dirigirnos al disco que viene con el dispositivo de fábrica como mencionaba anteriormente (recuerden que este artículo es para los que poseen el disco). La solución que les propongo en este caso será reescribirle el firmware, el firmware es un programita, es como el sistema operativo de esos dispositivos, por describirlo de alguna manera, mejor descrito: sería como el BIOS de una PC, el mismo es el indispensable para que funcione nuestro mp3 y se encuentra en un chip de la placa.

Entrando en materia…

Ya con la memoria introducida en uno de los puertos (primeramente debemos percatarnos de que ese puerto USB está en buenas condiciones), procedemos a ver el contenido del disco. En el mismo debemos dar con un programa que te permita reescribir el firmware, lo instalamos y ya está. En el caso de una memoria que me trajeron hace poco pude ver algo como esto:

Puede que automáticamente te encuentre el firmware dentro del CD, pero casi siempre debemos ubicar la ruta, es un archivo de extensión “.bin”, lo reemplazamos, formateamos la memoria y ya está.

Para terminar es importante que sepan que en algunos casos no se encuentra el programa necesario para hacer esas operaciones con esos dispositivos (en este caso reemplazar el firmware) en el disco, así que si es el caso de alguno de ustedes debemos proceder a conseguir dicho programa, yo tengo algunos, el problema es hacérselos llegar.

Continuar leyendo

Reflexiones de un lector

El conquistador [ygonzalez@ipihlg.rimed.cu]

Estamos viviendo una era donde fomentar la cultura informática debería ser una de los principales tareas para todos aquellos que de una manera u otra nos relacionamos con este fantástico mundo.

Muchas veces decimos y criticamos a los demás sin fundamentos básicos sobre lo que exponemos, con esto quiero decir que no debemos juzgar, una persona, un proyecto, una revista, etc. Por lo que aparenta; sino por lo que es.

Los medios masivos de información juegan un roll importante, pero porque no dedican un poco más de ese preciado tiempo a aclarar algunos conceptos que han sido tergiversados y que aun algunos no hemos entendido.

Por ejemplo hacker.....

La sociedad cubana es rica en conocimientos, capaz de llevar a cabo cualquier tarea que se proponga. Un ejemplo de ello es esta revista nombrada BlackHat ó (Sombrero Negro), que trata de subsistir a las adversidades. Un proyecto que no pide nada a cambio para subsistir, un proyecto donde se ve reflejado el conocimiento tanto de jóvenes como de profesionales en el ámbito informático.

Quizás muchos nos censuren por lo que escribimos, pero con lo que hacemos no pretendemos causarle daño a nadie, al contrario de esta forma estamos contribuyendo a mejorar la seguridad de cada uno de nosotros... Debemos de reflexionar en un pequeño punto que creo de vital importancia y es el siguiente:..

Hacer daño:

Si quisiéramos hacer daño no sería esta pequeña revista la que nos empujaría a realizarlo, estoy completamente seguro que no y espero estén de acuerdo conmigo, ya que en la gran telaraña mundial, más conocida por las tres (WWW) World Wide Web, podemos encontrar información de cualquier tipo.

El objetivo de esta no es causar daño a nadie, sino ayudar a fomentar la cultura informática en nuestro país... A pesar de ser un pequeño proyecto que algunos no miran con muy buenos ojos, es de bastante aceptación por la juventud...

Pongo un pequeño ejemplo sobre lo antes expuesto...

Supongamos que usted desarrolla una aplicación Web para realizar una tarea determinada y la misma es expuesta para el completo funcionamiento de la sociedad, a la hora de programarla la misma fue objeto de una mala sección de código que permite a un ínter nauta cualquiera penetrar en la PC que alberga a la misma.

¿Como lo llamaría usted?

Estoy completamente seguro que sería hacker... Pero lo nombraría así con claro pensamiento pues estoy completamente seguro que no. ¿Por qué? Porque hemos oído lo que siempre han querido que escuchemos y no lo que por nosotros mismos hallamos sido capaces descubrir...
Acaso Richard Stallman promotor del proyecto (GNU) no es un hacker, es incluso más que eso, es un gurú.

Un breve Concepto de lo que es hacker:

Aficionados a la informática que buscan defectos, puertas traseras y mejorar la seguridad del software, así como prevenir posibles errores en el futuro, una persona que, habiéndose familiarizado y adaptado rápidamente a la sociedad de la información y de las computadoras, es parte de una conciencia colectiva que promueve la libertad del conocimiento y la justicia social.

En este caso, los roles de un hacker pueden entenderse en cuatro aspectos:

A) Apoyar procesos de apropiación social o comunitaria de las tecnologías.
B) Poner a disposición del dominio público el manejo técnico y destrezas alcanzadas personal o grupalmente.
C) Crear nuevos sistemas, herramientas y aplicaciones técnicas y tecnológicas para ponerlas a disposición del dominio público.
D) Realizar acciones de hacktivismo tecnológico con el fin de liberar espacios y defender el conocimiento del commons o procomún.

Ahora retomando el ejemplo anterior...

Si este sujeto al contrario de de aprovecharse de la ocasión, se pone en contacto con usted y le comenta sobre el problema...

¿Como lo llamaría usted?

Estoy completamente seguro que sería su benefactor... Con esto quiero darles a entender que hacker no es el que destruye sino el que de una forma u otra te ayuda a mejorar tus errores y a la vez trato de hacer entender a todos aquellos que están en contra de lo que desarrollamos que nuestro fin no es hacerle daño a nadie, todo lo contrario. Es ayudar a ser cada día mejores a todos los informáticos de nuestro país y de cualquier otra parte que siguen la labor que desarrollamos. Solo pedimos que nos ayuden a ser mejores y no que traten de destruirnos. No somos una especie que deba ponerse en peligro de extinción al contrario. Somos una especia a la cual se debería de crear un pequeño habita para procrear cada día más uno de nosotros...

Es cierto que hay mentes retorcidas, pero siempre la vamos a encontrar tanto sea en la informática como en la vida cotidiana y tenemos que combatirlas para no permitirles desarrollar sus malignas intenciones. Pero no nos consideramos ese tipo de personas...

Así que dejo en sus manos este pequeño texto para que sea objeto de reflexión para todos aquellos que no están de acuerdo con lo que hacemos...

Un saludo a todo el equipo de BlackHat y exhortarlos a continuar desarrollando como hasta ahora lo que se han propuesto. Estoy seguro que la lucha no va a ser fácil pero si estamos todos unidos lo podemos lograr.

Continuar leyendo