Gli articoli premium di Repubblica li può leggere chiunque, senza pagare

Il progetto OWASP (Open Web Application Security Project) mantiene da diversi anni la OWASP Top 10, vale a dire la lista delle dieci vulnerabilità più critiche nell’ambito delle applicazioni web. È una lista conosciuta da tutte le persone che si occupano di sicurezza informatica e, vorrei sperare, anche da chi si occupa di sviluppo web.

Un tipo di vulnerabilità che compare in tutte le edizioni della lista, in un modo o nell’altro, riguarda la possibilità di accesso a risorse che dovrebbero essere protette ma non lo sono in modo adeguato.

Repubblica ha lanciato un servizio premium a Novembre dell’anno scorso, chiamandolo “Rep”. All’interno di esso compaiono articoli di cronaca, pezzi di opinione e molto altro. Chi non è abbonato, visitando un articolo di Rep vede alcune frasi dell’articolo, seguite da un messaggio che recita:

Abbonati a Rep per continuare a leggere

Fino a qui, sembrerebbe tutto normale. Il browser di un utente anonimo riceve un pezzo dell’articolo, ma non può leggere oltre fino a che non effettua il login: è il funzionamento base di un paywall.

Su alcuni siti vulnerabili ci potrebbe essere qualcuno che riesce a bypassare il pagamento e leggere integralmente gli articoli, magari alterando i parametri dell’URL, i cookie o il referer. Questa possibilità esiste, però richiederebbe una specie di “manipolazione” basilare o comunque un intervento da parte dell’utente per ricevere il testo completo.

Il caso di Rep è completamente diverso e mi ha stupito moltissimo quando l’ho visto. Basta infatti guardare il codice sorgente caricato dal browser per scoprire un artificio meramente estetico:

rep_testo
Il testo di un articolo su Rep, visualizzato da un utente non registrato

Si nota infatti che è il sito stesso, cioè l’applicazione Rep, a inviare il testo integrale di ogni articolo al browser di qualsiasi visitatore lo visualizzi. Non c’è nemmeno la possibilità di non riceverlo, arriva infatti in automatico con tutto il resto della pagina.

Il testo viene poi semplicemente nascosto tramite lo stile grafico del sito (una riga di codice CSS che chiunque può disattivare). Ed è questa la cosa più incredibile di questa vicenda:

  • non è necessario installare niente
  • non c’è bisogno di “manipolare” nulla

Rep invia a tutti i visitatori i testi completi di tutti gli articoli, che sono visibili se si disattiva lo stile che li nasconde (o anche navigando con gli stili disattivati, un’opzione di Firefox poco utilizzata ma presente fin dagli albori del browser).

Anzi, se volete provare da voi vi basta visitare un qualsiasi articolo di Rep, aprire gli strumenti di sviluppo del browser e togliere la casellina sulla regola giusta. O ancora più semplicemente, disattivate un attimo gli stili della pagina dal menu di Firefox (Visualizza → Stile pagina → Nessuno stile).

Se siete totalmente pigri, volete automatizzare la cosa per ciascun articolo che visitate, oppure volete farlo da smartphone (in tal caso avrete bisogno di Firefox) ho anche pubblicato un microscopico user-script che funziona con le estensioni Greasemonkey e Tampermonkey. Lo potete installare da qui:

Download — Repubblica “Rep” Aesthetic Paywall Bypass

Naturalmente lo script è solo un proof-of-concept e il sito può venire sistemato in qualsiasi momento.

Quello che abbiamo sotto gli occhi è un tentativo di fare “sicurezza” lato-client, ovvero sulla macchina dell’utente dell’applicazione web. Questo è un approccio che non funziona, anzi è talmente grossolano che sembra dover richiedere un’altra spiegazione.

