Archive for the ‘ privacidad ’ Category

Directorio Cifrado con EcryptFS

Ultimamente en el trabajo estamos ocupándonos de la parte de seguridad y me he topado con una cosa que puede sernos útil en casa a más de uno, mantener un directorio con información sensible que queremos tener cifrada para evitar que alguien con acceso físico a nuestro disco duro pueda verla. Es especialmente interesante en el caso de los equipos portátiles y unidades externas de almacenamiento, por ser éstos más susceptibles de un robo y de manipulación física desde otro equipo.

Lo que vamos a configurar aquí es un directorio que mantendrá cifrada la información que contiene siempre que el directorio no esté montado, es decir, si el directorio sin montar (o el equipo apagado, ya que al apagar el sistema se desmontan automáticamente todas las unidades), la información estará cifrada, cuando el directorio esté montado, la información estará descifrada y se podrá leer libremente (cosa que también se puede acotar con los permisos del directorio en cuestión).

Sigue leyendo

Anuncios

Bases de datos. ¿Borrado o “Borrado”?

Por si lo de borrado y “borrado” no queda muy claro, estoy hablando de borrado físico y borrado lógico. Más específicamente en el campo de las bases (en nuestros discos duros ya depende el tema del sistema de fichero que usemos y como lo tengamos configurado :P)

Llevo un par de días poniéndome al día con los feeds y hoy me ha tocado éste post de dos ideas en el que hablan de éstos dos tipos de borrados al trabajar sobre base de datos. En el artículo se dan argumentaciones de sobra para evitar el borrado físico y optar por el borrado lógico, es decir, ocultar esos datos en vez de eliminarlos definitivamente. El primer contrapunto que se me ocurrió fué lo que dice el primer comentario del post, la LOPD y sus normas sobre qué datos se pueden guardar y cuales no porque, aunque los estés “ocultando” a los usuarios esos datos siguen almacenados ahí y te puedes llevar un marrón. Y más si nos metemos en algún ejemplo tan de moda como las redes sociales donde hay datos muy sensibles.

La solución que proponen es basarse en estados, es decir, los datos no sólo pueden “estar o no estar” en la base de datos, sino que pueden estar en distintos estados (toma agujero de gusano redundancia), por ejemplo: activo, inactivo, obsoleto, borrado, etc… Supongo que ésto palía en gran medida el problema de las inconsistencias en una base de datos (donde puede darse el caso de que tengamos que “borrar” ciertos datos, pero tengamos que conservar otros que “dependen” de esos datos).

Una de las soluciones que me encontré en una aplicación en la que estaba trabajando era el uso de fechas. Al principio me extrañó tener tantos campos de fechas en cada tabla, pero hablando con quien diseñó la base de datos me explicó que esos campos de fechas indicaban el “tiempo de vida” de esa información. Así no sólo sabíamos “cuando” una información “existía” o no sino que además teníamos la información adicional de saber durante cuánto tiempo y cuándo existió esa información (un poco hetéreo pero si lo aplicas, por ejemplo, a productos en venta, empleados, etc… empieza a coger sentido).

Me gustaría que aportáseis información adicional a ésto, ¿conocéis otras soluciones aplicables? ¿sabéis cuáles se usan más?

CajaMadrid, soporte para eDNI

Hace un tiempo que CajaMadrid empezó a reemplazar el software de sus cajeros automáticos por uno nuevo. No sé muy bien si éstos cambios se hacen de forma remota (espero que si, porque sino… vaya despilfarro para ser un banco xD) pero el cambio fué siempre gradual. Me supongo que después del desarrollo pasarán a pre-producción y después, aún pudiéndolo hacer de golpe, yo también lo haría poco a poco para ver la repuesta de los usuarios.

De todas formas el software nuevo era más un lavado de cara que otra cosa, era más cool, más así como 2.0 pero las funcionalidades o lo que ofrecían al usuario seguía siendo más o menos lo mismo. De hecho, sigo sin encontrar una opción donde evitar que el cajero me pida el pin dos veces. Si, seguridad, pero siempre tengo cuidado cuando me acerco a un cajero así que me gustaría poder quitarlo y que sólo me lo pida al principio de la transacción.

Ahora, despúes de leer gracias a un tweet de JoseK éste interesante artículo sobre el futuro soporte del eDNI en los cajeros de Caja Madrid.

Ahora me planteo que, quizás, ese cambio de software era más una migración que un lavado de cara. Quizás la plataforma que estaban usando no permitía una gran flexibilidad a la hora de añadir soporte a algo tan serio y nuevo como el DNI de la gente con unas mínimas garantías.

El caso es que por lo que he podido leer el soporte está más que en desarrollo y tiene una fecha para estar en las calles: se empezará a implantar en el primer trimestre de 2010 y se espera que para el 2012 el 100% de la red de cajeros esté actualizada.

