🔒
Hay nuevos artículos disponibles. Pincha para refrescar la página.
✇Elbinario

Proxmox install party!!!! hacklab «La raíz»

Por: pietre

¡Hola, binari@s!

Ya llegan esas fechas señaladas en las que nos juntamos frente al ordenador calentito y nos ponemos a codear, esperando a que llegue un nuevo año. Existe una herramienta muy útil para optimizar los muchiflops y teratikis de nuestros ordenadores. Esa herramienta mágica se llama Proxmox, que, entre otras cosas, nos permite crear y gestionar de forma completa máquinas virtuales. En mi opinión, es mucho mejor que otras apps como VirtualBox.

Además, no solo nos permite crear máquinas virtuales, sino que también nos da la posibilidad de lanzar y gestionar contenedores, así como realizar copias de seguridad de todo esto.

Es una herramienta que nos ayuda a aprender y a acortar esa brecha tecnológica.

Proxmox VE (Virtual Environment) es software libre. Su código está disponible bajo la licencia GNU Affero General Public License (AGPL) v3, lo que significa que puedes usarlo, modificarlo y compartirlo libremente, siempre y cuando respetes los términos de la licencia, como compartir cualquier modificación que hagas si distribuyes el software.

Esta install party se desarrollará en el Hacklab La Raíz, en el CSO La Enredadera, el día 13 de diciembre a las 18:30.

📍 Metro Tetuán, Calle Coruña Nº 5

✇Elbinario

Tutorial De Cifrado

Por: puppetmaster

El cifrado es una pieza fundamental del software que usamos a diario,  nos proporciona seguridad en las aplicaciones y nos facilita la privacidad en nuestras comunicaciones en nuestro día a día. Las páginas webs que visitamos a diario usan canales HTTPS, que se generan con archivos que usan cadenas de cifrado de clave publicas llamadas certificados. Las aplicaciones usan algoritmos de cifrado, para proteger las credenciales, y establecer canales seguros de transferencia de la información.

Entender como funciona, aunque sea básicamente los mecanismos de cifrados de nuestras comunicaciones y aplicaciones, se hace cada vez más necesario en el mundo digital en el que vivimos.

En elbinario hemos hablado muchas veces sobre el cifrado y mecanismos de cifrados, esta serie de artículos pretende seguir por ese camino, pero esta vez intentando ser más didáctico, explicando varios ejemplos de cifrado comunes de una forma sencilla y sus ejemplos de código, tanto para cifrar/descifrar como parar intentar romperlos.

Para empezar vamos a utilizar el cifrado Caesar un cifrado de desplazamiento muy simple que se dice que usaba Julio Cesar para enviar señales a tus tropas.

Para cifrar el mensaje el cifrado Caesar usa un método de desplazamiento, imaginar que tenemos la siguiente tabla, en la cual tenemos en la carpeta de arriba un índice numérico del 1-25  abajo representamos en cada índice una letra del Alfabeto, empezando por el número 0.

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
A B C D E F G H I J K L M Ñ O P Q R S T U V W X Y Z

Hemos comentado que Caesar es un cifrado de desplazamiento, porque para cifrar tenemos que desplazarnos de un índice a otro de la tabla, pero para ello necesitamos un valor numérico que nos indique el número de casillas que nos tenemos que desplazar a ese valor lo llamaremos clave. Si por ejemplo queremos cifrar la letra H usando la clave 5, nos desplazaremos desde la posición 7(H) hasta la posición 12(M) , por lo que podemos decir que la letra M cifra a la H.

Ahora imagina que tenemos la frase HOLA ELBINARIO y la clave 13(la clave puede ser cualquier número entre el 1 y el 25), usando el método que hemos aprendido, lo primero que haremos será buscar la primera letra de nuestra frase en la tabla, por ejemplo la letra H que corresponde en la columna 7 y le aplicamos la clave, por lo tanto, buscamos la letra correspondiente a la columna (7+13) que es la U.

Ahora continuamos con la siguiente letra que sería la O, buscamos en nuestra columna y aplicamos la fórmula(posición de columna+clave) y nos da el número 28, ¿pero como vamos a cifrar esto si nuestro array solo tiene hasta el número 25? Pues con un truco matemático que consiste en restar la posición que tenemos al array máximo, por lo tanto, restamos (27-25) =2  buscamos la letra en la posición 2 (ojo es un array no es la columna 2 es la posición 2 ) por lo tanto, la letra que  cifra la O es la  B, asi continuamos hasta obtener nuestro texto cifrado que sera UbYÑRYOVÑeVb , como podemos ver aunque el cifrado Caesar sea un cifrado antiguo y totalmente inseguro no parece fácil a priori descifrar el texto sin la clave(ya veremos más adelante que hay maneras).

Ahora que sabemos como cifrar a mano un texto simple con Caesar vamos a escribir un programa muy simple en python para hacerlo, aquí está el código completo que iremos desgranando más abajo.


mensaje="HOLA ELBINARIO"
llave=13
SIMBOLOS='ABCDEFGHIJKLMÑOPQRSTUVWXYZabcdefghijklmnñopqrstuvwxyz'
traducion=''
for simbolo in mensaje:
     if simbolo in SIMBOLOS:
         simboloindex=SIMBOLOS.find(simbolo)
         indextranslado=simboloindex+llave
         if indextranslado >=len(SIMBOLOS):
            indextranslado=indextranslado-len(SIMBOLOS)
         elif indextranslado < 0:
            indextranslado=indextranslado + len(SIMBOLOS)
         traducion=traducion + SIMBOLOS[indextranslado] 
print(traducion)

La salida del programa nos devolverá lo siguiente:


/bin/python3 /home/anubys/test.py
anubys@debian2:~$ /bin/python3 /home/anubys/test.py
UbYÑRYOVÑeVb

Que es exactamente lo que habíamos hecho de forma manual con nuestra tabla, vamos a desgranar paso por paso lo que hacemos en el programa

  • Creamos varias variables donde almacenamos, el texto que vamos a cifrar, los símbolos que vamos a usar, la longitud de la clave que vamos a utilizar y una variable vacía que usaremos para la salida traducida
  • Creamos un bucle for donde vamos buscando cada símbolo de nuestro mensaje indicando su posición.

anubys@debian2:~$ /bin/python3 /home/anubys/test.py
H
O
L
A
E
L
B
I
A
R
I
O
anubys@debian2:~$ /bin/python3 /home/anubys/test.py
7
14
11
0
4
11
1
8
0
17
8
14
  • Añadimos el valor de la llave para sumarlo a la posición inicial de cada símbolo y aplicamos los if para comprobar que la longitud del mensaje no supera a la longitud de los símbolos y vamos conformando nuestro mensaje cifrado con cada posición nueva.

anubys@debian2:~$ /bin/python3 /home/anubys/test.py
20
U
27
Ub
24
UbY
13
UbYÑ
17
UbYÑR
24
UbYÑRY
14
UbYÑRYO
21
UbYÑRYOV
13
UbYÑRYOVÑ
30
UbYÑRYOVÑe
21
UbYÑRYOVÑeV
27
UbYÑRYOVÑeVb

Como veis es muy sencillo cifrar texto con unas pocas líneas en python, para el siguiente artículo nos veremos si ¿es posible  descifrar un mensaje cifrado con este método sin conocer la clave?

Happy Cracking :)

✇Elbinario

Nueva Instancia searxng

Por: elbinario.net

Las mentes inquietas de la comunidad siempre andan con nuevas ideas y juguetes con los que trastear, esta vez un miembro de la comunidad  nos trae una instancia del metabuscador searxng, centrado en la privacidad, el proyecto está en fase de pruebas durante un año, y no sabemos si será un servicio permanente de elbinario como los que actualmente ofrecemos en https://elbinario.net/nuestros-servicios/

