Geek & Roll » 2008 » May

Nuevo G&R’er: Rafyta

Cesar May 9th, 2008 geekandroll 3 comentarios

Como habrán visto, tenemos a un nuevo autor en Geek&Roll. Contamos con el placer de tener en nuestro equipo a Rafyta, otro de esos que se dedican al diseño gráfico. A como va la cosa creo que voy a ser el único programador por acá.

Después de 3 posts fue más que suficiente, y tuvimos que darle todas las de la ley. Ahora Rafyta se integra de lleno al equipo que escribe en Geek&Roll y nosotros no tenemos más que decirle: ¡Bienvenido!

NeuroSky: Powered by Your Mind

Rafyta May 9th, 2008 ciencia, tecnología Haz un comentario

Aunque no es noticia de última hora, creo que este post está más que justificado. Todos (en especial los productivamente flojos) habremos pensado alguna vez qué comodidad nos daría poder controlar la computadora con la mente. Como diseñador me ayudaría bastante a poder plasmar exactamente la idea que tengo en la cabeza. A los músicos les gustaría (supongo) poder vaciar directamente las tonadas que les llegan de repente, y así.

NeuroSky es una empresa que se dedica a desarrollar lo que podrían ser los inicios de este tecnología. Por ahora mide algunos parámetros de las ondas electromagnéticas del cerebro, los cuales interfasea con un prototipo que se ve como un videojuego, en el cual se pueden mover objetos con la mente. El controlador es un headset que trae una antena que queda encima del cráneo, y es todo lo que necesitas.

Esta compañía sólo se dedica a desarrollar la tecnología y licencia su uso para que otros le den aplicación, por ejemplo un pequeño robot controlad con la mente, desarrollado por Ologic. Otros planes incluyen robots para los minusválidos, videojuegos y celulares con la tecnología implementada.

Ver el reportaje en YouTube

¿ mindPhone?

Cracking 101 – Capítulo 0

Cesar May 7th, 2008 cracking 16 comentarios

A petición popular me dispuse a crear otra serie de escritos dedicados al cracking, no como actividad ilegal, sino como el arte que es. ¿Porqué lo hago? la respuesta en sí es sencilla: Por que me gusta crackear. Pero hay otras razones de peso:

  • Muchos de los tutoriales en español disponibles son muy antigüos, y aunque la información sigue siendo válida, a veces es difícil conseguir las herramientas de las que hacen uso, o la versión exacta del programa víctima que usaron
  • Hay un interés por mejores tutoriales, mejor escritos y más accesibles a los usuarios novatos
  • En su tiempo recibí muy buenos comentarios sobre mis propios tutoriales, lo que me lleva a pensar que tal vez tengo algo de talento en eso

Antes de que se quieran poner a crackear sus programas favoritos, hay que estudiar lo que hay detrás de un programa. Es muy similar a tocar la guitarra: uno quiere agarrar la guitarra y tocar Stairway to Heaven, y con la suficiente práctica sucederá, pero tenemos que empezar por unos sencillos acordes primero. Todo es parte del proceso. Aún así, en este tutorial #0 voy a ilustrar la teoría utilizando un programa real, ejecutándose bajo un debugger.

Hay algunos conceptos que tenemos que revisar antes de comenzar a crackear. Algunos parecerán obvios, otros no tanto. Lo importante es tener la cabeza despejada, abrir la mente y comprender cada uno de los detalles. Uno de los conceptos clave es saber cómo se ejecuta un programa en la computadora. Esto nos ayuda a saber cómo atacar al programa. Un programa típicamente se guarda en memoria no volatil, es decir, memoria que se mantiene aún cuando se apaga la computadora (como el disco duro, memoria flash). Cuando el programa se ejecuta, este se copia a la memoria RAM, ya que de ahí el CPU puede accesarlo de manera directa. El CPU ejecuta el programa instrucción por instrucción. Como podemos ver, aún cuando la computadora se compone de múchos subsistemas, el que nos interesa para crackear es el CPU, ahí es donde ocurre la magia.

