Spectre y Meltdown

Aparentemente, hay confirmada una enorme vulnerabilidad (enorme en cuanto a la cantidad de equipos afectados y a la profundidad de control que puede lograr un ataque exitoso) de seguridad en procesadores informáticos.

El ataque es a nivel hardware, prácticamente, lo que hace que dé igual el sistema operativo que lo gestione. Así que tanto Linux, Windows como MacOS, así como incluso Android e iPhones son víctimas potenciales de este tipo de ataques.

Un artículo bastante completo sobre el tipo de vulnerabilidad pero al mismo tiempo lo suficientemente claro para que legos en la materia pueden leerlo es el de CNET, web especializada de bastante prestigio en el ámbito de la seguridad informática.

El 2018 ha comenzado con un serio problema para los usuarios, pues esta vulnerabilidad aparentemente no tiene solución a nivel firmware (El firmware o soporte lógico inalterable es un programa informático que establece la lógica de más bajo nivel que controla los circuitos electrónicos de un dispositivo de cualquier tipo. Está fuertemente integrado con la electrónica del dispositivo, es el software que tiene directa interacción con el hardware, siendo así el encargado de controlarlo para ejecutar correctamente las instrucciones externas) sino que habría que modificar el diseño o funcionamiento intrínseco del hardware, lo que no es viable sino hasta dentro de varios meses (o cambiando a procesadores no afectados, lo que significa, más o menos, comprar un ordenador o dispositivo nuevo).

Por otro lado, teniendo en cuenta que la seguridad se mide por el eslabón más débil de una cadena, habría que cambiar todos los dispositivos de una misma red, por ejemplo, para sentirse mínimamente seguro ante esta posible amenaza, pero es algo casi inviable, pues incluye hasta el mismo router que tendrá, en muchos casos un procesador ARM vulnerable. (El LiveBox de Orange que tengo en casa tiene un MIPS que no consta en la lista de procesadores afectados).

Dicen en la web del artículo de CNET que la buena noticia es que los hackers necesitan instalar un software malicioso en su computadora para aprovechar estos defectos. Eso significa que necesitan seleccionar sus objetivos y piratear cada uno de ellos antes de ejecutar un ataque sofisticado para robar la información sensible de una computadora.

Pero un párrafo anterior han alertado sobre el hecho de que no sólo afecta localmente sino también a todo servidor del planeta, así que… poco que hacer al respecto.

¿Qué más da que mi equipo esté muy protegido si el de mi banco no puede estarlo? Por no decir el de mi servidor de correo, mi servidor web, mi nube, mi … Todo equipo es prácticamente vulnerable.

De momento, los primeros ataques serán poco sofisticados y afectarán a equipos domésticos casi con total certeza, especialmente a aquellos usuarios descuidados en su política de seguridad que ejecutan software en sus equipos sin ningún control (léase, usuarios de Windows) acostumbrados a pinchar botones de «Aceptar» casi sin mirar, descargando software de plataformas de dudosa reputación.

No se puede vivir con miedo, pero esta vulnerabilidad tan sólo pone sobre la mesa la imposibilidad de vivir tranquilo si se quiere estar pendiente de la seguridad. Eso no implica no ser responsable de la utilización que se hace de los dispositivos que, cada día más, tenemos omnipresentes en nuestras vidas.

Vamos a sufrir un ataque (varios ataques), hay que mentalizarse. Hay que relajarse y disfrutar. Estimar los daños. Valorar lo que se tiene. Pensar que casi todo lo que hay que proteger es cuestión de dinero. Y la vida es mucho más.

Mi recomendación particular, una y otra vez, es pasarse a Linux, no porque sean invulnerables sino porque los ataques irán principalmente destinados (al menos al principio) a Windows/Android/MacOS que son los sistemas operativos más extendidos. Posteriormente, los ataques serán desde los servidores y la defensa ante estos tipos de ataque es mucho más difícil de llevar a cabo. No usar servidores es desconectarse de Internet y es una de esas cosas que, en los tiempos que corren, resulta inconcebible y, en la mayoría de los casos, contraproducente incluso a riesgo de altas pérdidas.

URLarga: Feliz 2018