pero podéis trastear con el probarlo y reportarnos lo que queráis desde nuestros canales de comunicación habituales(gnusocial,blog,correo) desde https://search.elbinario.net/

¿Que es un metabuscador?

Un metabuscador, es un software que funciona como un motor agregador de varios motores de búsqueda, digamos que un metabuscador es un buscador que permite obtener búsquedas de otros motores de búsquela.

Una de las principales ventajas de un metabuscador es que obtienes información de varios motores, no de uno solo como ocurre por ejemplo en google,bing, los cuales se sabe que segmentan la información basándonos en los gustos de los usuarios, zona horaria, cookies de terceros, busquedas etc.. Con un metabuscador nada de esto ocurre , el usuario simplemente realiza una busqueda y obtiene los resultados de varias fuentes, por lo que se puede analizar y comparar los resultados de esa información por si está sesgada.

Podemos decir que un metabuscador es un programa que se encarga de hacer de intermediario entre la busqueda del usuario y la información que le proporciona el motor.

Esta labor de intermediación que realizan los metabuscadores, permite que estos actúen como un proxy inverso entre el usuario y la fuente de la búsqueda.

 

¿Como funciona Searx?

Searx es un metabuscador de software libre bajo licencia GNU, enfocado en la privacidad de los usuarios, searx no comparte la dirección ip de los usuarios o su historial de búsquedas con otros buscadores, además de bloquear por defecto todas las cookies que puedan servir para trackear a los usuarios.

Searx utiliza su función de proxy inverso, para salvar al usuario de la vigilancia y el trackeo de los buscadores convencionales, ya que searx no solicita ningún login de usuario, ni pide ningún dato de los usuarios,  solo proporciona la información sin relevar ningún detalle sobre el usuario solicitante.

Searx solo proporciona enlaces directos a las fuentes de búsqueda, no utiliza ninguno tipo de enlace, con  rastreo de solicitud como lo hacen los más conocidos motores de búsqueda

Searx obtiene la información de diferentes y conocidos engines como Bing, Google, Reddit, Wikipedia, Yahoo, y yande, estos puede ser configurado desde su propia interfaz, eligiendo los motores de búsqueda que queremos usar por defecto.

Searx también permite la opción de añadir tus propios buscadores privados a su lista y realizar la búsqueda en ello tenéis más información en https://searx.github.io/searx/admin/private-engines.html

además de permitir usar la instancia solo de forma interna sin permitir el acceso desde internet, permitiendo así tener un metabuscador interno totalmente personalizado sin necesidad de tener el servicio espuesto en internet de forma pública.

Instancias de Searx

Searx al ser software libre, permite que cualquier que quiera y tenga los conocimientos pueda montarse su propia instancia, en su página de github tienen los enlaces para desplegar un contenedor docker con toda la instalación  y la documentación para la instalación de instancias customizadas para debian,arch,fedora,etc..

El proyecto searx, no está mantenido oficialmente, pero sí su fork seaxng que el software bajo el que funciona nuestra instancia  https://github.com/searxng/searxng

 

 

✇Elbinario

Invizible Pro + I2p

Por: puppetmaster

Después del artículo de nuestro compañero bar foo sobre Invizible Pro me quedé con la sensación de que aunque hemos hablado mucho de i2p y tor en este blog, no hemos hablado mucho sobre como usarlos en dispositivos móviles de forma sencilla, así que aprovechando lo oportuno del artículo de bar foor por lo que vamos a ello, empezando por I2P.

  • Al abrir la aplicación se nos muestra un menú lateral izquierdo donde podemos acceder a las opciones y una pantalla principal dividida en pestañas, donde podremos ver el log de nuestras conexiones DNS con DNSCrypt, Tor,I2p. También tenemos un chekbox donde indicamos que servicios queremos arrancar, como este artículo trata sobre i2p solo voy a arrancar DNSCRYPT y I2P

  • Una vez arrancados los servicios, si queremos por ejemplo navegar por sites i2p, no tenemos que hacer nada más que abrir nuestro navegador favorito y teclear la dirección del sitio, por ejemplo tracker2.postman.i2p, ya que la aplicación nos monta un proxy y un modo vpn para navegar por i2p de forma transversal.

  • Los sitios i2p, igual que en tor cambian constantemente y es muy posible que el sitio que busquéis ya no está disponible, existe un buscador en la clearnet llamado https://i2pengine.com que puede mostrar sitios nuevos, también hay una página dentro de la red i2p identyguy.i2p que muestra una lista de sitios y la última vez que estos estuvieron disponibles que es muy útil.

  • Con i2p no solo podemos establecer conexiones a sitios web también podemos hacer uso de túneles para tunelar nuestras conexiones por esa red por ejemplo en IRC, para ello tenemos que acudir a la sección de edición de túneles del menú avanzado de la izquierda.

  • Allí pulsamos sobre la opción «Modificar al archivo de tunnels.conf»
  • La aplicación por defecto nos muestra varios túneles ya configurados, solo tenemos que activar las opciones quitando el # delante de la configuración, por ejemplo nuestra configuración para conectar al IRC de irc.ilita.i2p sería la que remarco en rojo(los otros parámetros de los demás túneles no lo toquéis, solo quitar los # de la configuración que señalo)

 

  • Cuando editéis el túnel os dirá si queréis guardarlo darle que sí (no os preocupes si la liais hay forma de volver a la conf de fabrica)
  • Una vez tengamos nuestro tunnel IRC levantado tan solo tenemos que acudir a un cliente IRC y configurarlo de la siguiente forma

  • Los parámetros importantes son que el host debe ser 127.0.0.1(loopback) y el puerto el que especificamos en el túnel.

  • Nuestra conexión se establecerá

Existen muchos túneles para establecer conexiones en i2p como (http,smtp,pop3,udp,sock,i2cp), podéis encontrar más información en https://i2pd.readthedocs.io/en/latest/user-guide/tunnels/

La red i2p igual que la red tor es todo un mundo de servicios, estos artículos solo quiere dar unas pequeñas pinceladas sobre como usarlas de forma funcional sin entrar en muchos tecnicismos.

 

Happy Hacking ;)

 

 

 

 

✇Elbinario

Invizible Pro: algo más que Orbot

Por: bar foo

Después del articulo de presentación de Conversations+Orbot de Puppetmaster, creo que no estaría mal presentar otro programa para Android que hace lo mismo que Orbot y alguna cosa más.