Para crackear, necesitamos entender cómo es que el CPU ejecuta el programa, el problema es que el CPU entiende instrucciones binarias solamente. Binario es muy conveniente para una máquina ya que es muy fácil de representar por hardware los dos estados (0 y 1), pero no lo es para nosotros y por eso necesitamos lenguajes de más alto nivel. El lenguaje que le sigue al lenguaje máquina es el llamado “ensamblador”. Cada familia de procesadores tiene su propio lenguaje ensamblador. En nuestro caso, necesitamos entender lenguaje ensamblador para el x86.

Algo que sería buena señal es que en estos momentos ya tienen en sus manos un manual para ensamblador x86, o mejor aún, ya lo estudiaron de alguna manera. Como recomendación personal está el libro “The Art of Assembly“. No es específico de cracking, e introduce un concepto de ensamblador de “alto nivel” que podría confundir a algunos, pero tiene una sección que deben leer titulada “Una introducción a la familia de CPUs 80×86 de Intel“. Del lenguaje ensamblador no necesitamos todo, aunque entre más sepas del lenguaje, más se te facilita tu tarea. Lo básico son algunas instrucciones con las que se van a topar al inicio: instrucciones de salto, comparaciones, movimiento de datos, llamadas a funciones y lo referente a la pila (es decir, stack, no pila de batería). Como primer ejercicio, vamos a revisar algunas de estas instrucciones: Leer el resto de este post.

En Windows las cosas son más complicadas

Las distribuciones de Linux pueden hacerlo (tener repositorios de software) ya que prácticamente todo el software es libre y/o de fuente abierta; no se tienen que preocupar por restricciones de licencias. En el mundo de Windows, sin embargo, las cosas son más complicadas.

(Extraído del artículo 18 características que Windows debería tener, de PC World)

Los CAPTCHAs de rapidshare: WTF?

Axel May 3rd, 2008 opinion, tecnología 21 comentarios

Los CAPTCHAs (Completely Automated Public Turing test to tell Computers and Humans Apart) son esas secuencias de letras y dígitos distorsionados que se utilizan en algunos sitios para comprobar que somos humanos y no un bot malévolo tratando de utilizar sus servicios para intentar conquistar el mundo. A mí en general esto me parecía buena idea, pero eso cambió el día de hoy.

Estaba yo muy contento tratando de descargar un documental de Nirvana de -ajem- rapidshare, esperé los odiosos 1.2 minutos que te hacen esperar, y cuando estaba sólo a un captcha de distancia, me aparece esto:

captcharapidshare.png

WTFF??!?!!!?!!!!

¿Se supone que debo encontrarles forma de gatito a esos garabatos distorsionados encimados en las letras? Give me a fucking break. Esto ya alcanza niveles de impresionante estupidez. ¿Qué sigue? ¿Adivinar las letras negras sobre fondo negro en una imagen? ¿Multiplicar por dos una cantidad y restarle el número que pensaste?

Necesitamos otra solución para hacer Turing Test.

CushyCMS rox!

Web Designers: POR FIN le pueden dar a los clientes el control del contenido de sus sitios, sin que estropeen el diseño.

Antes ya se podía, pero había que instalar – o programar – un CMS (Content Management System) y adaptarlo al sitio, asignar usuarios, hacer pruebas, capacitar empleados inútiles, etc.

Ahora, CushyCMS permite de manera fácil y rápida (en serio) poner en manos del cliente el manejo del contenido sin prolongar más el tiempo de desarrollo ni añadir al presupuesto del proyecto. Basta con sólo añadir la clase cushycms al elemento que deseamos dejar editable y listo (por ejemlo envuelve en una <div> el área de texto que vas a dejar editable y la pones como <div class=”cushycms”> y listo). Además, las imágenes son editables de la manera siguiente: <img src=”foo.jpg” class=”cushycms”> y el sistema la va a ajustar a las dimensiones de la imagen que está sustituyendo.

El manejo de usuarios y permisos es un pan, sólo necesitas el acceso FTP y seguir las instrucciones. Para dar de alta un editor, sólo necesitas su e-mail y el sistema le manda instrucciones. El video tutorial en la página es de lo más sencillo; si alguien tiene la inteligencia suficiente para usar hotmail, seguramente puede editar un website de esta manera.

By The Way es, y siempre será GRATIS.

Supera eso Contribute, ($169 US) JA!

Posts recientes