Macro de debug coloreada

Siempre que se empieza a desarrollar sobre C++, lo primero que se piensa es que es un entorno feo, aburrido y arcaico. Al cabo de un tiempo te das cuenta de la potencia y las maravillas que puedes llegar a conseguir con este lenguaje de programación, y por que sigue estando tan extendido.

Hoy vamos a ver como generar unas sencillas macros, que podemos incluir en nuestras librerías mas típicas, para poder mostrar la salida de debug coloreada, y diferenciar así entre de forma mas sencilla cada output de nuestro programa.

Leer más...

Compilando Aztrino

Aztrino

Aztrino es uno de los firmwares para los decodificadores Azbox Me y MiniMe basado en la plataforma Neutrino. Para poder desarrollar sobre este entorno, primero hemos de instalar algunos paquetes, e iniciar la configuracion.

Para empezar preparamos el entorno, por ejemplo, desde una Ubuntu 12.04, al menos tendras que ejecutar:

apt-get install cmake gperf

git clone git://gitorious.org/neutrino-hd/aztrino-buildsystem-cs.git

cd buildsystem-cs/

mkdir download

Editamos el fichero de configuracion, ejecutando

nano config

Leer más...

Crea un navegador web en 10 lineas de codigo

Una de las ventajas de codigo de Python es la gran cantidad de librerias que tienen a su disposicion, en este caso vamos a hacer uso de QtWebKit, con la que de formas sencilla podemos, tanto crear un navegador, o bien empotrarlo dentro de nuestra aplicacion. Editamos un fichero, por ejemplo pybrowser.py con el siguiente contenido

#!/usr/bin/env python

import sys
from PyQt4.QtCore import *
from PyQt4.QtGui import *
from PyQt4.QtWebKit import *

app = QApplication(sys.argv)

web = QWebView()
web.load(QUrl("http://www.thempra.net"))
web.show()

sys.exit(app.exec_())
Y ya solo nos queda lanzar nuestro mini-navegador:
python pybrowser.py
A partir de aquí se ha de trabajar con los botones, barra de navegación , ......
Leer más...

Lectura de ondas cerebrales (EEG)

El próximo sábado 18 de Agosto estaré por el MUNCYT en La Coruña, con una charla sobre como realizar lecturas de ondas cerebrales con Electroencefalogramas (EEG) de bajo coste.  Presentaré el proyecto Theeg y seguidamente Jose Angel Mateo dará una ponencia sobre el DotNetClub.

 

Agenda

10:00-10:15 Presentación del acto y ponentes. 10:15-11:00 ‘Theeg: Leyendo mentes ajenas’ Sesión teórica. 11:00-11:45 ‘Theeg: Leyendo mentes ajenas’ Sesión práctica. 11:45-12:00 Coffe break

12:00-12:45 ‘IEEE-UNED Microsoft DotNet Club’. 12:45-13:00 Despedida y cierre.

Leer más...

Entorno de desarrollo para Azbox Me con Enigma2

Dada la complejidad y dependencias de librerias sobre las que vamos a tratar, recomiendo que la instalacion se realice sobre una maquina virtual, en este caso usaremos Ubuntu Server 12.04 LTS .

1. Preparando en entorno

Un vez tengamos creada la maquina virtual, (asignar unos 100 GB de espacio, no se usaran todos, pero mejor tener espacio de sobra), procedemos a instalar las librerias que necesitamos:

sudo  apt-get install -y autoconf automake bison bzip2 cvs diffstat flex g++ gawk gcc gettext git-core gzip help2man ncurses-bin ncurses-dev libc6-dev libtool make texinfo patch perl pkg-config subversion tar texi2html wget zlib1g-dev chrpath libxml2-utils xsltproc libglib2.0-dev python-setuptools genromfs

Leer más...

Agregar nuevo disco virtual en XEN "en caliente"

Es usual que al cabo de varios años las previsiones de espacio en una maquina virtual se superen, en muchas ocasiones por que el proyecto al que ha sido destinada esta siendo un éxito y necesita un mayor tamaño de almacenamiento. Lo que en principio puede resultar una alegría, también supone un esfuerzo extra, dado que si la maquina esta en producción, y tenemos mas usuarios significa que no podemos apagar la maquina durante una hora para realizar las tareas de mantenimiento. Gracias a XEN podemos cambiar el disco duro virtual sin tener excesivos problemas

Leer más...

Robo de sesion en HTTPS