Se trata de Invizible Pro (disponible en F-Droid https://f-droid.org/en/packages/pan.alexander.tordnscrypt.stable/). Consiste en una aplicación que contiene otras tres aplicaciones: Tor, DNSCrypt e I2P

Como ya sabeís, Tor sirve para conectarse a traves de la red anónima. DNSCrypt sirve para cifrar las peticiones DNS. I2P es otra red anónima que ya se ha comentado en algunos articulos de elbinario.

Es muy sencillo de usar, literamente de boton gordo. No necesita que este rooteado Android. Puede funcionar como una VPN o si tienes rooteado Android, en modo transparente.

Código fuente disponible en https://github.com/Gedsh/InviZible

✇Elbinario

Mensajeria Privada Con Conversations y Orbot

Por: puppetmaster

Conversations, es un magnífico cliente de mensajería instantánea por xmpp, yo diría que a día de hoy se ha convertido en uno de los mejores y más completos clientes a la hora de usar mensajería bajo el protocolo XMPP.

El cliente soporta mensajes cifrados vía  OTR y mensajes, archivos  end-to-end con  OMEMO, por lo que podemos estar  bien seguros con ellos, pero sí queremos añadir una capa extra de anonimato para que no se puede trazar el origen de nuestras conexiones, nos permite usar la red tor con orbot.

De orbot ya hemos hablado por aquí en alguna ocasión para tratar de evitar los bloqueos a los nodos públicos de tor desde nuestro teléfono con bridges, pero me ha sorprendido la sencilla integración con conversations.

La página oficial de orbot del proyecto tor nos lleva a descargar orbot desde play store,  are you serius?,en fin o no hemos aprendido nada de la historia de Silkroad y «Dread Pirate Roberts, o alguien tiene que pagar las facturas, evidentemente no es la opción que recomendamos aquí, por lo que vamos a instalar orbot mediante la aplicación fdroid

  • Una vez instalado Fdroid, abrimos la aplicación y buscamos orbot, Si nuestro teléfono tiene android 4.x o superior, descargamos la versión del pantallazo 16.6.4-RC, que podremos seleccionar desde el menú versiones(si descargáis la versión sugerida por fdroid no funciona o por lo menos en mi teléfono)

 

 

  • Iniciamos orbot , le decimos que no queremos usar el modo vpn y comprobamos que nos conecta correctamente la red

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • Abrimos conversations y vamos a la sección opciones para expertos

 

  • Marcamos la opción conectar vía tor y volvemos a la pantalla principal.

 

Ya esta así de sencillo es conversar de forma segura y privada con herramientas y software libre, incluso aunque el sistema operativo de nuestro teléfono sea de la Dont Be Evil Corp ;)

✇Elbinario

Software libre y consumo energético

Por: puppetmaster

En este blog hemos hablado en muchas ocasiones del auto-consumo tecnologico y la posibilidad de ser 100% auto-sostenibles tecnologicamente, pero salvo ocasiones, no hemos puesto mucho el acento, sobre la huella ecologica que toda este tecnologia que usamos a diario provoca en el medio ambiente, por lo que creo que ahora que «el mundo» anda patas arriba es necesario que reflexionemos sobre ello.

Hardware sostenible

Es obvio que necesitamos poder reparar nuestros equipos de una forma sencillay economica para que no sea mas barato comprar uno nuevo que reparar el actual, porque si no estaremos aumentando cada vez mas nuestro residuo, porque aunque el 90% de los componentes electronicos son reciclables , la realidad es que nos falta mucha cultura del reciclaje para entender porque este proceso es importante y vital para la subsistencia de nuestra sociedad y no una «molestia». Para ello hay compañias como pine64 y otras  que estan realizando productos totalmente reparables como moviles,portatiles,placas,camaras,fuentes de energia,dispositivos IOT.etc…) Es cierto que la Union Europa lanzo hace poco una ley que obliga a los fabricantes a ofrecer el «derecho a reparar» sus productos, pero salvo excepciones las grandes tecnologicas hacen caso omiso de la misma.

Sistemas operativos

El equipo desde el que estoy escribiendo este articulo, y que es basicamente mi equipo actual, es un Portatil Dell inspiron 1525 con Debian 11 64 bits que compre hace mas de 12 años, desde el que hago mis trasteos, e incluso juego a juegos que no requieran mucho acelaracion grafica y incluso podia usar blender de forma fluida  hasta la version 2.79. Si nos vamos a la pagina oficial de Dell y consultamos los sistemas operativos de Microsoft para este equipo nos encontramos que el soporte para mi equipo acabo en la famoso windows vista de 32 bits, por lo que si usara Windows(ni loco) ahora mismo tendria un sistema totalmente obsoleto, sin parches de seguridad, donde muchas de las aplicaciones actuales me darian problemas de compatibilidad por lo que tendria que adquirir un nuevo equipo, generando un nuevo residuo. Por ese es importante fijar nuestra vista no solo en la posibilidad fisica de la reparacion de nuestros dispotivivos, si no tambien en la vida util que nuestro sistema operativo le proporciona.

Conectividad

Evitar la necesidad de la conexion 24H a internet no es solo un motivo energetico,si no tambien un motivo de salud mental, pero si quieres hacerlo de la forma mas ecologicamente sostenible, lo mejor es optar por informarte mediante paginas y aplicaciones  que no abusen de contenidos multimedia, que muestren texto sobre fondos de color plano(preferiblemente oscuro) y no necesiten estar actualizando el contenido de forma constante dinamicamente. Las aplicaciones que soportan el protocolo RSS son  una muy buena manera de estar informados, puesto que permiten obtener y visualizar el contenido de forma offline, evitando asi el uso de absurdos banners, ads, o componentes javascript que estan actualizandose constantemente de los CDN. El protocolo Gemini del que hemos hablado tambien por aqui en alguna ocasion , tambien nos ofrece una genial manera de navegar por internet de una forma mas sostenible ofreciendonos, buenas fuentes de informacion en  articulos de texto sobre paginas(capsulas) totalmente estaticas, donde el contenido multimedia(imagenes,videos.etc..) es totalmente accesorio.

Multimedia

¿Pero es que no podemos jugar o ver videos de forma sostenible? Si pero con algunos matizes, para empezar tenemos que ser claros, los juegos en la nube  son totalmente incomptabiles con el medio ambiente los detalles los podemos encontrar en este articulo https://www.polygon.com/features/2020/10/14/21449158/cloud-gaming-ps-now-geforce-project-xcloud-environmental-impact pero resumiendo, mantener las conexiones simultenas de forma 100% actualizada, evitando en delay requiere una gran cantidad de recursos de conectividad y computo que requieren muchisima energia que se produce de combustibles fosiles y eso que el estudio solo se centra en las señales enviadas como mucho a 720px, si se generalizara las resoluciones a 4K seria insostenible. Evidentemente las compañias de videjuegos en la nube estan migrando hacia centros de datos 100% verdes, pero como todo la realidad es bastante diferente a sus anuncios de green washing. No es lo mismo mantener un servidor propio para jugar a minetest que formar parte de las millones de conexiones sincronas que se producen dirariamente a estos grandes centros de datos, los cuales aparte de los recursos fosiles necesarios que necesitan para mantenerse, tambien requieren de grandes recursos hidricos para apaciguar sus altas temporaturas como nos indican la gente de «Tu nube seca mi rio»  https://tunubesecamirio.com/

Para ver videos en streaming, una buena forma es usar algun servicio como peertube, el cual nos permite mediante la red p2p convertirnos, en anfitrion de nuestro propio contenido, transformandonos en un peer mas dentro de la red que sirve el contenido, permitiendo que este sea servido por varios clientes lo que evidentemente descentraliza la carga del mismo permitiendonos compartir el consumo de red y computo que este necesita entre varios clientes de la red.

Se que alguno/a dira que es muy hipocrita escribir sobre sostenibilidad desde un equipo  que esta conectado a internet, en una comunidad que se encarga de entre otras cosas de ofrecer servicios libres 24H  en sus servidores, con la correspondiente huella ecologica que esto crea, pero es que se trata de ofrecer soluciones para usar la tecnologia de una forma sostenible dentro de la misma, no se trata de tecnosolucionismo barato

¿Conoces proyectos de empresas o comunidades tecnologicas que esten ofreciendo alternativas y soluciones para usar la tecnologia de forma mas sostenible?

 

 

✇Elbinario

Open Assistant, la alternativa libre a ChatGPT

Por: Jess Suárez

La tecnología ha evolucionado a pasos agigantados en las últimas décadas, y cada vez se desarrollan herramientas más inteligentes que nos facilitan la vida cotidiana. Uno de los avances más impresionantes en esta materia es el desarrollo de los asistentes virtuales basados en la inteligencia artificial, que permiten a los usuarios realizar tareas de forma más rápida y sencilla. Entre ellos, destaca Open Assistant, un asistente virtual libre que está cambiando la forma en que nos relacionamos con la tecnología.