Este año, trabajando con las URLs, he decidido realizar 27 felicitaciones navideñas con este motivo, derivando a quien le dé por buscar si esas urls tienen algún sentido otro que el azaroso, al menos a esta entrada del diario que dedicaré a semejantes especímenes.

Programé un pedacito de código C (con VI, por supuesto, y «from scratch», como a mí me gusta) que ha generado 27 URLs únicas. Las he acomodado con GIMP/Linux sobre papel fotográfico que me regalaron con la impresora y al que no sabía qué uso dar.

Me gusta la unicidad del (pseudo)azar programable, que dota de cierto engañoso aura a cada una de las pequeñas piezas que, por momentos, pensé en personalizar, pero intervenía en el azaroso gestar de las mismas… Ya es suficiente con que las URLs comiencen con mi SLD (Second Level Domain), en lugar de un dominio generado al azar.


/*****************************************
urlarga.c

Programa crear URLs que no tengan ningún sentido
más que el azaroso.

Añado la dirección del servidor para que si alguien
quiere ir, al menos aparezca una mínima explicación
de en qué consiste el proyecto.

Derivo a una URL que contiene una búsqueda en mi blog
incluyendo la palabra "urlarga" que remitirá
a una entrada específica creada para tal fin.

*****************************************/

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <string.h>
#include <wchar.h>
#include <locale.h>

// Longitud de la URL formada, incluyendo el protocolo y el servidor
#define LONGITUD_MAX 729
// Para realizar 27 URLs arbitrarias
#define NUM_URLS 27

int main()
{
  setlocale(LC_CTYPE, ""); // Necesario para que funcionen las ñ
  
  int  i, j, letra, l_alfa, l_prot, l_serv, l_base;
  // Un alfabeto incluyendo algunos signos de puntuación
  wchar_t alfabeto[] = L"0123456789ABCDEFGHIJKLMNÑOPQRSTUVWXYZabcdefghijklmnñopqrstuvwxyz!!$%&/()=?¿¡,;:-_+ç";
  wchar_t URL[LONGITUD_MAX];
  wchar_t protocolo[] = L"http://";
  wchar_t servidor[] = L"giusseppe.net/blog/?s=feliz&2018&urlarga&";

  l_alfa = wcslen(alfabeto);
  l_prot = wcslen(protocolo);
  l_serv = wcslen(servidor);
  l_base = l_prot + l_serv;

  srand (time(NULL));

  for (j = 0; j < NUM_URLS; j++)
  {
    wmemset(URL, L'\0', LONGITUD_MAX);
    wcscpy(URL, protocolo); 
    wcscat(URL, servidor); 
    for (i = l_base; i < (LONGITUD_MAX-1); i++)
    {
      letra = rand() % l_alfa; // Obtenemos una letra (índice) al azar del alfabeto
      // Aleatoriamente, si el anterior no era un punto ni una /, ni estamos al final de la URL, ponemos un punto.
      if ((!(rand()%5)) && (URL[i-1] != L'.') && (URL[i-1]!=L'/') && (i != (LONGITUD_MAX-1))) URL[i]=L'.';
      else URL[i]=alfabeto[letra];
    };
    wprintf(L"|%ls|\n", URL);
  };
} // main()

Curl – Acceso comando HTTP

Desde hace tiempo vengo queriendo hacer una aplicación que consulte desde línea de comando el Diccionario de la RAE (DLE) para poder extraer su contenido y hacer búsquedas en las definiciones de las palabras, encontrando patrones como «hombre que» o «mujer que» que me resultan claramente machistas en muchos de los casos, cuando no, simple y meramente ridículas.

Caso hiriente es el de cocinillas:

cocinillas Tb. cocinilla. 1. m. coloq. Esp. Hombre que se entromete en las tareas domésticas, especialmente en las de cocina. 2. m. y f. coloq. Esp. Persona aficionada a cocinar. U. t. c. adj.

Pero se podría seguir y encontrar un gran número de ellas. Me parece muchísimo más grave y evidente (por razones obvias) que la invisibilidad o invisibilización que produce la ausencia de femeninos (ver: Alabardero, Miembro)

He encontrado documentación sobre el comando Curl (de unix, faltaría más) que es posible que pueda usar para lograrlo, pero tengo que dedicarle tiempo para poder «mentir» al sistema de DLE que no quiere que se haga esto por alguna razón que no alcanzo a entender.

