Tcpxtract: extraer archivos del tráfico de tu red

Supongamos que eres el sheriff de una red, ya sea doméstica o empresarial, y tienes que monitorizar el tráficto de la misma, para lo que estás usando por ejemplo Wireshark. Ahora imagina también que quieres extraer los ficheros que se ocultan en esa comunicación ¿cómo lo hacemos? Bueno, pues para eso está Tcpxtract.

El primer paso es instalarlo. En Windows lo puedes descargar dese Sourceforge, en el caso de Linux puedes instalarlo con apt tal que así:

sudo apt-get install tcpxtract

Y ¿cómo le damos uso? la sintxis sería

tcpxtract [OPTIONS] [[-d ] [-f ]],

permitiéndonos -d capturar desde una interfaz de red y -f hacerlo desde un fichero. Dos ejemplillos en Linux

#extraemos datos directamente
#de la caputra de nuestra tarjeta
#de red
tcpxtract -d eth0

#extraemos datos de un archivo
#de tipo pcap
#generado por Wireshark
tcpxtract -f ejemplo.pcap

Tcpxtract reconoce los archivos que se envían por su firma o huella, estando estas registradas en el archivo tcpxtract.conf, lo que nos permitiría en todo caso poder añadir más editándolo, si conocemos dicha firma.

Se puede añadir una opción -o que permitiría definir en qué carpeta queremos que se extraigan los archivos capturados de nuestro tráfico.

#extraemos datos de un archivo
#de tipo pcap
#generado por Wireshark
#ejemplo definiendo salida
tcpxtract -f ejemplo.pcap -o imagenesExtraidas

Ten en cuenta este tipo de cosas, tanto por los temas de seguridad en las comunicaciones y usar siempre que sea posible la conexión https como si decides colarte en la wifi de tu vecino para usarla de gratis.

Pluto.tv: servicio de televisión gratis por Internet

Primera pregunta que te vendrá a la cabeza ¿Qué es Pluto.tv? Se trata de un servicio de televisión por internet gratuito con más de 100 canales. ¿Dónde está la trampa? Muy simple: Pluto.tv se nutre de material que ya está disponible en la red de forma gratuíta: vídeos de youtube o material de acceso libre de la plataforma Hulu, con la que tiene un acuerdo desde este año. ¿Entonces qué nos aporta Pluto? Bueno, nos da material con buena calidad de imagen y ordenado por canales temáticos. Un poco a modo de «me abruma la cantidad de contenido a elegir, vamos a ver qué ponen por aquí«.

Listado de canales de Pluto.tv

Puede accederse a Pluto.tv a través del navegador, aunque existen apps nativas para iOS, Android, MacOS y Windows. En el caso de Linux no hay app, aunque sí está disponible como app para los navegadores Chrome/Chromium. En todo caso, no hay limitación para usar ningún navegador (no como ocurre con Netflix, donde no es posible usarlo con Firefox). Su característica más atractiva es poder ser utilizado en televisores con conexión a la red, estando disponible para AppleTV, AndroidTV, Roky, Amazon’s Fire TV, televisores de Sony o dispositivos Chromecast.

Pluto.tv

La mayor parte del contenido que oferta la plataforma está en inglés, exceptuando uno de los canales infantiles donde vi que había varios capítulos de una serie manga con audio latino. Se agredecería la opción de contar con subtítulos, como una mejora de cara al futuro y que podría darle una mayor penetración en mercados fuera de los EEUU a esta plataforma. En los canales musicales echo en falta un mayor número ya que, dada la cantida de videoclips que hay disponibles en youtube, no sería difícil meter canales temáticos con más estilos. Que hay un canal dedicado a Nicky Minaj pero no existe ninguno de rock clásico, blues, heavy metal o jazz, por Dio!!!! Y ya puestos no estaría de más algún canal de tutoriales y cursos, que youtube está lleno, y alguno de noticias internacionales. Yo, por pedir, que no quede.

En resumen, no es la panacea ni una revolución, pero se trata de una plataforma interesante para consumir contenidos. De momento le daré una oportunidad, y habrá que esperar a ver cómo evoluciona, qué opciones van agregando y cómo evoluciona su oferta.

Os dejo para finalizar un vídeo tutorial de cómo integrar Pluto.tv en Kodi (el media center antes conocido como XBMC):

Instalar decompilador de Java en Ubuntu: JD-GUI

¿Necesitas un software que te permita decompilar una clase Java en tu Ubuntu? Pues hoy os hablo de JD-Project, un proyecto OpenSource que nos permitirá destripar esos ficheros en nuestro equipo. Si queréis pegarle un ojo al código ahí tenéis la página de GitHub.

