Releases
Releases
Posted By —

WP Cerber Security 10


English version: WP Cerber Security 10


WP Cerber 10 brengt een groot aantal belangrijke wijzigingen met zich mee voor Traffic Inspector, de malware-scanner, de toegangscontrole voor REST API's en het WordPress-beheergebied. We hebben de manier waarop de plugin omgaat met onbetrouwbare gegevens aangescherpt, de consistentie van de beveiligingscontroles verbeterd en diverse problemen met authenticatie en sessiebeheer opgelost.

Deze release verbetert ook de compatibiliteit met hostingomgevingen waar de PHP mbstring-extensie ontbreekt. Voor beheerders die problemen met e-mailnotificaties willen oplossen, hebben we optionele diagnostische logboekregistratie toegevoegd om te helpen vaststellen waar leveringsproblemen zich voordoen.

Belangrijkste hoogtepunten

  • Veiligere controle van uploads. Traffic Inspector beperkt de controle en verwijdering van bestanden nu tot legitieme uploads, met consistentere controles op verboden bestandsnamen.
  • Verbeterde REST API-beveiliging. WP Cerber past geconfigureerde toegangsbeperkingen nu consistent toe op extra REST API-aanvraagformaten.
  • Betrouwbaardere malware-scanning. Verbeterde verwerking van bestandsnamen beschermt de scannerwerking en de beheerdersinterface, en lost problemen op met bestanden die ongebruikelijke tekens bevatten.
  • Verbeterde beveiliging in het beheerdersgedeelte. We hebben de afhandeling van onbetrouwbare inhoud verbeterd en de toegangscontroles voor gebruikersgegevens aangescherpt.
  • Nauwkeurigere registratie van inlogpogingen. Verlopen en ingetrokken sessies worden nu onderscheiden van daadwerkelijk mislukte inlogpogingen, met nieuwe gebeurtenissen in het activiteitenlogboek voor eenvoudiger onderzoek.
  • Betere compatibiliteit zonder mbstring. De fallback-afhandeling voorkomt diverse kritieke PHP-fouten, terwijl 'Systeemgereedheid' uitlegt welke functionaliteit de extensie nog steeds vereist.
  • Nieuwe configuratieopties. Twee constanten wp-config.php maken e-mailnotificaties en diagnostiek mogelijk, en stellen beheerders in staat de link naar de documentatie te verwijderen van de 403-pagina van WP Cerber.

Nieuwe functies

Diagnose voor ontbrekende e-mailmeldingen

Het oplossen van problemen met ontbrekende beveiligingsmeldingen kan lastig zijn, vooral wanneer testmails wel aankomen, maar bepaalde waarschuwingen niet. De nieuwe constante CERBER_MAIL_DEBUG maakt diagnostische logboekregistratie mogelijk, waarmee kan worden vastgesteld wat een melding heeft geactiveerd en wat er is gebeurd toen WP Cerber probeerde deze te verzenden.

Logboekregistratie is standaard uitgeschakeld. Tenzij de constante expliciet is ingeschakeld, verzamelt WP Cerber geen aanvullende diagnostische gegevens over e-mails. Het inschakelen van logboekregistratie heeft geen invloed op het succes of falen van het verzenden van e-mails.

Raadpleeg deze handleiding: Problemen met WP Cerber-e-mailmeldingen oplossen.

Optie om de link naar de documentatie op de 403-pagina te verbergen.

De ingebouwde 403-pagina van WP Cerber bevat een link "Meer informatie: Documentatie" naar wpcerber.com. Voorheen was het verwijderen van deze link alleen mogelijk door de plugincode aan te passen.

Je kunt het nu verbergen door de volgende constante toe te voegen aan wp-config.php :

 define( 'CERBER_HIDE_403_DOC_LINK', true );

Wanneer deze optie is ingeschakeld, laat WP Cerber de documentatieparagraaf weg van de 403-pagina.

Ingrijpende wijzigingen

REST API-beperkingen voor sites die PATHINFO-permalinks gebruiken

WP Cerber past nu consistentere toegangsbeperkingen voor de REST API toe op sites die permalinks in PATHINFO-stijl gebruiken, inclusief bepaalde serverconfiguraties die geen PATH_INFO aan PHP doorgeven. Afhankelijk van uw bestaande REST API-instellingen kunnen sommige verzoeken die voorheen waren toegestaan, nu worden geblokkeerd.

Controle op verboden bestandsnamen geldt nu ook voor het uploaden van meerdere bestanden.

Traffic Inspector controleert nu verboden bestandsnamen in uploadvelden die meerdere bestanden accepteren, inclusief geneste velden. Bestanden met namen die de bestaande beperkingen schenden, ontvangen een HTTP 403-respons.

Elk verzoek is beperkt tot 100 geüploade bestanden. Verzoeken die deze limiet overschrijden, worden afgewezen en geregistreerd in het activiteitenlogboek.