https://curl.haxx.se/docs/httpscripting.html

Caracol

La más bella fotografía que creo haber hecho estas vacaciones.

La cámara es la de un móvil BQ Aquaris_A4.5, lunes, 31 julio 2017 a las 10:58:03 en la estación de FEVE de Tapia de Casariego.

Actualmente, la tengo como fondo de pantalla de mi escritorio Linux Mint Cinnamon en el Estudio de la Callo Costanilla donde trabajo desordenadamente en todos los frentes abiertos.

Actualízate

Desde ayer, Facebook ha decidido que el soporte para mi navegador es inadecuado, diciéndome que:

Para mejorar tu experiencia en Facebook, cambia a nuestro sitio básico o actualiza tu navegador.

Hasta aquí todo bien, al fin y al cabo es comprensible que no deseen realizar una aplicación web que dé soporte a todas y cada una de las posibles combinaciones de navegación que hay ahora mismo en manos de los internautas.

Pero cuando voy a ver la página que tienen para que me descargue un navegador «compatible» con su web, me doy cuenta de que la discriminación es por otro motivo:

Dado que yo tengo Chrome (entre otros) me sorprende que esté entre los navegadores soportados, no me queda duda que el problema es porque uso linux. Ah. Ahí está el problema. Parece que cuando me desaconsejó utilizar Chromium (la versión de Chrome para Linux de código abierto) por este mismo motivo y me pasé a Chrome no fue suficiente.

Barajo utilizar Firefox para esto de la red social, pero ya le estaba dando otros usos. Quizá sea una buena idea alejar esa actividad de las que ahora estoy realizando con Chrome, sin que proteste, como es Whatsapp-Web, Airdroid, este diario, la gestión del calendario (de Google), Wikipedia, Cuentas de correo electrónico y bancarias, alguna que otra compra online…

Por supuesto, aprovechan para recordarme que:

Descarga Facebook en tu celular
Mantente conectado en cualquier momento y en cualquier lugar.

Y eso sí que no lo van a lograr. Hace años que desinstalé las aplicaciones de redes sociales (FB/Twr/Inst…) de mi móvil y eso sí que no va a volver. Es muchísimo más relajado saber que, de cuando en cuando, puedo estar desconectado… jejejeje, para conectar con personas a quienes quiero y están lejos, familiares, amigas, etc. Como si tuviese un teléfono. 😉

Bueno, no es un problema al que dedicarle más de media hora para resolver. De momento, trataré de ignorar el mensaje en la parte superior de la navegación en Fb. Después, usaré Firefox, si es que no da problema por correr sobre un flamante Linux Mint, por último, si esto no es suficiente… ¡A tomar por culo!

Y punto pelota.

Siempre mejor en Linux

Estoy haciendo un arreglo de un PC de una alumna que me ha pedido que «limpie» su portátil con windows 8 instalado e instale un windows (ella no sabe muy bien cuál, así que me inclinaré por bajarle a windows 7, que es el sistema que venía de serie con el PC, para el cual ella tiene, por tanto, número de licencia válido).

Afortunadamente, me proporcionó un disco externo USB-3.0 en el que cabe perfectamente todo lo que tiene en el antiguo PC. No me he preocupado por ver qué es útil rescatar y qué no. Es una pérdida de tiempo. Lo incluyo todo. Pero lo hago en Linux.

Para evitarme el molesto windows y sus lentas aplicaciones, arranco desde un pen-drive con un linux live (en concreto LXLE) que me permite montar las 2 particiones que tiene en el disco interno del PC y el disco externo USB 3.0, para hacer la copia de los archivos sin tocar windows… que parece que mancha.

Después, instalaré el W7 home y espero que todo le vaya bonito.

Avisada está de que sólo le instalaré software con licencia o open-source, que entre otras cosas tiene la ventaja de ser más seguro. Lo que es muy de agradecer en el mundo windows.

Así que terminaré, supongo, en un par de horas (dedicadas).

Y espero que le guste.

concilioinmente (Un jugueteo con las palabras y los Concilios)

