<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Chrome on Melabit</title>
    <link>https://melabit.com/it/tags/chrome/</link>
    <description>Recent content in Chrome on Melabit</description>
    <generator>Hugo</generator>
    <language>it</language>
    <lastBuildDate>Mon, 16 Sep 2019 06:00:00 +0000</lastBuildDate>
    <atom:link href="https://melabit.com/it/tags/chrome/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Come riparare i segnalibri di Firefox</title>
      <link>https://melabit.com/it/2019/09/16/come-riparare-i-segnalibri-di-firefox/</link>
      <pubDate>Mon, 16 Sep 2019 06:00:00 +0000</pubDate>
      <guid>https://melabit.com/it/2019/09/16/come-riparare-i-segnalibri-di-firefox/</guid>
      <description>&lt;p&gt;Sui miei Mac installo parecchi browser ma poi uso quasi sempre solo Firefox. Un po&amp;rsquo; perché sono fedele, sono passato senza soluzione di continuità &lt;a href=&#34;https://www.mozillaitalia.org/home/tag/storia/&#34;&gt;da Netscape a Mozilla a Firefox&lt;/a&gt; e non ho motivi seri per cambiare. E poi perché Firefox è multipiattaforma e può sincronizzare tutte le impostazioni e i dati personali (segnalibri, storia di navigazione, add-on, schede aperte, volendo anche le password) via cloud, una funzione utilissima quando si usano più Mac o si ha a che fare con computer e sistemi operativi diversi.&lt;/p&gt;&#xA;&lt;p&gt;Certo, anche Google Chrome funziona ovunque, ma volete mettere il rispetto della privacy di quelli di Mozilla (la fondazione che supporta lo sviluppo di Firefox e del client di posta elettronica &lt;a href=&#34;https://www.thunderbird.net/en-US/&#34;&gt;Thunderbird&lt;/a&gt;) con, diciamo così, la &lt;em&gt;curiosità&lt;/em&gt; di Google?&lt;/p&gt;&#xA;&lt;p&gt;Non che Firefox non abbia i suoi problemi. La &lt;a href=&#34;https://hacks.mozilla.org/2017/11/entering-the-quantum-era-how-firefox-got-fast-again-and-where-its-going-to-get-faster/&#34;&gt;ristrutturazione del codice&lt;/a&gt; di due anni fa ha reso il browser molto più veloce, ma purtroppo parecchie estensioni non sono mai state aggiornate per funzionare con il nuovo modello di codice (a me manca moltissimo &lt;a href=&#34;https://en.wikipedia.org/wiki/ScrapBook&#34;&gt;ScrapBook&lt;/a&gt; che usavo per archiviare le pagine web e non sono ancora riuscito a rimpiazzarlo con qualcosa di altrettanto efficace).&lt;/p&gt;&#xA;&lt;p&gt;E poi ci sono i segnalibri (&lt;em&gt;bookmark&lt;/em&gt; per gli anglofili, &lt;em&gt;preferiti&lt;/em&gt; per chi usa Safari). Se come me avete tanti segnalibri, non provate a sincronizzarli tramite il cloud di Firefox: è snervante, basta aggiungerne uno per innescare la sincronizzazione e intanto il browser rallenta in modo evidente. Per molto tempo, ad ogni nuova versione di Firefox ho sperato che ci fossero dei progressi in questo campo, ma poi sono sempre tornato a sincronizzare i miei segnalibri tramite Dropbox; la configurazione iniziale può essere un po&amp;rsquo; fastidiosa, ma dopo va che è un piacere (varrebbe la pena riparlarne, prima o poi).&lt;/p&gt;&#xA;&lt;p&gt;Firefox ha un problema ancora più serio con i segnalibri, che si presenta quando il browser va in crash. Ma prima bisogna fare una premessa.&lt;/p&gt;&#xA;&lt;h4 id=&#34;segnalibri-e-database&#34;&gt;Segnalibri e database&lt;/h4&gt;&#xA;&lt;p&gt;Da moltissimo tempo ormai Firefox salva i segnalibri in &lt;code&gt;places.sqlite&lt;/code&gt;, un database &lt;a href=&#34;https://www.sqlite.org/index.html&#34;&gt;SQLite&lt;/a&gt; che in macOS si trova nella cartella&#xA;&lt;code&gt;~/Library/Application Support/Firefox/Profiles/abcd1234.default/&lt;/code&gt; (come sempre &lt;code&gt;~&lt;/code&gt; rappresenta la &lt;code&gt;Home&lt;/code&gt; dell&amp;rsquo;utente). Questa cartella contiene tutti i file di configurazione e i database del browser, cioè il cosiddetto &lt;code&gt;profilo&lt;/code&gt; dell&amp;rsquo;utente.&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;&#xA;Il nome &lt;code&gt;abcd1234.default&lt;/code&gt; della cartella del profilo utente è solo un nome generico, il nome reale è costituito da una sequenza casuale di otto lettere e numeri seguiti dalla stringa &lt;code&gt;.default&lt;/code&gt; e viene generato quando usiamo per la prima volta Firefox sul nostro computer, oppure quando lo &lt;a href=&#34;https://support.mozilla.org/it/kb/funzione-ripristino-firefox&#34;&gt;ripristiniamo&lt;/a&gt; per correggere eventuali problemi.&lt;/p&gt;&#xA;&lt;p&gt;Nelle versioni più recenti di Firefox il nome di questa cartella segue un nuovo formato, &lt;code&gt;abcd1234.default-1234567890123&lt;/code&gt; (otto lettere e numeri seguiti dalla stringa &lt;code&gt;.default&lt;/code&gt;, da un trattino &lt;code&gt;-&lt;/code&gt; e da altri 13 numeri), ma il succo del discorso non cambia, per cui nel seguito continuerò ad utilizzare per semplicità il formato più vecchio (e più breve).&lt;/p&gt;&#xA;&lt;p&gt;Il nome della cartella del profilo utente può essere ricavato dal Terminale con il comando&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;$ ls -al ~/Library/Application\ Support/Firefox/Profiles/&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;In alternativa possiamo selezionare da Firefox la voce di menu &lt;code&gt;Aiuto &amp;amp;#8594; Risoluzione dei problemi&lt;/code&gt; oppure scrivere &lt;code&gt;about:support&lt;/code&gt; nella barra degli indirizzi (Figura 1). Si apre una pagina che contiene parecchie informazioni utili, fra cui il percorso completo alla cartella del profilo, a cui si può accedere dal Finder cliccando sul bottone cerchiato in rosso (Figura 1). Da questa pagina possiamo anche ripristinare il browser o riavviarlo con le estensioni disattivate.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://melabit.files.wordpress.com/2019/08/about-support-1.png&#34; alt=&#34;&#34;&gt;&#xA;&lt;em&gt;Figura 1. Strumento per la risoluzione dei problemi di Firefox.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;p&gt;&lt;strong&gt;NOTA&lt;/strong&gt; Ricordo che da Windows 7 in poi (in effetti da Vista, ma chi lo usa ancora?), la cartella del profilo di Firefox si trova in &lt;code&gt;C:\Users\&amp;amp;#60;nome utente&amp;amp;#62;\AppData\Roaming\Mozilla\Firefox\Profiles\&lt;/code&gt;, mentre in Windows XP è in &lt;code&gt;C:\Documents and Settings\&amp;amp;#60;nome utente&amp;amp;#62;\Application Data\Mozilla\Firefox\Profiles\&lt;/code&gt;. Su Linux invece la cartella del profilo si trova in &lt;code&gt;~/.mozilla/firefox/&lt;/code&gt;, dove come in macOS &lt;code&gt;~&lt;/code&gt; rappresenta la &lt;code&gt;Home&lt;/code&gt; dell&amp;rsquo;utente.&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;h4 id=&#34;quando-firefox-va-in-crash&#34;&gt;Quando Firefox va in crash&lt;/h4&gt;&#xA;&lt;p&gt;Usare un database per gestire i segnalibri è molto efficace, soprattutto quando il numero di segnalibri memorizzati è piuttosto grande.&lt;sup id=&#34;fnref:2&#34;&gt;&lt;a href=&#34;#fn:2&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;2&lt;/a&gt;&lt;/sup&gt; Inoltre, un database consente di implementare un meccanismo di sicurezza in base al quale tutte le operazioni da effettuare (inserimento di nuovi dati, cancellazioni, spostamenti e così via) vengono prima salvate in un file separato, che in Firefox si chiama &lt;code&gt;places.sqlite-wal&lt;/code&gt;, per essere poi applicate al database principale &lt;code&gt;places.sqlite&lt;/code&gt; solo al momento della chiusura del browser.&lt;sup id=&#34;fnref:3&#34;&gt;&lt;a href=&#34;#fn:3&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;3&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;p&gt;Una volta conclusa l&amp;rsquo;operazione di aggiornamento di &lt;code&gt;places.sqlite&lt;/code&gt;, il file &lt;code&gt;places.sqlite-wal&lt;/code&gt; non serve più e viene cancellato. Quando eseguiamo di nuovo Firefox, il browser crea un nuovo file &lt;code&gt;places.sqlite-wal&lt;/code&gt; in cui salvare le nuove modifiche ai segnalibri e il ciclo ricomincia.&lt;/p&gt;&#xA;&lt;p&gt;Ma se Firefox in crash (ormai succede di rado ma succede), le modifiche contenute nel file &lt;code&gt;wal&lt;/code&gt; non possono essere applicate al database &lt;code&gt;places.sqlite&lt;/code&gt;. In genere non è un problema, al primo riavvio Firefox nota che &lt;code&gt;places.sqlite-wal&lt;/code&gt; è ancora sul disco rigido e lo utilizza per aggiornare il database principale.&lt;/p&gt;&#xA;&lt;p&gt;Purtroppo a volte qualcosa va storto, magari il crash avviene proprio mentre Firefox sta scrivendo nel file &lt;code&gt;wal&lt;/code&gt;, magari Firefox si blocca e dobbiamo forzarne la chiusura, magari ci sono problemi durante la sincronizzazione dei segnalibri via cloud o via Dropbox, magari il file &lt;code&gt;wal&lt;/code&gt; viene cancellato per sbaglio. In tutti i casi, l&amp;rsquo;effetto finale è che il database &lt;code&gt;places.sqlite&lt;/code&gt; si corrompe e ci si ritrova con dei segnalibri scomparsi o con Firefox che fa i capricci. La funzione di &lt;a href=&#34;https://support.mozilla.org/it/kb/funzione-ripristino-firefox&#34;&gt;ripristino del browser&lt;/a&gt; esiste anche per questo, basta usarla e tutto dovrebbe andare a posto, mantenendo inalterate tutte le impostazioni e i dati personali.&lt;/p&gt;&#xA;&lt;p&gt;Ma un (brutto) giorno si lancia Firefox e si scopre di aver perso tutti i segnalibri&amp;hellip;&lt;/p&gt;&#xA;&lt;h4 id=&#34;riparare-il-database&#34;&gt;Riparare il database&lt;/h4&gt;&#xA;&lt;p&gt;È proprio quello che è successo a me qualche settimana fa. Per fortuna Firefox fa periodicamente il backup dei segnalibri sul Mac, per cui possiamo sempre recuperare una versione precedente di &lt;code&gt;places.sqlite&lt;/code&gt; perdendo al massimo le aggiunte degli ultimi giorni. E se per qualche motivo il backup di Firefox non funzionasse, c&amp;rsquo;è sempre la possibilità di recuperare le ultime versioni di &lt;code&gt;places.sqlite&lt;/code&gt; da Time Machine, dall&amp;rsquo;account Dropbox o dal cloud di Firefox (per chi lo usa).&lt;/p&gt;&#xA;&lt;p&gt;Ma che fine hanno fatto i segnalibri scomparsi? Andando a curiosare nella cartella del profilo (come già notato più sopra, lo si può fare dal Terminale con il comando &lt;code&gt;cd ~/Library/Application Support/Firefox/Profiles/abcd1234.default/&lt;/code&gt; seguito da &lt;code&gt;ls -alh places*&lt;/code&gt;, oppure selezionando la voce di menu &lt;code&gt;Aiuto &amp;amp;#8594; Risoluzione dei problemi&lt;/code&gt; e cliccando sul bottone &lt;code&gt;Mostra nel Finder&lt;/code&gt; posto accanto alla voce &lt;code&gt;Cartella del Profilo&lt;/code&gt;, come mostrato in Figura 1), oltre al solito &lt;code&gt;places.sqlite&lt;/code&gt; si trova un altro file piuttosto grande, &lt;code&gt;places.sqlite-corrupt&lt;/code&gt;. La dimensione di &lt;code&gt;places.sqlite&lt;/code&gt; è decisamente piccola, troppo piccola per poter contenere tutto l&amp;rsquo;elenco dei segnalibri. È evidente che i veri segnalibri sono nel secondo file, quello che Firefox considera &amp;ldquo;corrotto&amp;rdquo;, mentre &lt;code&gt;places.sqlite&lt;/code&gt; è solo un database quasi vuoto, generato automaticamente all&amp;rsquo;avvio da Firefox.&lt;/p&gt;&#xA;&lt;p&gt;Quando è successo a me, la prima cosa che ho fatto è stata quella di &lt;a href=&#34;https://support.mozilla.org/it/kb/funzione-ripristino-firefox&#34;&gt;ripristinare il browser&lt;/a&gt; creando un nuovo profilo, sostituendo poi il file &lt;code&gt;places.sqlite&lt;/code&gt; generato automaticamente con la copia più recente che avevo su Dropbox. Firefox ha funzionato senza problemi per un giorno o due, poi ha deciso che &lt;code&gt;places.sqlite&lt;/code&gt; era di nuovo corrotto e mi sono ritrovato di nuovo senza segnalibri. Chiaramente ci voleva una soluzione migliore.&lt;/p&gt;&#xA;&lt;p&gt;La rete ha tutte le risposte, basta solo trovarle (cosa spesso non molto facile, dato il marasma di sciocchezze che si trova in rete). Ne ho lette tante, finché non sono arrivato all&amp;rsquo;articolo, &lt;a href=&#34;https://developer.mozilla.org/en-US/docs/Mozilla/Tech/Places/places.sqlite_Database_Troubleshooting&#34;&gt;places.sqlite Database Troubleshooting&lt;/a&gt;, contenuto nel sito ufficiale degli &lt;a href=&#34;https://developer.mozilla.org/en-US/&#34;&gt;sviluppatori di Mozilla&lt;/a&gt;. L&amp;rsquo;articolo è molto chiaro, si vede che è scritto da gente competente, mi è bastato seguire pedissequamente le istruzioni per riparare il file &lt;code&gt;places.sqlite&lt;/code&gt; e risolvere definitivamente il problema.&lt;/p&gt;&#xA;&lt;p&gt;L&amp;rsquo;articolo però è scritto da sviluppatori per sviluppatori e presuppone che chi lo legge conosca perfettamente (o quasi) i comandi per gestire un database SQLite dal Terminale. In realtà proprio all&amp;rsquo;inizio viene citata una estensione piuttosto nota, &lt;a href=&#34;https://addons.mozilla.org/en-US/firefox/addon/places-maintenance/&#34;&gt;Places Maintenance&lt;/a&gt;, che dovrebbe fare automaticamente quanto descritto nel testo. Ma il link non funziona più e quindi sembra che non ci siano alternative all&amp;rsquo;uso del Terminale.&lt;sup id=&#34;fnref:4&#34;&gt;&lt;a href=&#34;#fn:4&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;4&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;p&gt;Ho deciso quindi di riportare le istruzioni presenti nell&amp;rsquo;articolo e di spiegare cosa fa ciascuna di esse, cercando così di rendere fruibile la procedura anche a chi non è molto esperto di Terminale o di database.&lt;/p&gt;&#xA;&lt;h4 id=&#34;le-istruzioni-commentate&#34;&gt;Le istruzioni commentate&lt;/h4&gt;&#xA;&lt;p&gt;Come già detto, per riparare &lt;code&gt;places.sqlite&lt;/code&gt; bisogna usare necessariamente il Terminale. Chi non è pratico, prima di andare avanti farebbe bene a leggere le istruzioni di base per &lt;a href=&#34;https://melabit.wordpress.com/2019/01/30/script-per-tutti-i-giorni-ricapitoliamo/&#34;&gt;usare il Terminale sul Mac&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Prima di iniziare a lavorare è bene chiudere Firefox, in modo da evitare conflitti nel momento in cui ripristineremo la versione riparata del file &lt;code&gt;places.sqlite&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Lanciamo il Terminale (come sanno bene i lettori più affezionati di questo blog, il Terminale si trova nella cartella &lt;code&gt;Applicazioni &amp;amp;#8594; Utility&lt;/code&gt;), creiamo sul Desktop (o dove preferiamo) la cartella di lavoro &lt;code&gt;fixplaces&lt;/code&gt;&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;$ mkdir ~/Desktop/fixplaces&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;e copiamo in questa cartella il file &lt;code&gt;places.sqlite-corrupt&lt;/code&gt; dal nostro profilo Firefox, in modo da lavorare su una copia e non sul file originale&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;$ cp -p ~/Library/Application Support/Firefox/Profiles/abcd1234.default/places.sqlite-corrupt ~/Desktop/fixplaces&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;(naturalmente nel comando precedente bisogna sostituire a &lt;code&gt;abcd1234.default&lt;/code&gt; il vero nome della cartella contenente il nostro profilo Firefox). Spostiamoci ora nella cartella di lavoro&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;$ cd ~/Desktop/fixplaces&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;e iniziamo il processo di riparazione del database. In macOS è installato di default il programma &lt;code&gt;sqlite3&lt;/code&gt;, che permette di interagire dal Terminale con un database SQLite. Lanciamo &lt;code&gt;sqlite3&lt;/code&gt;, facendo seguire al nome del programma quello del database su cui deve operare&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;$ sqlite3 places.sqlite-corrupt&#xA;sqlite&amp;amp;#62;&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Il prompt del Terminale diventa &lt;code&gt;sqlite&amp;amp;#62;&lt;/code&gt;, ad indicarci che siamo entrati in una sessione di lavoro SQLite.&lt;/p&gt;&#xA;&lt;p&gt;La prima cosa da fare è controllare l&amp;rsquo;integrità del database contenente i segnalibri &lt;code&gt;places.sqlite-corrupt&lt;/code&gt;, in modo da essere sicuri che ci siano veramente dei problemi&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;sqlite&amp;amp;#62; PRAGMA integrity_check;&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Attenzione, non dimenticate mai di aggiungere il &lt;code&gt;;&lt;/code&gt; alla fine di ciascuna istruzione SQLite!&lt;/p&gt;&#xA;&lt;p&gt;Se il controllo dell&amp;rsquo;integrità del database non da errori possiamo uscire dalla sessione SQLite con&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;sqlite&amp;amp;#62; .exit&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;(un comando SQLite puntato non ha bisogno del &lt;code&gt;;&lt;/code&gt; finale) e chiederci cosa possa essere successo (chissà, magari abbiamo trovato un baco e in quel caso faremmo bene ad &lt;a href=&#34;https://bugzilla.mozilla.org/enter_bug.cgi?product=Toolkit&amp;amp;component=Places&#34;&gt;avvisare gli sviluppatori di Mozilla&lt;/a&gt;).&lt;/p&gt;&#xA;&lt;p&gt;Ma se Firefox considera corrotto il file &lt;code&gt;places.sqlite-corrupt&lt;/code&gt;, è molto difficile che il controllo di integrità dia un esito positivo, per cui nella stragrande maggioranza dei casi dovremo andare avanti eseguendo&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;sqlite&amp;amp;#62; .clone places.sqlite&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;che clona il database corrotto &lt;code&gt;places.sqlite-corrupt&lt;/code&gt; nel nuovo file &lt;code&gt;places.sqlite&lt;/code&gt; e mentre lo fa ripara automaticamente la struttura delle tabelle. Fatto questo eseguiamo un ultimo comando&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;sqlite&amp;amp;#62; PRAGMA user_version;&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;che ci restituisce un numero intero &lt;code&gt;NN&lt;/code&gt; (nel mio caso era 52) che dobbiamo segnarci da qualche parte perché ci servirà fra poco. Abbiamo finito di lavorare sul database &lt;code&gt;places.sqlite-corrupt&lt;/code&gt; e quindi usciamo dalla sessione SQLite con il comando&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;sqlite&amp;amp;#62; .exit&#xA;$&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;che ci fa tornare al solito prompt di &lt;code&gt;bash&lt;/code&gt;. A questo punto dobbiamo eseguire di nuovo il programma &lt;code&gt;sqlite3&lt;/code&gt;, lavorando questa volta sul database clonato &lt;code&gt;places.sqlite&lt;/code&gt;&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;$ sqlite3 places.sqlite&#xA;sqlite&amp;amp;#62;&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Ripetiamo il controllo di integrità (la prudenza non è mai troppa),&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;sqlite&amp;amp;#62; PRAGMA integrity_check;&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;che questa volta dovrebbe dare esito positivo.&lt;/p&gt;&#xA;&lt;p&gt;Siamo a buon punto, ma ci sono ancora dei dettagli da sistemare. Prima di tutto dobbiamo inserire nel database clonato il valore della variabile &lt;code&gt;user_version&lt;/code&gt;, cioè il numero intero &lt;code&gt;NN&lt;/code&gt; che ci siamo segnati poco fa&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;sqlite&amp;amp;#62; PRAGMA user_version = NN;&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;poi dobbiamo azzerare il file &lt;code&gt;wal&lt;/code&gt;&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;sqlite&amp;amp;#62; PRAGMA journal_mode = truncate;&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;aggiornare la &lt;a href=&#34;http://www.xenialab.it/meo/web/white/oracle/sqliteInt.htm&#34;&gt;dimensione delle &lt;em&gt;pagine&lt;/em&gt;&lt;/a&gt; in cui è suddiviso il file del database&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;sqlite&amp;amp;#62; PRAGMA page_size = 32768;&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;ripulire definitivamente la struttura del database&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;sqlite&amp;amp;#62; VACUUM;&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;e infine ripristinare l&amp;rsquo;uso del file &lt;code&gt;wal&lt;/code&gt;&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;sqlite&amp;amp;#62; PRAGMA journal_mode = wal; &#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Abbiamo finito, per cui possiamo eseguire&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;sqlite&amp;amp;#62; .exit&#xA;$&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;e tornare di nuovo a &lt;code&gt;bash&lt;/code&gt;. L&amp;rsquo;ultimissima cosa da fare è copiare il file riparato &lt;code&gt;places.sqlite&lt;/code&gt; dalla cartella di lavoro al nostro profilo Firefox (prima di farlo non dimenticate di controllare che Firefox sia chiuso)&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;$ cp -p places.sqlite ~/Library/Application Support/Firefox/Profiles/abcd1234.default/&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Finalmente possiamo eseguire di nuovo Firefox e, se non abbiamo fatto errori, ritroveremo di nuovo tutti i segnalibri. Quando siamo sicuri al 100% che tutto funzioni correttamente, possiamo cancellare il file &lt;code&gt;places.sqlite-corrupt&lt;/code&gt; dal profilo di Firefox, tanto non ci serve più (e comunque c&amp;rsquo;è sempre Time Machine).&lt;/p&gt;&#xA;&lt;h4 id=&#34;conclusioni&#34;&gt;Conclusioni&lt;/h4&gt;&#xA;&lt;p&gt;Mettere le mani in un database non è una cosa semplice e mette sempre un po&amp;rsquo; di ansia. Ma queste istruzioni sono davvero a prova di bomba (gli sviluppatori di Mozilla sanno il fatto loro), basta solo seguire le istruzioni con un po&amp;rsquo; di attenzione e di pazienza e tutto dovrebbe andare bene. In caso contrario, segnalatemi i problemi nei commenti e farò il possibile per rispondere.&lt;/p&gt;&#xA;&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;&#xA;&lt;hr&gt;&#xA;&lt;ol&gt;&#xA;&lt;li id=&#34;fn:1&#34;&gt;&#xA;&lt;p&gt;Per confronto, Safari salva i segnalibri in &lt;code&gt;Bookmarks.plist&lt;/code&gt;, un file XML che si trova in &lt;code&gt;~/Library/Safari/&lt;/code&gt;, mentre Chrome usa un file JSON, &lt;code&gt;Bookmarks&lt;/code&gt;, situato in &lt;code&gt;~/Library/Application Support/Google/Chrome/Default/&lt;/code&gt;.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:2&#34;&gt;&#xA;&lt;p&gt;Le prime versioni di Firefox &lt;a href=&#34;http://kb.mozillazine.org/Bookmarks.html&#34;&gt;salvavano i segnalibri&lt;/a&gt; in un semplice file HTML, &lt;code&gt;bookmarks.html&lt;/code&gt;. Il passaggio al database &lt;code&gt;places.sqlite&lt;/code&gt; si è dimostrato una scelta azzeccata, ma all&amp;rsquo;inizio era stato accolto con parecchio scetticismo.&amp;#160;&lt;a href=&#34;#fnref:2&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:3&#34;&gt;&#xA;&lt;p&gt;Il suffisso &lt;code&gt;wal&lt;/code&gt; sta per &lt;a href=&#34;https://en.wikipedia.org/wiki/Write-ahead_logging&#34;&gt;write-ahead logging&lt;/a&gt;, un tipo particolare di file di &lt;em&gt;journaling&lt;/em&gt;.&amp;#160;&lt;a href=&#34;#fnref:3&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:4&#34;&gt;&#xA;&lt;p&gt;Una volta finito di scrivere l&amp;rsquo;articolo ho scoperto che Places Maintenance è stato &lt;a href=&#34;https://support.mozilla.org/en-US/questions/1209254&#34;&gt;integrato in Firefox&lt;/a&gt; e che per utilizzarlo basta andare quasi in fondo alla pagina &lt;code&gt;about:support&lt;/code&gt; e premere il bottone &lt;code&gt;Verifica integrità&lt;/code&gt; che si trova sotto l&amp;rsquo;intestazione &lt;code&gt;Database Places&lt;/code&gt; (Figure 2 e 3). Avendo già risolto il problema tramite la procedura descritta nell&amp;rsquo;articolo, non ho però potuto verificarne l&amp;rsquo;efficacia.&lt;br&gt;&#xA;&lt;img src=&#34;https://melabit.files.wordpress.com/2019/08/about-support-2.png&#34; alt=&#34;&#34;&gt;&#xA;&lt;em&gt;Figura 2. Verifica dell&amp;rsquo;integrità del database dei segnalibri tramite lo strumento integrato in Firefox.&lt;/em&gt;&#xA;&lt;img src=&#34;https://melabit.files.wordpress.com/2019/08/about-support-3.png&#34; alt=&#34;&#34;&gt;&#xA;&lt;em&gt;Figura 3. Risultato prodotto dallo strumento di verifica dell&amp;rsquo;integrità del database dei segnalibri.&lt;/em&gt;&amp;#160;&lt;a href=&#34;#fnref:4&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;/div&gt;&#xA;</description>
    </item>
    <item>
      <title>Come usare Skype Web con Safari e Firefox</title>
      <link>https://melabit.com/it/2019/03/12/come-usare-skype-web-con-safari-e-firefox/</link>
      <pubDate>Tue, 12 Mar 2019 06:00:00 +0000</pubDate>
      <guid>https://melabit.com/it/2019/03/12/come-usare-skype-web-con-safari-e-firefox/</guid>
      <description>&lt;p&gt;Uso pochissimo &lt;a href=&#34;https://www.skype.com&#34;&gt;Skype&lt;/a&gt;, per comunicare o condividere file con amici o colleghi preferisco di gran lunga usare &lt;a href=&#34;https://slack.com/&#34;&gt;Slack&lt;/a&gt;. Per cui, quando ho letto che la nuova versione di Skype utilizzabile via browser rilasciata la settima scorsa supportava solo Edge e Google Chrome &amp;ndash; rispettivamente il nuovo browser Microsoft che l&amp;rsquo;azienda di Seattle cerca disperatamente di far usare a qualcuno e il browser dominante con il quale non si può non fare i conti &amp;ndash; ho scrollato le spalle e sono passato ad altro.&lt;/p&gt;&#xA;&lt;p&gt;Ma dopo aver perso tutta la mattina per far funzionare di nuovo la mia installazione di Office per Mac dopo un banale crash di Excel, ho il dente avvelenato con Microsoft. E quando mi è capitata di nuovo sotto sgli occhi la notizia dell&amp;rsquo;incompatibilità di &lt;a href=&#34;https://web.skype.com&#34;&gt;Skype Web&lt;/a&gt; anche con browser molto diffusi come Firefox o Safari, ho voluto provare di persona. E in effetti, se si prova ad aprire Skype Web con uno di questi browser, si ottiene l&amp;rsquo;ormai ben nota schermata di &amp;ldquo;Browser not supported&amp;rdquo;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://melabit.files.wordpress.com/2019/03/safari-not-supported.png&#34; alt=&#34;&#34;&gt;&#xA;&lt;em&gt;Fig. 1. Accesso a Skype Web &amp;ldquo;visto&amp;rdquo; da Safari.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://melabit.files.wordpress.com/2019/03/firefox-not-supported.png&#34; alt=&#34;&#34;&gt;&#xA;&lt;em&gt;Fig. 2. Skype Web &amp;ldquo;visto&amp;rdquo; da Firefox.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;Sembra si essere tornati ai tempi dei siti &amp;ldquo;Ottimizzati per Internet Explorer&amp;rdquo;, che più che &lt;em&gt;ottimizzati&lt;/em&gt; erano solo codificati in modo sciatto.&lt;/p&gt;&#xA;&lt;p&gt;E proprio come succedeva ai tempi del famigerato Internet Explorer, con un &lt;em&gt;trucco&lt;/em&gt; semplicissimo è possibile rendere Safari o Firefox (ma di sicuro anche Opera o qualunque altro browser moderno) pienamente compatibili con la versione web di Skype.&lt;/p&gt;&#xA;&lt;p&gt;Il trucco è banale, basta accedere a &lt;a href=&#34;https://web.skype.com/&#34;&gt;Skype Web&lt;/a&gt; &lt;em&gt;fingendo&lt;/em&gt; di usare Edge o Chrome. La chiave di tutto sta nello &lt;a href=&#34;https://it.wikipedia.org/wiki/User_agent&#34;&gt;User Agent&lt;/a&gt;, una stringa di testo che il browser invia al server ogni volta che accede ad una pagina web, che contiene fra l&amp;rsquo;altro il nome e la versione del browser e del sistema operativo in uso.&lt;/p&gt;&#xA;&lt;p&gt;Lo User Agent della mia versione di Safari per macOS è&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_3) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.0.3 Safari/605.1.15&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;mentre quello di Firefox è&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:65.0) Gecko/20100101 Firefox/65.0&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Lo User Agent inviato dal browser non è scolpito nel marmo, anzi si può modificare piuttosto facilmente, ed è proprio quello che faremo per accedere a &lt;a href=&#34;https://web.skype.com/&#34;&gt;Skype Web&lt;/a&gt; da un browser non supportato.&lt;/p&gt;&#xA;&lt;h4 id=&#34;safari&#34;&gt;Safari&lt;/h4&gt;&#xA;&lt;p&gt;Per modificare lo User Agent in Safari bisogna prima di tutto selezionare le &lt;code&gt;Preferenze&lt;/code&gt; del browser, cliccare sul pannello &lt;code&gt;Avanzate&lt;/code&gt; e attivare l&amp;rsquo;opzione &lt;code&gt;Mostra il menu Sviluppo nella barra dei menu&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://melabit.files.wordpress.com/2019/03/safari-preferences.png&#34; alt=&#34;&#34;&gt;&#xA;&lt;em&gt;Fig. 3. Preferenze avanzate di Safari.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;Una volta tornati alla finestra principale del browser, si clicca sulla nuova voce di menu &lt;code&gt;Sviluppo&lt;/code&gt;, poi su &lt;code&gt;User Agent&lt;/code&gt; per selezionare infine nella lista che compare &lt;code&gt;Google Chrome&lt;/code&gt; o &lt;code&gt;Microsoft Edge&lt;/code&gt;. Se ora si prova ad accedere a &lt;a href=&#34;https://web.skype.com/&#34;&gt;Skype Web&lt;/a&gt;, al posto dell&amp;rsquo;avviso &amp;ldquo;Browser not supported&amp;rdquo; compare la solita finestra di login della Microsoft, basta inserire i propri dati ed è fatta.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://melabit.files.wordpress.com/2019/03/safari-signin.png&#34; alt=&#34;&#34;&gt;&#xA;&lt;img src=&#34;https://melabit.files.wordpress.com/2019/03/safari-supported.png&#34; alt=&#34;&#34;&gt;&#xA;&lt;em&gt;Fig. 4. Ora Skype Web è accessibile da Safari.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;firefox&#34;&gt;Firefox&lt;/h4&gt;&#xA;&lt;p&gt;Per modificare lo User Agent in Firefox non è possibile utilizzare le funzioni native del browser e quindi il processo è leggermente più complicato. Ma Firefox ha add-on per (quasi) tutto, e fra questi gli add-on che modificano lo User Agent non mancano di certo.&lt;/p&gt;&#xA;&lt;p&gt;Io uso &lt;a href=&#34;https://addons.mozilla.org/en-US/firefox/addon/user-agent-string-switcher/&#34;&gt;User-Agent Switcher&lt;/a&gt; che funziona senza problemi ed è molto configurabile (fin troppo!), ma qualunque add-on analogo va altrettanto bene. Una volta installato User-Agent Switcher, sulla barra principale di Firefox compare l&amp;rsquo;icona di un omino con il cappello, basta cliccarci sopra per far comparire una lunghissima(!) lista di User Agent fra cui scegliere.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://melabit.files.wordpress.com/2019/03/firefox-user-agent.png&#34; alt=&#34;&#34;&gt;&#xA;&lt;em&gt;Fig. 5. La lista, fin troppo dettagliata, di User Agent supportati da User-Agent Switcher.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;A questo punto basta selezionare lo User Agent di una delle ultime versioni di Edge o di Chrome e cliccare su &lt;code&gt;Apply&lt;/code&gt;. Se ora si prova ad accedere a &lt;a href=&#34;https://web.skype.com/&#34;&gt;Skype Web&lt;/a&gt;, ci si troverà davanti la finestra di login della Microsoft e, come già visto per Safari, una volta inseriti i propri dati si potrà usare Skype Web anche con Firefox.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://melabit.files.wordpress.com/2019/03/firefox-supported.png&#34; alt=&#34;&#34;&gt;&#xA;&lt;em&gt;Fig. 6. Ora Skype Web è accessibile anche da Firefox.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;conclusioni&#34;&gt;Conclusioni&lt;/h4&gt;&#xA;&lt;p&gt;Rendere una applicazione web compatibile solo con alcuni browser è una mossa incomprensibile, anche perché taglia fuori una fetta più o meno larga di utenti del web.&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;p&gt;Ma una volta risolto il problema della compatibilità di Skype Web con i browser non supportati ufficialmente da Microsoft, rimane il problema di fondo: ha senso continuare ad usare un programma come Skype che, se agli inizi era un prodotto innovativo, una volta passato nelle grinfie di Microsoft è peggiorato visibilmente, diventando ad ogni nuova iterazione sempre più grosso, pesante e poco pratico? Le alternative ci sono, perché non provare a cambiare?&lt;/p&gt;&#xA;&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;&#xA;&lt;hr&gt;&#xA;&lt;ol&gt;&#xA;&lt;li id=&#34;fn:1&#34;&gt;&#xA;&lt;p&gt;Ancora meno comprensibile è che si possa aggirare il blocco così facilmente, non posso credere che gli sviluppatori Microsoft non conoscano questi trucchi banali.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;/div&gt;&#xA;</description>
    </item>
    <item>
      <title>Apple o non Apple, questo è un problema</title>
      <link>https://melabit.com/it/2017/04/25/apple-o-non-apple-questo-e-un-problema/</link>
      <pubDate>Tue, 25 Apr 2017 06:00:00 +0000</pubDate>
      <guid>https://melabit.com/it/2017/04/25/apple-o-non-apple-questo-e-un-problema/</guid>
      <description>&lt;p&gt;L&amp;rsquo;abbiamo letto e sentito (e magari anche detto) mille volte: per evitare che ci vengano carpite in modo fraudolento informazioni personali riservate &amp;ndash; login e password di servizi importanti, dati della carta di credito, informazioni bancarie &amp;ndash; è fondamentale controllare sempre che l&amp;rsquo;indirizzo (URL) del sito riportato nella barra degli indirizzi del browser sia quello legittimo.&lt;/p&gt;&#xA;&lt;p&gt;Infatti, anche se per un qualunque malintenzionato è piuttosto facile creare un sito fittizio identico a quello legittimo, quello che non può riprodurre è proprio l&amp;rsquo;URL del sito, che è attribuito in modo univoco ed è gestito da un singolo database distribuito in tutto il mondo.&lt;/p&gt;&#xA;&lt;p&gt;Un malintenzionato potrà quindi anche ricreare in modo perfetto l&amp;rsquo;aspetto del sito di PayPal, &lt;a href=&#34;http://paypal.com&#34;&gt;http://paypal.com&lt;/a&gt;, ma dovrà per forza di cose usare un URL leggermente diverso, magari &lt;code&gt;http://pay.pal.com&lt;/code&gt;, &lt;code&gt;http://mypaypal.com&lt;/code&gt;, o simili, sperando che il malcapitato che ci finisce non se ne accorga. Basta quindi un po&amp;rsquo; di attenzione per evitare problemi.&lt;/p&gt;&#xA;&lt;p&gt;Almeno finora.&lt;/p&gt;&#xA;&lt;p&gt;Provate ad inserire nella barra degli indirizzi del vostro browser questo URL apparentemente inoffensivo, &lt;a href=&#34;https://www.xn--80ak6aa92e.com&#34;&gt;https://www.xn&amp;ndash;80ak6aa92e.com&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Se usare Firefox, Opera o Chrome (fino alla versione 57.x), quando premete Invio siete portati ad un sito web il cui URL sembra essersi trasformato quasi magicamente in quello di Apple.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://melabit.files.wordpress.com/2017/04/firefox_url.png&#34; alt=&#34;&#34;&gt;&#xA;&lt;img src=&#34;https://melabit.files.wordpress.com/2017/04/firefox_url_bug.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;A questo punto, basterebbe riprodurre l&amp;rsquo;aspetto del sito di Apple per rendere il sito &lt;em&gt;finto&lt;/em&gt; praticamente indistinguibile da quello legittimo, con gravissimi pericoli per la sicurezza dei malcapitati che dovessero finirvi.&lt;/p&gt;&#xA;&lt;p&gt;Per fortuna, Safari non è soggetto a questo problema e mostra sempre nella barra degli indirizzi l&amp;rsquo;URL originale. Anche i browser Microsoft, Edge e il venerabile Internet Explorer, sono immuni, a meno di non usare il Russo come lingua di sistema.&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.files.wordpress.com/2017/04/safari_url_nobug.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;Il &lt;em&gt;bug&lt;/em&gt; è legato all&amp;rsquo;uso dei caratteri unicode per gli indirizzi web, o meglio alla rappresentazione dei caratteri unicode tramite i soli caratteri ASCII (detta rappresentazione &lt;a href=&#34;https://en.wikipedia.org/wiki/Punycode&#34;&gt;punycode&lt;/a&gt;).&lt;/p&gt;&#xA;&lt;p&gt;L&amp;rsquo;URL &lt;a href=&#34;https://www.xn--80ak6aa92e.com&#34;&gt;https://www.xn&amp;ndash;80ak6aa92e.com/&lt;/a&gt; rappresenta delle lettere dell&amp;rsquo;alfabeto cirillico che sembrano identiche (o quasi) a quelle dell&amp;rsquo;alfabeto latino, ma che rimandano ad indirizzi web completamente diversi da quelli originali.&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt; La stessa cosa si può fare anche con altri alfabeti che hanno lettere simili alle nostre, fra cui il greco e l&amp;rsquo;armeno (anche se mi sembra per quest&amp;rsquo;ultimo le letetre simili siano veramente poche).&lt;/p&gt;&#xA;&lt;p&gt;I dettagli tecnici del bug si possono &lt;a href=&#34;https://www.xudongz.com/blog/2017/idn-phishing/&#34;&gt;leggere qui&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Quello che mi preme di più è spiegare come proteggersi. Perché è chiaro che inizieranno prestissimo degli attacchi basati su questa debolezza della codifica unicode, attacchi molto più pericolosi e difficili da smascherare di quelli che abbiamo dovuto subire finora.&lt;/p&gt;&#xA;&lt;p&gt;Come già detto, Safari, Edge ed Internet Explorer non sono a rischio. Per chi usa Chrome, basta aggiornare alla versione 58.x appena rilasciata. Per Opera non è chiaro cosa succederà, ma comunque Opera ha una quota di utenti relativamente ridotta rispetto agli altri due browser a rischio.&lt;/p&gt;&#xA;&lt;p&gt;Il vero problema è Firefox. Perché gli sviluppatori di Firefox hanno annunciato che cambiare il comportamento di default del browser creerebbe problemi agli &amp;ldquo;utenti le cui lingue non usano l&amp;rsquo;alfabeto latino&amp;rdquo; e che invece &amp;ldquo;loro vogliono che tutte le lingue e gli alfabeti siano trattati allo stesso modo su internet&amp;rdquo;.&lt;/p&gt;&#xA;&lt;p&gt;Un intento nobile, ma anche pericoloso. Per fortuna c&amp;rsquo;è la possibilità di cambiare il comportamento di default di Firefox, accedendo alle pzioni avanzate di configurazione del browser.&lt;/p&gt;&#xA;&lt;p&gt;Per farlo, basta scrivere &lt;code&gt;about:config&lt;/code&gt; nella barra degli indirizzi del browser e premere Invio. Comparirà una scritta bella grande che ci informa che l&amp;rsquo;operazione può invalidare la garanzia, compromettendo la stabilità, la sicurezza e le prestazioni del browser. Decisamente eccessivo. Non preoccupatevi e cliccate senza paura sul tasto che vi fa accettare il &lt;em&gt;rischio&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Inserite ora la stringa &lt;code&gt;punycode&lt;/code&gt; nella barra di ricerca in alto. Comparirà un unico parametro di configurazione, &lt;code&gt;network.IDN_show_punycode&lt;/code&gt;, il cui valore di default è &lt;code&gt;false&lt;/code&gt;. Fate doppio click su &lt;code&gt;false&lt;/code&gt;, trasformandolo in &lt;code&gt;true&lt;/code&gt;, e chiudete la pagina di configurazione. Da ora in poi anche Firefox si comporterà come Safari e sarete al sicuro da possibili attacchi di questo tipo.&lt;/p&gt;&#xA;&lt;p&gt;Per ulteriori approfondimenti, consiglio di leggere prima di tutto l&amp;rsquo;articolo originale che descrive il problema, &lt;em&gt;&lt;a href=&#34;https://www.xudongz.com/blog/2017/idn-phishing/&#34;&gt;Phishing with Unicode Domains&lt;/a&gt;&lt;/em&gt; di Xudong Zheng. Molto interessante e dettagliato anche &lt;em&gt;&lt;a href=&#34;http://thehackernews.com/2017/04/unicode-Punycode-phishing-attack.html&#34;&gt;This Phishing Attack is Almost Impossible to Detect On Chrome, Firefox and Opera&lt;/a&gt;&lt;/em&gt; di Mohit Kumar, mentre &lt;em&gt;&lt;a href=&#34;https://securingtomorrow.mcafee.com/business/neutralize-threats/chrome-and-firefox-adding-protection-against-this-nasty-phishing-trick/&#34;&gt;Chrome And Firefox Adding Protection Against This Nasty Phishing Trick&lt;/a&gt;&lt;/em&gt; e &lt;em&gt;&lt;a href=&#34;https://www.wordfence.com/blog/2017/04/chrome-firefox-unicode-phishing/&#34;&gt;Chrome and Firefox Phishing Attack Uses Domains Identical to Known Safe Sites&lt;/a&gt;&lt;/em&gt;, riportano altri due esempi di URL a rischio.&lt;/p&gt;&#xA;&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;&#xA;&lt;hr&gt;&#xA;&lt;ol&gt;&#xA;&lt;li id=&#34;fn:1&#34;&gt;&#xA;&lt;p&gt;Se si guarda attentamente, la &lt;em&gt;ӏ&lt;/em&gt; di &lt;em&gt;apple&lt;/em&gt; visibile nella barra degli indirizzi non è proprio una &lt;em&gt;l&lt;/em&gt; ma una lettera dell&amp;rsquo;alfabeto cirillico).&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;/div&gt;&#xA;</description>
    </item>
  </channel>
</rss>
