Releases
Releases
Posted By

WP Cerber Security 9.8.3


English version: WP Cerber Security 9.8.3


In sintesi

Abbiamo ottimizzato il flusso di dati esterni e forniti dagli utenti attraverso lo scanner del plugin, le email di sicurezza e le esportazioni dei log. Abbiamo inoltre riprogettato le esportazioni di log di attività di grandi dimensioni per renderle più prevedibili in condizioni di carico di memoria elevato e abbiamo risolto diversi problemi che rendevano meno precise la valutazione e la creazione di report.

Dopo l'aggiornamento non sono necessarie modifiche alla configurazione, ma si consiglia di installare tempestivamente questa versione se si utilizzano avvisi di attività, email con PIN per l'autenticazione a due fattori o esportazioni di log di sicurezza di grandi dimensioni.

Punti salienti

  • Rafforzamento della sicurezza per i messaggi dello scanner dei plugin e per le email di sicurezza in uscita.
  • Una nuova funzione di riepilogo degli intervalli di date nelle esportazioni del registro attività, per facilitare le analisi forensi.
  • Esportazione dei log più prevedibile e con minore consumo di memoria per log di attività e traffico di grandi dimensioni.
  • Comportamento migliore quando le esportazioni vengono eseguite dietro Nginx.
  • Correzioni per le email di avviso, il filtro di Traffic Inspector, la gestione della memoria per l'esportazione dei log e le notifiche amministrative.

Rafforzamento della sicurezza

I messaggi di cambio di proprietà dello scanner vengono ora gestiti correttamente nel contesto appropriato.

WP Cerber legge i metadati relativi alla proprietà dei plugin dal repository dei plugin di WordPress.org e li visualizza quando cambia la proprietà di un plugin installato. Questa fonte di dati è generalmente considerata affidabile e la probabilità di metadati dannosi è bassa, ma è comunque sconsigliabile inserire metadati esterni nell'interfaccia di amministrazione di WordPress come codice HTML grezzo.

Questa versione instrada il messaggio di cambio di proprietà e i relativi link al profilo del proprietario attraverso il livello UI di WP Cerber. Gli URL del profilo e i nomi visualizzati vengono ora sottoposti a escape nei rispettivi contesti di output prima di essere visualizzati. Ciò risolve una potenziale vulnerabilità XSS persistente per gli amministratori nei risultati dello scanner, senza modificare il testo del messaggio visualizzato dagli amministratori.

I nomi visualizzati controllati dall'utente non possono più inserire destinatari di posta elettronica aggiuntivi

I campi del profilo non elaborati, come nome, cognome e nome visualizzato, venivano utilizzati per creare le stringhe dei destinatari delle email per wp_mail() . Poiché i destinatari di stringhe separate da virgole possono essere interpretati come più indirizzi, un nome di profilo appositamente creato potrebbe aggiungere un destinatario indesiderato alle email di autenticazione a due fattori con PIN o alle notifiche di attività.

Abbiamo aggiunto un sistema di sanificazione dedicato per i nomi visualizzati nelle email e lo abbiamo applicato in entrambi i punti di invio. Il sistema di sanificazione rimuove i caratteri significativi per questo percorso di inserimento del destinatario, inclusi virgole, virgolette, barre rovesciate, parentesi angolari e caratteri di controllo. WP Cerber non consente più ai nomi visualizzati del profilo creati ad hoc di aggiungere destinatari indesiderati a queste email di sicurezza.

Le esportazioni di log sensibili ora indicano ai client di non memorizzare i file scaricati

Le esportazioni dei registri di attività e traffico ora inviano un'intestazione di risposta Cache-Control: no-store . Questa intestazione indica ai browser e alle cache intermedie conformi di non conservare una copia del file di registro di sicurezza scaricato.

Questo è importante perché i file di log esportati possono contenere dati forensi: indirizzi IP, metadati delle richieste, registri delle attività e altri dettagli che gli amministratori possono utilizzare durante l'analisi degli incidenti. La nuova intestazione riduce la probabilità che questi dati rimangano nelle cache al di fuori del controllo diretto dell'amministratore di WordPress.