En un primero momento interpreté que se utilizaría sólo como identificación, es decir, “joder, ahora además de meter la tarjeta y el pin dos veces, también voy a tener que meter el eDN”, pero no. La cosa es poder identificarse sólo con el eDNI y el pin que hayamos asignado al mismo (espero que cambien los teclados de los cajeros! xD). Además permitirá también muchas operaciones que las actuales ya que permitirá hacer, por lo que yo entiendo, todo lo que podemos hacer a través de la página web, incluido controlar varias cuentas sin tener que cambiar de tarjeta.

Supongo que Caja Madrid, por la parte que les toca, verá el gran ahorro que va a hacer en tarjetas de crédito. Se acabó el comprar plástico, serigrafiarlo, “programarlo” y enviarlo. Todo ésto cada X tiempo y por cada cliente tiene que ser un pastón.

Y tú, ¿qué opinas? ¿te sientes más tranquilo con la tarjeta de crédito y su pin o prefieres los subidones de adrenalina cada vez que salga un bug en el eDNI?

PD: Lo que sigo sin entender es porqué cada páis/continente desarrolla su eDNI y su “ePasaporte”… ¿no sería más interesante, y además ahorraría tiempo en un futuro, diseñarlo/desarrollarlo a nivel mundial? 😛

Actualización: Y ya de paso hacerlo extensible para tener sólo una tarjeta con todo: dni, pasaporte, carné de conducir, …

Recuperar permiso de root en MySQL

Otra receta interesante que quiero tener siempre a mano. Si tenéis instalado MySQL y no os acordáis de la contraseña de root, aquí os dejo la forma de poner una nueva (siempre que tengáis acceso a una consola de root ;D)

No es muy normal que nos pase (de hecho, recordad que las contraseñas deberían cambiarse con regularidad ¬¬ …), pero también es cierto que muchos de nosotros, en casa, instalamos un servidor MySQL para trabajar en alguna aplicación que estamos desarrollando y que usa un usuario concreto de la base de datos que sólo tiene ciertos permisos sobre una base de datos determinada. Al cabo de un tiempo, vamos a crear un nuevo usuario o una nueva base de datos y… ups… ¿qué había puesto yo aquí de password?

En fin, que para no tener que cargarnos todo lo que tenemos en MySQL os dejo unos sencillos pasos que nos permitirán volver a tener el control usuario root de nuestra base de datos en un momento 😉
Sigue leyendo

¿Ley de los 3 avisos en España?

La verdad, me ha sorprendido bastante leer en barrapunto que la ley de los 3 avisos que están promoviendo el gobierno francés Sarkozy se está planteando también para españa.

Me ha sorprendido porque ya pagamos un canon, que supuestamente es para compensar la piratería. Ahora además, pagaremos también multas por bajarnos esos contenidos por los que pagamos el canon. No sé si es cosa mía, pero me parece que estaríamos pagando lo mismo dos una + número_de_multas veces, ¿no?

Lo que me parece a mi, es que se han juntado el hambre con las ganas de comer. Por un lado están las operadoras, que cuanta más pasta arañen mejor y saben que multar por el consumo de tráfico P2P sería un chollazo. El otro amiguete que se suma es el gobierno, estamos en crisis y también viene bien arañar de todos lados. Además el beneficio que obtiene el gobierno no se queda sólo en eso, también suman por otras partes. España está bastante alto en el índice de piratería y ésto ayudaría a bajar posiciones y a que el gobierno obtenga una buena imagen, de cara al resto de países de la UE, al preocuparse por éstos temas.

Total, que a lo que ellos llaman relajar la lay de los 3 avisos (nunca nos quedaremos sin conexión, sólo pagaremos las multas), yo le llamo sacar pasta robar descaradamente. Además, en España eso de bajarte una peli para verla tú en tu casa cenando con la parienta…. ¿no es legal? Ojo, que no afirmo que lo sea, que me corrija alguien si me equivoco, pero me suena que es así.

Luego está el tema de la privacidad… vale, que no tiene porqué leer el contenido de los paquetes para saber que una conexión es P2P, con seguir las direcciones por las que pasa es suficiente… para suponer que es P2P. Utilizamos más servicios descentralizados que el P2P: messenger, ssh, escritorios remotos, …. Además, puede que lo que estemos bajando/subiendo por P2P no tenga copyright, así que por narices deberían mirar el contenido de esos paquetes para meternos una multa. ¿tienen derecho? Pues vete tú a saber porque con las leyes antiterrorismo… a la privacidad de cada uno le dan por el culo xDDD

Como conclusión sólo puedo decir que, si ésto se lleva a cabo y las operadoras implantan ésta medida de control, yo monto un ISP que deje acceso libre a todo ésto. Seguro que me forro 😉

Firmas de los Repositorios

Bueno, dejo una nota rápida de esas que me apunto yo para que no se me traspapelen las “recetas”. Hoy toca firmado de repositorios.