Open Assistant es un asistente virtual de inteligencia artificial (IA) diseñado para ayudar a los usuarios en una variedad de tareas cotidianas. Utiliza tecnologías de procesamiento de lenguaje natural (PLN) y aprendizaje automático para comprender y responder a las solicitudes de los usuarios. Este asistente virtual se desarrolló como un proyecto de software libre para permitir a cualquier persona acceder y utilizar esta tecnología sin restricciones, basado en la comunidad e impulsado por LAION e.V., organización alemana sin fines de lucro dedicada a promover el software libre y la cultura digital. Por lo tanto, el código y todos los archivos de Open Assistant están disponibles bajo diferentes licencias de Creative Commons Attribution ShareAlike (CC BY SA). Estas licencias permiten que otros usuarios modifiquen, distribuyan y usen los trabajos creados por Open Assistant, siempre y cuando mencionen y compartan los resultados obtenidos a través de estos trabajos de manera compatible con estas licencias. De esta manera, se fomenta la colaboración entre diferentes proyectos de software libre y la comunicación abierta para el bien común.

Una de las principales ventajas de Open Assistant es su capacidad para realizar una amplia variedad de tareas. Desde buscar información en línea hasta controlar dispositivos domésticos inteligentes, puede ayudarnos a hacer nuestra vida cotidiana más fácil. Además, su integración con otros servicios en línea le permite proporcionar información adicional a los usuarios para una mejor asistencia. Se utiliza principalmente a través de una interfaz de chat, voz o texto. Los usuarios pueden interactuar con el asistente virtual mediante el lenguaje natural, lo que facilita su uso para cualquier persona sin importar su nivel de conocimiento en tecnología. A medida que el usuario interactúa con Open Assistant, el sistema aprende más sobre sus preferencias y comportamientos para proporcionar una mejor asistencia en el futuro.

Otro aspecto destacado es su capacidad de adaptarse a diferentes entornos y necesidades. Por ejemplo, puede ayudar a personas con discapacidades físicas a realizar tareas de forma más accesible e inclusiva. Asimismo, puede integrarse con diferentes dispositivos inteligentes, lo que permite a los usuarios controlar su hogar de forma remota o automatizar tareas específicas. Tiene capacidad suficiente para identificarse con temáticas específicas gracias a lo cual puede automatizar muchas tareas relacionadas con información general y conocimientos especializados. Puedes encontrar ejemplos de uso AQUÍ.

En resumen, Open Assistant es una herramienta tecnológica impresionante que está cambiando la forma en que interactuamos con la tecnología. Su capacidad para realizar una amplia variedad de tareas, su facilidad de uso y su adaptabilidad a diferentes entornos y necesidades lo convierten en una opción atractiva para cualquier usuario. Además, el hecho de ser un proyecto de software libre fomenta la colaboración y el desarrollo de la tecnología en
beneficio de toda la comunidad.

A medida que la tecnología sigue evolucionando, es probable que veamos más asistentes virtuales como Open Assistant. Sin embargo, lo que diferencia a este asistente virtual es su enfoque en la accesibilidad y la inclusión. Al permitir que personas con discapacidades físicas o cognitivas puedan interactuar con la tecnología de manera más accesible, está ayudando a romper barreras y promover la igualdad de oportunidades para todos. Además, su capacidad  para integrarse con otros servicios en línea le permite proporcionar una experiencia de usuario más personalizada y completa. Por ejemplo, puede ayudar a los usuarios a planificar su día, proporcionar recomendaciones de entretenimiento o ayudar en la compra de productos en línea. Todo esto se puede hacer mediante una simple conversación, lo que facilita enormemente la realización de tareas.

Sin embargo, aunque Open Assistant ofrece una experiencia de usuario sólida y versátil, todavía hay espacio para mejorar. Al ser un proyecto de software libre, la comunidad debe trabajar constantemente en su desarrollo para mantenerse al día con las últimas actualizaciones. También es importante asegurarse de que el asistente virtual se mantenga actualizado con respecto a la seguridad y privacidad de los datos de los usuarios.  Siempre es recomendable tomar precauciones antes de introducir cualquier tipo de datos personales como las redes sociales, los correos electrónicos o cuentas bancarias ya que pueden quedar expuestos a ataques cibernéticos. En el caso particular de esta aplicación es importante saber qué solo se recopilarán los datos necesarios para funcionar correctamente evitando la recolección desmedida de ellos. Además hay medidas adicionales en desarrollo para garantizar mayor privacidad.

En conclusión, Open Assistant es una herramienta tecnológica impresionante que está cambiando la forma en que interactuamos con la tecnología. Al permitir una experiencia de usuario más accesible e inclusiva, y ofrecer una amplia gama de funciones, este asistente virtual se ha convertido en una opción atractiva para cualquier persona que busque una herramienta para simplificar su vida cotidiana. Con su enfoque en el código abierto y la
colaboración de la comunidad, tiene el potencial de seguir mejorando y adaptándose a las necesidades de los usuarios en el futuro, si estás buscando una alternativa a ChatGPT o BingChat (que es lo mismo), Open Assistant podría ser tu solución. Al tratarse de software libre, la posibilidad de hacer uso de él en casa es mucho menor ya que requiere hardware potente para ejecutarse. Sin embargo, este inconveniente pronto se superará con el avance tecnológico. También, quien lo utiliza tendrá siempre acceso a su propia copia y podrá modificarlo según sus preferencias sin dependencia de terceros.

Si quieres ayudar a entrenar a esta maravilla de IA o necesitas más información, no dejes de ver el vídeo de DotCSV, un genio que da gusto escuchar hablar sobre inteligencia artificial.

 

✇Elbinario

Invizible Pro + I2p

Por: puppetmaster

Después del artículo de nuestro compañero bar foo sobre Invizible Pro me quedé con la sensación de que aunque hemos hablado mucho de i2p y tor en este blog, no hemos hablado mucho sobre como usarlos en dispositivos móviles de forma sencilla, así que aprovechando lo oportuno del artículo de bar foor por lo que vamos a ello, empezando por I2P.

  • Al abrir la aplicación se nos muestra un menú lateral izquierdo donde podemos acceder a las opciones y una pantalla principal dividida en pestañas, donde podremos ver el log de nuestras conexiones DNS con DNSCrypt, Tor,I2p. También tenemos un chekbox donde indicamos que servicios queremos arrancar, como este artículo trata sobre i2p solo voy a arrancar DNSCRYPT y I2P

  • Una vez arrancados los servicios, si queremos por ejemplo navegar por sites i2p, no tenemos que hacer nada más que abrir nuestro navegador favorito y teclear la dirección del sitio, por ejemplo tracker2.postman.i2p, ya que la aplicación nos monta un proxy y un modo vpn para navegar por i2p de forma transversal.

  • Los sitios i2p, igual que en tor cambian constantemente y es muy posible que el sitio que busquéis ya no está disponible, existe un buscador en la clearnet llamado https://i2pengine.com que puede mostrar sitios nuevos, también hay una página dentro de la red i2p identyguy.i2p que muestra una lista de sitios y la última vez que estos estuvieron disponibles que es muy útil.

  • Con i2p no solo podemos establecer conexiones a sitios web también podemos hacer uso de túneles para tunelar nuestras conexiones por esa red por ejemplo en IRC, para ello tenemos que acudir a la sección de edición de túneles del menú avanzado de la izquierda.

  • Allí pulsamos sobre la opción «Modificar al archivo de tunnels.conf»
  • La aplicación por defecto nos muestra varios túneles ya configurados, solo tenemos que activar las opciones quitando el # delante de la configuración, por ejemplo nuestra configuración para conectar al IRC de irc.ilita.i2p sería la que remarco en rojo(los otros parámetros de los demás túneles no lo toquéis, solo quitar los # de la configuración que señalo)

 

  • Cuando editéis el túnel os dirá si queréis guardarlo darle que sí (no os preocupes si la liais hay forma de volver a la conf de fabrica)
  • Una vez tengamos nuestro tunnel IRC levantado tan solo tenemos que acudir a un cliente IRC y configurarlo de la siguiente forma

  • Los parámetros importantes son que el host debe ser 127.0.0.1(loopback) y el puerto el que especificamos en el túnel.

  • Nuestra conexión se establecerá

