Releases
Releases
Posted By

WP Cerber Security 9.8.3


English version: WP Cerber Security 9.8.3


En un coup d'œil

Nous avons optimisé le traitement des données externes et des données fournies par les utilisateurs via l'analyseur de plugins, les e-mails de sécurité et l'exportation des journaux. Nous avons également repensé l'exportation des journaux d'activité volumineux afin d'améliorer leur comportement en cas de forte sollicitation de la mémoire et corrigé plusieurs problèmes qui nuisaient à la précision du tri et de la génération de rapports.

Aucune modification de configuration n'est requise après la mise à jour, mais il est conseillé d'installer rapidement cette version si vous utilisez les alertes d'activité, les e-mails de code PIN d'authentification à deux facteurs ou les exportations volumineuses de journaux de sécurité.

Points clés

  • Renforcement de la sécurité des messages du scanner de plugins et des courriels de sécurité sortants.
  • Un nouveau résumé par plage de dates dans les exportations de journaux d'activité pour faciliter les analyses forensiques.
  • Exportations de journaux plus prévisibles et moins gourmandes en mémoire pour les journaux d'activité et de trafic volumineux.
  • Meilleur comportement lorsque les exportations sont exécutées derrière Nginx.
  • Corrections apportées aux e-mails d'alerte, au filtrage de Traffic Inspector, à la gestion de la mémoire lors de l'exportation des journaux et aux notifications d'administration.

Renforcement de la sécurité

Les messages de changement de propriétaire du scanner sont désormais échappés dans leur contexte approprié.

WP Cerber récupère les métadonnées de propriété des plugins depuis le répertoire de plugins de WordPress.org et les affiche lorsqu'un plugin installé devient propriétaire. Cette source de données est généralement fiable et le risque de métadonnées malveillantes est faible, mais il est fortement déconseillé d'insérer des métadonnées externes directement dans l'interface d'administration de WordPress sous forme de code HTML brut.

Cette mise à jour achemine le message de changement de propriétaire et les liens vers le profil du propriétaire via l'interface utilisateur de WP Cerber. Les URL et les noms d'affichage des profils sont désormais échappés dans leur contexte de sortie respectif avant d'être rendus. Ceci corrige une vulnérabilité XSS potentielle stockée dans les résultats d'analyse, sans modifier le libellé du message affiché aux administrateurs.

Les noms d'affichage contrôlés par l'utilisateur ne peuvent plus ajouter de destinataires d'e-mails supplémentaires.

Les champs de profil bruts tels que le prénom, le nom et le nom d'affichage ont été utilisés pour construire les chaînes de destinataires d'e-mails pour wp_mail() . Étant donné que les destinataires sous forme de chaînes séparées par des virgules peuvent être interprétés comme plusieurs adresses, un nom de profil mal choisi pourrait ajouter un destinataire non souhaité aux e-mails contenant le code PIN d'authentification à deux facteurs ou aux notifications d'alerte d'activité.

Nous avons ajouté un filtre anti-spam dédié aux noms d'affichage des adresses e-mail et l'avons appliqué aux deux points d'envoi. Ce filtre supprime les caractères importants pour l'injection de destinataires, notamment les virgules, les guillemets, les barres obliques inverses, les chevrons et les caractères de contrôle. WP Cerber ne permet plus que des noms d'affichage de profils malveillants ajoutent des destinataires indésirables à ces e-mails de sécurité.

Les exportations de journaux sensibles indiquent désormais aux clients de ne pas stocker les fichiers téléchargés.

Les exportations des journaux d'activité et de trafic envoient désormais un en-tête de réponse Cache-Control: no-store . Ceci indique aux navigateurs et aux caches intermédiaires compatibles de ne pas conserver de copie du téléchargement du journal de sécurité.

C'est important car les exportations de journaux peuvent contenir des données d'analyse forensique : adresses IP, métadonnées des requêtes, enregistrements d'activité et autres détails que les administrateurs peuvent utiliser lors d'enquêtes sur des incidents. Le nouvel en-tête réduit le risque que ces données restent dans des caches hors du contrôle direct de l'administrateur WordPress.

