Malicious code and injection attempts
Requests that try to make the site execute code, read files it should not, or manipulate database queries are stopped before they reach WordPress's own handling.
A plugin installed in WordPress and activated with a licence key. It uses the same threat data as the clients, but acts where attacks on a website actually land.
Most attempts against a WordPress site are automated. The same tools test the same weaknesses against thousands of sites at a time.
Requests that try to make the site execute code, read files it should not, or manipulate database queries are stopped before they reach WordPress's own handling.
Systematic probing for known weaknesses in themes and plugins, and for versions with known vulnerabilities, is recognised as scanning and blocked.
Brute force against administrator accounts is stopped. Repeated attempts from the same source are blocked rather than simply failing over and over.
Traffic from addresses already known for attacking other sites is refused outright, whatever that particular request contains.
The plugin is installed like any WordPress plugin and activated with the licence key from the panel. After that it works without you having to configure rules manually.
Each site draws one licence from your pool. If you have several sites you see them all in the panel, each with its own log of what has been stopped.
The plugin adds its own view inside the WordPress admin. There you can see that protection is active, which categories of attack are covered and which addresses have been blocked on this particular site.
If a customer needs access to something being stopped, protection can be paused temporarily, for a set number of hours or until further notice. Logging continues during the pause.
The protection is not a general firewall with a handful of rules of thumb. It builds on a rule set divided by attack type, weighted towards where the attempts actually come from.
The rule set is updated continuously from the core. You do not have to manage the rules yourself.
The rules are not fixed inside the plugin. They are fetched from our core and replaced as the threat picture changes, without you having to update anything.
Every rule update is signed. A response without a valid signature is ignored, so nobody can inject rules of their own along the way.
On a new site the protection can run in log mode first. What would have been stopped is recorded without anything actually being blocked, so false positives can be measured before it is switched on.
Verified search engines are fully exempted, through a signed address list updated daily and matched locally. We trust the real source of the connection, not a browser string that can be forged.
Protection that blocks the wrong visitor costs more than it is worth. So there are several ways to make exceptions, and they apply before any inspection takes place.
Exceptions can be set per site, or centrally for all your sites at once.
Blocks apply locally on the site. Should the core be unreachable, the plugin carries on stopping what it already knows about, and the events are sent in afterwards. An outage at our end does not open your site up.
A firewall in front of the web server sees requests, but not what WordPress does with them. A plugin inside WordPress sees the context: which theme and plugins are installed, which request is aimed at what, and which login attempts are made against which accounts.
That lets the protection tell an ordinary visitor apart from a tool systematically looking for weaknesses — even when they use the same kind of requests.
Create an account, get the plugin and activate it with your licence key.