En la web oficial del proyecto podemos ver que nos ofrecen varios «sabores»: JD-GUI, como aplicación independiente, JD-Eclipse como plugin para el popular entorno de desarrollo y JD-IntelliJ para el IDE IntelliJ. Yo para hacer la prueba me descargué JD-GUI, que luce tal como en las fotos:

JD-GUI Windows
Así luce JD-GUI en Windows
JD-GUI xubutu
Y este es el JD-GUI en un Xubuntu 16-04 LTS

En mi caso descargué el paquete .deb para derivados de Debian y no tuve más que hacer doble click para instalar. Eso sí, la primera llegó en la frente: ejecuto y falla. ¿por qué? Pues básicamente porque no tenía Java instalado en el equipo de la prueba… un despistillo por usar un equipo recién instalado. Instalo Oracle Java 8… y por algún motivo la instalación del mismo se carga el JD-GUI. Así que otra vez a instalar el .deb de JD-GUI. Pero tras todo esto el programa ya ha funcionado como la seda. Así que ya podéis disfrutar de esta cómoda herramienta.

Copiar y pegar texto en el terminal Xterm

En el emulador de terminal Xterm copiar y pegar no podría ser más sencillo: Seleccionas un texto con el ratón y automáticamente este se copia, y si haces click con el botón central del ratón se pega. No podría ser más sencillo… si tienes un ratón con tres teclas. Pero mira por donde que mi ratón tiene solo dos. Entonces ¿no puedo pegar? Tranquilo, para eso está esta minientrada. Te ofrezco dos soluciones:

  • En algunos equipos puede que te funcione pulsar a la vez las dos teclas del ratón, lo que sería interpretado como un click en el botón central.
  • Pero el consejo de arriba me falló en una de las pruebas que hice, no se si por ser algo concreto de la distribución Lubuntu 15.10 o si porque afectaba para algo que fuera una máquina virtual de Virtual Box. En todo caso, la otra opción es pulsar a la vez las dos teclas: Shift e Insert.

Lynis 2.2.0 ya ha salido. ¿Cómo lo instalo en mi Linux?

Lynis es una conocida herramienta para auditoría de seguridad en sistemas UNIX/Linux. Nos permite gestionar parches de seguridad de nuestro software, buscar malware y detectar vulnerabilidades en nuestro sistema. Una herramienta básica para administradores de sistemas, pentesters y demás gente que deba encargarse de la seguridad.

¿Cómo podemos contar con Lynis en nuestro sistema? Muy simple, en tres pasos:

##Primero creamos un
##directorio para guardar
##Linys
mkdir /usr/local/lynis

#Nos situamos en dicho directorio
cd /usr/local/lynis

##Con la herramienta
##wget descargamos el
##paquete de Lynis comprimido
wget https://cisofy.com/files/lynis-2.2.0.tar.gz

##Ahora ya sólo nos queda
##desempaquetar el Lynis
tar -xvf lynis-2.2.0.tar.gz

##Un último dato: para funcionar
##lynis requiere permisos de administrador
##así que ejecútalo precedido de sudo
#como en el ejemplo
cd lynis
sudo ./lynis

En el ejemplo ejecuto Lynis sin parámetros, de esta forma os mostará la información de todos los que puede recibir para que así podáis darle uso a la herramienta. Probablemente en el futuro haga algún tutorial sobre esta herramienta si os interesa.

Google Chrome: Añadir sitio web como aplicación

Vamos con un tip rápido sobre Chrome ¿cómo añado un sitio web como una aplicación de Chrome?

Lo hice el otro día ya que estaba trasteando con un portátil viejo que va a quedar funcionando mayormente como aparato reproductor de música y tv, ya que para trabajar dispongo de uno más potente. En vista de este uso más lúdico, y tras instalarle Xubuntu 16.04, decidí poner un enlace a Netflix directamente en el escritorio. ¿Cuáles son los pasos a seguir?

  • Abrimos Chrome y entramos en el sitio que queremos convertir en aplicación.
  • Click en el menú de la parte superior derecha, el que es un grupito de rayas.
  • Dentro de ese menú click en Más herramientas.
  • Ahí eliges Añadir al Escritorio.

Listo, ya tienes la web creada como un app de Chrome, tal que así. Ahora con un doble click te abrirá una instancia del navegador que la cargará directamente:

Xubuntu 16.04

Añadir repositorio ppa en Linux

Estos días estoy sin tiempo para escribir, pero vamos con una entrada cortita y práctica para Linux: ¿cómo añado un repositorio ppa a apt? Yo el otro día tuve que hacerlo en un equipo de 32 bits para descargar una versión modificada de Chromium.

Según Genbeta existe una forma de hacerlo sin consola, pero yo voy a centrarme en la forma clásica. La sintaxis sería tal que así:

sudo add-apt-repository ppa:<nombre_ppa>

El ejemplo que da la documentación oficial de Ubuntu sería el siguiente

sudo add-apt-repository ppa:gnome-desktop

 