Alcune persone con cui ho parlato ipotizzano che venga fatto in modo intenzionale, per consentire l’indicizzazione degli articoli da parte di Google. Questo potrebbe certamente essere vero, anche perché sembra strano che nessuno sia intervenuto nel giro di mesi. Però Google fornisce degli strumenti appositi per gli sviluppatori di contenuti protetti da paywall. Forse sarebbe il caso di utilizzarli.

Se anche voi state sviluppando un’applicazione web, assicuratevi di effettuare adeguate valutazioni di tutto il codice, verificando una per una tutte le vulnerabilità della OWASP Top 10 (e non solo quelle). Proteggere i contenuti è fondamentale, specialmente quando i contenuti sono il prodotto. A questo proposito, potrebbe essere una buona idea richiedere un servizio di consulenza professionale in merito.

Annunci

Determinare la data in cui è stata scritta una pagina web

Qualche tempo fa mi è stato proposto di scrivere un articolo per la rivista ICT Security Magazine. Ho trattato una tematica che torna utile in molti casi di indagini da fonti aperte o di consulenze in ambito di digital forensics:

Durante le attività di OSINT (Open Source Intelligence) si può riscontrare l’esigenza di attribuire una datazione più precisa possibile ad una pagina web. Talvolta può essere necessario riuscire ad individuare un giorno o addirittura un orario ascrivibile alla creazione della pagina, ad esempio per rilevare casi di contraffazione della stessa.

Per l’occasione ho anche sviluppato e rilasciato un software open source per automatizzare il processo di datazione di una pagina, che ho chiamato Carbon14. Potete leggere l’articolo completo Datazione delle pagine web tramite Carbon14 direttamente sul sito della rivista.

Se invece avete bisogno di consulenza professionale, eventualmente nella forma di consulenza tecnica utilizzabile anche in giudizio, contattatemi tramite l’apposita pagina.

 

Script aggiornati per Greasemonkey 4 e altre importanti novità

Chi segue il blog da qualche tempo ormai lo sa, i miei post più seguiti sono quasi tutti dedicati al download di video delle principali emittenti italiane, e non solo, disponibili liberamente sui siti web.

Da diversi anni ho reso disponibili gratuitamente degli script (con annesso server di supporto, per Rai e Mediaset) dedicati ciascuno a un singolo sito web. Qui sotto trovate i link ai vari post, dai quali potete scaricare e installare ciò che vi interessa. 🙂

Firefox e Greasemonkey

In passato ho sempre consigliato a tutti Greasemonkey su Firefox, perché è un componente aggiuntivo libero e open source che si può considerare anche la prima delle estensioni per usare gli user script. Poi è nata Tampermonkey per Chrome, Opera e altri browser e adesso ne esistono pure di ulteriori.

Nel lavoro di ammodernamento precedente all’uscita di Firefox 57 (Quantum), gli autori di Greasemonkey si sono trovati nella condizione di dover aggiornare l’estensione e ne hanno approfittato per fare alcune modifiche non retrocompatibili.

Ne è risultato che i miei script funzionavano bene su Greasemonkey 3, ma erano inefficaci su Greasemonkey 4. Quindi ho suggerito a tutti di passare a Tampermonkey. 😉

Come sempre accade, ho continuato a ricevere lo stesso qualche richiesta in merito a presunti “problemi” da sistemare sullo script, da persone che usavano Greasemonkey nonostante i ripetuti avvisi. Però per il resto è andato tutto abbastanza liscio.

Ad ogni modo ora non è più necessario preoccuparsi, infatti ho aggiornato tutti gli script per renderli funzionanti col nuovo Greasemonkey! 😀

Gli aggiornamenti