Abonnementmeldingen voor fouten in cookiehandtekeningen

Authenticatiecookies met ongeldige handtekeningen krijgen nu de nieuwe status "Handtekening van cookie komt niet overeen" in het activiteitenlogboek.

Omdat abonnementen op waarschuwingen overeenkomen met specifieke gebeurtenisstatussen, zullen abonnementen die zijn geconfigureerd voor de statussen die eerder aan deze fouten waren toegewezen, er niet langer mee overeenkomen.

Als u afhankelijk bent van statusgebaseerde waarschuwingen voor mislukte authenticatiecookies, controleer dan uw waarschuwingsabonnementen na de update. Historische logboekvermeldingen behouden hun oorspronkelijke status.

Beveiligingswijzigingen

Veiligere bestandsverwerking tijdens uploadinspectie

Traffic Inspector onderzoekt geüploade bestanden op schadelijke inhoud en verwijdert bestanden die niet aan de beveiligingscontroles voldoen. Om dit correct te laten werken, moet de plugin onderscheid kunnen maken tussen daadwerkelijke uploads en andere gegevens die met een HTTP-verzoek worden meegestuurd.

We hebben deze verwerking aangescherpt, zodat Traffic Inspector alleen bestanden leest en verwijdert die door PHP worden herkend als uploads die bij het huidige verzoek horen. Deze correctie zorgt ervoor dat de bestandsinspectie zich richt op legitieme uploads en voorkomt dat irrelevante bestanden worden beïnvloed door de uploadverwerking.

De bestaande procedure voor het afhandelen van gedetecteerde kwaadwillige uploads blijft van kracht. Traffic Inspector blijft het geüploade bestand verwijderen, de gebeurtenis registreren en een tijdelijke IP-blokkering toepassen.

Consistente validatie van verboden bestandsnamen voor uploads

Beperkingen op bestandsnamen zijn een belangrijk onderdeel van de uploadbeveiliging van Traffic Inspector. Deze release verbetert de manier waarop WP Cerber deze beperkingen toepast op verschillende uploadveldstructuren. Elk geüpload bestand wordt nu individueel gecontroleerd, ongeacht of een verzoek één bestand, meerdere bestanden of geneste uploadvelden bevat. De validatie behandelt de uploadgegevens bovendien consistent, zonder hetzelfde bestand meer dan eens te verwerken.

Om de verwerking van uploads binnen vastgestelde limieten te houden, accepteert WP Cerber nu maximaal 100 geüploade bestanden per verzoek. Verzoeken die deze limiet overschrijden, worden geweigerd met HTTP 403 en geregistreerd onder de nieuwe status "Het toegestane aantal geüploade bestanden is overschreden" . Deze situatie leidt niet tot een IP-blokkering.

Meer consistente toegangscontrole voor REST API's

WordPress ondersteunt verschillende manieren om verzoeken naar de REST API te routeren. De toegangsbeperkingen van WP Cerber moeten consistent worden toegepast op de verzoeken die WordPress herkent, ongeacht de permalinkconfiguratie van de site.

We hebben de afhandeling van REST API-verzoeken bijgewerkt om de consistentie tussen WordPress-routering en de toegangscontroles van WP Cerber te verbeteren. De wijzigingen hebben betrekking op de bestaande instellingen "Toegang tot gebruikersgegevens blokkeren via REST API" en "REST API uitschakelen" .

Veiligere weergave van vergrendelingsinformatie

De redenen voor een accountvergrendeling kunnen informatie bevatten die afkomstig is van onbetrouwbare bronnen. WP Cerber toont deze redenen in verschillende beheerschermen, waar ze als tekst en niet als uitvoerbare bestanden moeten worden behandeld.

We hebben de weergave van de redenen voor blokkeringen op de pagina Blokkeringen, in de dashboardwidgets en in de bijbehorende IP-detailweergaven in het Activiteitenlogboek en de Verkeersinspecteur gecorrigeerd.

De bijgewerkte uitvoerverwerking omvat ook blokkeringen die verband houden met verboden gebruikersnamen. Eerder in de cache opgeslagen IP-gegevens worden na de update niet opnieuw gebruikt. Deze wijzigingen zorgen ervoor dat blokkeringsinformatie veilig wordt weergegeven, terwijl de details die beheerders nodig hebben bij het onderzoeken van geblokkeerde activiteiten behouden blijven.

Voor Cerber.Hub-gebruikers: Elke beheerde website geeft de informatie weer die wordt getoond door de hoofdwebsite van Cerber.Hub. Werk elke beheerde website bij naar WP Cerber 10 om deze correcties in uw hele installatie toe te passen.

Verbeterde afhandeling van bestandsnamen in de malware scanner.