Existen muchos túneles para establecer conexiones en i2p como (http,smtp,pop3,udp,sock,i2cp), podéis encontrar más información en https://i2pd.readthedocs.io/en/latest/user-guide/tunnels/

La red i2p igual que la red tor es todo un mundo de servicios, estos artículos solo quiere dar unas pequeñas pinceladas sobre como usarlas de forma funcional sin entrar en muchos tecnicismos.

 

Happy Hacking ;)

 

 

 

 

✇Elbinario

Invizible Pro: algo más que Orbot

Por: bar foo

Después del articulo de presentación de Conversations+Orbot de Puppetmaster, creo que no estaría mal presentar otro programa para Android que hace lo mismo que Orbot y alguna cosa más.

Se trata de Invizible Pro (disponible en F-Droid https://f-droid.org/en/packages/pan.alexander.tordnscrypt.stable/). Consiste en una aplicación que contiene otras tres aplicaciones: Tor, DNSCrypt e I2P

Como ya sabeís, Tor sirve para conectarse a traves de la red anónima. DNSCrypt sirve para cifrar las peticiones DNS. I2P es otra red anónima que ya se ha comentado en algunos articulos de elbinario.

Es muy sencillo de usar, literamente de boton gordo. No necesita que este rooteado Android. Puede funcionar como una VPN o si tienes rooteado Android, en modo transparente.

Código fuente disponible en https://github.com/Gedsh/InviZible

✇Elbinario

Mensajeria Privada Con Conversations y Orbot

Por: puppetmaster

Conversations, es un magnífico cliente de mensajería instantánea por xmpp, yo diría que a día de hoy se ha convertido en uno de los mejores y más completos clientes a la hora de usar mensajería bajo el protocolo XMPP.

El cliente soporta mensajes cifrados vía  OTR y mensajes, archivos  end-to-end con  OMEMO, por lo que podemos estar  bien seguros con ellos, pero sí queremos añadir una capa extra de anonimato para que no se puede trazar el origen de nuestras conexiones, nos permite usar la red tor con orbot.

De orbot ya hemos hablado por aquí en alguna ocasión para tratar de evitar los bloqueos a los nodos públicos de tor desde nuestro teléfono con bridges, pero me ha sorprendido la sencilla integración con conversations.

La página oficial de orbot del proyecto tor nos lleva a descargar orbot desde play store,  are you serius?,en fin o no hemos aprendido nada de la historia de Silkroad y «Dread Pirate Roberts, o alguien tiene que pagar las facturas, evidentemente no es la opción que recomendamos aquí, por lo que vamos a instalar orbot mediante la aplicación fdroid

  • Una vez instalado Fdroid, abrimos la aplicación y buscamos orbot, Si nuestro teléfono tiene android 4.x o superior, descargamos la versión del pantallazo 16.6.4-RC, que podremos seleccionar desde el menú versiones(si descargáis la versión sugerida por fdroid no funciona o por lo menos en mi teléfono)

 

 

  • Iniciamos orbot , le decimos que no queremos usar el modo vpn y comprobamos que nos conecta correctamente la red

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • Abrimos conversations y vamos a la sección opciones para expertos

 

  • Marcamos la opción conectar vía tor y volvemos a la pantalla principal.

 

Ya esta así de sencillo es conversar de forma segura y privada con herramientas y software libre, incluso aunque el sistema operativo de nuestro teléfono sea de la Dont Be Evil Corp ;)

✇Elbinario

Software libre y consumo energético

Por: puppetmaster

En este blog hemos hablado en muchas ocasiones del auto-consumo tecnologico y la posibilidad de ser 100% auto-sostenibles tecnologicamente, pero salvo ocasiones, no hemos puesto mucho el acento, sobre la huella ecologica que toda este tecnologia que usamos a diario provoca en el medio ambiente, por lo que creo que ahora que «el mundo» anda patas arriba es necesario que reflexionemos sobre ello.

Hardware sostenible

Es obvio que necesitamos poder reparar nuestros equipos de una forma sencillay economica para que no sea mas barato comprar uno nuevo que reparar el actual, porque si no estaremos aumentando cada vez mas nuestro residuo, porque aunque el 90% de los componentes electronicos son reciclables , la realidad es que nos falta mucha cultura del reciclaje para entender porque este proceso es importante y vital para la subsistencia de nuestra sociedad y no una «molestia». Para ello hay compañias como pine64 y otras  que estan realizando productos totalmente reparables como moviles,portatiles,placas,camaras,fuentes de energia,dispositivos IOT.etc…) Es cierto que la Union Europa lanzo hace poco una ley que obliga a los fabricantes a ofrecer el «derecho a reparar» sus productos, pero salvo excepciones las grandes tecnologicas hacen caso omiso de la misma.

Sistemas operativos

El equipo desde el que estoy escribiendo este articulo, y que es basicamente mi equipo actual, es un Portatil Dell inspiron 1525 con Debian 11 64 bits que compre hace mas de 12 años, desde el que hago mis trasteos, e incluso juego a juegos que no requieran mucho acelaracion grafica y incluso podia usar blender de forma fluida  hasta la version 2.79. Si nos vamos a la pagina oficial de Dell y consultamos los sistemas operativos de Microsoft para este equipo nos encontramos que el soporte para mi equipo acabo en la famoso windows vista de 32 bits, por lo que si usara Windows(ni loco) ahora mismo tendria un sistema totalmente obsoleto, sin parches de seguridad, donde muchas de las aplicaciones actuales me darian problemas de compatibilidad por lo que tendria que adquirir un nuevo equipo, generando un nuevo residuo. Por ese es importante fijar nuestra vista no solo en la posibilidad fisica de la reparacion de nuestros dispotivivos, si no tambien en la vida util que nuestro sistema operativo le proporciona.

Conectividad

Evitar la necesidad de la conexion 24H a internet no es solo un motivo energetico,si no tambien un motivo de salud mental, pero si quieres hacerlo de la forma mas ecologicamente sostenible, lo mejor es optar por informarte mediante paginas y aplicaciones  que no abusen de contenidos multimedia, que muestren texto sobre fondos de color plano(preferiblemente oscuro) y no necesiten estar actualizando el contenido de forma constante dinamicamente. Las aplicaciones que soportan el protocolo RSS son  una muy buena manera de estar informados, puesto que permiten obtener y visualizar el contenido de forma offline, evitando asi el uso de absurdos banners, ads, o componentes javascript que estan actualizandose constantemente de los CDN. El protocolo Gemini del que hemos hablado tambien por aqui en alguna ocasion , tambien nos ofrece una genial manera de navegar por internet de una forma mas sostenible ofreciendonos, buenas fuentes de informacion en  articulos de texto sobre paginas(capsulas) totalmente estaticas, donde el contenido multimedia(imagenes,videos.etc..) es totalmente accesorio.

