12 agosto 2013

Cifra tus conversaciones de IRC

Parece que el IRC está muerto, las primeras puñaladas se las dio Messenger y lo está rematando twitter, skype, gtalk o incluso el propio WhatsApp, el caso es que el IRC lleva bastante tiempo de capa caída. 
Aun así, siempre hay canales de proyectos open source, de comunidades y foros o simplemente de viejos amigos.

Lo normal es que se usen servidores con soporte SSL, como el que ofrece LinkNet o instalaciones propias. Esto no evita que alguien con acceso al servidor pueda leer las conversaciones, pero sí que sean descifradas mediante otros ataques de red.

Si quieres asegurar un poco más la privacidad de tu información, hay utilidades que permiten añadir un segundo cifrado en la capa de aplicación. La más común y casi ya un estándar es el uso de blowfish con claves simétricas.

En el caso de irssi, el cliente de IRC más usado en Linux, se puede usar el script blowssi, su instalación es muy sencilla.

Lo primero es instalar las dependencias de perl que requiere el script para cifrar y descifrar, en mi caso en una CentOS:

yum install perl-ExtUtils-MakeMaker perl-Crypt-Blowfish perl-Test-Simple perl-Crypt-Random perl-Digest-SHA

A continuación se descarga el script:

wget http://www.linkerror.com/programs/blowssi-0.2.0.tar.bz2
tar -xvf blowssi-0.2.0.tar

Luego se instalan los módulos: Crypt-ircBlowfish y Crypt-ircDH1080-0.01.tar.gz

cd blowssi-0.2.0
unzip Crypt-ircBlowfish-1.0.zip
perl Makefile.PL
make test
make install
tar -zxvf Crypt-ircDH1080-0.01.tar.gz
# el make test falla, pero el módulo funciona correctamente.
make install

Una vez instalados ambos, se copia el script a la ruta de scripts y se le asignan los permisos correctos.

cd ..
cp blowssi.pl /usr/share/irssi/scripts/
chmod 755 /usr/share/irssi/scripts/blowssi.pl

Una vez instalado hay que invocarlo y configurarlo desde el propio irssi.

/load /usr/share/irssi/scripts/blowssi.pl

Si queréis que sea cargado automáticamente una forma de hacerlo es metiéndolo en el directorio de autorun:

mkdir -p ~/.irssi/scripts/autorun
cp ~/blowssi-0.1.0/blowssi.pl ~/.irssi/scripts/blowssi.pl
chmod 755 ~/.irssi/scripts/blowssi.pl
ln -s ~/.irssi/scripts/blowssi.pl ~/.irssi/scripts/autorun/blowssi.pl

Y para configurarlo, aquí unos ejemplos:
  • Usar la key "superpasswd" en el canal #hackerepico /blowkey #hackerepico superpasswd
  • Usar una contraseña para un usuario: /blowkey arios 123456nomolanada
  • Dejar de usar blowfish en un canal: /blowdel #hackerepico
  • Desactivar y activar blowfish: /blowoff  /blowon
  • Para mandar un texto sin cifrar, se debe comenzar con un acento: "`": por ejemplo: `texto sin cifrar

Para otros clientes como Xchat hay scripts similares, y como es natural, también para mIRC, el viejo dinosaurio de Windows.

11 comments :

Newbiew dijo...

Hola Alejandro, ¿podríais hacer un pequeño tutorial para Windows?

manqui dijo...

Qué nostalgia! Habrá que recuperar el viejo vicio del irc :)

Alejandro Ramos dijo...

Tomo nota para otro artículo ;-)
Gracias!

María García dijo...

Seguro que ahora se pone otra vez de moda, con lo nervioso que está todo el mundo porque le espíen las conversaciones.

Solo por curiosidad (porque esto yo no lo voy a usar), pero por aclarar conceptos y porque el saber no ocupa lugar:

Si no he entendido mal, el script que se use depende del cliente (que a su vez depende del S.O.). Pero, para que el script funcione, hay que instalar antes las dependencias (¿que son distintas para cada distribución?). Y una vez todo instalado, se carga y configura desde el cliente.

En los ejemplos, entiendo que superpasswd es la contraseña para poder acceder al canal #hackerepico. ¿Y la contraseña del usuario es para evitar la suplantación? En cualquiera de los dos casos la conversación va cifrada ¿no?



Claro, sigue estando el problema de que te pillen o rompan la contraseña. ¿Aquí no se usan nunca claves asimétricas?


(No sé si he preguntado algo demasiado obvio y me vais a mandar a Google. Es que el irc me suena todo a chino...)

María García dijo...

Me respondo yo a lo de las claves: he visto que el irse tiene una opción para gestionar claves públicas.

Trinity dijo...

Gracias, a mí también me vendría muy bien para Windows, lo sigo usando aunque suene antidiluviano. Saludos

Fermin Galarga dijo...

Y para gopher no hay tutorial?

Alejandro Ramos dijo...

Si, como te gustan, ¿con nata o con helado? En bélgica están riquísimos.

Jose Vicente dijo...

Gracias buen aporte lo probaremos

Pepe dijo...

Yo no pienso que el IRC esté muerto. No conozco ningún otro protocolo de chat PÚBLICO que no sea el IRC y que sea retrocompatible con todos los dispositivos y sistemas operativos. Solo me vienen a la cabeza esos chats cutres basados en flash pero un protocolo seguro, de baja latencia y bajo tráfico, solo pienso en IRC. Creo que el IRC sigue igual de vivo si bien para convesaciones privadas o en pequeños grupos las aplicaciones actuales de móviles lo han ocultado pero dudo mucho que llegue a morir.


Y buen artículo. Yo uso Weechat que se ve que es un fork de Irssi mucho más vistoso. Supongo que es compatible. Un saludo!

_LuseR_ dijo...

Muy útil, gracias.
Configurado en mi slackware.