Miglioramenti all'esportazione dei log

Le esportazioni del registro attività ora indicano l'intervallo di date coperto

L'intestazione dell'esportazione CSV del registro attività in precedenza riportava solo i filtri attivi. Ora include due righe aggiuntive che mostrano i timestamp del record più vecchio e di quello più recente nel set esportato.

Quando si consegna un file esportato a un collega o lo si allega a una segnalazione di incidente, l'intervallo di tempo coperto viene ora indicato direttamente nel file. Ciò rende le analisi forensi e la valutazione preliminare meno soggette a errori, soprattutto quando esistono più esportazioni per lo stesso sito web o la stessa indagine. Se nessuna riga corrisponde ai filtri selezionati, l'intervallo di date viene omesso.

L'esportazione di file di log di grandi dimensioni ora avviene in un unico passaggio.

In precedenza, l'esportazione del registro attività eseguiva nuovamente la stessa query una volta per ogni blocco con un offset crescente. Su set di dati di grandi dimensioni, questo schema può degenerare in una scansione con offset profondo, che rende le esportazioni più lente e fragili man mano che il registro cresce.

Ora l'esportazione legge le righe corrispondenti in un'unica passata senza buffering. Questo mantiene stabile l'utilizzo della memoria e rilascia la connessione al database in modo pulito, sia che il download termini normalmente o si interrompa prematuramente. Se vi è mai capitato di vedere un'esportazione di grandi dimensioni rallentare o bloccarsi, questo è il meccanismo alla base di tale comportamento, ricostruito appositamente.

Tempo di risposta al primo byte più rapido con Nginx

Ora le esportazioni X-Accel-Buffering: no Quando Nginx si trova davanti a PHP-FPM, potrebbe altrimenti memorizzare in un buffer l'intera risposta prima di inoltrarla al browser. Questa intestazione indica a Nginx di trasmettere i blocchi di dati man mano che vengono prodotti.

L'intestazione è specifica di Nginx. Apache e altri proxy la ignorano senza causare problemi, quindi la modifica migliora il comportamento laddove si applica senza richiedere ulteriori configurazioni altrove.

Miglioramenti dell'affidabilità

Gestione più coerente dello schema del database

Le definizioni delle tabelle di log ora derivano da dichiarazioni centralizzate anziché da istruzioni SQL CREATE TABLE inline. Questo mantiene allineate le nuove installazioni e gli aggiornamenti e fornisce a WP Cerber una base più coerente per rilevare le modifiche dello schema nelle installazioni esistenti.

In termini pratici, se una tabella di log si discosta dalla sua forma prevista, WP Cerber ha maggiori probabilità di rilevare e correggere tale discrepanza. Questa non è una funzionalità visibile nell'interfaccia utente, ma rafforza l'affidabilità del sottosistema di log su cui gli amministratori fanno affidamento durante la revisione, l'esportazione e l'analisi degli incidenti.

Decodifica più sicura dei dati di richiesta memorizzati

I dati memorizzati nei campi delle richieste possono variare tra installazioni meno recenti e record di log legacy. Alcuni record potrebbero contenere valori nullable, valori vuoti, JSON non valido o payload serializzati non supportati.

WP Cerber ora gestisce questi casi in modo uniforme, trattandoli come array vuoti anziché generare avvisi o risultati incoerenti. Questo è particolarmente vantaggioso per i siti che hanno conservato i dati di log attraverso diverse versioni precedenti, dove i dati delle richieste memorizzati potrebbero non corrispondere sempre al formato utilizzato dalle versioni più recenti.

Correzione di bug e miglioramenti

Registro di Traffic Inspector: il filtro "Qualsiasi errore software" ora si combina correttamente con gli altri filtri.

Nel modulo di ricerca avanzata, la casella di controllo "Qualsiasi errore software" potrebbe combinarsi in modo errato con altri filtri. Potrebbero quindi comparire richieste con errori PHP registrati anche se non corrispondono alle altre condizioni di ricerca.

I gruppi di filtri vengono ora valutati con la corretta precedenza. I risultati della ricerca nel registro di Traffic Inspector rispettano tutte le condizioni impostate, rendendo la selezione più prevedibile quando si filtra il traffico rumoroso.

