Desde el año 2000 practico skate y es mi hobbie favorito. Entonces como hoy cumplo 36 años, para celebrarlo, decidí filmar un video skate aprovechando que he estado bajando de peso y he estado agarrando mejor condición física para patinar.
¿Por qué 36 trucos en el video skate?
En el mundo del skateboarding, muchas personas luego de los 30 años suelen sacar un vídeo haciendo como cantidad de trucos, la cantidad de años que están cumpliendo. Por esta razón el video skate contiene 36 trucos porque estoy cumpliendo 36 años en el día de hoy.
Me costó un poco perder el miedo a volver a hacer trucos luego de una lesión que tuve el año pasado, pero gracias a la presión de filmar los 36 trucos pude volverlos a aterrizar y hacerlos.
Así que sin mas preámbulos les comparto mi video de 36 trucos:
Fue un reto grabar 36 trucos distintos, pero estoy feliz de haberlo logrado. Y finalmente, quiero decirte que si viste mi video completo, te doy las gracias por hacerlo, significa mucho para mi.
Actualizado: El código ya fue revisado y esta funcionando, Un usuario me confirmo que lo implemento en su Teensy 3 y le funciono sin
problemas, Si lo que deseas es leer el código que funciona sin la historia detrás de este, solo has click aquí.
Dicen que de los errores se aprende así que quiero compartir este con
ustedes para que se les haga mas fácil.
Un poco de historia en este caso.
Recientemente me llego una MacBook Pro que tras tres semanas de haber sido comprada el vendedor se arrepintió del negocio y decidió bloquearla con una pantalla que decía "devuelveme la laptop y te devuelvo el dinero", justo debajo de este mensaje aparecía un candado y cuatro campos que aceptaban solo caracteres numéricos.
Tanto al comprador como a mi nos pareció de mal gusto el gesto que tuvo el vendedor sobretodo cuando este pidió que se le pagara en efectivo. Así se veía justo después de prender la MacBook pro pero antes de formatear:
Manos a la obra.
Como no conocía que intenciones o de lo que era capaz el vendedor
decidí formatear el disco a bajo nivel, lo monte en otra maquina y le
hice `dd if=/dev/randomof=/dev/sdd` como por unos 30 minutos,
detuve el proceso y volví a armar la MBP.
Mi sorpresa fue que al querer iniciar desde el disco de OSX para
iniciar la re-instalación me salió otra pantalla donde pedía un
password, esta vez no tenia limite de caracteres pero seguía siendo
numérico. Investigando un poco me di cuenta que los procesos de NVRAM no
funcionarían pues esta MBP era muy nueva aunque de todas formas lo
intente y corrobore mi teoría.
En algunos foros sugerían que se intente cada combinación manualmente y
que algunos les había tomado un par de semanas en sus ratos libres,
suena bien, verdad? Pero y si el PIN es el ultimo que intento, cuanto
tiempo me tomaría? y si me salto por equivocación algún numero?
Tengo 10.000 problemas pero automatizar un ataque de fuerza bruta al EFI de una Mac no es uno de ellos.
Sabiendo lo disléxico que soy y lo mucho que prefiero caminar por la
playa y compartir con mi familia decidir automatizar este proceso. La
lógica es simple, un contador del 0 al 9999 que siempre le de formato a
la salida en forma de 4 dígitos, no es cosa del otro mundo.
Que hardware puedo usar? que módulos del kernel en Linux tengo que
cargar para enviar la data desde una maquina a otra como si fuese un
teclado? así se inicia mi búsqueda y mi pronta realización de que
necesitaría un hardware especializado para esto.
La mayoría de nuestras computadoras son incapaces de hacer que su
controladora USB se identifique como un HID (dispositivo de interfaz
humana por sus siglas en ingles) por lo que no podría hacer esto desde
mi computadora usando BASH o Python.
Un dispositivo que podría funcionar es una Arduino pero no sin antes
armar un shield y el costo de este shield (ya teniendo el breadboard o
un protoshield) es de aproximadamente unos $24 sin incluir el envió y
los impuestos. La alternativa es el Teensy que con envió e impuesto me
costo poco menos de $23.
El Teensy 3 termino siendo el hardware mas efectivo para esta tarea,
me hubiese gustado construir el shield requerido para el Arduino pero
sin mucho tiempo libre que se diga este no era opción.
Ordene el Teensy 3 por sugerencia de Paul Stoffregen, el me comentaba
que la versión 3 (la mas reciente) funcionaba con 3 voltios a diferencia
de los anteriores que funcionaban con 5 voltios y que la industria se
estaba moviendo hacia dispositivos de 3 voltios por lo que los de 5
voltios quedarían obsoletos pronto.
El código y el ataque
Dos días después de que lo compre ya estaba en en casa y a los pocos
minutos ya lo tenia corriendo una version mas simple del codigo final.
Esta versión funcionaba sin problemas sobre un editor de texto plano,
el detalle esta en que al intentar contra la MacBook Pro de apple no
funcionaba, en ocasiones enviaba una tecla, otras enviaba 2 pero parecía
nunca enviar el "enter".
Al día siguiente con la mente mas fresca y no después de un turno de
12 horas de trabajo me dispuse a atacar el problema. Alguien en Apple se
gasto su tiempo para hacer esta forma de ataque lo mas difícil posible
para una maquina pero a la vez lo mas amigable para un humano así que me
dispuse a imitar un humano y luego de varios intentos termine con esta
versión del código:
#include <usb_keyboard .h>// This code is licensed under Apache 2.0 License// http://www.apache.org/licenses/LICENSE-2.0.txt// Limitation of Liability. In no event and under no legal theory,// whether in tort (including negligence), contract, or otherwise,// unless required by applicable law (such as deliberate and grossly// negligent acts) or agreed to in writing, shall any Contributor be// liable to You for damages, including any direct, indirect, special,// incidental, or consequential damages of any character arising as a// result of this License or out of the use or inability to use the// Work (including but not limited to damages for loss of goodwill,// work stoppage, computer failure or malfunction, or any and all// other commercial damages or losses), even if such Contributor// has been advised of the possibility of such damages.// This code is indented for people who are not able to contact// apple support and I am in no way liable for any damage or// problems this code might cause.constintledPin=13;intcounter=0;intfakecounter=counter;charpin[]="xxxx";voidsetup(){pinMode(ledPin,OUTPUT);delay(10000);}voidloop(){keyboard_modifier_keys=0;if(counter<=9999){delay(8000);digitalWrite(ledPin,LOW);delay(5500);digitalWrite(ledPin,HIGH);sprintf(pin,"%04d",fakecounter);Keyboard.press(pin[1]);delay(450);Keyboard.release(pin[1]);delay(420);Keyboard.press(pin[1]);delay(398);Keyboard.release(pin[1]);delay(510);Keyboard.press(pin[2]);delay(421);Keyboard.release(pin[2]);delay(423);Keyboard.press(pin[3]);delay(430);Keyboard.release(pin[3]);delay(525);Keyboard.press(KEY_ENTER);delay(305);Keyboard.release(KEY_ENTER);}//reached 4 digit PIN max valueif(counter>9999){for(intblinkies=0;blinkies<8;blinkies++){digitalWrite(ledPin,HIGH);delay(20);digitalWrite(ledPin,LOW);delay(200);}delay(6000);}++counter;fakecounter=counter;}
Como pueden ver evito enviar los cuatro dígitos juntos y asigno distintos valores para esperar entre los eventos de presionar la tecla y soltarla así como también la espera entre dígito y dígito.
Luego de unos minutos de prueba note que la MBP había incrementado el tiempo de espera entre intento e intento así que decidí asignar un valor mas alto desde el inicio.
Como no le instale una pantalla para ver por cual numero iba, decidí hacer un script el cual corro desde mi maquina con Fedora 18 que da un aproximado de que combinación esta usando ahora para el ataque. El script es simple y uso la sumatoria de los mili-segundos que estoy
pasándole a delay() y el mismo valor mas un segundo, asumiendo que mi tiempo de reacción al iniciar el script es mas lento o que el ejecutar el resto de las instrucciones introduzca alguna demora. Este es el script:
while true doclear echodate start=`date +%s -d "Wed Jan 16 17:46:00"`current=`date +%s`echo"Current PIN Between: " | tr '\n'' 'echo"($current - $start) / 19.782" | bc | tr '\n'' 'echo" and " | tr '\n'' 'echo"($current - $start) / 18.782" | bc
sleep 2
done
Así se vería en ejecución en mi monitor, use el tamaño de fuentes grandes para poderlo ver desde lejos sin forzar la vista.
Buenas noticias, Malas noticias.
Lo bueno de automatizar este proceso es que tan solo me tomo cuarenta y ocho horas en enviar las diez mil combinaciones, sin olvidar ninguna y sin repetir ninguna, muchísimo menos que las tres o mas semanas que me hubiese demorado en hacerlo manualmente.
En general estoy contento, no gaste mas de 30 minutos en total programando en un lenguaje con el que no tengo practica y la Teensy funciono sin problemas.
Las malas noticias es que recorrí dos veces todas las combinaciones y no logre entrar. Al parecer al uno cambiar el disco duro, el EFI genera un nuevo password aleatorio de 6 caracteres numéricos o mas lo que en el mejor de los casos me tomaría mínimo 197 días continuos.
Usando un poco de información del vendedor me hubiese gustando intentar distintas combinaciones de su numero de teléfono, fecha de cumpleaños, etc.. pero sin muchos detalles se me es imposible esta opción.
El error estuvo en formatear el disco asumiendo que la restricción estaría solo allí, teniendo hoy en día el disco duro pudiese intentar el ataque de fuerza bruta usando el Teensy al sistema operativo. Mi consejo al comprador fue llevara a corte al vendedor o hablar en una tienda de Apple a ver que respuesta le dan aunque no espero que sea positiva.
Aquí les dejo un vídeo del ataque:
Alternativas un poco mas extremas.
En una conversión con un australiano que es especialista en pentesting macs y atacando el EFI me dice que si consigo una MBP del mismo modelo y le extraigo su firmware pudiese subírselo a la que esta bloqueada usando un programador PIC también me aseguro que el sabe la forma de arrancarla atacando el puerto del thunderbolt pero que desafortunadamente no podía comentar sobre el tema.
Pueden revisar los temas referentes a EFI en su blog via ho.ax y en especial les recomiendo esta presentación para los que tienen curiosidad sobre su trabajo http://ho.ax/posts/2012/10/ruxcon/.
UPDATE: Un bug en el código
Recientemente este articulo fue reseñado en hackaday y varios foros lo
que trajo como consecuencia que mas gente revisara mi código y se
percataran de un error en este (¿ven la importancia del Código
Abierto?).
En las primeras lineas de código estoy enviando pin[1] dos veces y en ningún momento estoy enviando pin[0]. acabo de corregir el código y lo probé en un documento de texto plano, hasta ahora todo parece estar bien, el nuevo código es:
#include <usb_keyboard.h>// This code is licensed under Apache 2.0 License// http://www.apache.org/licenses/LICENSE-2.0.txt// Limitation of Liability. In no event and under no legal theory,// whether in tort (including negligence), contract, or otherwise,// unless required by applicable law (such as deliberate and grossly// negligent acts) or agreed to in writing, shall any Contributor be// liable to You for damages, including any direct, indirect, special,// incidental, or consequential damages of any character arising as a// result of this License or out of the use or inability to use the// Work (including but not limited to damages for loss of goodwill,// work stoppage, computer failure or malfunction, or any and all// other commercial damages or losses), even if such Contributor// has been advised of the possibility of such damages.// This code is indented for people who are not able to contact// apple support and I am in no way liable for any damage or// problems this code might cause.constintledPin=13;// choose the pin for the LEDintcounter=0;intfakecounter=counter;charpin[]="xxxx";voidsetup(){pinMode(ledPin,OUTPUT);// declare LED as outputdelay(10000);}voidloop(){keyboard_modifier_keys=0;if(counter<=9999){delay(8000);digitalWrite(ledPin,LOW);delay(5500);digitalWrite(ledPin,HIGH);sprintf(pin,"%04d",fakecounter);//sending first digitKeyboard.press(pin[0]);delay(450);Keyboard.release(pin[0]);delay(420);//sending second digitKeyboard.press(pin[1]);delay(398);Keyboard.release(pin[1]);delay(510);//sending third digitKeyboard.press(pin[2]);delay(421);Keyboard.release(pin[2]);delay(423);//sending forth digitKeyboard.press(pin[3]);delay(430);Keyboard.release(pin[3]);delay(525);//sending enterKeyboard.press(KEY_ENTER);delay(305);Keyboard.release(KEY_ENTER);}//reached 4 digit PIN max valueif(counter>9999){for(intblinkies=0;blinkies<8;blinkies++){digitalWrite(ledPin,HIGH);delay(20);digitalWrite(ledPin,LOW);delay(200);}delay(6000);}++counter;fakecounter=counter;}
La versión actualizada de este sketch para Teensyduio siempre estará en https://github.com/orvtech/efi-bruteforce Yo voy a tratar de mantener también esta pagina al día.
Siéntanse libres de clonarlo, hacer forks y contribuir.
Voy a contactar al dueño del laptop a ver si me la puede enviar de nuevo
y comenzar el ataque de nuevo, de esto no ser posible me gustaría
escuchar sugerencias de como probarlo.
- Martes 12 de Marzo: Ya he recibido confirmaciones de que este código esta funcionando, Como lo pueden ver en este post de MacRumors:
Se que a muchos les da curiosidad ver que sucede cuando intentamos
eliminar de forma recursiva todos los archivos y directorios del
directorio raíz de nuestro sistema así que aproveche de hacer un video
precisamente ejecutando rm -Rf /* como root. Aquí pueden ver el video:
Como ven las consecuencias son visibles tan pronto empezamos a ejecutar
este comando y si se fijaron hay directorios que no son eliminados.
Estos directorios como es el caso de /proc residen en memoria y no pueden ser eliminados mientras que otros como /var contienen directorios que a su vez residen en memoria con es el caso de /var/tmp en mi instalación de Fedora.
Post-análisis luego del rm -Rf /
En vista de que me han preguntado varias veces y muchos han especulado sin realmente tener pruebas me decidi a averiguar en que estado quedaba el sistema operativo. ¿Que archivos y directorios sobrevivieron?
Para responder esto simplemente monte el disco duro viejo en otra instalación de linux y ejecute find /mnt/oldhdd -type lo que arrojo como resultado:
Como ven a excepción de /mnt/oldhdd/run/utmp todos son directorios.
Mas de una vez he intenten ejecutar sl cuando intentan ejecutar
ls para listar archivos y directorios, es un error que todos
cometemos pero ¿que pasaria si sl en realidad fuese un comando?.
Afortunadamente para nuestro entretenimiento hay una aplicación de
nombre sl y consiste en un tren ascii que sale en el terminal cada
vez al momento de ejecutar sl. Perfecto para una broma practica,
instalarlo en un servidor que muchas personas usan y esperar a escuchar
los cuentos.
Aquí les dejo un video que muestra como instalarlo y como se ve al
momento de ejecutarlo.
En caso de que no puedas ver el video, puedes instalar esta aplicación
ejecutando:
su - yum install -y sl
Como ven es inofensivo, o por lo menos menos inofensivo que un ualias a
rm -Rf /*, de hecho un compañero de trabajo fue el que me comento
sobre esta broma practica. La aplicación sl esta disponible para OSX
a través del manejador de paquetes brew.
Uno de los juegos mas clásicos es el de Príncipe de Persia, de hecho fue
uno de los que mas jugué cuando era chamo.
Hoy encontré como jugarlo de nuevo usando el emulador de DOS DOSBox.
Este emulador esta optimizado para videojuegos que en un principio
fueron diseñados para correr sobre MS-DOS y esto es justo lo que estamos
buscando. Aproveche y les hice un vídeo de menos de 3 minutos que les
explica como instalarlo, aquí se los dejo.
En caso de que no hayan captado algunos detalles en el vídeo cree un
grupo de secuencias de comandos que les ayudara a dejar corriendo el
juego Prince of Persia en Fedora, en mi caso estoy usando Fedora 17.
Esta seria la primera secuencia de comandos para dejar Prince of
Persia instalado en nuestro Fedora.
Como ven lo que estamos haciendo es instalando DOSBox, creando un
directorio donde tendremos nuestro juegos y abriendo FireFox en la
pagina para descargar el juego como tal. Una vez en la pagina,
descargamos el juego, lo copiamos a la carpeta ~/games y lo
descomprimimos.
cp ~/prince*zip ~/games
cd ~/games
unzip ~/prince*zip
rm ~/prince*zip
Ahora vamos a arrancar DOSBox y una vez dentro del emulador vamos a
montar ~/games como si fuese la unidad C y arrancamos el juego.
Recuerde remplazar /home/usuario/games por la ruta completa a su
directorio home.
Aunque se nota que lo hice de apuros cualquier persona puede darse cuenta de lo sencillo que es instalar Linux, no requiere seriales, códigos de verificación ni cracks o hacks y lo mejor de todos, puedes relajarte pues siempre y cuando lo descargues de la pagina oficial de Fedora puedes estar seguro de que no viene con virus.
Sin mas que decir, aquí se los dejo:
En el video asumo que ya han descargado Fedora Linux, en caso de que esto no sea así, pueden descargarlo desde
fedoraproject.org/es/get-prerelease y recuerda, Fedora no solo es gratis. Es libre como en "Libertad de expresión", puedes usarlo para tus propios propósitos, sin restricciones legales.
Durante el video pueden apreciar la primera pantalla de inicio luego del arranque, esta aparece solo una vez a menos que alteren el sistema
operativo. Si por cualquier razón necesitan que al iniciar Fedora te
salga de nuevo esta pantalla, puedes forzar el sistema operativo para
que de nuevo muestre este Setup Agent.
La nueva interfaz gráfica de Fedora 15 (Gnome 3) puede ser confusa para
algunos, en especial si están acostumbrados a otros sistemas operativos
o distribuciones. Recientemente he visto como se ha incrementado la
cantidad de preguntas en canal de IRC #fedora-latam referente a este
tema, desde ¿Como se instalan programas en Fedora? hasta "Descargue este
blender.exe, ¿Como lo instalo?".
La ventaja de usar aplicaciones que están en el repositorio de Fedora es
que los programas allí colocados tienen una firma electrónica que valida
y garantiza la autenticidad del programa que estás instalando además
garantiza que el programa que instalas tiene una alta calidad y es
compatible 100% con Fedora y a diferencia de Windows no tienes que estar
buscando cracks ni tener que hacer cualquier cantidad de cosas antes de
poderlos descargar.
Aquí les dejo un video:
Para los que tienen equipos que no soportan la nueva interfaz gráfica de
Gnome 3 y están corriendo en 'fall-back mode' aquí les dejo unas
capturas de pantalla:
Hacemos click en Aplicaciones, se encuentra en la parte superior
izquierda de nuestras pantallas, seguidamente click en Herramientas
de sistema del y por ultimo en Añadir/Quitar Software
Buscamos la aplicación que queremos instalar, en este caso Blender
y la seleccionamos en la ventana de los resultados que se encuentra a
la derecha.
Revisamos las dependencias requeridas para instalar esta aplicación y
aceptamos.
Por ultimo, autorizamos la instalación de la aplicación y su
dependencias autentificandonos con las credenciales apropiadas.
Luego de esto Blender se instalara con todas las dependencias
necesarias para su funcionamiento. Los programas instalados pueden
ser localizados inmediatamente en el menú de aplicaciones.
A finales del 2006 fue la ultima vez que asistí a una reunión del grupo
de usuarios de Linux (LUG por su siglas en ingles) de Miami hasta este
pasado fin de semana. El grupo es un poco mas pequeño de lo que recuerdo
pero las intenciones y la motivación siguen siendo las mismas.
El tema que mas genero preguntas fue el del "Un servidor casero
económico" especialmente sobre un NSLU2 que lleve para que lo vieran,
algunos de los participantes no podían creer que esa cosa tan pequeña
con un costo menor de $30 pudiese convertirse en un servidor web. Parte
de mi charla consistió en demostrar lo que es capaz de hacer este mini
NAS hackeado a mini server, así que les mostré el blog
http://www.linuxevolution.org que esta corriendo sobre mi NSLU2 y además
les hice una demostración de transmisión de imágenes en vivo con fotos
del evento.
La charla cerro con el tema de 'Diagnosticar problemas con strace' fue
la siguiente y aunque cubrí todo lo básico, me hubiese gustado haber
hecho una practica sobre este tema.
Aquí les dejo un video de parte de mi presentación donde le explico a un
miembro del LUG sobre el NSLU2. Me despido muy agradecido con Jonathan
Respeto del southdadelug.org por su invitación a este evento y pueden
descargar aqui mi presentación en formato PDF.
Cuando uno habla de hacking o hacks, la mayoría de la gente lo asocia
con el típico nerd que vive con su mama y que desde el sótano de su casa
irrumpe en otras computadoras. En este articulo voy a hablar un poco de
las herramientas disponibles para hacer precisamente eso, pero por
motivos didácticos, así que no soy responsable de sus acciones. La
mayoría de ustedes han escuchado de nmap y nessus pero que hay de
las otras herramientas? echemosle un vistazo y juguemos un poco con la
red.
La preferida por muchos es tcpdump, es una herramienta que simplemente
nos permite escuchar todo el trafico de la red y graba todos estos
paquetes para que luego los podamos analizar. Si tienes mas de una NIC,
puedes especificar por cual quieres escuchar pasándole el parámetro -i
interfaz. Una cosa que me gusta es que tcpdump pone tu NIC en modo
promiscuo (o por lo menos intenta hacerlo) de forma predeterminada, de
esta forma puede escuchar todo el trafico de ese segmento de la red.
Para deshabilitar el modo promiscuo y limitar el trafico solo a el que
le compete a tu NIC puedes usar el parámetro -p. Hay muchos otros
parámetros que puedes usar, recuerda ejecutar man tcpdump para mas
información.
Aquí les dejo un video que muestra como saber que sitios web estan
visitanto desde nuestra red.
Ahora bien, vamos a cuidar nuestras espaldas y supongamos que
queremos saber que ordenadores están en tu segmento de red pero queremos
evitar enviar paquetes a la red preguntando por estos ordenadores para
que no nos delate (recuerda, este tipo de actividad le puede parecer
sospechoso al administrador). La herramienta indicada para esta tarea es
p0f, esta usa técnicas pasivas para tratar de adivinar que sistemas
existen en tu segmento de red y al igual que tcpdump permite
especificar la interfaz a usar y grabar trafico guardándolo en un
archivo estilo tpcdump.
Nuestras dos herramientas se empiezan a diferenciar a la hora de definir
de forma predeterminada el estado de promiscuidad de nuestra NIC, p0f
requiere que especifiques que quieres que la NIC este en modo promiscuo
y solo escucha cuando un ordenador en nuestra red abre nuevas
conexiones. Aquí una lista de parámetros útiles para p0f.
-i Especifica la NIC por la que va a escuchar (p0f -i eth0)
-w Guarda la salida en formato tcpdump (p0f -i eth0 -w
laboratorio.dump)
-o Al igual que -w guarda la salida de este comando pero en un
archivo de texto sin formato tcpdump
-O Proporciona una salida mas descriptiva. Tambien llamado modo ACK
-p Indica que quieres que ponga la NIC en modo promiscuo (p0f -i eth0
-p)
-s Analiza un archivo que previamente capturaste en formato tcpdump
El problema de todo esto hasta ahora es que es muy probable que el resto
de las maquinas esten bajo una NAT y no podamos verlas como tal, solo
veremos el router. Uno puede usar el parámetro -M que le indica a p0f
que use un algoritmo de detección de enmascaramiento e intenta
identificar estas maquinas individualmente.
Supongamos que ya sabemos cuales son los otros ordenadores que existen
en nuestra red, ahora lo interesante es saber que tipo de trafico
tienen, sera FTP? o tal vez HTTP?, POP?, IMAP? o cualquier otro que sea
de nuestro interés. Lo segundo que en mi caso me llama la atención es
ver desde donde viene este trafico, con quien se comunican estos otros
ordenadores? para responder todo esto podemos usar nuestra tercera
herramienta, dsniff.
Esta utilidad al igual que las anteriores nos permite especificar que
interfaz queremos usar e incluso podemos usar el parámetro -p para que
use archivos que han sido grabados previamente. Puedes habilitar la
detección automática de protocolos usando el parámetro -m lo que te va
dar detalles crudos de que hacen tus vecinos de red.
Ahora que sabemos quienes están a nuestro alcance, que hacen y con
quien, podemos revisar la seguridad de los servicios que prestan, el mas
común es el servicio web.
Una herramienta buena para revisar como esta la seguridad de nuestro
servidor web es nitko. Puedes seleccionar el hostname con la opción -h
incluso puedes pasarle una lista de host o IPs en un archivo de texto.
nitko se enfoca en el puerto 80 de forma predeterminada pero puedes
alterar esto usando el parámetro -p de hecho tiene un montón de
parámetros que puedes usar para pruebas de seguridad especificas... mas
de las que quisiera mencionar aquí.
No quería terminar este articulo sin antes mencionar chkrootkit,
esta utilidad nos permite analizar sistemas y trata de terminar si han
sido manipulados, para ver una lista de las pruebas disponibles puedes
usar el parámetro -l. Útil para verificar si el sistema ha sido
infectado o si tiene rootkits.
Este articulo es para fines didácticos, para que 'juegues' en tu propia
red y no para que dañes sistemas ajenos ni adquieras a información que
no te pertenece.
Google ha liberado la nueva aplicación de
YouTube para el Android liberándola de los ROMs. Lo bueno de esto es que
podemos esperar que nuevas funcionalidades sean publicadas mas seguido.
El problema viene cuando intentas instalar la versión del Google Play
Store. Como ya existe la versión del ROM el Google Play Store también
conocido como Android Market no la puede remplazar/actualizar por que la
partición /system esta montada como read only.
La solución:
Abrir la aplicación Terminal Emulator y ejecutamos esto:
cd /system su mount -o remount,rw /system rm -Rf YouTube.* reboot
Para que esto funcione debes de tener rooteado tu Android, luego de que
se reinicie el teléfono regresas al market e instalas la aplicación
sin problema.
Nota: Esto funciono en mi HTC Evo con CyanogenMod 6.