Multimedia

¿Pero es que no podemos jugar o ver videos de forma sostenible? Si pero con algunos matizes, para empezar tenemos que ser claros, los juegos en la nube  son totalmente incomptabiles con el medio ambiente los detalles los podemos encontrar en este articulo https://www.polygon.com/features/2020/10/14/21449158/cloud-gaming-ps-now-geforce-project-xcloud-environmental-impact pero resumiendo, mantener las conexiones simultenas de forma 100% actualizada, evitando en delay requiere una gran cantidad de recursos de conectividad y computo que requieren muchisima energia que se produce de combustibles fosiles y eso que el estudio solo se centra en las señales enviadas como mucho a 720px, si se generalizara las resoluciones a 4K seria insostenible. Evidentemente las compañias de videjuegos en la nube estan migrando hacia centros de datos 100% verdes, pero como todo la realidad es bastante diferente a sus anuncios de green washing. No es lo mismo mantener un servidor propio para jugar a minetest que formar parte de las millones de conexiones sincronas que se producen dirariamente a estos grandes centros de datos, los cuales aparte de los recursos fosiles necesarios que necesitan para mantenerse, tambien requieren de grandes recursos hidricos para apaciguar sus altas temporaturas como nos indican la gente de «Tu nube seca mi rio»  https://tunubesecamirio.com/

Para ver videos en streaming, una buena forma es usar algun servicio como peertube, el cual nos permite mediante la red p2p convertirnos, en anfitrion de nuestro propio contenido, transformandonos en un peer mas dentro de la red que sirve el contenido, permitiendo que este sea servido por varios clientes lo que evidentemente descentraliza la carga del mismo permitiendonos compartir el consumo de red y computo que este necesita entre varios clientes de la red.

Se que alguno/a dira que es muy hipocrita escribir sobre sostenibilidad desde un equipo  que esta conectado a internet, en una comunidad que se encarga de entre otras cosas de ofrecer servicios libres 24H  en sus servidores, con la correspondiente huella ecologica que esto crea, pero es que se trata de ofrecer soluciones para usar la tecnologia de una forma sostenible dentro de la misma, no se trata de tecnosolucionismo barato

¿Conoces proyectos de empresas o comunidades tecnologicas que esten ofreciendo alternativas y soluciones para usar la tecnologia de forma mas sostenible?

 

 

✇Elbinario

Open Assistant, la alternativa libre a ChatGPT

Por: Jess Suárez

La tecnología ha evolucionado a pasos agigantados en las últimas décadas, y cada vez se desarrollan herramientas más inteligentes que nos facilitan la vida cotidiana. Uno de los avances más impresionantes en esta materia es el desarrollo de los asistentes virtuales basados en la inteligencia artificial, que permiten a los usuarios realizar tareas de forma más rápida y sencilla. Entre ellos, destaca Open Assistant, un asistente virtual libre que está cambiando la forma en que nos relacionamos con la tecnología.

Open Assistant es un asistente virtual de inteligencia artificial (IA) diseñado para ayudar a los usuarios en una variedad de tareas cotidianas. Utiliza tecnologías de procesamiento de lenguaje natural (PLN) y aprendizaje automático para comprender y responder a las solicitudes de los usuarios. Este asistente virtual se desarrolló como un proyecto de software libre para permitir a cualquier persona acceder y utilizar esta tecnología sin restricciones, basado en la comunidad e impulsado por LAION e.V., organización alemana sin fines de lucro dedicada a promover el software libre y la cultura digital. Por lo tanto, el código y todos los archivos de Open Assistant están disponibles bajo diferentes licencias de Creative Commons Attribution ShareAlike (CC BY SA). Estas licencias permiten que otros usuarios modifiquen, distribuyan y usen los trabajos creados por Open Assistant, siempre y cuando mencionen y compartan los resultados obtenidos a través de estos trabajos de manera compatible con estas licencias. De esta manera, se fomenta la colaboración entre diferentes proyectos de software libre y la comunicación abierta para el bien común.

Una de las principales ventajas de Open Assistant es su capacidad para realizar una amplia variedad de tareas. Desde buscar información en línea hasta controlar dispositivos domésticos inteligentes, puede ayudarnos a hacer nuestra vida cotidiana más fácil. Además, su integración con otros servicios en línea le permite proporcionar información adicional a los usuarios para una mejor asistencia. Se utiliza principalmente a través de una interfaz de chat, voz o texto. Los usuarios pueden interactuar con el asistente virtual mediante el lenguaje natural, lo que facilita su uso para cualquier persona sin importar su nivel de conocimiento en tecnología. A medida que el usuario interactúa con Open Assistant, el sistema aprende más sobre sus preferencias y comportamientos para proporcionar una mejor asistencia en el futuro.

Otro aspecto destacado es su capacidad de adaptarse a diferentes entornos y necesidades. Por ejemplo, puede ayudar a personas con discapacidades físicas a realizar tareas de forma más accesible e inclusiva. Asimismo, puede integrarse con diferentes dispositivos inteligentes, lo que permite a los usuarios controlar su hogar de forma remota o automatizar tareas específicas. Tiene capacidad suficiente para identificarse con temáticas específicas gracias a lo cual puede automatizar muchas tareas relacionadas con información general y conocimientos especializados. Puedes encontrar ejemplos de uso AQUÍ.

En resumen, Open Assistant es una herramienta tecnológica impresionante que está cambiando la forma en que interactuamos con la tecnología. Su capacidad para realizar una amplia variedad de tareas, su facilidad de uso y su adaptabilidad a diferentes entornos y necesidades lo convierten en una opción atractiva para cualquier usuario. Además, el hecho de ser un proyecto de software libre fomenta la colaboración y el desarrollo de la tecnología en
beneficio de toda la comunidad.

A medida que la tecnología sigue evolucionando, es probable que veamos más asistentes virtuales como Open Assistant. Sin embargo, lo que diferencia a este asistente virtual es su enfoque en la accesibilidad y la inclusión. Al permitir que personas con discapacidades físicas o cognitivas puedan interactuar con la tecnología de manera más accesible, está ayudando a romper barreras y promover la igualdad de oportunidades para todos. Además, su capacidad  para integrarse con otros servicios en línea le permite proporcionar una experiencia de usuario más personalizada y completa. Por ejemplo, puede ayudar a los usuarios a planificar su día, proporcionar recomendaciones de entretenimiento o ayudar en la compra de productos en línea. Todo esto se puede hacer mediante una simple conversación, lo que facilita enormemente la realización de tareas.

Sin embargo, aunque Open Assistant ofrece una experiencia de usuario sólida y versátil, todavía hay espacio para mejorar. Al ser un proyecto de software libre, la comunidad debe trabajar constantemente en su desarrollo para mantenerse al día con las últimas actualizaciones. También es importante asegurarse de que el asistente virtual se mantenga actualizado con respecto a la seguridad y privacidad de los datos de los usuarios.  Siempre es recomendable tomar precauciones antes de introducir cualquier tipo de datos personales como las redes sociales, los correos electrónicos o cuentas bancarias ya que pueden quedar expuestos a ataques cibernéticos. En el caso particular de esta aplicación es importante saber qué solo se recopilarán los datos necesarios para funcionar correctamente evitando la recolección desmedida de ellos. Además hay medidas adicionales en desarrollo para garantizar mayor privacidad.