De malware-scanner werkt met bestandsnamen en -extensies uit mappen die onverwachte of ongebruikelijke waarden kunnen bevatten. Deze waarden moeten consistent worden verwerkt wanneer de scanner zijn gegevens opvraagt, rapporten genereert of bestandsinformatie weergeeft in het WordPress-beheergebied.

We hebben de afhandeling van bestandsnamen verbeterd voor verschillende scannerfuncties, waaronder de bestandsviewer, bulkacties en Insights-rapporten.

Bestandsnamen en -extensies worden nu tijdens databasebewerkingen als data behandeld en in beheerdersweergaven als platte tekst weergegeven. Dit voorkomt dat onverwachte waarden scannerrecords beïnvloeden of als opmaak worden geïnterpreteerd.

De wijzigingen verbeteren ook de nauwkeurigheid van de statistieken over bestandsextensies en de verwerking van scanresultaten. Alle extensierecords die door het vorige gedrag werden beïnvloed, worden tijdens de volgende volledige scan gecorrigeerd.

In de cache opgeslagen Insights-rapporten die door eerdere versies zijn gemaakt, worden opnieuw opgebouwd in plaats van hergebruikt.

Strengere toegangsrechten voor gebruikersinformatie

WP Cerber voegt beveiligingsgerelateerde informatie toe aan het WordPress-gebruikersscherm. Toegang tot de onderliggende gebruikersgegevens vereist de juiste WordPress-machtigingen.

We hebben deze zoekopdrachten aangepast, zodat ze nu WP Cerber-managerrechten of de WordPress list_users functionaliteit vereisen.

Bij WordPress multisite-installaties beperken extra lidmaatschapscontroles de toegang tot gebruikersgegevens die, indien van toepassing, bij de huidige site horen. Verzoeken met ongeldige of ongeautoriseerde gebruikers-ID's worden geweigerd.

Verbeterde authenticatie en sessieafhandeling

We hebben de manier waarop WP Cerber omgaat met geweigerde authenticatiecookies en mislukte inlogpogingen registreert, verbeterd.

Wanneer een sessiecookie is verlopen of ingetrokken, verwijdert WP Cerber verouderde authenticatiecookies nu alleen wanneer dit veilig is. Dit voorkomt dat geldige authenticatiegegevens of een actief tweefactorauthenticatieproces worden verstoord.

We hebben ook een interactie tussen sessievalidatie en het bijhouden van mislukte inlogpogingen gecorrigeerd. Echte mislukte inlogpogingen worden nu correct geregistreerd en geteld, zelfs wanneer tijdens hetzelfde verzoek een geweigerde sessiecookie wordt aangetroffen.

Administratieve ervaring

Duidelijker onderscheid tussen sessieproblemen en mislukte inlogpogingen.

Een verlopen sessie betekent niet per se een mislukte aanmelding. Tot nu toe registreerde WP Cerber verlopen of ingetrokken sessiecookies als mislukte aanmeldingspogingen, waardoor het activiteitenlogboek minder nauwkeurig was.

De nieuwe gebeurtenis "Sessiecookie geweigerd" registreert mislukte sessievalidaties apart van mislukte inlogpogingen.

Twee statussen verklaren waarom een sessie is afgewezen:

  • Sessiecookie verlopen: De authenticatieperiode van de cookie is voorbij.
  • Sessietoken niet langer geldig: De sessie wordt niet langer als geldig herkend.

Deze gebeurtenissen verschijnen in de activiteitengroep 'Inlogproblemen' .

Authenticatiecookies met ongeldige handtekeningen worden geregistreerd met de nieuwe status "Cookiehandtekening komt niet overeen" .

Dit onderscheid maakt het gemakkelijker om inlogproblemen te onderzoeken zonder verlopen sessies te verwarren met mislukte inlogpogingen.

Systeemgereedheid legt nu uit waarom mbstring-ondersteuning ontbreekt.

De widget 'Systeemgereedheid' geeft nu een duidelijkere uitleg wanneer de PHP mbstring extensie ontbreekt. De widget identificeert de ontbrekende vereiste, beschrijft de getroffen functionaliteit en legt uit hoe de extensie ingeschakeld kan worden. Een apart bericht behandelt installaties waar mbstring wel beschikbaar is, maar de reguliere expressiefuncties die WP Cerber vereist, niet.

Nauwkeurigere foutmeldingen van malware scanners

We hebben de manier verbeterd waarop de malware-scanner fouten in databases en bestanden rapporteert.

Een databasefout wordt niet langer weergegeven als een ontbrekend bestand. De bestandsviewer toont een passende foutmelding, terwijl bulkbewerkingen "Kan <bestand> niet vinden in de scanresultaten" melden in plaats van de minder informatieve "Onbekend bestand" .

Verbeteringen in betrouwbaarheid