Améliorations apportées à l'exportation des journaux

Les exportations de journaux d'activité indiquent désormais la période couverte.

L'en-tête du fichier CSV exporté du journal d'activité n'affichait auparavant que les filtres actifs. Il inclut désormais deux lignes supplémentaires indiquant les horodatages des enregistrements les plus anciens et les plus récents dans l'ensemble exporté.

Lorsque vous transmettez un fichier exporté à un collègue ou que vous l'associez à un rapport d'incident, la période concernée est désormais indiquée directement dans le fichier. Cela simplifie l'analyse et le tri des données, notamment lorsqu'il existe plusieurs fichiers exportés pour un même site web ou une même enquête. Si aucune ligne ne correspond aux filtres sélectionnés, la période est ignorée.

Les exportations de journaux volumineux sont désormais traitées en une seule passe.

L'exportation du journal d'activité réexécutait auparavant la même requête une fois par segment, avec un décalage croissant. Sur les grands ensembles de données, ce modèle peut se dégrader en une analyse à décalage profond, ce qui rend les exportations plus lentes et plus fragiles à mesure que le journal grossit.

L'exportation lit désormais les lignes correspondantes en une seule passe, sans mise en mémoire tampon. Cela stabilise l'utilisation de la mémoire et libère proprement la connexion à la base de données, que le téléchargement se termine normalement ou s'interrompe prématurément. Si vous avez déjà constaté un ralentissement ou un blocage lors d'une exportation importante, c'est ce mécanisme, désormais amélioré, qui en était à l'origine.

Temps de réponse du serveur plus rapide derrière Nginx

Les exportations envoient désormais l'en-tête X-Accel-Buffering: no . Lorsque Nginx est placé devant PHP-FPM, il peut sinon mettre en mémoire tampon la réponse complète avant de la transmettre au navigateur. Cet en-tête indique à Nginx de transmettre les données par segments au fur et à mesure de leur production.

Cet en-tête est spécifique à Nginx. Apache et les autres proxys l'ignorent sans conséquence ; la modification améliore donc le comportement là où elle s'applique sans nécessiter de configuration supplémentaire ailleurs.

Améliorations de la fiabilité

Gestion plus cohérente des schémas de base de données

Les définitions des tables de journalisation proviennent désormais de déclarations centralisées et non plus de requêtes SQL CREATE TABLE intégrées. Cela garantit la cohérence entre les nouvelles installations et les mises à niveau, et offre à WP Cerber une base plus fiable pour détecter les écarts de schéma dans les installations existantes.

Concrètement, si une table de journalisation s'écarte de sa structure attendue, WP Cerber est plus à même de détecter et de corriger cette anomalie. Bien que cette fonctionnalité ne soit pas visible dans l'interface utilisateur, elle renforce la fiabilité du sous-système de journalisation dont les administrateurs ont besoin pour la consultation, l'exportation et l'analyse des incidents.

Décodage plus sûr des données de requête stockées

Les données des champs de requête stockées peuvent varier selon les anciennes installations et les anciens journaux d'événements. Certains enregistrements peuvent contenir des valeurs nulles, des valeurs vides, du JSON invalide ou des charges utiles sérialisées non prises en charge.

WP Cerber gère désormais ces cas de manière uniforme en les traitant comme des tableaux vides, évitant ainsi les avertissements et les résultats incohérents. Ceci est particulièrement avantageux pour les sites ayant conservé des données de journalisation sur plusieurs versions antérieures, où le format des données de requêtes stockées peut différer de celui utilisé par les versions actuelles.

Corrections de bugs et améliorations

Journal de l'inspecteur du trafic : Le filtre « Erreur logicielle » se combine désormais correctement avec les autres filtres.

Dans le formulaire de recherche avancée, la case à cocher « Toute erreur logicielle » pouvait se combiner incorrectement avec d'autres filtres. Des requêtes présentant des erreurs PHP enregistrées pouvaient ainsi apparaître même si elles ne correspondaient à aucun autre critère de recherche.