En conclusión, Open Assistant es una herramienta tecnológica impresionante que está cambiando la forma en que interactuamos con la tecnología. Al permitir una experiencia de usuario más accesible e inclusiva, y ofrecer una amplia gama de funciones, este asistente virtual se ha convertido en una opción atractiva para cualquier persona que busque una herramienta para simplificar su vida cotidiana. Con su enfoque en el código abierto y la
colaboración de la comunidad, tiene el potencial de seguir mejorando y adaptándose a las necesidades de los usuarios en el futuro, si estás buscando una alternativa a ChatGPT o BingChat (que es lo mismo), Open Assistant podría ser tu solución. Al tratarse de software libre, la posibilidad de hacer uso de él en casa es mucho menor ya que requiere hardware potente para ejecutarse. Sin embargo, este inconveniente pronto se superará con el avance tecnológico. También, quien lo utiliza tendrá siempre acceso a su propia copia y podrá modificarlo según sus preferencias sin dependencia de terceros.

Si quieres ayudar a entrenar a esta maravilla de IA o necesitas más información, no dejes de ver el vídeo de DotCSV, un genio que da gusto escuchar hablar sobre inteligencia artificial.

 

✇Elbinario

Aventuras con una honeypot custom de Linux: Perl y Botnets

Por: Terceranexus6

Hace un tiempo cree una honeypot para imitar un dispositivo de IoT con un OS de GNU Linux. La idea era investigar por mi cuenta y por diversión los ataques dirigidos a Linux, puesto que tiene tangencialmente que ver con mi trabajo pero quería hacerlo a mi manera. Los detalles técnicos de cómo la he montado están en este repositorio, pero el resumen es que he copiado el filesystem de OpenWRT con docker, lo he integrado en mi honeypot y he añadido detalles que sabía que solían formar parte del interés de un atacante en estos casos (documentos de configuración, claves SSH, librerias concretas, etc). Pero esta entrada no va de eso, va de una de las campañas que he investigado.

Cuando tienes una de estas honeypot, es posible que recibas muchos ataques, desde diferentes sitios, la mayoría automáticos. En mi caso me dedique a revisar tranquilamente los logs de la honeypot para ver qué había sucedido, por lo general hay algunos detalels que suelen llamar mi atención, para empezar las lineas de comando. La honeypot guarda cualquier comando que se haya intentado ejecutar, de modo que se puede comprobar con un simple grep CMD a través de los logs qué días se han detectado comandos y por parte de qué sesión, cuándo y desde qué dirección IP. Las direcciones IP por si solas dicen más bien poco y no son fiables a largo tiempo como método de detección, pero pueden ayudar a identificar un mismo ataque en un periodo corto de tiempo en una misma máquina. En mi caso cuando estuve revisando líneas de comando descubrí un comando que formaba parte de un ataque automático que resultaba interesante. El ataque descargaba y ejecutaba en segundo plano un script de perl, que tras analizarlo es para un DdoS muy característico, porque utiliza una botnet basada en IRC. Como hay muchos palabros hasta ahora, voy a hacer un inciso para explicar conceptos, puedes saltártelo si ya los conoces:

  • DDoS es literalmente “distributed denial-of-service” que es un tipo de ataque relativamente fácil d eprevenir, antiguo en términos de internet, pero que sigue existiendo. Se basa en usar tantas peticiones por unidades pequeñas de tiempo que provoque una sobrecarga de recursos de un servicio. Hemos visto ese ataque, por ejemplo, contra el salto.
  • Perl es un lenguaje de programación que suele venir por defecto configurado en los sistemas basados en unix. Interpretado, dinámico y flexible, suele ser utilizado para “one liners” es decir, comandos de una sola línea que hacen cosas útiles y eficientes. Perl6 pasó a llamarse Raku y es un lenguaje diferente.
  • Script es un programa pequeño normalmente con una función muy específica. En Linux es habitual usar lenguaje Perl o Bash para esto, pero también puede usarse Python y otros.
  • Botnet es una colección de dispositivos normalmente secuestrados que forman parte de una red activa o dormida para realizar a taques como el de DDoS. Los atacantes lo usan mucho para esconder sus huellas.
  • IRC, literalmente Internet Relay Chat es un sistema de mensajería bastante antiguo (se creó en 1988). Sin embargo se ha reutilizado para hacer un sistema que utiliza una Botnet para mandar comandos maliciosos y realizar ataques de denegación de servicio, entre otras cosas.

Pues bien, existe una de esas Botnet basada en IRC que está hecha en perl, y es característica de un grupo en particular: Outlaw. Los investigadores ponen nombres mega chulos a todos los atacantes, por algún motivo, no preguntéis. Tenía claro que lo que estaba viendo era un ataque automático de outlaw, pero no estaba segura cuántas de las cosas sospechosas de mi honeypot eran de la misma campaña. Outlaw ya atacó a diversos dispositivos de IoT y Linux hace unos años y a mediados de este año volvieron a llamar la atención, así que cuadraba que estuvieran de nuevo al ataque. Me interesaba averiguar si habían cambiado algo, si había algo nuevo.

Me llama la atención los users por defecto del script. No los pondré públicos por si son diferentes para cada grupo de víctimas, pero son bastante particulares. Si diré que la IP no está en virustotal. También os diré que el que lo ha configurado es un tío. ¿Que como lo se? No diré el nombré del canal que usan porque he visto que cada campaña cambia, pero tiene que ver con penes.

Que obsesión.

Y bueno, una confirmación de que es Outlaw, se les conoce como un grupo de habla rumana. Es más en otra versión del script que no es la que tengo dicen “La educación es como una erección, si la tienes, la ves”, en rumano. Puede ser cierto o una especie de carta para confundir, a mi me da igual, no me dedico a rastrear quiénes son en la vida real, sólo cómo hacen lo que hacen.

En el código puedo ver que utiliza recursos externos para intentar una vulnerabilidad de MD5 collision, con la intención de romper y descifrar hashes, es otra cosa que me llamó la atención. Es parte de los comandos que pueden usarse en la Botnet.

Otro de los ataques automáticos implicaba el uso de una sintaxis propia de perl. Sin embargo las IPs y los días no coincidían. Esto no quiere decir nada por si solo porque hay campañas con días de distancia entre un paso y el siguiente, además de que el uso de una Botnet complica el seguimiento por Ips. Estaba casi segura de que tenía relación pero necesitaba buscar algo más. Después de darle unas vueltas, caí en la cuenta de que los intentos de fuerza bruta contra la honeypot (había intentos de conexión con varias credenciales) parecían hechos con algún tipo de programa de shuffle con una lista de palabras. Me di cuenta de que algunas eran muy específicas, probablemente hechas con un generador automático, y no encontré esas listas en ningún lado (repositorios, pastebin, foros…) de modo que se me ocurrió que podía buscar coincidencias de credenciales especialmente particulares entre las de las sesiones que tenían que ver con el ataque sospechoso. Efectivamente, aunque las Ips variaban, las credenciales particulares se repetían (no exactamente iguales, pero si con combinaciones similares) en las sesiones del ataque sospechoso por una sintaxis de Perl.

Una vez hecha esa relación, la red del ataque era más amplia, y seguí investigando. A través de comandos usados en esas mismas sesiones o por esas mismas Ips, llegué a la conclusión de que estaban intentando explotar CVE-2017-9841, una vulnerabilidad de Linux que tuvo un impacto importante en su momento y sigue sin estar del todo parcheado en muchos contextos. Pero, si eso fuese así, para confirmarlo (siempre procuro confirmar una teoría con al menos dos pruebas) tendría que ver evidencias de que se ha intentado usar una shell en PHP, puesto que es la entrada más común de esa vulnerabilidad. Miré los detalles de red de las conexiones y vi como se intentaba hacer llamadas que implicaban shells de PHP de manual: ¡confirmado! Otro inciso técnico:

  • PHP es un lenguaje de scripting especialmente pensado para uso en aplicaciones y páginas web. Personalmente lo odio con todas mis fuerzas. No sólo incita a ser desordenado (puedes añadirlo por ejemplo a cachos en cualquier html) si no que suele ser el origen de múltiples vulnerabilidades. Pero gustos colores, que dicen.
  • Una shell es una terminal, desde la cual ejecutar comandos. Hay ataques (al que me refiero) que implican forzar al usuario sin saberlo a interactuar con una web para provocar las condiciones de una vulnerabilidad. Cuando se accede a una terminal, puedes intentar realizar ataques contra base de datos, servicios, etc.

