{"id":33377,"date":"2019-10-31T21:52:15","date_gmt":"2019-10-31T18:52:15","guid":{"rendered":"https:\/\/prohoster.info\/blog\/tehnicheskie-podrobnosti-nedavnego-otklyucheniya-dopolnenij-v-firefox\/"},"modified":"2019-10-31T21:52:15","modified_gmt":"2019-10-31T18:52:15","slug":"tehnicheskie-podrobnosti-nedavnego-otklyucheniya-dopolnenij-v-firefox","status":"publish","type":"post","link":"https:\/\/prohoster.info\/it\/blog\/news\/tehnicheskie-podrobnosti-nedavnego-otklyucheniya-dopolnenij-v-firefox","title":{"rendered":"Dettagli tecnici sul recente spegnimento delle estensioni in Firefox","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><i>Nota del traduttore: per comodit\u00e0 dei lettori, le date sono indicate in ora di Mosca<\/i><\/p>\n<p>Recentemente abbiamo perso il momento della scadenza di uno dei certificati utilizzati per firmare le estensioni. Questo ha portato a disattivare le estensioni per gli utenti. Ora che la maggior parte del problema \u00e8 stata risolta, vorrei raccontare i dettagli di quanto accaduto e del lavoro svolto.\n<\/p>\n<p><b>Contesto: estensioni e firme<\/b><\/p>\n<p><noindex>Sebbene molti utilizzino il browser &#171;out of the box&#187;, Firefox supporta estensioni chiamate &#171;componenti aggiuntivi&#187;. Grazie a questi, gli utenti possono aggiungere diverse funzionalit\u00e0 al browser. Ci sono oltre 15.000 componenti aggiuntivi: da <a rel=\"nofollow\" href=\"https:\/\/addons.mozilla.org\/en-US\/firefox\/addon\/ublock-origin\/\">blocco degli annunci<\/a> fino a <a rel=\"nofollow\" href=\"https:\/\/addons.mozilla.org\/en-US\/firefox\/addon\/tree-style-tab\/\">gestione di centinaia di schede<\/a>.<\/noindex><\/p>\n<p>Le estensioni installate devono avere <a rel=\"nofollow\" href=\"https:\/\/blog.mozilla.org\/addons\/2015\/02\/10\/extension-signing-safer-experience\/\">una firma digitale<\/a>, che protegge gli utenti dalle estensioni dannose e richiede controlli minimi delle estensioni da parte del personale di Mozilla. Abbiamo introdotto questo requisito nel 2015, poich\u00e9 abbiamo riscontrato <a rel=\"nofollow\" href=\"https:\/\/blog.mozilla.org\/addons\/2015\/04\/15\/the-case-for-extension-signing\/\">seri problemi<\/a> con estensioni dannose.<\/p>\n<p>Come funziona: ogni copia di Firefox contiene un &#171;certificato radice&#187;. La chiave di questo &#171;nodo&#187; \u00e8 conservata in <a rel=\"nofollow\" href=\"https:\/\/en.wikipedia.org\/wiki\/Hardware_security_module\">un modulo di sicurezza hardware (HSM)<\/a>, senza accesso alla rete. Ogni pochi anni, questa chiave firma un nuovo &#171;certificato intermedio&#187;, utilizzato per firmare i componenti aggiuntivi. Quando uno sviluppatore invia un componente aggiuntivo, creiamo un &#171;certificato finale temporaneo&#187; e lo firmiamo usando il certificato intermedio. Dopodich\u00e9, il certificato finale firma il componente aggiuntivo stesso. In sintesi <a rel=\"nofollow\" href=\"https:\/\/hacks.mozilla.org\/files\/2019\/05\/Add-on-blog-post-visual-May-7-2019-768x859.png\">sembra cos\u00ec<\/a>.<\/p>\n<p>Nota: ogni certificato ha un &#171;soggetto&#187; (a chi \u00e8 stato rilasciato il certificato) e un &#171;emittente&#187; (chi ha rilasciato il certificato). Nel caso del certificato radice, &#171;soggetto&#187; = &#171;emittente&#187;, ma per gli altri certificati, l'emittente \u00e8 il soggetto del certificato superiore che lo ha firmato.<\/p>\n<p>Punto importante: ogni estensione \u00e8 firmata con un certificato finale unico, ma quasi sempre questi certificati finali sono firmati dallo stesso certificato intermedio.<\/p>\n<p><i>Nota dell'autore: eccezione \u2014 estensioni molto vecchie. All'epoca venivano utilizzati vari certificati intermedi.<\/i><\/p>\n<p>Questo certificato intermedio ha causato problemi: ogni certificato \u00e8 valido per un determinato periodo. Prima o dopo questo periodo, il certificato \u00e8 non valido, e il browser non utilizzer\u00e0 estensioni firmate con quel certificato. Purtroppo, il certificato intermedio \u00e8 scaduto il 4 maggio alle 4 del mattino.<\/p>\n<p>Le conseguenze non si sono manifestate subito. Firefox controlla le firme delle estensioni installate non continuamente, ma circa ogni 24 ore, con il tempo di verifica che \u00e8 individuale per ogni utente. Di conseguenza, alcune persone hanno avuto problemi immediatamente, mentre altre molto dopo. Abbiamo appreso del problema per la prima volta circa nel momento in cui il certificato \u00e8 scaduto e abbiamo subito iniziato a cercare una soluzione.<\/p>\n<p>\n<b>Riduciamo i danni<\/b><\/p>\n<p>Appena abbiamo capito cosa fosse successo, abbiamo cercato di non permettere un ulteriormente aggravi della situazione.<\/p>\n<p>In primo luogo, abbiamo smesso di accettare e firmare nuove estensioni. Non ha senso usare un certificato scaduto per questo. Guardando indietro, direi che avremmo potuto lasciare tutto com'era. Ora l'accettazione delle estensioni \u00e8 stata ripristinata.<\/p>\n<p>In secondo luogo, abbiamo immediatamente inviato una correzione, che ha impedito il controllo quotidiano delle firme. Cos\u00ec abbiamo salvato quegli utenti il cui browser non aveva ancora controllato le estensioni nelle ultime 24 ore. Ora questa correzione \u00e8 stata revocata, non c'\u00e8 pi\u00f9 bisogno di essa.<\/p>\n<p>\n<b>Funzionamento parallelo<\/b><\/p>\n<p>Teoricamente, risolvere il problema sembra semplice: creiamo un nuovo certificato intermedio valido e ri-firma ogni estensione. Purtroppo, questo non funzioner\u00e0:\n<\/p>\n<ul>\n<li>non possiamo ri-firmare rapidamente 15.000 estensioni tutte in una volta, il sistema non \u00e8 progettato per un carico simile\n<\/li>\n<li>dopo aver firmato le estensioni, le versioni aggiornate devono essere consegnate agli utenti. La maggior parte delle estensioni viene installata dai server di Mozilla, quindi nelle prossime 24 ore Firefox trover\u00e0 aggiornamenti, ma alcuni sviluppatori distribuiscono estensioni firmate tramite canali di terze parti, quindi gli utenti dovrebbero aggiornare manualmente tali estensioni.<\/li>\n<\/ul>\n<p>Invece, abbiamo cercato di sviluppare una correzione che raggiungesse tutti gli utenti, senza richiedere (o quasi richiedere) azioni da parte loro.<\/p>\n<p>Abbiamo rapidamente identificato due strategie principali, che abbiamo utilizzato in parallelo:\n<\/p>\n<ul>\n<li>Aggiorna Firefox per modificare il periodo di validit\u00e0 del certificato. Questo far\u00e0 s\u00ec che le estensioni esistenti riprendano magicamente a funzionare, ma richieder\u00e0 l'emissione e la consegna di una nuova versione di Firefox.\n<\/li>\n<li>Crea un certificato valido e in qualche modo persuadi Firefox ad accettarlo al posto di quello esistente, il cui periodo di validit\u00e0 \u00e8 scaduto.<\/li>\n<\/ul>\n<p>Abbiamo deciso di utilizzare inizialmente la prima opzione, che sembrava decisamente funzionante. Alla fine della giornata, abbiamo rilasciato anche la seconda correzione (un nuovo certificato), di cui parleremo in seguito.<\/p>\n<p>\n<b>Sostituzione del certificato<\/b><\/p>\n<p>Come ho accennato sopra, era necessario:\n<\/p>\n<ul>\n<li>creare un nuovo certificato valido\n<\/li>\n<li>installarlo da remoto in Firefox\n<\/li>\n<\/ul>\n<p>Per capire perch\u00e9 questo funzioner\u00e0, esaminiamo pi\u00f9 dettagliatamente il processo di verifica dell'estensione. L'estensione stessa \u00e8 fornita come un insieme di file, inclusa la catena di certificati utilizzati per la firma. Di conseguenza, l'estensione pu\u00f2 essere verificata se il browser conosce il certificato radice, che viene integrato in Firefox durante la compilazione. Tuttavia, come sappiamo, il certificato intermedio \u00e8 scaduto, quindi l'estensione non pu\u00f2 essere verificata.<\/p>\n<p>Quando Firefox tenta di verificare un'estensione, non si limita a utilizzare i certificati contenuti all'interno dell'estensione stessa. Invece, il browser cerca di creare una catena di certificati valida, partendo dal certificato finale e continuando fino a raggiungere il radice. Al primo livello iniziamo con il certificato finale e poi troviamo il certificato il cui soggetto \u00e8 l'emittente del certificato finale (cio\u00e8, il certificato intermedio). Di solito, questo certificato intermedio \u00e8 fornito insieme all'estensione, ma in questo ruolo pu\u00f2 anche fungere da qualsiasi certificato nel deposito del browser. Se riusciamo a installare da remoto un nuovo certificato valido nel deposito dei certificati, Firefox cercher\u00e0 di utilizzarlo. <a rel=\"nofollow\" href=\"https:\/\/hacks.mozilla.org\/files\/2019\/05\/Add-on-blog-post-visual-2-May-7-2019.png\">Situazione prima e dopo l'installazione del nuovo certificato<\/a>.<\/p>\n<p>Dopo aver installato il nuovo certificato, Firefox avr\u00e0 due opzioni quando verifica la catena dei certificati: utilizzare il vecchio certificato non valido (che non funzioner\u00e0) o il nuovo certificato valido (che funzioner\u00e0). \u00c8 importante notare che il nuovo certificato contiene lo stesso nome soggetto e chiave pubblica del vecchio certificato, quindi la sua firma sul certificato finale sar\u00e0 valida. Firefox \u00e8 abbastanza intelligente da provare entrambe le opzioni fino a trovare quella funzionante, quindi le estensioni diventeranno nuovamente verificate. Si noti, questa \u00e8 la stessa logica che utilizziamo per verificare i certificati TLS.<\/p>\n<p><i>Nota dell'autore: i lettori familiari con WebPKI noteranno che i certificati incrociati funzionano esattamente allo stesso modo.<\/i><\/p>\n<p>La cosa pi\u00f9 straordinaria di questa correzione \u00e8 che non richiede di risignare le estensioni esistenti. Una volta che il browser riceve il nuovo certificato, tutte le estensioni riprenderanno a funzionare. Rimane la complessit\u00e0 di consegnare il nuovo certificato agli utenti (automaticamente e da remoto) e far s\u00ec che Firefox ricontrolli le estensioni disattivate.<\/p>\n<p>\n<b>Normandy e il sistema di ricerche<\/b><\/p>\n<p>Ironia della sorte, questo problema viene risolto da un apposito componente aggiuntivo chiamato &#171;sistemico&#187;. Per condurre ricerche, abbiamo sviluppato un sistema chiamato Normandy, che fornisce ricerche agli utenti. Queste ricerche vengono eseguite automaticamente nel browser e hanno accesso ampliato alle API interne di Firefox. Le ricerche possono aggiungere nuovi certificati nel deposito dei certificati.<\/p>\n<p><i>Nota dell'autore: non stiamo aggiungendo certificati con privilegi speciali; sono firmati da un certificato radice, quindi Firefox si fida di essi. Li aggiungiamo semplicemente al pool di certificati che possono essere utilizzati dal browser.<\/i><\/p>\n<p>Pertanto, la soluzione consiste nel creare una ricerca:\n<\/p>\n<ul>\n<li>che installa il nuovo certificato creato da noi per gli utenti\n<\/li>\n<li>che costringe il browser a ricontrollare le estensioni disattivate affinch\u00e9 riprendano a funzionare\n<\/li>\n<\/ul>\n<p>&#171;Ma aspetta&#187;, &#8212; direte, &#171;i componenti aggiuntivi non funzionano, come avviare un componente aggiuntivo sistemico?&#187;. Lo firmeremo con un nuovo certificato!<\/p>\n<p>\n<b>Mettiamo tutto insieme\u2026 perch\u00e9 ci \u00e8 voluto cos\u00ec tanto?<\/b><\/p>\n<p>Quindi, il piano: rilasciare un nuovo certificato per sostituire il vecchio, creare un'estensione di sistema e installarla per gli utenti tramite Normandy. I problemi, come ho detto, sono iniziati il 4 maggio alle 4:00 e gi\u00e0 alle 12:44 dello stesso giorno, meno di 9 ore dopo, abbiamo inviato la correzione a Normandy. Ci sono volute altre 6-12 ore perch\u00e9 raggiungesse tutti gli utenti. Gi\u00e0 non \u00e8 male, ma gli utenti su Twitter chiedono perch\u00e9 non abbiamo potuto agire pi\u00f9 rapidamente.<\/p>\n<p>In primo luogo, ci \u00e8 voluto tempo per emettere un nuovo certificato intermedio. Come ho gi\u00e0 detto, la chiave del certificato radice \u00e8 conservata in modo autonomo in un modulo di sicurezza hardware. Questo \u00e8 vantaggioso dal punto di vista della sicurezza, poich\u00e9 il certificato radice viene utilizzato molto raramente e deve essere protetto in modo affidabile, ma \u00e8 un po' scomodo quando si deve firmare urgentemente un nuovo certificato. Uno dei nostri ingegneri ha dovuto recarsi nel deposito HSM. Ci sono state poi tentativi infruttuosi di emettere il certificato corretto, e ogni tentativo ha comportato un costo di una o due ore spese nei test.<\/p>\n<p>In secondo luogo, ci \u00e8 voluto del tempo per sviluppare il componente di sistema. Concettualmente \u00e8 molto semplice, ma anche i programmi semplici richiedono attenzione. Volevamo assicurarci di non peggiorare ulteriormente la situazione. La ricerca deve essere testata prima di essere inviata agli utenti. Inoltre, il componente deve essere firmato, ma il nostro sistema di firma dei componenti era disattivato, quindi abbiamo dovuto cercare una soluzione alternativa.<\/p>\n<p>Infine, dopo aver preparato la ricerca per l'invio, ci \u00e8 voluto tempo per il dispiegamento. Il browser controlla gli aggiornamenti di Normandy ogni 6 ore. Non tutti i computer sono sempre accesi e connessi a Internet, quindi ci vuole tempo affinch\u00e9 la correzione si diffonda tra gli utenti.<\/p>\n<p>\n<b>Passaggi finali<\/b><\/p>\n<p>La ricerca dovrebbe risolvere il problema per la maggior parte degli utenti, ma non \u00e8 disponibile per tutti. Alcuni utenti richiedono un approccio speciale:\n<\/p>\n<ul>\n<li>utenti che hanno disattivato la raccolta di dati o la telemetria\n<\/li>\n<li>utenti della versione Android (Fennec), dove la funzione non \u00e8 supportata affatto\n<\/li>\n<li>utenti di build customizzate di Firefox ESR in azienda, dove non \u00e8 possibile attivare la telemetria\n<\/li>\n<li>utenti che si trovano dietro proxy MitM, poich\u00e9 il nostro sistema di installazione dei componenti utilizza il key pinning, che non funziona con tali proxy\n<\/li>\n<li>utenti di versioni obsolete di Firefox che non supportano la raccolta di dati\n<\/li>\n<\/ul>\n<p>Non possiamo fare nulla per l'ultima categoria di utenti \u2014 dovrebbero comunque aggiornarsi all'ultima versione di Firefox, poich\u00e9 le versioni obsolete presentano gravi vulnerabilit\u00e0 non risolte. Sappiamo che alcune persone rimangono su versioni vecchie di Firefox perch\u00e9 desiderano eseguire componenti aggiuntivi obsoleti, ma molti di questi componenti sono gi\u00e0 stati portati su nuove versioni del browser. Per gli altri utenti abbiamo sviluppato una patch che installer\u00e0 il nuovo certificato. \u00c8 stata rilasciata come un aggiornamento di correzione di bug (<i>nota del traduttore: Firefox 66.0.5<\/i>), quindi le persone lo riceveranno \u2014 molto probabilmente lo hanno gi\u00e0 ricevuto \u2014 attraverso il consueto canale di aggiornamento. Se stai utilizzando una build customizzata di Firefox ESR, contatta il tuo maintainer.<\/p>\n<p>Comprendiamo che tutto ci\u00f2 non \u00e8 perfetto. In alcuni casi, gli utenti hanno perso i dati dei componenti aggiuntivi (ad esempio, i dati del componente aggiuntivo <a rel=\"nofollow\" href=\"https:\/\/bugzilla.mozilla.org\/show_bug.cgi?id=1549204\">Multi-Account Containers<\/a>).<\/p>\n<p>Non siamo riusciti ad evitare questo effetto collaterale, ma crediamo che a breve termine abbiamo scelto la soluzione migliore per la maggior parte degli utenti. A lungo termine cercheremo approcci architettonici pi\u00f9 avanzati.<\/p>\n<p>\n<b>Lezioni apprese<\/b><\/p>\n<p>In primo luogo, il nostro team ha fatto un lavoro straordinario nel creare e inviare una correzione in meno di 12 ore dopo la scoperta del problema. Come persona che era presente alle riunioni, posso affermare che in questa situazione complessa le persone hanno lavorato molto duramente e il tempo speso inutilmente \u00e8 stato davvero minimo.<\/p>\n<p>\u00c8 evidente che tutto ci\u00f2 non sarebbe dovuto accadere. \u00c8 decisamente il caso di rivedere i nostri processi per ridurre la possibilit\u00e0 di incidenti simili e semplificare la risoluzione delle conseguenze.<\/p>\n<p>La prossima settimana pubblicheremo un post-mortem ufficiale e un elenco delle modifiche che intendiamo apportare. Nel frattempo, voglio condividere i miei pensieri. In primo luogo, dovrebbe esserci un modo migliore per monitorare lo stato di ci\u00f2 che \u00e8 una potenziale bomba a orologeria. Dobbiamo assicurarci di non trovarci in una situazione in cui una di esse esplode improvvisamente. Stiamo ancora lavorando sui dettagli, ma almeno bisogna tenere traccia di tutte queste questioni.<\/p>\n<p>In secondo luogo, \u00e8 necessario un meccanismo per la rapida consegna degli aggiornamenti agli utenti, anche quando \u2014 specialmente quando \u2014 tutto il resto non funziona. \u00c8 stato fantastico poter utilizzare il sistema &#171;ricerche&#187;, ma \u00e8 uno strumento imperfetto e presenta alcuni effetti collaterali indesiderati. In particolare, sappiamo che molti utenti hanno attivato gli aggiornamenti automatici, ma preferirebbero non partecipare alle ricerche (devo ammettere, anche io li ho disattivati!). Allo stesso tempo, abbiamo bisogno di un modo per inviare aggiornamenti agli utenti, ma, qualunque sia l'implementazione tecnica interna, gli utenti devono avere la possibilit\u00e0 di iscriversi agli aggiornamenti (inclusi fix rapidi), ma rifiutare tutto il resto. Inoltre, il canale di aggiornamento deve essere pi\u00f9 reattivo di adesso. Anche il 6 maggio c'erano ancora utenti che non avevano ricevuto n\u00e9 fix n\u00e9 una nuova versione. Su questo problema si era gi\u00e0 lavorato, ma ci\u00f2 che \u00e8 successo ha dimostrato quanto sia importante.<\/p>\n<p>Infine, daremo un'occhiata all'architettura di sicurezza delle estensioni, per assicurarci che fornisca un adeguato livello di sicurezza con un rischio minimo di rompere qualcosa.<\/p>\n<p>La prossima settimana esamineremo i risultati di un'analisi pi\u00f9 approfondita di quanto accaduto, ma nel frattempo sar\u00f2 lieto di rispondere alle domande via email: ekr-blog@mozilla.com<\/p>\n<p>Fonte: <a \ncontent=\"nofollow\" rel=\"nofollow\" href=\"http:\/\/www.linux.org.ru\/news\/mozilla\/14982826\">linux.org.ru<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u0440\u0438\u043c. \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0447\u0438\u043a\u0430: \u0434\u043b\u044f \u0443\u0434\u043e\u0431\u0441\u0442\u0432\u0430 \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u0435\u0439 \u0434\u0430\u0442\u044b \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u044b \u043f\u043e \u043c\u043e\u0441\u043a\u043e\u0432\u0441\u043a\u043e\u043c\u0443 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u041d\u0435\u0434\u0430\u0432\u043d\u043e \u043c\u044b \u043f\u0440\u043e\u043f\u0443\u0441\u0442\u0438\u043b\u0438 \u043c\u043e\u043c\u0435\u043d\u0442 \u0438\u0441\u0442\u0435\u0447\u0435\u043d\u0438\u044f \u0441\u0440\u043e\u043a\u0430 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u043e\u0434\u043d\u043e\u0433\u043e \u0438\u0437 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0445 \u0434\u043b\u044f \u043f\u043e\u0434\u043f\u0438\u0441\u0438 \u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0439. \u042d\u0442\u043e \u043f\u0440\u0438\u0432\u0435\u043b\u043e \u043a \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044e \u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0439 \u0443 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439. \u0422\u0435\u043f\u0435\u0440\u044c, \u043a\u043e\u0433\u0434\u0430 \u043f\u043e \u0431\u043e\u043b\u044c\u0448\u0435\u0439 \u0447\u0430\u0441\u0442\u0438 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430 \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0430, \u044f \u0445\u043e\u0442\u0435\u043b \u0431\u044b \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u0430\u0442\u044c \u043e \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e\u0441\u0442\u044f\u0445 \u043f\u0440\u043e\u0438\u0437\u043e\u0448\u0435\u0434\u0448\u0435\u0433\u043e \u0438 \u043e \u043f\u0440\u043e\u0434\u0435\u043b\u0430\u043d\u043d\u043e\u0439 \u0440\u0430\u0431\u043e\u0442\u0435. \u041f\u043e\u0434\u043e\u043f\u043b\u0451\u043a\u0430: \u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0438 \u043f\u043e\u0434\u043f\u0438\u0441\u0438 \u0425\u043e\u0442\u044f \u043c\u043d\u043e\u0433\u0438\u0435 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-33377","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.0.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041f\u0440\u0438\u043c. \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0447\u0438\u043a\u0430: \u0434\u043b\u044f \u0443\u0434\u043e\u0431\u0441\u0442\u0432\u0430 \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u0435\u0439 \u0434\u0430\u0442\u044b \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u044b \u043f\u043e \u043c\u043e\u0441\u043a\u043e\u0432\u0441\u043a\u043e\u043c\u0443 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u041d\u0435\u0434\u0430\u0432\u043d\u043e \u043c\u044b \u043f\u0440\u043e\u043f\u0443\u0441\u0442\u0438\u043b\u0438 \u043c\u043e\u043c\u0435\u043d\u0442 \u0438\u0441\u0442\u0435\u0447\u0435\u043d\u0438\u044f \u0441\u0440\u043e\u043a\u0430 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u043e\u0434\u043d\u043e\u0433\u043e \u0438\u0437 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0445 \u0434\u043b\u044f \u043f\u043e\u0434\u043f\u0438\u0441\u0438 \u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0439.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/it\/blog\/news\/tehnicheskie-podrobnosti-nedavnego-otklyucheniya-dopolnenij-v-firefox\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.0.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"it_IT\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0422\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e\u0441\u0442\u0438 \u043d\u0435\u0434\u0430\u0432\u043d\u0435\u0433\u043e \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0439 \u0432 Firefox | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u0440\u0438\u043c. \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0447\u0438\u043a\u0430: \u0434\u043b\u044f \u0443\u0434\u043e\u0431\u0441\u0442\u0432\u0430 \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u0435\u0439 \u0434\u0430\u0442\u044b \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u044b \u043f\u043e \u043c\u043e\u0441\u043a\u043e\u0432\u0441\u043a\u043e\u043c\u0443 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u041d\u0435\u0434\u0430\u0432\u043d\u043e \u043c\u044b \u043f\u0440\u043e\u043f\u0443\u0441\u0442\u0438\u043b\u0438 \u043c\u043e\u043c\u0435\u043d\u0442 \u0438\u0441\u0442\u0435\u0447\u0435\u043d\u0438\u044f \u0441\u0440\u043e\u043a\u0430 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u043e\u0434\u043d\u043e\u0433\u043e \u0438\u0437 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0445 \u0434\u043b\u044f \u043f\u043e\u0434\u043f\u0438\u0441\u0438 \u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0439.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/it\/blog\/news\/tehnicheskie-podrobnosti-nedavnego-otklyucheniya-dopolnenij-v-firefox\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T18:52:15+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T18:52:15+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Dettagli tecnici sulla recente disattivazione delle estensioni in Firefox | ProHoster","description":"Nota del traduttore: per comodit\u00e0 dei lettori, le date sono riportate secondo il fuso orario di Mosca. Recentemente abbiamo perso il termine di scadenza di uno dei certificati utilizzati per firmare le aggiunte.","canonical_url":"https:\/\/prohoster.info\/it\/blog\/news\/tehnicheskie-podrobnosti-nedavnego-otklyucheniya-dopolnenij-v-firefox","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"it_IT","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0422\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e\u0441\u0442\u0438 \u043d\u0435\u0434\u0430\u0432\u043d\u0435\u0433\u043e \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0439 \u0432 Firefox | ProHoster","og:description":"\u041f\u0440\u0438\u043c. \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0447\u0438\u043a\u0430: \u0434\u043b\u044f \u0443\u0434\u043e\u0431\u0441\u0442\u0432\u0430 \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u0435\u0439 \u0434\u0430\u0442\u044b \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u044b \u043f\u043e \u043c\u043e\u0441\u043a\u043e\u0432\u0441\u043a\u043e\u043c\u0443 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u041d\u0435\u0434\u0430\u0432\u043d\u043e \u043c\u044b \u043f\u0440\u043e\u043f\u0443\u0441\u0442\u0438\u043b\u0438 \u043c\u043e\u043c\u0435\u043d\u0442 \u0438\u0441\u0442\u0435\u0447\u0435\u043d\u0438\u044f \u0441\u0440\u043e\u043a\u0430 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u043e\u0434\u043d\u043e\u0433\u043e \u0438\u0437 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0445 \u0434\u043b\u044f \u043f\u043e\u0434\u043f\u0438\u0441\u0438 \u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0439.","og:url":"https:\/\/prohoster.info\/it\/blog\/news\/tehnicheskie-podrobnosti-nedavnego-otklyucheniya-dopolnenij-v-firefox","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T18:52:15+00:00","article:modified_time":"2019-10-31T18:52:15+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"33377","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-21 14:58:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 00:46:11","updated":"2026-01-21 14:58:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/33377","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/comments?post=33377"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/33377\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/media?parent=33377"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/categories?post=33377"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/tags?post=33377"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}