Hoy encontré la frase «El Concilio de Trento se reunió de forma intermitente de 1555 a 1563» mientras leía el libro de IDEAS (IDEAS. Historia Intelectual de la Humanidad. ISBN 9788474239171. PETER WATSON) y me vinieron a la mente inmediatamente dos palabras que podrían haberse podido usar en lugar de intermitente, que eran impertinente e impenitente. Pero seguro que habría otras, así que aprovechando la disponibilidad de un diccionario en modo texto plano (en realidad una lista de las palabras/entradas del mismo) me dispuse a realizar un pequeño programita que las fabricase:

#!/bin/bash
# Escribe la oración siguiente
# "El Concilio de Trento se reunió de forma INTERMITENTE de 1544 a 1563"
# sustitiyendo INTERMITENTE por otra palabra que comience por in o im
# y termine por "ente", sin ser de tipo "mente", pues poca hubo.

listapalabras=`grep -E '^in|^im' diccionario.txt|grep 'ente$'|grep -v 'mente$'`

for palabra in $listapalabras; do
  echo -e "El Concilio de Trento se reunió de forma" $palabra "de 1544 a 1563"
done

Una salida de la ejecución del mismo sería:

El Concilio de Trento se reunió de forma impaciente de 1544 a 1563
El Concilio de Trento se reunió de forma impediente de 1544 a 1563
El Concilio de Trento se reunió de forma impelente de 1544 a 1563
El Concilio de Trento se reunió de forma impenitente de 1544 a 1563
El Concilio de Trento se reunió de forma impertinente de 1544 a 1563
El Concilio de Trento se reunió de forma imponente de 1544 a 1563
El Concilio de Trento se reunió de forma impotente de 1544 a 1563
El Concilio de Trento se reunió de forma improcedente de 1544 a 1563
El Concilio de Trento se reunió de forma impropiamiente de 1544 a 1563
El Concilio de Trento se reunió de forma imprudente de 1544 a 1563
El Concilio de Trento se reunió de forma impudente de 1544 a 1563
El Concilio de Trento se reunió de forma inapetente de 1544 a 1563
El Concilio de Trento se reunió de forma inasistente de 1544 a 1563
El Concilio de Trento se reunió de forma incandescente de 1544 a 1563
El Concilio de Trento se reunió de forma incidente de 1544 a 1563
El Concilio de Trento se reunió de forma inciente de 1544 a 1563
El Concilio de Trento se reunió de forma incipiente de 1544 a 1563
El Concilio de Trento se reunió de forma incluyente de 1544 a 1563
El Concilio de Trento se reunió de forma incoherente de 1544 a 1563
El Concilio de Trento se reunió de forma incompetente de 1544 a 1563
El Concilio de Trento se reunió de forma inconducente de 1544 a 1563
El Concilio de Trento se reunió de forma inconfidente de 1544 a 1563
El Concilio de Trento se reunió de forma incongruente de 1544 a 1563
El Concilio de Trento se reunió de forma inconsciente de 1544 a 1563
El Concilio de Trento se reunió de forma inconsecuente de 1544 a 1563
El Concilio de Trento se reunió de forma inconsiguiente de 1544 a 1563
El Concilio de Trento se reunió de forma inconsistente de 1544 a 1563
El Concilio de Trento se reunió de forma incontinente de 1544 a 1563
El Concilio de Trento se reunió de forma inconveniente de 1544 a 1563
El Concilio de Trento se reunió de forma indecente de 1544 a 1563
El Concilio de Trento se reunió de forma indeficiente de 1544 a 1563
El Concilio de Trento se reunió de forma indehiscente de 1544 a 1563
El Concilio de Trento se reunió de forma independente de 1544 a 1563
El Concilio de Trento se reunió de forma independiente de 1544 a 1563
El Concilio de Trento se reunió de forma indiferente de 1544 a 1563
El Concilio de Trento se reunió de forma indigente de 1544 a 1563
El Concilio de Trento se reunió de forma indolente de 1544 a 1563
El Concilio de Trento se reunió de forma indulgente de 1544 a 1563
El Concilio de Trento se reunió de forma ineficiente de 1544 a 1563
El Concilio de Trento se reunió de forma inexistente de 1544 a 1563
El Concilio de Trento se reunió de forma infidente de 1544 a 1563
El Concilio de Trento se reunió de forma influente de 1544 a 1563
El Concilio de Trento se reunió de forma influyente de 1544 a 1563
El Concilio de Trento se reunió de forma infrecuente de 1544 a 1563
El Concilio de Trento se reunió de forma ingente de 1544 a 1563
El Concilio de Trento se reunió de forma ingrediente de 1544 a 1563
El Concilio de Trento se reunió de forma inherente de 1544 a 1563
El Concilio de Trento se reunió de forma inmanente de 1544 a 1563
El Concilio de Trento se reunió de forma inminente de 1544 a 1563
El Concilio de Trento se reunió de forma inmunodeficiente de 1544 a 1563
El Concilio de Trento se reunió de forma innocente de 1544 a 1563
El Concilio de Trento se reunió de forma inobediente de 1544 a 1563
El Concilio de Trento se reunió de forma inocente de 1544 a 1563
El Concilio de Trento se reunió de forma insipiente de 1544 a 1563
El Concilio de Trento se reunió de forma insistente de 1544 a 1563
El Concilio de Trento se reunió de forma insolente de 1544 a 1563
El Concilio de Trento se reunió de forma insolvente de 1544 a 1563
El Concilio de Trento se reunió de forma instridente de 1544 a 1563
El Concilio de Trento se reunió de forma insubsistente de 1544 a 1563
El Concilio de Trento se reunió de forma insuficiente de 1544 a 1563
El Concilio de Trento se reunió de forma insulinodependiente de 1544 a 1563
El Concilio de Trento se reunió de forma insurgente de 1544 a 1563
El Concilio de Trento se reunió de forma inteligente de 1544 a 1563
El Concilio de Trento se reunió de forma intercadente de 1544 a 1563
El Concilio de Trento se reunió de forma intercurrente de 1544 a 1563
El Concilio de Trento se reunió de forma interdependiente de 1544 a 1563
El Concilio de Trento se reunió de forma intermitente de 1544 a 1563
El Concilio de Trento se reunió de forma interviniente de 1544 a 1563
El Concilio de Trento se reunió de forma interyacente de 1544 a 1563
El Concilio de Trento se reunió de forma intransigente de 1544 a 1563
El Concilio de Trento se reunió de forma intrascendente de 1544 a 1563
El Concilio de Trento se reunió de forma intumescente de 1544 a 1563
El Concilio de Trento se reunió de forma invidente de 1544 a 1563