Hasta aquí había conseguido: el script original del ataque, el conocimiento de que Outlaw estaba usando MAYDAY (el tipo de malware que aprovecha la vulnerabilidad mencionada, o al menos uno muy similar a ese) y más adelante un intento de sobrescribir claves ssh (¿recordáis lo que os dije de que las claves ssh tienen interés? Con frecuencia es para intentar extender el ataque a las claves ssh conocidas por la máquina afectada, pero en general dan credibilidad a un sistema de mentirijilla). Al investigar los ataques, también utilizaban binarios maliciosos, que se han guardado en mis logs, y he podido comprobar que coinciden con XMRig, usado como criptominero (y el objetivo de mi búsqueda, el por qué del filesystem que elegí para la honeypot). XMRig en si es un minero legítimo, pero se usa forzadamente en máquinas, en forma de malware, para aprovechar recursos para minar crypto (este es, con diferencia, el ataque más visto en Linux). Así que en conclusión en esta campaña:

  • He visto que siguen usando el Botnet IRC de Perl
  • He visto que usan XMRig (algo que ya usaban)
  • Aprovechan CVE-2017-9841, en forma del malware MAYDAY
  • Utilizan algún sistema para fuerza bruta con una lista personalizada, probablemente generada automáticamente con patrones que mezclen listas de contraseñas por defecto en sistemas y apps y contraseñas posibles.
  • En una versión más avanzada, procuran sobrescribir ssh, esta parte tiene relación con XMRig.

En realidad todo está basado en análisis de los logs durante un par de meses, quizás el tiempo permita ver más detalles, o quizás la campaña acabará antes de eso. El mundo de cyber es un poco como el de la moda textil, a veces vuelven cosas que se creían pasadas ya a la historia. Gracias a este pequeño proyecto, poco a poco, tengo algunos hashes, un script, comandos y TTPs, y espero poder hablar en más detalle (cómo mirar y parsear rápidamente estos logs, qué añadir a las honeypot para tunearlas, etc) de esto y otros que he visto si se me da la oportunidad en alguna charlilla el año que viene.

✇Elbinario

Congreso de Educación Popular y Tecnologías Libres

Por: juansantiago

El 1º Congreso en Línea de Educación Popular y Tecnologías Libres es una actividad abierta que busca fomentar conversaciones sobre las tecnologías libres en los procesos de formación de los movimientos emancipadores en América Latina, en el marco de la educación popular. Se realizará del 17 al 21 de octubre de 2022.

Todas las contribuciones de las mesas están abiertas en https://campus.universidadpopular.red/course/view.php?id=74

Las sesiones en vivo se transmitirán en https://universidadpopular.red/

Calendario

Haga click sobre la imagen para verla más grande

✇Elbinario

Neokeyboard – un teclado personalizado

Por: Terceranexus6

Llevaba tiempo teniendo un NeoTrellis (un teclado programable y libre que funciona con una placa Feather de Adafruit, que viene a ser un microcontrolador programable). Me lo compré en su momento para hacer un instrumento musical, cosa que más o menos he hecho como describo aquí usando grabaciones de mi voz y el ukelele. Pero pensé en aprovechar ese mismo código para hacerme un teclado personalizado con cosas que hago normalmente en el PC o que podían ser útiles.

Para empezar ya he dicho que el aparato funciona con arduino, entre otras. He reciclado uno de los programas que vienen por defecto para mostrar colores cada vez que se pulsa una tecla. Para ello he impreso en una consola alternativa que código aparecía cada vez que se seleccionaba una tecla (en el «monitor serie», para la gente que haya jugado con arduino antes) y descubrí el código que usaba para cambiar de color según en qué posición del teclado. Mapeé así cada tecla y les puse un nombre reconocible, de la «A» a la «P» (puesto que es una matriz de 4×4 teclas). De este modo, cada vez que pulsaba una tecla, imprimía en la consola su nombre: «A», «B», …

Aunque desde arduino puedes pulsar «monitor serie» y ver qué sucede, realmente lo que está haciendo es volcar todo un su tty correspondiente. En mi caso /dev/ttyACM0, pero a veces es /dev/ttyUSB0 o en caso de Windows (ew) a veces es COM. Hace ya años aprendí a usar Python para leer las consolas de tty y he estado reusando ese código desde entonces:

device='/dev/ttyACM0'
arduino = serial.Serial(device, 9600,timeout=1)


salir = 0

while not (salir == 1):
valor = arduino.readline()
valor = valor.decode('utf-8')
...

Aquí basicamente me estoy pasando el «monitor serie» de Arduino a python para darme más libertad de acción. Además es escalable porque tan sólo necesito trabajar con un condicional que lea qué tecla estoy pulsando y puedo hacer lo que quiera. En este caso como dije, he hecho una matriz de funciones que quería en mi PC, este es el menú:

menu de la app

Para ello básicamente he creado una mezcla de comandos personalizados en bash que he exportado a /usr/local/bin/ y he ido usando la función subprocess.run de Python para llamarlo. No todas las funciones, sin embargo, necesitaban este proceso. También he hecho funciones en python para abrir las pestañas de Mastodon que quiero:

def open_mastodon():

    url = 'mastodon.green'
    url2 = 'merveilles.town'
    url3 = "todon.nl"

    browser = 'firefox'
    webbrowser.get(browser)
    webbrowser.open(url)
    webbrowser.open(url2)
    webbrowser.open(url3)

Para abrir el campus de mi universidad:

def open_uoc():

   campus = "https://www.uoc.edu/portal/es/index.html"
   subprocess.run(["google-chrome",campus])

Me disculpo de antemano que esto de arriba es google chrome, ¡por algún motivo la app de mi uni no va bien en firefox! Finalmente abro mi música preferida:

def open_bandcamp():

   fav = 'https://menitrust.bandcamp.com/album/forever-live-sessions'
   mainweb = 'https://bandcamp.com/'
   browser = 'firefox'

   webbrowser.get(browser)
   webbrowser.open(fav)
   webbrowser.open(mainweb)

Para poder abrir cosas del protocolo Gemini he usado amfora que previamente descargué y configuré. Básicamente descargué el binario de la web de releases la renombré a «amfora» y la exporté a /usr/local/bin/. Del mismo modo para toot, que uso para checkear notificaciones, la he descargado y configurado. Para toot he creado un script que activa la cuenta que paso como parámetro y me lee las primeras cinco líneas (lo justo para enterarme más o menos de lo que va la notificación).


#!/bin/bash
# check_mastodon

toot activate $1
toot notifications 2>&1 | head -n 5

Y en Python:

elif "J" in valor:
   print("Seeing last toot notification in mastodon.green")
   subprocess.run(["check_mastodon", "alien@mastodon.green"])

He añadido un script que me mira el tiempo que hace en una ciudad que pasa por parámetro:

#!/bin/bash
curl wttr.in/"$1"

Y en Python:

elif "L" in valor:
   print("L")
   subprocess.run(["weather_report", "Granada"])

Casi todo lo fundamental para comprender como va está en este repo que estoy montando, que inicialmente era para la musiquita.

 

  • No hay más artículos
❌