Non ho effettuato solo una modifica (per fortuna non troppo impegnativa) in termini di compatibilità garantita con Greasemonkey e Tampermonkey, ma in alcuni casi ci sono state delle modifiche ulteriori. Eccovi un riepilogo:

  • Rai Play: ora il link compare regolarmente, inoltre ho nascosto il fastidioso avviso che chiede all’utente di disattivare il blocco pubblicitario. Bloccare le pubblicità è fondamentale (leggete qui perché).
  • Video Mediaset: ora tutti i link compaiono regolarmente. Ho rimosso il pop-up che compare a chi accede a Mediaset dall’estero. Nella quasi totalità dei casi, chi usa il mio script può vedere i video geoprotetti di Mediaset anche in altri paesi.
  • La7: nella stragrande maggioranza dei casi funzionava già con Greasemonkey 4, ma ho fatto una piccola modifica per sistemare il resto.
  • Infine ho applicato la stessa correzione agli script per RSI e BBC.

Altre informazioni utili

Una cosa che ha confuso alcune persone è che da un po’ di tempo sia Rai che Mediaset richiedono di essere registrati, per vedere molti dei loro video. È così da diversi mesi, eppure pochi se ne sono accorti e ogni tanto qualcuno me lo “segnala”.

Il motivo è semplice: chi usa i miei script non deve registrarsi perché ci pensano loro a mostrare subito il video. Un risparmio di tempo e di privacy, saltando il login e la pubblicità iniziale. 🙂 Nei rari casi in cui un link non sia disponibile o riconoscibile dallo script, può comparire una finestra di login… ma non allarmatevi, è fatto così il sito.

Altra cosa utile da tenere a mente, lo accennavo prima, è che usando il mio script per Video Mediaset potete visualizzare tranquillamente quasi tutti i loro filmati anche dall’estero senza strumenti particolari. 😉 Questo perché i loro video “geo-protetti” sono protetti tanto quanto lo sarebbe un caveau pieno di diamanti, aperto e con un cartello che dice “non entrare”.

Per quanto riguarda invece i video della Rai (se non siete in Italia) o della BBC (se non siete nel Regno Unito) avrete bisogno di un servizio VPN serio. Ne ho parlato approfonditamente nell’articolo Cos’è una VPN e perché è fondamentale usarla per proteggersi. Il post ha dei link per acquistare degli account lifetime scontati… Sennò fate voi e scegliete quella che preferite. 🙂

Infine, vorrei precisare che questi aggiornamenti non riguardano i problemi di qualche giorno fa (sorti attorno al 15 gennaio) per i link che non comparivano sotto ad alcuni video su Rai Play. Quello era un malfunzionamento sul server (già risolto) causato dall’hosting provider. Ne ho parlato nei commenti sotto al post.

Licenza e nuova policy

Volevo infine chiarire una cosa importante sull’uso degli script ed eventuali richieste di assistenza in merito. Dal primo giorno (di oltre 6 anni fa!) gli script sono rilasciati sotto licenza GPL, una licenza libera. Ciò vi garantisce che potete usarli gratis e liberamente per qualsiasi scopo, installarli dove vi pare, condividerli e modificarli a condizione di riportare chi è l’autore e mantenere le modifiche sotto la stessa licenza.

Gli script (e relativo server di supporto) sono e restano a vostra disposizione.

Però è opportuno tenere a mente anche quanto è indicato nella licenza, in merito a eventuali garanzie di funzionamento. Userò la traduzione non ufficiale della GPLv3 per maggiore chiarezza:

Eccetto quando altrimenti stabilito per iscritto, i detentori del copyright e/o le altre parti forniscono il programma “così com’è” senza garanzia di alcun tipo, né espressa né implicita, incluse, ma non limitate a, le garanzie di commerciabilità o di utilizzabilità per un particolare scopo.

Ciò significa, in altri termini, che non devo fornire garanzie di funzionamento costante al 100%, stando sempre al passo con le modifiche ai siti delle varie TV. Né in realtà ho il tempo di farlo… aggiorno quando riesco, essendo tutte ore extra che devo spendere per gli script. 🙂