Trabajo que no se ve

Esto forma parte del trabajo de un poeta y una bailarina de tango… ¿o no?

Toda profesión tiene sus pros y sus contras. No lo duda nadie, ya que, entre otras cosas, es un tópico.

Llevo toda la semana pegándome con código fuente HTMl y aprendiendo nuevas cosas sobre «webs responsive», para terminar de hacer pública la web de Clave 53.

Y quedan por arreglar pequeñeces (o no tanto) como la política de cookies que no resulta nada sencilla de implementar ni, mucho menos, satisfacer legalmente de manera estricta.

un día de trabajo

Portada para el próximo libro del taller de poesía

eligiendoportadas

Editar gráficamente con GIMP no es la mejor manera de hacerlo, lo sé, al menos desde un punto de vista puramente técnico. Si embargo, se pueden hacer buenas composiciones si no queremos hacer cosas demasiado sofisticadas o no las necesitamos.

Es la aplicación que pretende emular las habilidades de Photoshop más extendida en las distribuciones linux y eso ya es una buena razón para usarla. Pero claro… recuerdo que usar linux es un acto político.

Actualmente, me encuentro en mitad del proceso de maquetación/edición del libro de fin de curso 2015-2016 de los Talleres de Poesía y Escritura Creativa de la Asociación Cultural Clave 53 y no sé entre cuál de estas dos opciones decantarme.

Tengo la impresión de que siempre termino eligiendo el negro de fondo, quizá por la «mala» influencia de Visor, pero en parte también porque sobre negro todo tiende a quedar «mejor», incluso aunque no sea una gran composición gráfica y, no lo olvidemos, soy un intruso en estas lides, como en tantas otras.

¿Para cuándo volveremos a tener un Windows 95?

evolucion-bueno-malo

Pasé por usar windows 3
(3.0)
a usar un windows 3.1 que sin punto sería un 31
que en aquella época era un mero gestor de ventanas
sin pretensiones de sistema operativo.

