CategoríaGNU/Linux

Temas Referente a Linux

Filtros simples en ettercap

Les motraré cómo crear filtros simples para usar con ettercap, para que podamos modificar parte del tráfico como tags html, conversaciones de chat, etc.
Para esto necesitamos obviamente instalar el suit ettercap-ng, lo podemos descargar desde Sitio oficial ettercap

Haremos las pruebas con el sitio https://www.google.cl, modificaremos el título, el contenido, la imágen, etc.

Seguir leyendo

sensor-mouse: Sensor de movimiento con un mouse

Sensor Mouse es un proyecto que nos permite monitorear el estado de las puertas y ventanas mediante algun dispositivo conectado a un computador (generalmente mouse).
Ya escribi sobre este proyecto hace un par de meses, pero la informacion de como hacerlo ya no esta accesible, asi que publicare el articulo completo.

Materiales:
En este caso utilizaremos un Mouse optico (cualquier marca) USB, pero tambien puede ser un mouse no-optico y de cualquier interfaz (usb, ps/2, etc) y algunas rejillas para sostener el mouse sobre la puerta dejandolo a una distancia razonable para que active el sensor, acomodaremos la sensibilidad con materiales extras como carton o plastico que nos ayuden con el roce de la puerta con el Mouse.

  1. Mouse:
  2. Cable de red o usb para extension: Con este cable de red o cable largo usb podremos crear una extension por si nuestro PC esta lejos de la puera o ventana.
  3. Cinta adhesiva: Para poder fijar nuestro mouse a la plataforma que crearemos donde se generara el roce.

Preparacion (el hack):

Abrimos nuestro Mouse y lo desconectamos del cable, lo dejamos libre

Creamos alguna plataforma de apoyo en la pared donde este la ventana o la puerta que queremos monitorear y montamos el mouse con la imaginacion de cada uno:

Cuando ya tengamos todo montado, debemos alargar el cable usb del mouse para que llegue hasta nuestro computador.  Se puede hacer cortando a la mitad el cable del mouse y añandiendo una extension de cable de red, no muy larga, 3 o 4 metros.

Cuando tengamos la conexion hecha revisamos que todo quedo en orden, conectamos el un extremo del cable al computador y el otro exremo al mouse, verificamos que funcione perfecto, que se encienda la luz, verificamos los logs de systema dmesg|tail o tail /var/log/syslog y todos esos sintomas que nos dicen. Dejamos ejecutando en una consola el comando: cat /dev/input/mice si es usb o cat /dev/psaux si es un mouse ps/2, una vez hecho esto vamos a donde esta el mouse y calculamos una distancia apropiada para que al cerrar o abrir la puerta (o ventana) el mouse detecte el movimiento, cuando en la consola donde dejamos corriendo el comando aparezcan caracteres raros es porque ya esta listo. Si les queda muy alto el mouse de la puerta, puede agregar un carton o un plastico (como un ala) que haga el roce con la puerta.

Cuando esten todos estos pasos cumplidos, tendremos nuestro sensor ya instalado, lo probamos abriendo y cerrando la puerta y vamos viendo la salida del comando cat en nuestra consola. que el mouse fue detectado.

Podemos asegurar nuestro Mouse para que quede bien firme.

Seguir leyendo

ooPhBot: Bot para IRC escrito en PHP

Hace algun tiempo programé un bot para IRC en PHP, este bot tenia varias caracteristicas y opciones, usaba una base de datos mysql para almacenar lo que iba “aprendiendo”. Dentro de ellas están:

  • Distintos niveles de privilegios (administrador, owner de un canal, access de un canal)
  • Funcion para realizar busquedas en Google (!google <palabra>)
  • Function para buscar definiciones en Google (!define <termino>)
  • Distintas funciones de administracion de usuarios (!admin|access add|del|list)
  • etc

Algunas de las caracteristicas de este bot es su proteccion anti flood que se define por el owner del canal y el Oráculo (Oracle; término puesto por mi a esta funcionalidad) que permite enseñar al bot definiciones de palabras para luego ser consultadas (!learn palabra significado, ?? palabra).
Este bot corre bajo php-cli (command line interface), es decir, por consola y tambien puede ser ejecutado desde la web. Queda trabajando como un demonio.