Non posso altresì dedicare molto tempo a rispondere ai quesiti che arrivano via email o messaggi privati, sennò diventa un impegno gravoso che va ad intaccare il tempo dedicato alla mia professione. Per questo motivo da oggi ho deciso di disattivare la chat della mia pagina Facebook.

Se ci sono dubbi, domande o commenti sugli script ho sempre chiesto agli utenti di usare l’area commenti dei relativi articoli. Per comodità vostra li trovate linkati all’inizio di questo post, quindi commentate pure!

Se 10 persone mi scrivono in privato, devo dare 10 risposte. Se 10 persone usano l’area commenti, la prima riceve la risposta e le altre 9 si trovano già la soluzione pronta senza far fatica. È un vantaggio per tutti! 😉

Come policy generale comunque ho intenzione di dare una mano con gli script a chi ha effettuato una donazione, naturalmente se ho tempo e se riesco. Contando la globalità degli script citati sopra, sono state superate le 60000 (sessantamila) copie installate. Vi lascio trarre qualche conclusione su quanto più tempo libero avrei se per ogni installazione mi fosse stato donato un euro. 😀

Chi usa gli script e non ha intenzione di donare sappia che può continuare a farlo gratuitamente tutte le volte che lo desidera. Semplicemente porti un po’ di pazienza se ogni tanto qualcosa non va. Chi invece ha la necessità di avere consulenze dedicate o script realizzati su misura (tutte attività che richiedono tempo) può chiedermi un preventivo in merito a tutti i servizi che offro.

I video e le slide dei miei talk al Linux Day 2017

Come vi avevo precedentemente notificato, lo scorso 28 ottobre ho partecipato al Linux Day 2017 organizzato dal LUG Vicenza. In realtà i video sono stati pubblicati quasi subito, ma è stato un periodo un po’ pieno e riesco ad informarvi solo ora. Qui di seguito trovate i video e le slide di ciascun intervento. 🙂

Pubblicità invasiva e spiona: come proteggersi su Android

Il video è disponibile su YouTube:

Le slide sono su SlideShare (cliccate qui per il PDF):

Su questo argomento avevo anche scritto il post Bloccare le pubblicità sui dispositivi Android che potete usare come riferimento per seguire più facilmente le istruzioni date nel video.

Come sviluppo le applicazioni web

Il video è disponibile su YouTube:

Le slide sono su SlideShare (cliccate qui per il PDF):

L’app mostrata durante il talk è disponibile su GitHub.

Leggere giornali e riviste gratis legalmente

Con l’avvento del web e delle nuove tecnologie i quotidiani hanno avuto la necessità di adattare il proprio format, reinventarsi e competere con altre forme di comunicazione come i video e i post sui social network. Nonostante questo, la carta stampata (vera o digitale) è ancora un mezzo utile per rimanere aggiornati sugli ultimi avvenimenti.

Quando si trovano in giro articoli o guide che parlano di leggere giornali e riviste gratis, purtroppo si va a parare molto spesso su siti di dubbia origine, dove si trovano copie pirata in PDF (o addirittura scansioni) delle varie testate. Se vi aspettate un articolo simile, rimarrete delusi.

In questo post desidero parlarvi di un metodo assolutamente legale, senza scaricare “a sbafo”, per leggere quotidiani e settimanali in modo gratuito e lecito. La soluzione a questo desiderio si trova in una risorsa che praticamente tutti noi abbiamo a disposizione anche se a volte non ci pensiamo: la biblioteca cittadina.

Ottenere una o più tessere

La prima cosa da fare per leggere i giornali in modo gratuito è l’unico passaggio di questa guida che richiede di recarsi fisicamente da qualche parte (solo una volta). Se non possedete già la tessera della biblioteca a voi più vicina, andateci e richiedetela.

Non dimenticate anche di informarvi sull’eventuale rete di biblioteche di cui fa parte la vostra. Il trucco per massimizzare i giornali che si possono leggere gratis è quello di avere accesso a più reti diverse.

Domandate anche come avere accesso alla risorse digitali.