Ayer teniamos una discusion en Entornos acerca de la seguridad a la hora de acceder a tu cuenta de Gmail, o cualquiera con HTTPS, alegando que cualquier aplicacion web protegida mediante cifrado SSL es segura, e imposible de vulnerar, sobre todo con los nuevos sistemas de doble autenticación. Nada mas lejos de la realidad.

 

Una interesante herramienta ronda la red llamada “Surf Jack”, que demuestra una falla de seguridad al acceder desde lugares no seguros.. La prueba de concepto herramienta permite a los probadores para robar las cookies de sesión en sitios HTTP y HTTPS que no establecen la bandera segura. Puede descargar la herramienta desde aquí y un documento con más detalles sobre el tema.

Leer más...

SSHFS, montando directorios por ssh

Secure SHell FileSystem (SSHFS) es un sistema de archivos para Linux (y otros sistemas operativos con una implementación FUSE, tal como en Mac OS X), capaz de mostrar los ficheros de un sistema remoto como si fuera una carpeta mas en tu ordenador usando un acceso seguro.

De esta forma un usuario puede trabajar sobre una serie de ficheros de otro equipo como si fuera en modo local. Para su funcionamiento, en la maquina remota solo es necesario la instalación de un servidor SSH. Una vez que esta perfectamente configurado en la maquina local procedemos a la instalación de SSHFS:

Leer más...

Compilar de *.po a *.mo y viceversa

En un mundo tan globalizado como en el que vivimos, el desarrollo de cualquier aplicacion debe implicar la traducción a la mayor cantidad de idiomas posible, para ello, se nos facilitan diversas herramientas y formatos estandarizados que simplifican la tarea de trabajar con dichos idiomas.

 

Ficheros .PO (Portable Object, objetos portables)

 

Es el fichero origianal de la traducción, de los que existe uno para cada idioma, posee un formato de plantilla determinado, dividido en dos partes:

Leer más...

Cambiar UID de un usuario

Puede darse el caso que por ejemplo en una migracion de servidores, tengas que concatenar maquinas, lo que implica que los usuarios han de seguir existiendo en ambos servidores, pero esta vez en una sola maquina. Esto implica que debemos de cambiar los UID y GID a cada uno de ellos (al menos de una maquina) para evitar grandes problemas.

Una de las tendencias iniciales es cambiar los identificadores directamente en los ficheros /etc/passwd o en el /etc/group, un craso error, ya que por ejemplo los ficheros en los que tenga permiso dicho usuario se perderan, quedando con el anterior identificador.

Leer más...

Curso Backtrack 5, auditando el mundo

omhe_Logo

Backtrack es una distribución tanto LiveCD, como instalable, que recopila una completa gama de utilidades para auditar diversos sistemas, aunque muy conocida por estar preparada para la auditoria de redes wifi, es mas interesante la revision del resto de las herramientas que nos ofrece para trabajar con todas las tecnologias. Aprovechando que se acaba de publicar la Backtrack 5 R1, os presento a  la Organizacion Mexicana de Hackers Eticos que ha publicado un sencillo curso para iniciarse en la comprension de esta herramienta, muy básico, pero útil para aquellos que quieran introducirse en este mundo.

Leer más...

inSSIDer, escaner wifi

 

Tanto para hacer el bien, como para hacer el mal, es casi indispensable un escaner de redes wifi, y aunque la shell atrae mucho, el ver colorines moviendose nos lleva a todos atrayendo desde la infancia.

 

inSSIDer es un escaner bonito, sencillo aunque con una visualización técnica, y sobre todo multiplataforma.

 

A la hora de montar una red wifi, bien la de tu casa, bien una mas extensa,  es recomendable visualizar el espectro de frecuencias que cubre dicha zona. Y dado que a día de hoy nuestros ojos no son capaces de ponerse en modo wifi, con este programa podemos facilitarnos la tarea de una forma gráfica y sencilla.

Leer más...

Auditfi 1.0, auditando tu red wifi desde Android

Hace unas semanas mi compañero Craswer y yo nos apostamos lo facil que seria implementar el fallo de seguridad de los generadores de Neikokz, sobre los routers de Jazztel y Telefonica o Movistar ,  y en menos de una hora, obtuvimos el resultado que os presentamos. Ahora, por petición popular hemos decidido subirlo al Market.

 

Aunque existen varios de programas para auditar la seguiridad de tu router aqui os dejamos el Auditfi (Auditoria de Wifi) que no solo es mas bonito, “el mas mejor”, si no que aceptamos el feedback de vosotros para ir mejorandolo en base a vuestras necesidades.

Leer más...

Office 2007 bajo Linux (wine)