Les groupes de filtres sont désormais évalués selon la priorité appropriée. Les résultats de recherche dans le journal de l'inspecteur de trafic respectent toutes les conditions que vous avez définies, ce qui rend le tri plus prévisible lors de la réduction du trafic bruyant.

La limite de mémoire d'exportation des journaux est désormais interprétée correctement.

Dans certains environnements, une limite de mémoire numérique, telle que 512 peut être appliquée en octets plutôt qu'en mégaoctets. Par conséquent, WP Cerber pourrait ne pas parvenir à augmenter la mémoire disponible pour les opérations gourmandes en ressources, et les exportations importantes pourraient s'interrompre prématurément.

La valeur est désormais interprétée correctement, ce qui rend le comportement à l'exportation plus fiable sur les configurations qui fournissent des limites de mémoire numériques.

Les e-mails d'alerte d'activité renvoient désormais vers la vue du tableau de bord appropriée.

Les e-mails de notification d'alerte d'activité contiennent des liens vers le tableau de bord WP Cerber permettant aux administrateurs de consulter les événements à l'origine de l'alerte. Ces liens étaient construits à partir d'une association de valeurs susceptible de désynchroniser les paramètres, ce qui pouvait entraîner l'affichage d'une valeur de filtre incorrecte.

Par exemple, un filtre IP pourrait recevoir une limite de plage d'adresses IP au lieu de la valeur attendue. Chaque paramètre de requête est désormais associé à sa valeur correcte, ce qui permet aux liens d'alerte de vous diriger plus efficacement vers les événements qu'ils décrivent.

La correspondance des chaînes de recherche d'alertes identifie désormais le bon utilisateur

La correspondance des chaînes de recherche d'utilisateurs dans la distribution des alertes reposait sur un appel pouvant renvoyer un objet utilisateur même pour un ID utilisateur inexistant. WP Cerber recherche désormais l'utilisateur associé à l'événement enregistré et se prémunit contre les utilisateurs manquants.

Cela permet aux règles d'alerte basées sur la recherche de correspondre au compte visé et d'éviter les comportements d'alerte trompeurs lorsque les données d'événement font référence à un utilisateur qui n'existe plus ou qui ne peut être résolu.

Suppression d'une notification PHP lors de la vérification des modifications d'activité

Un problème de priorité des opérateurs dans la vérification de la date de modification empêchait l'utilisation d'un chemin de repli comme prévu. En l'absence d'horodatage de modification, la vérification pouvait générer une erreur de clé non définie.

L'expression est désormais correctement entre parenthèses. L'absence d'horodatage est interprétée comme une modification, et l'avertissement PHP n'apparaît plus dans vos journaux.

Sous le capot

Pour les administrateurs et les développeurs qui suivent nos procédures internes, cette version poursuit la migration des chemins d'accès aux données des journaux d'activité et de trafic vers une gestion des erreurs explicite et structurée. Les défaillances telles qu'une base de données indisponible ou une configuration d'exportation ayant échoué sont désormais signalées avant le début de la génération des données, évitant ainsi à l'administrateur de se retrouver avec un fichier vide source de confusion.

La gestion des schémas est également consolidée autour de déclarations de tables centralisées. Ce travail facilite la détection des dérives de schémas décrite précédemment et assure un meilleur déterminisme du sous-système de journalisation malgré son expansion.

Ce ne sont pas des changements spectaculaires, mais ils sont importants. Les outils de sécurité doivent se comporter de manière prévisible sous pression : lorsqu’un site est saturé, lors d’une exportation volumineuse, lorsque les données existantes sont imparfaites ou lorsqu’un administrateur tente de reconstituer le déroulement d’un incident.

Résumé

WP Cerber 9.8.3 renforce les voies par lesquelles les données externes atteignent vos écrans d'administration WordPress et vos e-mails de sécurité, rend les exportations de journaux volumineux plus fiables et corrige plusieurs problèmes qui pourraient rendre le filtrage, les liens d'alerte et les diagnostics PHP moins précis.


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.