Facendo un esempio pratico, io abito al confine tra la provincia di Vicenza e quella di Treviso. Entrambi i territori usano una rete provinciale, questo significa che bastano le tessere di due comuni per accedere rispettivamente a:

Ho deciso di registrarmi in una biblioteca per ciascuna provincia, perché tutte e due forniscono l’accesso a giornali e riviste differenti. Inoltre consentono di prendere in prestito gli e-book (ma non parlerò di questo).

Voi potete registrarvi alla biblioteca del comune dove vivete o lavorate… e se studiate all’università in una grande città (magari in una provincia diversa) conviene avere una tessera anche lì.

Se ne avete la possibilità, vi consiglio calorosamente di tesserarvi presso una tra le biblioteche che aderiscono alla piattaforma MediaLibrary Online di cui parlerò anche di seguito.

Accedere a giornali e riviste

L’accesso alle risorse digitali può variare leggermente a seconda della biblioteca, ma generalmente si tratta solo di visitare il sito web e fare il login con i propri dati d’accesso. Quindi cercate la sezione chiamata “edicola” o quella con un nome simile. 🙂

Per esempio, su TVB – Biblioteche Trevigiane la voce che vi interessa è sulla barra laterale a sinistra:

treviso_biblio_01.png
Accesso all’edicola digitale sul portale TVB

Una volta all’interno, potete vedere che ci sono “solo” tre quotidiani gratis:

treviso_biblio_02.png
Titoli disponibili per la lettura

Non sono tanti, però si tratta pur sempre di un bel risparmio se considerate che un singolo quotidiano può costare facilmente anche 200€ all’anno.

Cliccando sopra a una testata si apre la visualizzazione completa delle pagine e poi è possibile passare anche al testo degli articoli mostrato come se fosse un blog. Nelle figure seguenti trovate un esempio di entrambe le viste.

Bene, già così potete leggere tre quotidiani in modo completamente gratuito. Tuttavia potrete veramente leggere a più non posso utilizzando il portale di un ente che ha una convenzione con MediaLibrary Online, come ad esempio Biblioinrete.

Per farvi un esempio, se utilizzate la convenzione tra le biblioteche vicentine e MediaLibrary Online vi basta effettuare l’accesso da questo portale dedicato. Una volta all’interno, filtrate le risorse per tipologia e vedrete un catalogo molto ricco:

mlol_biblio_001.jpg
Oltre 6600 risorse da tutto il mondo

Aprendo la scheda di un quotidiano potete notare che questa immensa disponibilità di titoli deriva dal fatto che MLOL è a sua volta arricchito da una partnership con PressReader, portale che fornisce giornali e riviste da moltissimi paesi:

mlol_biblio_002.png
Scheda di un quotidiano su MediaLibrary Online

Vi basta quindi premere il pulsante Sfoglia per accedere alla piattaforma di PressReader. È possibile creare un account ma non è obbligatorio, l’accesso viene già effettuato al vostro posto e potete navigare tranquillamente tra gli oltre 140 titoli (tra giornali e settimanali) del nostro paese. Se preferite potete visionare anche le testate estere. 😀

Potete visualizzare diverse schermate di MLOL nella gallery:

Conclusione

Le biblioteche italiane svolgono un ruolo straordinario nella diffusione e la preservazione della cultura. Con i tempi che corrono è finalmente possibile fruire di numerosissime risorse digitali in modo gratuito e legale.

Se desiderate leggere quotidiani e riviste risparmiando centinaia di euro all’anno sugli abbonamenti, non è assolutamente necessario (e non sarebbe giusto) affidarsi a siti pirata per poi magari trovarsi delle scansioni di scarsa qualità. Risulta molto più pratico fruire delle opportunità offerte dalle biblioteche, che sono lecite e ci consentono di sfruttare questo appropriato uso dei soldi pubblici.

Buona lettura! 🙂