Usé el célebre windows 95 que llegó aproximadamente
al mercado
alrededor del 1995
y que tenía pretensiones que no cumplieron
de ser un verdadero sistema operativo
porque no acababa de ser operativo.

Pasé por usar windows NT
que posiblemente se habría llamado 3.5 (e internamente 4.0)
y llegué a ser de los primeros seres humanos
en convencer a unos servicios informáticos de una entidad financiera
para instalar un servidor de internet en un equipo
con estas características.

NT era bonito. Habría podido ser windows 40.

Luego llegó y usé windows 98
pero nunca con propósitos profesionales
porque de nuevo fracasaba como algo operativo
y hube de esperar a la llegada del windows 2000
en el año 2000
siendo verdaderamente un windows 5.0 o 50
para volver a confiar mínimamente en la posibilidad de tener un sistema
operativo
que fuese digno de ser tomado por tal
pero su soporte para dispositivos era
cuando menos
molesto
como de un linux.

Había pasado ignorando
felizmente
un sistema en el que tan sólo se había cambiado el nombre
para ocultar números: windows Me
y que para lo único que sirvió es para hacer de antesala
a la llegada de un buen y robusto sistema
(por primera vez)
llamado windows XP
que aunaba la profesionalidad del 2000
con la pretendida orientación al usuario particular del 98-Me.

XP fue tan interesante que aún lo mantengo
en máquinas virtuales que viven en una reliquia temporal
de hace tres lustrosos lustros
además de silenciar los lanzamientos
para diferentes plataformas
que comenzaron a emerger de las tinieblas
e incluso eclipsaron
la venida al planeta de un desconocido windows 2003
que quería anunciar que también gates había cruzado el gate
hacia el nuevo milenio.

Todos ellos eran hijos ilegítimos
de un agonizante windows NT 4.0
que había generado 5.0, 6.0
que sin puntos serían 50 y sesenta.
llegando a un virulento
windows vista
que no tuvo mucha vista
cuya intención
como lo había sido en los tiempos del XP
era la de mezclar las bondades del XP
con las bondades del 2003
pero ambas bondades
como en un «menos por menos es más»
se convirtieron en un «más por más es menos… y peor»
hasta desatar una oleada de críticas justificadas.

Usé windows vista porque venía impuesto
en los ordenadores que ya por entonces
habían blindado la garantía al software
haciéndonos creer que lo más importante del aparatejo
era lo que no estábamos comprando.

Mi camino hacia linux era ya imparable.

No usé por ser orientado al ámbito empresarial
el windows 2008 que salió al mercado
como su propio nombre indica.

Después del 2008 llegó el 7
windows 7
que retomaba la calidad de la mejor versión
disponible
introduciendo, para ello,
pocos o ningún cambio relevante
salvo el número.

Era windows 7 o 7.0 o 70
basado en NT 6.0.

Aún lo tengo en varios ordenadores
como alternativa a varias distribuciones
como mint o ubuntu
pero su elevado consumo de recursos
injustificadamente
me desalientan de usarlo
amén de su siempre creciente
lista de vulnerabilidades.

Después
inventaron el UEFI
para reventar las narices a los que queríamos
comprar clavos cuando
compramos clavos.

He conocido el windows 8.0 que
sin punto
sería 80
y que no nació en los 80
como el 95 había nacido en el 95.

Buscaban una interfaz diferente
con un cambio de filosofía
para intentar subsistir
en un mundo móvil y googleado
androitizado
en el 2012.

Sus windows phone
7.5
eran barridas del hardware
como antes w
había barrido a sus competidores.

Compraron Nokia para sobrevivir.

El windows 8 duró lo que duró vista
y llegó una pretendida revisión
llamada windows 8.1
que en realidad era un sistema nuevo
y que necesita un tanque para salir de casa.

Pero eso sí:
es mono.

Y cuando parecía que todo habría acabado
llegó windows 10 porque saben que no pueden parar
de producir versiones
después de haber ignorado la
que habría sido 9
por precipitación
o porque no les gustó el número.

Volvemos a estar en dos dígitos
sin necesidad de eliminar el punto
y acercándose a la fecha del lanzamiento
así que quizá al año que viene
caiga en el imaginario
el windows 17
hasta que año a año
nos acerquemos
peligrosamente
al windows 95
y volvamos a empezar.

Esto no es una broma