Chateando en LAN con Linux: el comando talk

Existe desde los años 80 en los sistemas basados en UNIX, y Linux no es una excepción, un programa en línea de comandos llamado talk. ¿Qué nos permite hacer este comando? Pues chatear con otro terminal.

Imagina que dos usuarios estáis conectados por ssh a un mismo sistema y queréis comunicaros. En principio, si tenéis talk instalado (si no viene por defecto en vuestra distro lo podéis instalar desde algún repositorio tal que # apt-get install talk talkd), bastaría con que pusieras el comando talk seguido del usuario, y si ambos tenéis talk instalado se le abrirían dos ventanas de terminal: una para escribir y otra en la que vería los mensajes.

En caso de querer chatear con un usuario de otro equipo la cosa sería similar, en ese caso en lugar del usuario lo que tendríais que mandar como parámetro al abrir talk es el usuario seguido de una arroba y el nombre o la ip de la máquina. Por ejemplo:

#ej 1
#usuario en el mismo equipo
talk donnie
#ej 2
#usuario en LAN
talk donnie@192.168.1.100

El comando mesg será en este caso el que nos permitirá decidir si un usuario puede enviarnos mensajes por talk o no a nuestro terminal.

#Si no queremos recibir
#mensajes por talk
mesg n
#si queremos permitirlo
mesg y

Es posible que los cortafuegos impidan la comunicación con talk: Revisa los puertos TCP y UDP 518 y 517, así que fíjate si están abiertos.

Y de esta forma tienes un primitivo chat en tu equipo, no es gran cosa, pero en ocasiones es útil.

La encuesta de la quincena (03/16) ¿Qué opinas de que salga SQL-Server para Linux?

La semana pasada tocó Bandcamp, esta semana toca otra vez encuesta. La anterior era sobre rock and roll, esta toca sobre informática y sobre una de las noticias de la semana que acaba de terminar: En 2017 Microsoft se plantea sacar una versión de SQL-Server para sistemas Linux. Así que ¿qué os parece esto?

Aprender Git (y GitHub) en 15 minutos

Git es un sistema de control de versiones creado por Linus Torvalds en su día para facilitar el trabajo en el desarrollo del núcleo de Linux. Su buen funcionamiento, su flexibilidad y el ser software libre ha facilitado su popularización entre los programadores y su uso tanto en el ámbito académico como empresarial.

GitHub logo

Los principales comandos de Git serían los siguientes:

  •  git fetch: para descargar los cambios desde el repositorio
  • git merge: permite unir dos «ramas» de un proyecto
  • git pull: básicamente unificaría las acciones de fetch y merge en un solo comando
  • git commit -am: confirma los cambios realizados. Se puede añadir como parámetro una cadena de texto con un título descriptivo para que al consultar el log veamos qué hemos heco de forma más sencilla
  • git push origin: nos permite subir una «rama» al servidor
  • git status: nos muestra el estado de una rama y qué cambios hay sin confirmar
  • git add: añadimos un archivo
  • git checkout -b: crea una «rama» nueva a partir de donde estamos, con el nombre que le asignemos
  • git checkout -t: en este caso nos permite crear una «rama» local a partir de una «rama» remota especificada.
  • git branch: nos permite listar las ramas locales
  • git branch -a: con este parámetro además de las ramas locales muestra las remotas.
  • git branch -d: borra la rama que le especifiquemos como parámetro
  • git remote: muestra los repositorios remotos
  • git remote -v: muestra los repositorios remotos y la url asociada a ellos
  • git remote prune origin: permite actualizar tu repositorio remoto desde tu versión local en caso de que alguien haya borrado una rama remota.
  • git push origin: :Ojo a esta sintaxis, te mando a la documentación para que la ojees porque es puñetera. La cosa es que borre una «rama» remota y es similar a la orden para subirla, pero con la diferencia de que añade los dos puntos (sí, no me equivoqué y los puse duplicados). Mira el enlace para verlo bien.
  • git reset –hard HEAD: elimina los cambios que no hayan sido objeto de un commit todavía
  • git revert: en este caso le pasamos el id de un commit para deshacer los cambios que realizamos en él.

El tema de listar los comandos es útil, pero yo te prometía aprender a usar Git, y por extensión la popular plataforma web GitHub, en 15 minutos. Y por mucho que te leas un listado de comandos no vas a aprender por ósmosis… pero aquí viene el recurso que necesitas: un minicurso de uso de Git a través de la plataforma GitHub. Pégale un ojo y la cosa te quedará mucho más clara, que seguro que la lista de arriba te ha dejado dudas. A través de sencillos ejercicios el tutorial te mostrará el funcionamiento de la plataforma en poco más de un cuarto de hora. Aprovecha ya y añade Git a tu lista de conocimientos, pues es una utilidad valiosa.