Paywalls vulnerables en diarios digitales — La Nueva España | by Miguel Martínez Serrano | Medium


A Spanish digital newspaper's paywall is vulnerable, allowing users to bypass it using simple browser developer tools or a browser extension.
AI Summary available — skim the key points instantly. Show AI Generated Summary
Show AI Generated Summary
We located an Open Access version of this article, legally shared by the author or publisher. Open It

“Para continuar leyendo, suscríbete al acceso de contenidos web”, ¿te suena? Muchos diarios digitales tienen suscripciones premium para acceder a la totalidad del contenido.

Hoy os traigo el caso de un diario digital cuyo “muro de pago” es vulnerable. Disclaimer: El propósito de esta publicación es meramente educativo y busca concienciar sobre el desarrollo de software de calidad.

Actualización: esto ocurre en todos los diarios del grupo editorial Prensa Ibérica, en la última versión (que tiene sección premium), he comprobado que la lista de diarios vulnerables son los siguientes:

Nuestro protagonista: La Nueva España — Diario Independiente de Asturias (lne.es) tiene la sección “Premium”:

Sección Premium de lne.es

Si visitamos cualquier noticia, veremos que solo nos muestra las primeras líneas y nos pide suscribirnos para acceder al contenido premium. Noticia de ejemplo: clic para abrir.

Paywall del diario digital

Ahora bien, si abrimos las “Herramientas de desarrollo” del navegador pulsando F12 (en Google Chrome / Microsoft Edge / Mozilla Firefox) y seleccionamos el texto degradado con el selector veremos lo siguiente:

Herramientas de desarrollo (F12), seleccionado en el elemento

Podemos ver que debajo de la entradilla con el degradado hay un contenedor con unas clases sospechosas:

article-body--paywall baldomero no-baldomero

¿Cuál será el contenido de ese div? ¡Voilá! ¡El artículo completo!

Contenido completo del artículo

Si eliminamos las clases “baldomero” y “no-baldomero”, se muestra el artículo completo en la página, ya el único estilo que aplicaban es un “display: none!important”. Es decir: el contenido completo está cargado en nuestro navegador, pero oculto mediante hoja de estilos css, una “cutrada”.

Artículo completo tras eliminar la clase que lo ocultaba

Saltarse el paywall automáticamente

Muy bien… ¿sería posible automatizar el proceso de mostrar el contenido de los artículos? Sí.

Hace falta una extensión para el navegador que permita ejecutar JavaScript en cualquier sitio web, por ejemplo la extensión de Chrome (también disponible para Edge): Custom JavaScript for websites. La instalamos y seguimos estos 4 pasos:

Extensión Custom JavaScript for websites
  1. Instalamos y abrimos la extensión
  2. Habilitamos la extensión “cjs” para este host
  3. Pegamos el script que oculta el paywall y muestra el contenido:
document.getElementsByClassName("article-body--truncated")[0].classList.remove("article-body--truncated");document.getElementsByClassName("baldomero")[0].classList.remove("baldomero");document.getElementsByClassName("paywall")[0].style.display = "none";

4. Guardamos el script, y ya estaría.

De esta manera se puede burlar el paywall y acceder a todo el contenido premium del portal.

¿Cómo hacer un paywall más seguro?

Tip para desarrolladores :)

  • En las páginas de las secciones premium el servidor no debería enviar el contenido completo del artículo.
  • Si no se envía el contenido completo de los artículos (texto, imágenes), el tráfico en la red se reduce y la página carga más rápido.

Hemos comprobado que con un simple explorador se puede acceder a todo el contenido, nada sofisticado.

Lo mismo aplica para validación de formularios, por ejemplo, una aplicación web no debería fiarse de los datos que recibe el cliente (navegador), sino que debería validarse además en el lado servidor para evitar problemas de seguridad.

Twitter: @miguelms_es

Si quieres contactar conmigo: miguel@miguelms.es

🧠 Pro Tip

Skip the extension — just come straight here.

We’ve built a fast, permanent tool you can bookmark and use anytime.

Go To Paywall Unblock Tool
Sign up for a free account and get the following:
  • Save articles and sync them across your devices
  • Get a digest of the latest premium articles in your inbox twice a week, personalized to you (Coming soon).
  • Get access to our AI features

  • Save articles to reading lists
    and access them on any device
    If you found this app useful,
    Please consider supporting us.
    Thank you!

    Save articles to reading lists
    and access them on any device
    If you found this app useful,
    Please consider supporting us.
    Thank you!