Cosa fa
La ricerca per faccette può generare combinazioni di filtri molto onerose. Anche un piccolo volume di richieste anomale può consumare risorse, rallentare le categorie o rendere un negozio inaccessibile. PrestaWard Facet Shield analizza questa complessità prima che il modulo delle faccette elabori la query.
Non sostituisce il motore di ricerca né ne altera gli indici. Funziona come un interruttore di sicurezza (circuit breaker) circoscritto: osserva lo schema di ogni richiesta e, solo quando la politica viene attivata espressamente, rifiuta le combinazioni che superano i limiti configurati.
Come funziona
- Osserva prima di tutto. Registra in modo aggregato la complessità delle richieste HTML e AJAX relative alla navigazione per faccette.
- Controlla i dati. Il Back Office mostra le richieste analizzate, i valori entro i limiti, gli eccessi, i blocchi effettivi, gli istogrammi e il periodo statistico.
- Regola i limiti. Puoi gestire filtri, valori per faccetta e richieste non valide in base al comportamento effettivo del tuo catalogo, con limiti personalizzati per una categoria o per tutte quelle di un determinato livello del catalogo.
- Attiva la modalità Protezione solo quando è stata convalidata. La modifica richiede conferma ed è specifica per ogni negozio.
Cosa include
- Modalità Osservazione sicura predefinita e modalità Protezione esplicita.
- Registrazione automatica all’Integrity API: senza account né chiavi da configurare.
- Analisi preliminare della complessità delle richieste di navigazione con faccette HTML e AJAX.
- Limiti configurabili per negozio per faccette, valori e contesto della richiesta.
- Pannello con aggiunte al minuto, istogramma di complessità e motivi tradotti di eccesso.
- Pannello dei limiti suggeriti: in base al traffico registrato in Osservazione, propone un valore per ogni limite, mostra quante richieste vengono bloccate dai limiti attuali e quante ne bloccherebbe il suggerimento, e spiega la causa principale in un linguaggio chiaro, ad esempio quale filtro di quale categoria causa la maggior parte del superamento del limite. Un pulsante applica i quattro limiti suggeriti al negozio selezionato senza cambiare la modalità.
- Suggerimenti robusti: un suggerimento non è mai più restrittivo del limite predefinito né supera la politica firmata di Integrity. Se poche categorie concentrano le richieste che superano un limite, il suggerimento viene calcolato sul resto, senza allentare tale limite, e il pannello spiega quale parte dell’eccesso proviene da quante categorie.
- Statistiche con periodo di conservazione configurabile (90 giorni di default, da 30 a 365): i record al minuto vengono raggruppati per ora e quelli scaduti vengono cancellati in lotti in background, mai mentre si sta visualizzando una pagina per un cliente.
- La diagnostica dei bot conserva i campioni più recenti (500 per impostazione predefinita, configurabile tra 50 e 5000) ed elimina quelli più vecchi invece di smettere di registrarli.
- Il pannello della cache delle faccette distingue le tabelle della cache da quelle degli indici, mostra come è cambiata la dimensione negli ultimi giorni con un avviso se cresce rapidamente e rimanda alle impostazioni native di
ps_facetedsearch, dove trovi gli strumenti per ricostruire gli indici e svuotare la cache. Facet Shield legge solo queste tabelle e non le modifica né le cancella mai. - Pannello molto più veloce nei negozi con un traffico elevato: calcola statistiche, tendenze e limiti suggeriti con due letture e salva il risultato per dieci minuti in un file di cache temporaneo.
- Sincronizzazione con Integrity all’apertura del pannello, tramite una richiesta in background che non rallenta la pagina e al massimo una volta al minuto per ogni negozio.
- Limiti per categoria e per livello del catalogo: una categoria, o tutte quelle di un livello, può avere i propri limiti (dimensione della query, faccette, valori totali e valori in una faccetta); un limite lasciato vuoto utilizza il livello successivo e i limiti globali rimangono la base. Anche la politica firmata da Integrity limita quelli di categoria.
- Limiti suggeriti per categoria: il pannello elenca le categorie che necessitano di un altro limite, indicando a quante richieste verrebbe bloccato il sistema attualmente e proponendo un suggerimento, e ti permette di applicare una categoria con un clic. Una categoria che sembra indicare un’esplorazione automatizzata non viene mai allentata.
- Protezione pilota per categoria: con il negozio in modalità “Osservazione”, puoi fare in modo che solo le categorie che scegli vengano bloccate, mentre le altre continuano a essere in osservazione. Richiede una politica Integrity firmata e valida e una conferma esplicita per ogni categoria; per disattivarla basta un clic.
- Limite di richieste per indirizzo (opzionale): conta le richieste filtrate al minuto per indirizzo (30 al minuto di default, da 5 a 600). Se si supera il limite, nella sezione “Protezione” l’indirizzo viene bloccato temporaneamente (un’ora di default, fino a 24) con codice HTTP 429 e Retry-After; nella sezione “Osservazione” viene solo conteggiato. Non viene salvato nessun indirizzo IP, ma solo un hash con chiave che viene eliminato poco dopo la fine del blocco, quindi non c’è una lista nera permanente. Gli indirizzi e gli intervalli della tua lista dei permessi non vengono mai conteggiati e un errore del database non blocca mai un cliente.
- Motori di ricerca verificati: in Protezione, un Googlebot o un Bingbot il cui DNS inverso e diretto coincidono con i server ufficiali riceve una risposta “economica” con noindex e l’URL canonico della categoria invece di un 403, in modo che l’URL del filtro venga escluso dall’indice senza eseguire SQL di faccette. Viene interpellato solo chi dichiara di essere uno di quei motori di ricerca.
- Segnali di falsi positivi: le richieste che superano i limiti vengono conteggiate anche se provengono da un cliente con sessione attiva, da un motore di ricerca verificato o da una raffica rapida di dieci o più al minuto, e le statistiche mostrano le tre cifre con la loro proporzione.
- Avvisi via e-mail (opzionali), con le impostazioni di posta del negozio: crescita rapida della cache (al massimo una volta al giorno), picchi di richieste bloccate (al massimo ogni sei ore) e un riepilogo settimanale, per un massimo di cinque destinatari a tua scelta, con un pulsante per l’invio di un’e-mail di prova. Niente PDF né link nel testo, e le e-mail vengono inviate durante la manutenzione in background, mai mentre si sta visualizzando una pagina per un cliente.
- Svuotamento automatico della cache (opzionale): quando la cache della ricerca per faccette supera la dimensione che hai scelto, Facet Shield chiede a
ps_facetedsearchdi svuotare la propria cache con il metodo offerto da quel modulo, al massimo una volta al giorno, e lo annota nel registro di assistenza. Se la versione installata non dispone di tale metodo, non viene modificato nulla. - Avviso sulle versioni vulnerabili di
ps_facetedsearch(dalla 3.0.0 alla 4.0.3, CVE-2026-54159, risolto nella 4.0.4), basato su una piccola tabella inclusa nel modulo, senza bisogno di scaricare nulla. - Pannello a schede (Riepilogo, Limiti e categorie, Traffico e bot, Statistiche, Cache e manutenzione e Impostazioni, più una scheda Assistenza, sempre l’ultima): viene conteggiata solo la scheda aperta e la scheda Riepilogo mostra la modalità, le ultime 24 ore, un’azione principale e, al massimo, una riga di avviso.
- Ripristino protetto delle statistiche per negozio.
- Scheda “Limiti e categorie” organizzata in schede: limiti globali, impatto dei suggerimenti con pulsanti di dimensioni normali e tabella delle regole per categoria con un modulo per aggiungerne un’altra. La scheda “Cache” utilizza blocchi a scomparsa e un’unica riga di statistiche.
- Email di avviso con il logo del tuo negozio nell’intestazione e, nel piè di pagina, il logo di GO ON Agency con la firma «PrestaWard by GO ON Agency».
- Aspetto unificato del pannello nei quattro moduli PrestaWard: intestazioni di sezione, schede dei moduli con bordi neutri e blocchi a scomparsa comuni, statistiche su un’unica riga e un logo GO ON Agency più grande nell’intestazione. Il pulsante principale assume ora un colore a tinta unita del marchio, senza sfumature.
- Risposte di blocco comprensibili (HTTP 403 o HTTP 429 con Retry-After entro il limite per indirizzo), senza rivelare dettagli interni della politica.
- Esclusione di categorie specifiche dall’analisi di complessità, con modifiche verificabili.
- Avviso nel pannello di controllo quando la cache stimata della ricerca per faccette raggiunge la dimensione che hai impostato.
- Pannello di assistenza di GO ON Agency con un rapporto diagnostico scaricabile. Viene scaricato da un dipendente con autorizzazione di modifica, dopo aver selezionato un negozio. Contiene solo versioni, stati e contatori, non include URL delle richieste, indirizzi IP né credenziali e non viene inviato automaticamente.
- Connessione con PrestaWard Integrity, la cui politica, una volta accettata, può solo inasprire i tuoi limiti, mai allentarli. Nella schermata del modulo, il pulsante “Sincronizza” aggiorna la connessione.
- Pannello di controllo e traduzioni in nove lingue.
Limiti da verificare
Prima che PrestaShop generi la query dei prodotti, Facet Shield esamina il parametro dei filtri della ricerca per faccette. I limiti iniziali sono 256 byte per il filtro, 8 faccette, 16 valori in totale e 6 valori per faccetta, e le richieste con filtri non corretti vengono rifiutate. Puoi modificarli per ogni negozio e, inoltre, impostare limiti personalizzati per una categoria o per tutte le categorie di un livello del catalogo. Una richiesta che supera uno qualsiasi di questi limiti viene considerata un eccesso.
Requisiti
- PrestaShop dalla versione 1.7.7 alla 9 e la versione di PHP richiesta dalla tua versione di PrestaShop (PHP 7.1 o superiore per PrestaShop 1.7).
- Un negozio che utilizza la ricerca per faccette di PrestaShop: il modulo analizza il parametro dei filtri (
q) delle pagine delle categorie e di ricerca. - Per attivare la Protezione, il negozio deve aver registrato almeno una richiesta di faccette in modalità Osservazione.
- Gli avvisi via e-mail utilizzano le impostazioni di posta del negozio.
- I limiti, la modalità e le statistiche sono specifici di ogni negozio. Per scaricare il rapporto di assistenza o modificare la diagnostica dei bot, seleziona un negozio specifico.
Privacy e ambito di applicazione
Di default, Facet Shield salva solo metriche aggregate di complessità. Se attivi la diagnostica dei bot, che è disattivata di default, conserva un campione limitato delle richieste che superano i limiti: fino a 512 caratteri del filtro a faccette, il motivo, il tipo di pagina, la categoria, l’user agent (fino a 255 caratteri), il contatore e le date. Non salva mai indirizzi IP, cookie né URL completi. Se attivi il limite per indirizzo, salva solo un hash con chiave dell’indirizzo, che viene eliminato automaticamente poco dopo la fine del blocco. I campioni più vecchi vengono eliminati automaticamente una volta superato il limite massimo che imposti (500 per impostazione predefinita); l’amministratore può cancellarli dal modulo ed è possibile esportarli.
Il suo ambito di applicazione è la navigazione per faccette nelle categorie e nelle ricerche, sia nelle richieste normali che in quelle AJAX. Non analizza le richieste senza filtri, né il carrello, l’ordine, i form, i clienti o l’accesso amministrativo; per questo servono controlli specifici.
Cosa non fa
- Non è un firewall per applicazioni web (WAF): è una protezione aggiuntiva limitata ai filtri della ricerca per faccette.
- Non sostituisce né corregge
ps_facetedsearche non ne altera gli indici. Non svuota le cache di propria iniziativa: solo se attivi lo svuotamento automatico, chiede a quel modulo di svuotare la propria cache con il metodo che offre, al massimo una volta al giorno, e non cancella mai le sue tabelle. Devi tenere aggiornati sia PrestaShop che quel modulo. - Non blocca nulla in modalità Osservazione, tranne le categorie che hai espressamente inserito in Protezione pilota, e solo finché c’è una politica Integrity firmata e valida. Se la politica scade, il modulo torna a limitarsi all’osservazione finché non viene rinnovata.
- Non mantiene liste nere permanenti di indirizzi: il blocco del limite per indirizzo è temporaneo e si cancella da solo.
- Non fa nulla se la richiesta non contiene filtri.
- Il piè di pagina delle e-mail del modulo non contiene link, indirizzi di contatto né immagini ospitate al di fuori del tuo negozio: il logo di GO ON Agency è un file del modulo stesso che viene caricato direttamente dal tuo negozio.
Compatibilità e convalida
Il modulo dichiara compatibilità con PrestaShop dalla versione 1.7.7 alla 9. La versione 0.1.16 ha superato i test di laboratorio su PrestaShop 1.7, 8 e 9 il 15 ottobre 2026, sia su installazione pulita che tramite aggiornamento dalla versione 0.1.15. Prima di attivarlo, verifica l’installazione, i filtri standard, l’Osservazione, la Protezione, l’aggiornamento e la disinstallazione nella tua combinazione specifica di PrestaShop, PHP, tema e moduli.
Utilizzo sicuro
Non attivare la Protezione durante l’installazione. Lascia il modulo in modalità Osservazione, naviga tra le categorie e i filtri più comuni, controlla le statistiche e imposta limiti che non influenzino i clienti legittimi. Se un limite blocca la navigazione effettiva, torna in modalità Osservazione, correggi la soglia e convalida di nuovo.
È necessario un aggiornamento di sicurezza
Facet Shield aggiunge una protezione specifica contro le firme complete di serializzazione PHP nelle query delle faccette, anche se una categoria è esclusa. Non sostituisce la correzione ufficiale: per risolvere la vulnerabilità nota del modulo delle faccette devi aggiornare ps_facetedsearch alla versione 4.0.4 o successive. Il pannello ti avvisa se rileva una versione vulnerabile (dalla 3.0.0 alla 4.0.3, CVE-2026-54159).
Licenza
PrestaWard Facet Shield è distribuito sotto la licenza Academic Free License 3.0 (AFL-3.0). Puoi utilizzarlo, studiarlo, modificarlo e ridistribuirlo secondo i suoi termini. Il pacchetto del modulo include la licenza completa.
Cronologia delle versioni
Questo changelog riassume, versione per versione, l’impatto sui negozi e sui team di e-commerce.
0.1.16
- Novità: limiti per categoria e per livello del catalogo. Una categoria, o tutte quelle di un livello, può avere i propri limiti (dimensione della query, faccette, valori totali e valori in una faccetta); un limite lasciato vuoto utilizza il livello successivo e i limiti globali rimangono la base. Una politica firmata da Integrity limita anche quelli di categoria.
- Novità: limiti suggeriti per categoria. Il pannello elenca le categorie che necessitano di un limite diverso, indicando a quante richieste verrebbe applicato il blocco attualmente e il suggerimento, e permette di applicare un limite a una categoria con un clic. Si riutilizza la regola rigorosa del suggerimento globale: una categoria che sembra provenire da una scansione automatizzata non viene mai allentata.
- Novità: Protezione pilota per categoria. Con il negozio in modalità Osservazione, puoi bloccare le categorie che scegli, mentre le altre restano in osservazione. Richiede una politica Integrity firmata e valida (senza di essa, Facet Shield rimane in osservazione, come prima) e una conferma esplicita per ogni categoria; per interrompere la modalità pilota basta un clic.
- Novità: limite di richieste per indirizzo, opzionale. Conta le richieste filtrate al minuto per indirizzo (30 al minuto di default, da 5 a 600); se supera il limite, in “Protezione” l’indirizzo viene bloccato temporaneamente (un’ora di default, fino a 24) con codice di stato HTTP 429 e Retry-After, mentre in “Osservazione” viene solo conteggiato. Non viene salvato nessun indirizzo IP: solo un hash con chiave che viene eliminato poco dopo la fine del blocco, quindi non c’è nessuna lista nera permanente. L’indirizzo è quello risolto da PrestaShop (tramite i proxy fidati); gli indirizzi e gli intervalli della tua lista dei permessi non vengono mai conteggiati e un problema di database non blocca mai un cliente.
- Novità: motori di ricerca verificati. Nella sezione Protezione, un Googlebot o Bingbot il cui DNS inverso e diretto coincidono con i server ufficiali riceve una risposta “economica” con noindex e l’URL canonico della categoria invece di un 403, così l’URL del filtro viene rimosso dall’indice e non viene eseguito l’SQL delle faccette. Si interroga solo chi dichiara di essere uno di quei motori di ricerca; il verdetto viene memorizzato nella cache (24 ore se valido, un’ora in caso contrario) e le richieste sono limitate al minuto per l’intero negozio.
- Segnali di falsi positivi: le richieste che superano i limiti vengono conteggiate anche se provengono da un cliente con sessione attiva, da un motore di ricerca verificato o da una raffica rapida di dieci o più al minuto, e le statistiche mostrano queste tre cifre con la loro percentuale. Le raffiche vengono misurate mentre il limite per indirizzo è attivo.
- Novità: avvisi via e-mail, opzionali, con le impostazioni di posta del negozio: crescita rapida della cache (al massimo una volta al giorno), picchi di richieste bloccate (al massimo ogni sei ore) e un riepilogo settimanale a parte, per un massimo di cinque destinatari a tua scelta e con un pulsante per inviare un’e-mail di prova. Nessun PDF né link nel testo. Vengono inviate durante la manutenzione in background, mai mentre si serve una pagina a un cliente.
- Novità: svuotamento automatico della cache, opzionale. Quando la cache della ricerca per faccette supera la dimensione che scegli, Facet Shield chiede a ps_facetedsearch di svuotare la propria cache con il metodo offerto da quel modulo, al massimo una volta al giorno, e lo annota nel registro di assistenza. Se la versione installata non dispone di tale metodo, non viene modificato nulla. Facet Shield continua a non cancellare mai le tabelle di un altro modulo.
- Avviso sulle versioni vulnerabili di ps_facetedsearch, basato su una piccola tabella inclusa nel modulo (non si scarica nulla): le versioni dalla 3.0.0 alla 4.0.3 sono interessate dalla vulnerabilità CVE-2026-54159, risolta nella 4.0.4, e il pannello consiglia di aggiornare.
- Il pannello è organizzato in schede (Riepilogo, Limiti e categorie, Traffico e bot, Statistiche, Cache e manutenzione e Impostazioni). La scheda Riepilogo mostra solo la modalità, le ultime 24 ore, un’azione principale e, al massimo, una riga di avviso; viene calcolata solo la scheda aperta. Il pannello di assistenza di GO ON Agency ha una scheda dedicata, Assistenza, sempre l’ultima, mentre lo stato di Integrity si trova alla fine di tutte le schede. L’intestazione ora mostra il logo di GO ON Agency.
- La scheda «Limiti e categorie» è organizzata in schede: limiti globali, impatto dei suggerimenti con pulsanti di dimensioni normali e tabella delle regole per categoria con un modulo per aggiungerne un’altra. La scheda «Cache» utilizza blocchi a scomparsa e un’unica riga di statistiche.
- Le e-mail di avviso mostrano il logo del tuo negozio nell’intestazione (con il nome del negozio come testo alternativo) e un piè di pagina standard con il logo di GO ON Agency e la firma «PrestaWard by GO ON Agency», senza link né indirizzi di contatto. Il logo nel piè di pagina è un file del modulo stesso fornito dal tuo negozio.
- Aspetto unificato del pannello nei quattro moduli PrestaWard: intestazioni di sezione, schede dei moduli con bordi neutri e blocchi a scomparsa comuni, statistiche su un’unica riga e un logo GO ON Agency più grande nell’intestazione. Il pulsante principale assume ora un colore a tinta unita del marchio, senza sfumature.
- Corregge il fatto che, in PrestaShop 9, il tema di amministrazione mostrasse le schede sottolineate come link e i titoli delle sezioni in maiuscolo. Gli stili comuni lo neutralizzano solo all’interno del pannello di PrestaWard, quindi PrestaShop 1.7 e 8 hanno lo stesso aspetto di prima.
- Risolve il problema per cui, in PrestaShop 1.7, il foglio di stile del modulo veniva ignorato quando veniva registrato con il numero di versione nell’URL. Ora il file viene verificato e registrato senza parametri, così il nuovo aspetto appare nelle versioni 1.7, 8 e 9.
- Correzione: in PrestaShop 9, i moduli di azione del pannello e la sincronizzazione con Integrity verificavano il token di sicurezza con un metodo che PrestaShop 9 non utilizza, con il rischio che venissero rifiutati. Ora la convalida avviene tramite il servizio di PrestaShop 9; in PrestaShop 1.7 e 8 la verifica rimane invariata.
- Quando non è possibile aggiornare la connessione con Integrity in quel momento, il pannello mostra un unico messaggio: la connessione salvata è ancora valida e verrà riprovata automaticamente. Le etichette di tutte le schede sono tradotte nelle nove lingue.
- Correzione del problema per cui la connessione con Integrity si deteriorava nel contesto «tutti i negozi»: l’identità dell’installazione viene ora letta come un’unità dall’ambito globale (o dal negozio in cui è salvata) in qualsiasi contesto; l’aggiornamento trasferisce all’ambito globale un’identità salvata in un negozio senza rigenerarla e, se non è possibile leggerla, lo stato di Integrity rimane invariato.
- Risolve il problema per cui la tabella della scheda Cache si spostava di qualche pixel lateralmente sulla versione desktop: il contenitore ora occupa lo spazio tra i suoi margini.
- Tutti i nuovi testi sono disponibili nelle nove lingue del modulo. L’aggiornamento aggiunge una piccola tabella e tre contatori alle statistiche delle richieste e non attiva nulla di per sé; il contratto con l’Integrity API rimane invariato e una politica firmata valida può comunque solo inasprire i limiti.
0.1.15
- Le statistiche delle richieste non crescono più all’infinito: ogni ora, i record al minuto che superano un’ora vengono raggruppati in un unico record orario senza modificare i totali né i grafici, e quelli precedenti al nuovo periodo «Conservazione delle statistiche (giorni)» (90 di default, tra 30 e 365) vengono eliminati in piccoli lotti in background, mai mentre si sta servendo una pagina a un cliente.
- La diagnostica dei bot non smette più di raccogliere campioni una volta raggiunti i 500: conserva quelli più recenti ed elimina quelli più vecchi. Questa funzione è controllata dall’impostazione «Campioni diagnostici da conservare» (500 di default, compreso tra 50 e 5000).
- Nuovo pannello «Limiti suggeriti»: in base al traffico registrato in modalità Osservazione, propone un valore per ogni limite (dimensione della query, faccette, valori totali e valori in una faccetta), mostra quante richieste vengono bloccate dai limiti attuali e quante ne bloccherebbe il suggerimento, e spiega la causa principale, ad esempio quale filtro di quale categoria provoca il superamento maggiore. Un pulsante applica i quattro limiti suggeriti al negozio selezionato senza cambiare la modalità.
- I suggerimenti non sono mai più rigidi del limite predefinito, non allentano mai un limite e rispettano la politica firmata di Integrity quando questa è più rigida. Se poche categorie concentrano le richieste che superano un limite, il suggerimento viene calcolato sul resto; il pannello indica quale parte dell’eccesso proviene da quante categorie e quel limite non viene modificato al momento dell’applicazione.
- Il pannello della cache della ricerca per facette distingue le tabelle della cache da quelle degli indici, mostra come è cambiata la loro dimensione negli ultimi giorni con un avviso se cresce rapidamente, indica i negozi in cui ps_facetedsearch manca o è disattivato e rimanda alla sua configurazione nativa. Facet Shield legge solo quelle tabelle: non le modifica né le cancella mai.
- Il pannello è molto più veloce nei negozi con un traffico elevato: con oltre mezzo milione di record, il tempo di caricamento passa da circa 20 secondi a pochi secondi, e a una frazione di secondo se lo riapri entro meno di dieci minuti. I dati visualizzati non cambiano.
- Tutti i nuovi testi sono disponibili nelle nove lingue del modulo.
- Il pannello di assistenza e diagnostica si trova proprio prima della sezione Integrity, come negli altri moduli PrestaWard, e nel contesto «tutti i negozi» non scompare più: indica che bisogna selezionare un negozio.
- Sincronizza con Integrity ogni volta che apri il pannello, con una richiesta in background che non rallenta mai la pagina e al massimo una volta al minuto per ogni negozio.
0.1.14
- Smette di riprovare la registrazione su Integrity quando cambia la chiave di registrazione del negozio e mostra un avviso chiaro.
- Rinnova la politica firmata di Integrity prima che scada e mantieni la politica attuale e i suoi limiti se il rinnovo non va a buon fine.
- Una politica Integrity firmata può solo inasprire i limiti configurati nel negozio, mai allentarli: per la dimensione, il numero di faccette, di valori e di valori per faccetta si applica il valore più basso tra il tuo limite e quello della politica, mentre la modalità (Osservazione o Protezione) la decidi tu.
- Corregge la chiave di politica inclusa affinché funzioni con PHP 7.1 e 7.2.
- Aggiunge il pannello di assistenza di GO ON Agency in nove lingue, con un rapporto diagnostico scaricabile che non include dati dei clienti né viene inviato automaticamente. Viene scaricato solo da un dipendente con autorizzazione di modifica e con un negozio selezionato.
- Dichiara la compatibilità a partire da PrestaShop 1.7.7.0, la versione più vecchia testata.
0.1.13
- Corregge la prova di registrazione e le attività del Back Office in PrestaShop 9.
- Accetta entrambi i formati validi di URL di test di proprietà con convalida rigorosa.
- Migliora la diagnostica e i tentativi di registrazione in Integrity.
0.1.12
- La disinstallazione elimina anche la tabella delle esclusioni per categoria e tutte le chiavi di configurazione di Integrity (fase di installazione, prova di registrazione, credenziale sigillata e chiavi), senza lasciare traccia.
- Sono stati aggiunti gli
index.phpdi protezione che mancavano e il controllo degli accessi diretti tramite_PS_VERSION_nel controller del Back Office e negli ultimi tre script di aggiornamento, proprio come negli altri punti di accesso del modulo. - Adotta il sistema di design condiviso di PrestaWard: il pannello del Back Office utilizza l’intestazione scura comune, l’indicatore di stato unificato (Disattivato/In osservazione/In protezione) e il pannello «Monitoraggio GO ON», gestiti da un unico foglio di stile condiviso e ospitato localmente.
0.1.11 — aggiornamento di sicurezza
- Le esclusioni per categoria evitano solo la normale analisi di complessità: le firme complete di serializzazione PHP continuano a essere analizzate, registrate e bloccate sempre in modalità Protezione.
- Si precisa che per risolvere la vulnerabilità CVE-2026-54159 è necessario un
ps_facetedsearch4.0.4 o successiva; Facet Shield rimane una controllo di difesa in profondità, non un sostituto della correzione ufficiale.
0.1.10
- Simulatore locale di URL o
q, andamento giornaliero basato su dati aggregati esistenti ed esportazioni CSV limitate. - Esclusioni verificabili per categoria, con motivazione obbligatoria e cancellazione logica; non vengono esclusi né gli indirizzi IP né gli user-agent.
- La prima attivazione della Protezione richiede prove proprie di Osservazione e calcola una stima prudente dell’impatto con la politica candidata; in assenza di richieste osservate, non permette di attivare il blocco.
- Tutte le directory di produzione del pacchetto includono un file
index.phpche termina l’esecuzione, compresoviews/js. - La guida spiega come registrare di nuovo Integrity per ogni negozio dopo aver ruotato
_COOKIE_KEY_, senza recuperare né condividere la chiave precedente. - Protezione aggiuntiva contro le intestazioni di serializzazione PHP complete nelle query delle faccette, senza bloccare i valori normali che contengono testo come
O:. - Avviso configurabile per negozio quando la stima della cache della ricerca per faccette supera la soglia definita; il modulo non cancella né aggiorna nulla automaticamente.
- I tentativi di ricarica e gli heartbeat di Integrity non vengono più eseguiti all’interno del rendering sincrono di nessuna schermata del Back Office: vengono programmati tramite una richiesta asincrona autenticata e limitata.
- Viene rimossa la visualizzazione del riepilogo degli eventi legacy senza cancellare i dati storici e viene mantenuto il pannello degli aggiornamenti esistente come unico avviso delle nuove versioni.
0.1.9
- La registrazione ora utilizza il dispatcher nativo dei moduli di PrestaShop e non dipende più da URL friendly, regole di
.htaccesso cache dei percorsi. - L’aggiornamento dalle versioni precedenti corregge in modo idempotente gli hook necessari senza cancellare né le politiche né le statistiche.
- All’apertura della dashboard viene verificata automaticamente la presenza di una nuova versione, con una cache di sei ore e senza bloccare il Back Office se il manifesto non risponde.
- Flusso verificato su PrestaShop 1.7, 8 e 9.
0.1.8
- La protezione si limita ai controller effettivi delle categorie e della ricerca, evitando di bloccare i parametri
qestranei alle faccette. - Le richieste
HEADbloccate restituiscono solo le intestazioni, senza corpo. - La diagnosi identifica l’agente come dichiarato e spiega correttamente il campione abbreviato di user-agent che viene conservato in modo facoltativo.
- Integrity si presenta con uno stato minimo di connessione e sincronizzazione, senza dettagli interni che possano confondere l’utente.
- Compatibilità funzionale verificata su PrestaShop 1.7, 8 e 9.
0.1.7
- Heartbeat automatico senza cron: il traffico del negozio attiva una sonda locale limitata e il server rinnova la presenza su Integrity API senza esporre le credenziali al browser.
- Blocco atomico per negozio, intervallo di sei ore e attesa di quindici minuti dopo eventuali errori per evitare invii duplicati.
- Anche la sincronizzazione manuale di Integrity aggiorna l’heartbeat.
- Compatibilità verificata su PrestaShop 1.7, 8 e 9.
0.1.6
- Heartbeat autenticato, tentativi automatici e diagnostica dettagliata della connessione con l’Integrity API.
- Diagnostica opzionale anche in modalità Osservazione, con identificazione dell’agente, filtri per bot e motivo, impaginazione e campione limitato della combinazione di faccette.
- Conservazione gestita dall’amministratore: numero di campioni, spazio stimato e cancellazione manuale dal Back Office.
- Indicatori visivi e di sola lettura relativi a dimensioni, record stimati e tabelle della cache delle faccette.
- Interfaccia riorganizzata: modalità e attivazione della Protezione sotto «Cosa fa», sezioni delimitate e Integrity API spostata alla fine.
- Niente IP, cookie o URL completi; testi disponibili in nove lingue.
- Installazione, blocco, diagnostica, cache, disinstallazione e reinstallazione verificati su PrestaShop 1.7, 8 e 9.
0.1.5
- Registrazione automatica e non bloccante nell’Integrity API tramite prova di controllo del negozio.
- L’installazione non richiede account, chiavi API né passaggi di registrazione manuale.
- Politiche firmate e verificate con ancore di fiducia incluse nella versione.
0.1.4
- Istogrammi di complessità e conteggio atomico per tutte le richieste analizzate.
- Limiti dei valori per faccetta, richieste non valide e contesto della richiesta limitato.
- Stato di osservazione, inizio del periodo statistico e ripristino protetto per negozio.
- Motivi e statistiche tradotti.
0.1.3
- Indicatori relativi alle richieste analizzate, entro i limiti, agli sforamenti e ai blocchi effettivi.
- Aggiunte per negozio e minuto senza IP, URL, user-agent né valori selezionati.
- Selettore di modalità accessibile e shell visiva PrestaWard per desktop e dispositivi mobili.
0.1.2
- Identità dell’installazione e negozio predisposto per l’Integrity API.
- Politica firmata con l’ultimo stato valido per negozio e ritorno sicuro alla modalità Osservazione.
- Stato della connessione e riprova manuale dal Back Office, senza chiamate dal Front Office.