Aunque Libreoffice esta recibiendo un gran impulso ultimamente tanto de Oracle, como de  IBM con la cesion de Symphony, hay que reconocer que los ribbons de Ms Office 2007 siguen siendo de una gran usabilidad, junto con otras características de corrección, y obviamente compatibilidad con docx. Por lo tanto, en ciertas ocasiones se hace recomendable su uso.

En este caso vamos a ver como ejecutarlo desde Debian sin excesivos problemas. Primero actualizamos a la ultima version de Wine

Leer más...

Enviar correo desde shell script

Existen mil formas de enviar un correo desde la shell de Linux, pero en este caso vamos a explicar como hacerlo mediante msmtp, algo mas complejo que otras formas, pero util en determinadas situaciones.

Para ello editamos el archivo de msmtp

#nano ~/.msmtprc

Vamos a configurar una cuenta de GMail, aunque también es posible hacerlo con nuestro servidor SMTP. Copiamos el siguiente texto

account gmail host smtp.gmail.com tls on tls_certcheck off port 587 auth login from tunombredeusuario user [email protected] password tupassword

Leer más...

Backup de maquinas XEN con LVM

Cuando nos encontramos en una situación de servidores en producción, es recomendable cada cierto tiempo realizar un backup completo de la maquina en ciertos servidores específicos, o simplemente queremos trasladar a otro sistema dicha maquina pero no podemos hacerlo de una manera tradicional. A continuación vamos a ver una técnica en la que no es necesario apagar la maquina virtual, y seguir dando servicio sin notar un excesivo deterioro del servicio, o la caída del mismo.

Leer más...

Vulnerabilidad de escalada de privilegios en Android

Una escalada de privilegios es cuando un usuario con permisos limitados es capaz, mediante alguna fallo de seguridad, subir su rol hasta hacerse con mas capacidades en la ejecución de su código, en este caso llega al superusuario root.

De los dos posibles codigos, el segundo acompaña unas sencillas instrucciones de como “hacer el mal” a un dispositivo Android, desde este momento el dispositivo queda comprometido. Imagina esto, por ejemplo, en una aplicación de dudoso origen que instalas desde el Market, podría obtener y enviar toda tu información. O mirando por el lado bueno, una brecha mas abierta para poder rootear todas las versiones de Android

Leer más...

Liberado Meego 1.1

Ya es oficial, y puede ser descargdo Meego 1.1, con las esperadas novedades para gran diversidad de plataformas, corriendo sobre x86 y ARM, y un renovado soporte de dispositivos Multitouch. Parece que el proyecto, lejos de morir, empieza a tener un buen movimiento, ya estan preparando para el proximo mes de Abril la siguiente version 1.2. Y pasais cerca de Dublin del 15-17 de este mes de Noviembre, podreis asistir a la http://conference2010.meego.com/

Leer más...

PgAgent, instalación y configuración

PgAgent, dicho en palabras llanas, es como un “cron” pero de forma especifica para bases de datos Postgres y un nivel mucho mas potente, una gran ayuda para realizar trabajos programados.

Para la instalacion del pgagent, por ejemplo desde Debian, basta con ejecutar: apt-get install pgagent

Un vez en el equipo procedemos a tarea de verdad, su configuracion. Primero tenemos que asegurarnos que tenemos instalado el lenguaje plpgsql:

CREATE TRUSTED PROCEDURAL LANGUAGE 'plpgsql' HANDLER plpgsql_call_handler VALIDATOR plpgsql_validator;

Leer más...

Redimensionar particion Xen con LVM

No es extraño que al dimensionar una maquina virtual tengamos ciertas especificaciones de proyecto las cuales cambien pasado un tiempo, y la necesidad de incrementar el espacio en disco pueda ser algo indispensable.

A priori puede parecer una tarea tediosa y puedes llegar a echarte a temblar con una posible perdida de datos, pero después de un buen rezo, un café bien cargado y ganas estos miedos desaparecen, quedando unos pasos tan sencillos con los que a continuación se describen.

Leer más...

Autenticarse por SSH sin contraseña

Recuperando viejos tutoriales y muy utiles para los que jugamos con servidores, vamos a revisar como crear las claves SSH para no tener que escribir la contraseña a la hora de autenticar contra el servidor.

Primero hay que tener claro lo que vamos a hacer, ya que el hecho de aplicar esta configuración implicaría que un usuario malicioso con acceso a tu consola podría acceder a la maquina remota. No es recomendable realizar esto con el usuario root, si no con uno de escasos privilegios para así evitar sustos.

Leer más...

Android 2.2 (Froyo) para EEEpc y otros ...

