WP Cerber Security 9.9.5
English version: WP Cerber Security 9.9.5
Questa release mira a ridurre la distanza tra un evento di sicurezza e l'impostazione che lo ha causato. Abbiamo ricostruito il modo in cui WP Cerber collega il registro attività all'impostazione specifica alla base di una decisione, corretto due difetti dell'interfaccia utente di amministrazione e rafforzato il modo in cui il plugin gestisce gli URL nell'area di amministrazione. Dietro le quinte, abbiamo anche iniziato a memorizzare gli annunci di amministrazione come dati strutturati e validati anziché come codice HTML renderizzato.
Punti salienti
Ora i link nelle spiegazioni del registro attività ti indirizzano alla pagina corretta. Quando la decisione di WP Cerber è basata su una policy di ruolo, il link apre la scheda del ruolo corretto ed evidenzia il campo esatto, invece di indirizzarti a una pagina delle impostazioni dove dovresti cercarlo manualmente.
Seguendo questo link, l'impostazione di destinazione viene centrata nella finestra di visualizzazione, in modo che la barra di amministrazione di WordPress non la copra più e sia possibile visualizzare le impostazioni adiacenti per avere un contesto più completo.
La sezione Trasporto posta non mostra più il codice HTML grezzo al posto di un collegamento.
Esperienza amministrativa
Le impostazioni dei criteri di ruolo ora sono indirizzabili. In precedenza, un collegamento creato per un'impostazione conteneva un singolo valore nel frammento URL con due significati contrastanti: il campo da evidenziare o la scheda da aprire. Un'impostazione dei criteri di ruolo non poteva mai essere evidenziata, perché lo spazio necessario al relativo campo era già occupato dal puntatore alla scheda. Ora il frammento contiene due dichiarazioni indipendenti, ognuna delle quali indica un elemento ed è utilizzabile anche senza l'altra. In pratica, un collegamento esplicativo [Gestisci] come quello mostrato di seguito diventa un accesso immediato alla scheda del ruolo corrispondente, con il campo corrispondente evidenziato.
I link di scorrimento e flash centrano l'impostazione. La navigazione nativa dei frammenti allinea la destinazione con la parte superiore della finestra del browser, che è esattamente dove si trova la barra di amministrazione. Ora centriamo la riga dell'impostazione che la contiene quando la pagina è pronta e di nuovo dopo che la finestra ha finito di caricare. Il secondo passaggio corregge il riallineamento nativo e gli spostamenti di layout causati dal caricamento ritardato dei contenuti. I contenitori dei campi esterni alle righe delle impostazioni vengono lasciati invariati e, quando il browser segnala una preferenza prefers-reduced-motion , lo scorrimento avviene senza animazione.
Modifiche alla sicurezza
Un sistema di escape URL più rigoroso per l'output amministrativo. Abbiamo sostituito il filtro e la pila di espressioni regolari all'interno crb_escape_url() con un controllo esplicito della forma dell'URL. L'helper ora accetta URL relativi alla radice che iniziano con una singola barra, oltre alle forme HTTP(S), FTP(S) e mailto già supportate. Gli URL relativi al protocollo, le varianti di percorso di rete con barra rovesciata, gli schemi non supportati e altre forme relative continuano a essere rifiutati.
Abbiamo anche smesso di rimuovere virgolette, parentesi angolari e apici inversi dagli URL accettati. L'eliminazione del vecchio sistema di sanificazione ha un vantaggio evidente: i percorsi URL non ASCII rimangono intatti. Il codice UTF-8 non valido non comprime più il risultato dell'escape in un valore di attributo vuoto, perché ora il sistema di escape sostituisce quei byte.
Miglioramenti dell'affidabilità
Gli annunci amministrativi vengono memorizzati come dati strutturati, non come markup. Abbiamo introdotto UI Spec, una forma rigorosamente serializzata della rappresentazione interna di UI Factory di WP Cerber. Invece di memorizzare l'HTML renderizzato, il plugin ora memorizza un documento versionato e validato che viene reinserito in una struttura ad albero dell'interfaccia utente al momento del rendering e passato al renderer attivo.
Correzioni di bug
Solo il primo link di impostazione nel registro attività funzionava. Nella pagina del registro attività, quando venivano visualizzati diversi riepiloghi per eventi che coinvolgevano lo stesso utente e la regola alla base della decisione di WP Cerber era basata sui ruoli, solo il primo link scorreva fino a evidenziare la sua destinazione. Tutti i link successivi aprivano la pagina delle impostazioni basate sui ruoli senza portare all'impostazione desiderata.
HTML grezzo nella sezione Trasporto email. La sezione visualizzava il markup letterale per il link "Disponibile nella versione professionale di WP Cerber" invece di renderizzare un link. L'avviso era stato aggiunto come ancoraggio HTML alla descrizione della sezione e le descrizioni delle sezioni vengono elaborate dal renderer delle impostazioni prima della visualizzazione. Ora le descrizioni delle sezioni rimangono testo semplice e il requisito PRO è rappresentato separatamente come un link di sezione strutturato renderizzato tramite UI Factory. L'escape per le descrizioni viene preservato e i link a livello di sezione vengono renderizzati correttamente.
Riepilogo
Con questo aggiornamento, la procedura di triage diventa più rapida. La spiegazione del registro attività ora indirizza direttamente all'impostazione che ha portato alla decisione, centrata ed evidenziata sullo schermo. La sezione Trasporto posta visualizza correttamente l'avviso PRO e i link di amministrazione vengono gestiti secondo regole più rigorose. Gli annunci vengono memorizzati come strutture validate, quindi i dati errati vengono segnalati in modo visibile anziché silenzioso.
Compatibilità
Questa versione è stata testata con PHP 7.4.33, 8.0.30, 8.1.34, 8.2.33, 8.3.33, 8.4.24 e 8.5.9, e con WordPress 5.8.14, 6.6.6, 6.7.6, 6.8.7, 6.9.6 e 7.1.