Normalmente la seguridad que utilizan los repositorios de los que tiramos al utilizar apt-get, aptitude, synaptic… o el gestor de paquetes que usemos nos importa bastante poco hasta que falla. Y el fallo que veremos si tenemos alguna firma mal en los repositorios (no es que la tengamos mal, normalmente es que cambian la firma del repositorio porque ha sido comprometida o algo similar, pero ésto es una entrada rápida) veremos un mensaje como éste al actualizar la lista de paquetes de los repositorios:

[...]
Obj http://archive.ubuntu.com intrepid-security/multiverse Packages
Obj http://packages.medibuntu.org intrepid/free Packages
Obj http://packages.medibuntu.org intrepid/non-free Packages
Descargados 308B en 1s (241B/s).
Leyendo lista de paquetes... Hecho
W: Error de GPG: http://ppa.launchpad.net intrepid Release Las firmas siguientes no se pudieron verificar porque su llave pública no está disponible: NO_PUBKEY 60D11217247D1CFF
W: Tal vez quiera ejecutar 'apt-get update' para corregir estos problemas

Fijémonos en el valor 60D11217247D1CFF que es lo que nos interesa. Lo que nos está diciendo el mensaje es que no tenemos la clave pública del repositorio http://ppa.launchpad.net intrepid Release. Posiblemente la solución que nos ofrece aptitude de ejecutar apt-get update no nos sirva de nada, así que vamos con la solución que conocemos y sabemos que funciona.

Abrimos una consola y metemos el comando siguiente:

gpg --keyserver keyserver.ubuntu.com --recv 60D11217247D1CFF

la salida debería ser algo similar a ésto:

gpg: solicitando clave 247D1CFF de hkp servidor keyserver.ubuntu.com
gpg: /home/nemesis/.gnupg/trustdb.gpg: se ha creado base de datos de confianza
gpg: clave 247D1CFF: clave pública "Launchpad PPA for OpenOffice.org Scribblers" importada
gpg: Cantidad total procesada: 1
gpg:               importadas: 1  (RSA: 1)

lo que nos confirma que hemos obtenido la firma del repositorio.

Con éste comando siguiente introducimos la firma obtenida en el gestor de paquetes:

gpg --export --armor 60D11217247D1CFF | sudo apt-key add -

la salida será simplemente un OK si el comando se ha realizado de forma correcta. Ahora sólo nos resta volver a actualizar la lista de paquetes con un:

sudo aptitude update

Y ya no deberíamos recibir ningún error.

OJO: Fijaros que si recibis éste error en más de un repositorio deberéis repetir éste proceso para cada uno de los repositorios afectados.

Conceal, encriptación de carpetas.

OJO! ANTES DE NADA LEED LA ACTUALIZACIÓN AL FINAL DEL POST!

Bueno, el termino de carpetas no me gusta nada pero la verdad es que se está extendiendo mucho. Eso sí, no lo soltéis por el canal #ubuntu del hispano porque os correrán a gorrazos… se llaman “directorios”, no carpetas. xD

Conceal es un proyecto del Google Summer of Code que he descubierto a través del post en Blux 2.0, donde hablan de Cypt Manager, al parecer es otro nombre del proyecto. No sé cual es el definitivo aunque Conceal suena más a nombre en clave que a nombre de aplicación final, la verdad (va a ser por eso que me gusta más xD).

El caso es que no está en los repositorios ni nada, pero la aplicación merece la pena, aunque se encuentre en la versión 0.0.5 funciona bastante bien. Son tres paquetes externos los que hay que instalar para la aplicación, aunque son partes modulares, así que puede que haya alguno que no te interese (a mi los tres me parecen bastante buenos):

  • La aplicación en si (escrita en python) que se puede utilizar desde la línea de comandos. [Link]
  • El interfaz en gtk para la aplicación, el icono aparece en Administración como Encrypted Directories. [Link]
  • El paquete para la integración con Nautilus. [Link]

Una vez tengamos todo instalado veréis como es MUY fácil de manejar: simplemente os váis a Administración, pincháis en Encrypted Directories y tendréis un cómodo interfaz para añadir los directorios que queréis tener encriptados.

Para los que uséis KDE también tenéis la aplicación portada a QT [Link], pero no he encontrado ningún paquete para integrarlo con Konqueror.

 ACTUALIZADO: Después de probar unas cuantas veces ésta aplicación no he conseguido añadir una sóla carpetada encriptada. No sé si es que el encriptado que hace por defecto es demasiado alto, pero da la impresión de que la aplicación se queda pillada. De todas formas, no es para nada usable si tengo que esperar tanto para que la cosa funcione. Importante:

NO PROBÉIS ÉSTA APLICACIÓN CON NINGÚN DIRECTORIO QUE TENGA ALGO QUE NO QUERÁIS PERDER SIN HACER ANTES UNA COPIA DE SEGURIDAD. CORRÉIS EL RIESGO DE PERDER LOS DATOS QUE CONTENGA.

A cambio, os dejo la aplicación que usaba antes y que es la que voy a seguir usando: EncFS con CryptKeeper como interfaz gtk, una auténtica delicia de aplicación. Os dejo el enlace al post donde comenté como se instala y usa 😀