Algo de curiosidad me picaba esta mañana acerca del codigo de Android para plataformas x86, y ni corto ni perezoso no he tenido otra opcion mejor que compilarmelo yo mismo para ver exactamente que tipo de interfaz y aplicaciones obtenía de base con lo que existe en el repositorio oficial.

A continuación os dejo los pasos sencillos para realizar dicha accion, el resultado es un sistema operativo algo lento, pero probablemente sea solventable ajustando algunos parámetros, ya os iré informando acerca del tema.

Leer más...

Montar un proxy con SSH y SOCK5

    Dado que ultimamente me lo han comentado varios compañero, he decidido ampliar un viejo post, y dejar, a modo de recordatorio, este post de como salir por una conexion de internet distinta de la que estas usando en tu equipo.

Basicamente lo que vamos a hacer es lo siguiente:

 

NuestoPC ==> (Internet Proveedor X) ==> SERVIDOR SSH ==> (Internet Proveedor Y)

 

La idea es, si por ejemplo tenemos un conexion capada, o queremos desde la oficina cargar una web como si fueramos un cliente, o simplemente cambiar de IP. Lo que debemos de hacer es generar un tunel el cual nos lleve directamente al punto de salida y desde local conectar mediante proxy a este tunel.

Leer más...

Guosthex 1.0, nuevo firmware para el Woxter i-Cube 35 X-div Xp Rec

 

Dado que Woxter ha decidido dejar sin actualizaciones a los usuarios quecompramos este disco multimedia, he decidido ponerme manos a la obra ymontarme la actualizacion yo mismo.

1. Descripcion del dispositivo

Primero toca un analisis a nivel hardware para saber que estamos tocando:

Una vez desmontado podemos ver que la placa es una HMR-700 y los controles frontales (IR, LCD, botones, …)son de un HMR-350, estos discos multimedia acostumbran a ser fabricados por una empresa y venderlo a otras para que lo comercializen, como pueden ser Ellion, O2Media, FanFan, Woxter, …..

Leer más...

Programacion en Haskell

  Haskell es un lenguaje puramente funcional de propósito general. Y aunque no se pretende desarrollar un Core bancario en el, si que puede servir como medio de entrenamiento mental, o mera iniciativa de ampliar conocimiento. Para otros puede valer exclusivamente en la superacion de cierta asignatura de la universidad.

 Las características más interesantes de Haskell incluyen el soporte para tipos de datos y funciones recursivas, listas, tuplas, guardas y calce de patrones. La combinación de las mismas pueden resultar en algunas funciones casi triviales cuya versión en lenguajes imperativos pueden llegar a resultar extremadamente tediosas de programar.

Leer más...

[Tip/Trick] Teclado desconfigurado en Gnome

   Cuando tratas con distribuciones inestables o experimentales, en ciertas actualizaciones es posible que no quede correctamente configurado el teclado, perdiendo la posibilidad de incluir signos introducidos mediante el “Alt Gr” o incluso las tildes. Puede llegar a darse el caso intentado configurarlo desde el “gnome-keyboard-properties” nos de la sensacion que no nos hace caso.

   El problema reside en una mala configuracion inicial del fichero /etc/X11/xorg.conf en la seccion de InputDevice, dado que no asignamos el variant, la configuracion correcta sería:

Leer más...

Enlace wifi de 13 km

Que mejor se puede hacer una sabado por la mañana que probar la nueva antena que me ha llegado, se trata de una eRize de 24 db. El proyecto se ha planteado para enlazar un pueblo a 12,9 km en linea recta con la red wifi de la UCLM, obviamente con una conexión estable. Hace unos años ya conseguimos algo parecido, pero contra un edificio de gran altura.

 

 

Se ha  salido temprano hacia el lugar en concreto y como bien pintaba la predicción del tiempo una neblina dificultaba enormemente la visión, hasta el punto que ha sido algo mas del tipo prueba, error e intuición para lograr el objetivo.

Leer más...

Tuneles SSH a traves de un firewall

En algunas ocasiones nos es necesario saltarnos un firewall para realizar ciertas tareas. Usualmente por habernos dejado trabajo pendiente y pretendamos llegar a casa y seguir con la tarea. Por desgracia a dia de hoy no todas las empresas estan de acuerdo con el teletrabajo, ni tienen preparados sus sistemas para ello, esto implica que tengamos que buscarnos los trucos para poder acceder a nuestra maquina.

 

 

Primero se debe de abrir un agujero para establecer las comunicaciones desde un PC de dentro del firewall a otro PC, con un servidor ssh,

Leer más...