Noticias

'Hackean' la web de Hacienda para descargar datos públicos de contratistas y el ministerio responde dejando offline la plataforma

'Hackean' la web de Hacienda para descargar datos públicos de contratistas y el ministerio responde dejando offline la plataforma

Muchas empresas españolas participan en los procedimientos de contratación pública puestos en marcha por las administraciones (de hecho, no son pocas aquellas cuya actividad depende en gran parte de dicha participación).

Para ellas, hace ya algunos años se puso en marcha el ROLECE (Registro Oficial de Licitadores y Empresas Clasificadas del Sector Público), que les permite reducir la burocracia agrupando toda la información necesaria para la administración pública en un único documento, tramitado electrónicamente.

¿Qué interés puede tener ROLECE para un hacktivista?

Pero, al mismo tiempo que facilita los trámites a las empresas, la información contenida en dicho registro podría resultar de gran utilidad a periodistas y activistas permitiendo cruzar información con otras bases de datos, y detectando así patrones ‘curiosos’…

…por ejemplo: que determinados administradores de empresas tiendan a ser ‘premiados’ con contratos públicos con mayor frecuencia en regiones o municipios de determinado color político.

Servicio

La web del ROLECE.

Así las cosas, no es de extrañar que el ROLECE haya terminado atrayendo la atención de Jaime Gómez-Obregón, ingeniero y ‘hacktivista’ conocido por haber puesto en marcha una plataforma de transparencia sobre la contratación pública en Cantabria y, más tarde, otra sobre las donaciones irregulares de Juan Carlos I:

“Uso la informática y los datos abiertos para aflorar, exponer y arrasar con chanchullos y corruptelas del Sector Público”.

Consulta

Formulario en la web del Ministerio de Hacienda.

De modo que rápidamente detectó que se está incumpliendo la Ley de Contratos del Sector Público, que establece que el ROLECE “será público y se podrá acceder de forma abierta previa identificación”, y que un reglamento “determinará modalidades y requisitos para la publicidad del Registro”… pero el acceso (mediante certificado digital) sólo da acceso a tu propia inscripción en el registro (si lo tuvieras), no al conjunto del mismo.

Así se ‘hackeó’ el ROLECE desde la web de Hacienda

Pero Gómez-Obregón ha explicado en un hilo de Twitter cómo logró descargar todos los datos del ROLECE ‘hackeando’ la web del servicio de Consulta de Expedientes de Clasificación de Empresas, que extrae sus datos del mismo.

“El buscador me obliga a consignar un mínimo de cuatro letras del nombre del contratista. ¿Por qué hacen esto? ¡Qué ganas de entorpecer el acceso a los datos públicos!”.

“Podría descargar todo el listado por fuerza bruta, automatizando búsquedas iterativas (AAAA, AAAB … ZZZY, ZZZZ), pero sería una cochinada ineficiente: 26×26×26×26 = 456.976 búsquedas. Tiene que haber otra manera”.

Nuestro protagonista pensó que la validación de los datos de entrada de un formulario web puede hacerse en dos puntos del ciclo petición-respuesta: bien en el cliente (el navegador del usuario), bien en el servidor (la aplicación de Hacienda).

Inspeccionando El Campo De Entrada

Inspeccionando el campo de entrada.

“Siempre se recomienda validar los datos al menos en el servidor. Observo que el buscador de Hacienda valida los datos en el cliente. Mi única esperanza es que no estén haciendo validación también en el servidor”.

A continuación, el hilo relata cómo un poco de código JavaScript le permitió sortear la validación de datos desde la consola de su navegador, reduciendo exponencialmente el número de búsquedas, primero, y facilitándole luego detectar una llamada GET al servidor mediante Ajax a la que el servidor respondía con un archivo JSON con la información que buscaba.

“Son datos públicos. De un registro público que sirve Hacienda en internet. Esto no es ningún crimen. ¡Es liberar datos públicos para que haya más transparencia en la contratación pública!”

El siguiente paso fue lograr proporcionar un único carácter al servidor que fuera capaz de devolver todos los registros de la base de datos. Tras fallar el uso del espacio en blanco, el visualmente indistinguible caracter Unicode U+2800 (espacio vacío en Braille), logra el milagro:

Ahora, y desde la maña de ayer, el servicio que Gómez-Obregón usó para acceder la base de datos está misteriosa y repentinamente inaccesible (‘Service Unavailable’) en la web del Ministerio de Hacienda. “Demasiado tarde”, afirma en Twitter nuestro protagonista, “aquí tenéis el dataset liberado“.

Para completar la jugada, se ha puesto en contacto (también a través de Twitter) con el portal EU Open Data para que deje de enlazar a la web de Hacienda y empiece a hacerlo al dataset abierto que descargó.

Codigo

Este es el código que permitió a Gómez-Obregón automatizar la conversión de los datos JSON en una hoja de cálculo CSV.

(function() { window._JS_MODULES = window._JS_MODULES || {}; var headElement = document.getElementsByTagName(‘head’)[0]; if (_JS_MODULES.instagram) { var instagramScript = document.createElement(‘script’); instagramScript.src = ‘https://platform.instagram.com/en_US/embeds.js’; instagramScript.async = true; instagramScript.defer = true; headElement.appendChild(instagramScript); } })();


La noticia ‘Hackean’ la web de Hacienda para descargar datos públicos de contratistas y el ministerio responde dejando offline la plataforma fue publicada originalmente en Genbeta por Marcos Merino .

Related Articles

Leave a Reply

Your email address will not be published. Required fields are marked *

Back to top button