Een elegantere afhandeling wanneer PHP mbstring niet beschikbaar is.

WP Cerber vereist de PHP-extensie mbstring voor volledige functionaliteit. Sommige hostingomgevingen hebben deze extensie echter mogelijk uitgeschakeld of bieden niet alle functies die de plugin verwacht.

Voorheen kon dit leiden tot kritieke PHP-fouten in verschillende onderdelen van een WordPress-website. In sommige gevallen kon een plugin-update op een server zonder mbstring ervoor zorgen dat zowel de website als de inlogpagina ontoegankelijk werden.

De verbeteringen omvatten:

  • Plugin-updates en reguliere websiteverzoeken. De betreffende codefragmenten veroorzaken niet langer herhaaldelijk kritieke fouten wanneer mbstring ontbreekt.
  • Inloggen en registreren. Authenticatie- en registratieverzoeken kunnen doorgaan zonder fatale fouten die worden veroorzaakt door de afhandeling van reguliere expressies voor verboden gebruikersnamen.
  • Installaties in submappen. Websites die in een submap met 'pretty permalinks' zijn geïnstalleerd, zullen niet langer problemen ondervinden vanwege de betreffende functionaliteit.
  • Activiteitsmeldingen. Het matchen van meldingen onderbreekt de WordPress-actie die wordt vastgelegd niet langer.
  • Beheer van meerdere sites. Netwerkbeheerpagina's geven geen foutmeldingen meer tijdens het opzoeken in de betreffende uploaddirectory.
  • Instellingenbeheer. Instellingenfiltering en omleidingen blijven na het opslaan werken, waardoor het bestaande filtergedrag behouden blijft.
  • Verkeersinspecteur. Het verkeerslogboek blijft toegankelijk, waarbij de User-Agent-classificatie indien nodig terugvalt op 'Onbekend' .

Deze wijzigingen verbeteren de fouttolerantie, maar ze heffen de mbstring vereiste niet op.

Zonder de extensie blijft bepaalde functionaliteit beperkt. Regels voor reguliere expressies in de lijst met verboden gebruikersnamen worden overgeslagen, hoewel regels voor exacte overeenkomsten wel blijven werken. Zoekopdrachten naar activiteitswaarschuwingen gebruiken een terugvalmethode zonder de bijbehorende hoofdletterongevoelige Unicode-functionaliteit. De malware-scanner vereist nog steeds mbstring .

Geteste compatibiliteit

We hebben deze release getest met PHP 7.4.33, 8.0.30, 8.1.34, 8.2.35, 8.3.36, 8.4.27 en 8.5.12.

De geteste WordPress-versies zijn 6.6.6, 6.7.6, 6.8.7, 6.9.6 en 7.1.4.

Bugfixes

  • Verlopen of ingetrokken sessies werden ten onrechte als mislukte aanmeldingen geteld. Deze gebeurtenissen verbruiken niet langer het toegestane aantal mislukte aanmeldingen van een IP-adres, dragen niet langer bij aan Citadel- of IP-blokkeringen, genereren geen fail2ban-vermeldingen , activeren geen waarschuwingen voor mislukte aanmeldingen en produceren geen HTTP 403-respons. Er blijft één uitzondering over: het wijzigen van een wachtwoord of het opnieuw hashen ervan tijdens het aanmelden kan de handtekening van een oudere cookie ongeldig maken en ervoor zorgen dat dit als een mislukte aanmelding wordt geteld.
  • Scannerbewerkingen mislukten voor bestandsnamen die aanhalingstekens of backslashes bevatten. Bestanden met deze tekens kunnen nu worden geopend in de bestandsviewer en verwerkt met de opties 'Verwijderen' of 'Negeren'. Berichten voor bulkacties tonen hun namen correct en Insights-extensielinks werken met deze tekens.
  • Scannerlinks werkten niet voor bepaalde speciale tekens. We hebben de verwerking van bestandsnamen en -extensies met tekens zoals & , # , + en % gecorrigeerd. De bestandsviewer en Insights-extensielinks openen nu de bijbehorende resultaten correct.
  • De resultaten van 'Verwijderen' en 'Negeren' waren inconsistent. Voltooide acties verwijderen nu alleen de betreffende rijen uit de resultatenweergave. Bestandsnamen met aanhalingstekens voorkomen niet langer dat het resultatenvenster verschijnt.
  • Ongeldige scannerverzoeken konden PHP-waarschuwingen of kritieke fouten veroorzaken. De scanner verwerkt nu onverwachte bestandsnamen en onjuist geformuleerde verzoekparameters zonder deze fouten te activeren. Ongeldige invoer in bulkverzoeken ontvangt de melding "Ongeldige bestandsnaam in het verzoek" en de bestandsviewer geeft geen dubbele foutmeldingen meer weer na het afwijzen van een ongeldige naam.

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.