Il limite di memoria per l'esportazione dei log ora viene interpretato correttamente.

In alcuni ambienti, un valore numerico per il limite di memoria, come ad esempio 512 , potrebbe essere applicato in byte anziché in megabyte. Di conseguenza, WP Cerber potrebbe non riuscire ad aumentare la memoria disponibile per le operazioni che richiedono molte risorse e le esportazioni di grandi dimensioni potrebbero interrompersi prima del previsto.

Il valore viene ora interpretato correttamente, il che rende il comportamento di esportazione più affidabile nelle configurazioni che prevedono limiti di memoria numerici.

Le email di avviso relative alle attività ora rimandano alla visualizzazione corretta della dashboard.

Le email di notifica degli avvisi di attività includono link alla dashboard di WP Cerber, in modo che gli amministratori possano esaminare gli eventi relativi a un avviso. Questi link sono stati creati a partire da una coppia di valori che potrebbe alterare l'allineamento dei parametri, causando l'assegnazione di un valore di filtro errato al link.

Ad esempio, un filtro IP potrebbe ricevere un limite di intervallo IP anziché il valore previsto. Ora ogni parametro di query viene associato al suo valore corretto, in modo che i link di avviso conducano agli eventi descritti in modo più affidabile.

La corrispondenza della stringa di ricerca degli avvisi ora identifica l'utente corretto

La corrispondenza degli utenti tramite stringa di ricerca nell'invio degli avvisi si basava su una chiamata in grado di restituire un oggetto utente anche per un ID utente inesistente. Ora WP Cerber individua l'utente associato all'evento registrato e previene la presenza di un utente mancante.

In questo modo, le regole di avviso basate sulla ricerca corrispondono all'account previsto ed evitano comportamenti di avviso fuorvianti quando i dati dell'evento fanno riferimento a un utente che non esiste più o non può essere risolto.

Rimossa una notifica PHP dal controllo di modifica dell'attività

Un problema di precedenza dell'operatore nel controllo "modificato da" ha fatto sì che un percorso di fallback non venisse utilizzato come previsto. Quando mancava un timestamp di modifica, il controllo poteva generare un avviso di chiave non definita.

L'espressione ora è racchiusa tra parentesi correttamente. Un timestamp mancante viene trattato come "modificato" e l'avviso PHP non viene più visualizzato nei log.

Sotto il cofano

Per gli amministratori e gli sviluppatori che seguono le nostre procedure interne, questa versione prosegue la migrazione dei percorsi dei dati dei log di attività e traffico verso una gestione degli errori esplicita e strutturata. Errori come un database non disponibile o un'installazione di esportazione non riuscita vengono ora visualizzati prima dell'inizio dell'output, anziché lasciare l'amministratore con un file vuoto e fuorviante.

Anche la gestione dello schema viene consolidata tramite dichiarazioni centralizzate delle tabelle. Questo lavoro supporta il rilevamento delle modifiche allo schema descritto in precedenza e mantiene il sottosistema di log più deterministico man mano che cresce.

Non si tratta di cambiamenti eclatanti, ma sono importanti. Gli strumenti di sicurezza devono comportarsi in modo prevedibile sotto pressione: quando un sito è sovraccarico, quando un'esportazione è di grandi dimensioni, quando i dati preesistenti sono incompleti o quando un amministratore sta cercando di ricostruire quanto accaduto durante un incidente.

Riepilogo

WP Cerber 9.8.3 rafforza i percorsi attraverso i quali i dati esterni raggiungono le schermate di amministrazione di WordPress e le email di sicurezza, rende più affidabili le esportazioni di log di grandi dimensioni e risolve diversi problemi che potrebbero rendere meno precisi i filtri, i link di avviso e la diagnostica PHP.


I'm a team lead in Cerber Tech. I'm a software & database architect, WordPress - PHP - SQL - JavaScript developer. I started coding in 1993 on IBM System/370 (yeah, that was amazing days) and today software engineering at Cerber Tech is how I make my living. I've taught to have high standards for myself as well as using them in developing software solutions.

View Comments
There are currently no comments.