Version Actual:
La version actual es la misma desde enero del año 2007, no he vuelto a tocar el codigo (aunque sigo usando el bot), funciona todo menos las busquedas de terminos y definiciones en Google que, me imagino, hay que hacerle un par de modificaciones al codigo para que parsee bien las busquedas.

Changelog

VERSION 1.0.4 – 26 ENE 2007

– Cambiado el sistema de autentifiacion. Se verifica que el usuario
este identificado con NickServ.

VERSION 1.0.3 – 19 ENE 2007

– Se agrego a la clase Bot el metodo TXTflood( … ) que verifica
el flood de texto de un usuario en un canal especifico, esta opcion
puede ser habilitada o desactivada por usuarios con privilegios mediante
!flood on|off en el canal.
– Se ha reescrito la clase que permite la identificacion y permite que los usuarios
tengan distintos privilegios. (CHAdmin.)
– Corregido el bug que expulsaba de manera distinta a !k o !kick (0 nick o [spacio] nick)
– Agregada la clase Google con los metodos !define y !google.

VERSION 1.0.2 – 16 ENE 2007

– El bot corre en segundo plano (fork).
– Agregada una funcion extra en la clase del bot usando el binario ‘numerador’
ubicado en el directorio extras, la funcion es !num NUMERO.
– Fixeado bug que causaba la caida del bot al enviar dos veces el comando
para setear una clave. (reportado por Pons)
– Agregado soporte para unrealircd (antes solo habia sido probado en bahamut).
– Testeado en dancer-ircd, bahamut, Hyperion y unrealircd.

VERSION 1.0.0 – 15 ENE 2007

– Corregido el fallo que cerraba la conexion a la base de datos por idle.

Descargar:
Version 1.0.4: zip | tar.gz | tar.bz2

Descifrando password encriptadas con shadow (md5 + salt)

En Linux las password o claves de los usuarios (incluyendo root) se almacenan en el fichero /etc/shadow, encriptadas y con un salt, que nos complica el descifrado. En pocas palabras una shadow password es un hash del password mas un salt (hashed and salted password).
Un ejemplo de una clave shadow es root:$1$xOqq7NEt$vDOA0jbLcaiRbGsj3ddz30:13911::::::, si la analizamos podemos darnos cuenta de lo siguiente:

  • Lo que nos interesa es solamente root:$1$xOqq7NEt$vDOA0jbLcaiRbGsj3ddz30.
  • Lo que esta antes de “:” corresponde al usuario: root; y lo que sigue es la password.
  • Si descomponemos la password podemos obtener:
  • $1$: Nos indica que corresponde a una encriptacion md5.
  • xOqq7NEt: Es el SALT que se usa para generar el hash del password
  • vDOA0jbLcaiRbGsj3ddz30.: Es el hash salteado de nuestra password.

Si analizamos todos estos datos podemos darnos cuenta que teniendo el salt podemos encriptar una palabra o frase y generar un hash similar al que estaba en el fichero /etc/shadow, por lo que solo nos queda crear un script y tener un diccionario de palabras a mano para empezar a crackear o descifrar las password en shadow.

El comando mkpasswd nos permite generar un password segun un salt especificado.
Ejemplo:

machine:~$ mkpasswd -H md5 miPassword -S DSfdsdaA
$1$DSfdsdaA$kOxgZsSAshG4W.dgGp28Y/

He creado un script para hacer mas eficiente y automatiza un poco el proceso.

Seguir leyendo

5 Gestores de ventanas (window manager) ultra ligeros

Me di la libertad de hacer un ranking top 5 de gestores de ventanas (window manager) mas ligeros para Linux, el orden no va a depender de cual es mejor o peor, me guiare en el orden en que los fui probando y que me fueron gustando. Tambien incluiré un bonus track con algunos window manager que han dejado de ser desarrollados o que simplemente no quice incluirlos dentro de este ranking top 5.

Top 5

  1. Fluxbox
  2. WindowMaker
  3. Lxde
  4. 2-Disk
  5. WindowLab

Seguir leyendo