WordPress Security · Incident Response · Hardening

Your WordPress site is already a target.

It isn't if, it's when. Our WordPress security services keep it clean, patched and hardened, and when it's hit, we respond before the damage spreads.

Running WordPress? You're in the ~43% of the web that absorbs the most automated attacks, every single day.

This row should not exist. GET /wp-login.php?_w2s=827abb28 is a backdoor.

The stakes

What a hacked site actually costs

A "small" hack rarely stays small. Here's what you lose, in practice.

01

Downtime & sales

Every hour offline is lost orders, and customers who don't come back.

02

SEO & blocklist

"This site may be hacked" in Google, deindexing, and rankings built over years, gone.

03

Data & GDPR

A customer-data breach means legal exposure, disclosure duties and fines.

04

Reputation & trust

Spam redirects, card skimming at checkout, defacement. Your brand pays the bill.

The threat

How they get in

Most attacks aren't targeted. They're bots scanning millions of sites for the same known gap.

Unpatched core & plugins #1

One known vulnerability in an old version is enough. The patch exists, the site just never got it.

Rogue-admin backdoors

Hidden admin accounts that recreate themselves and stay invisible in the dashboard.

Malware & redirects

Code that sends your visitors to phishing or serves malware to everyone but you.

SEO spam & skimming

Hidden spam links that eat your ranking, or skimmers stealing cards at WooCommerce checkout.

This isn't theory. Here's what we saw in August 2026.

● Real incident

The wave of "w2s" admins

Same compromise, site after site: rogue admins named w2s-•••, planted by the WordPress core exploit chain known as wp2shell. Here's how we closed the door.

11 Mar 2026
WordPress 6.9.4

A latent flaw ships

6.9.4 is released. It quietly carries the flaw chain later disclosed as wp2shell. Nobody knows yet.

17 Jul 2026
WordPress 6.9.5

Disclosed and patched

wp2shell goes public (CVE-2026-63030 + CVE-2026-60137). 6.9.5 and 7.0.2 close it. A working exploit follows within days.

03 Aug 2026
still on 6.9.4

The door opens

Sites that never updated, ~3 weeks after the fix, get hit. The exploit creates rogue admins (w2s-•••) and plants plugins.

How it worked: an anonymous request abused a REST API batch-route confusion (CVE-2026-63030) to reach an unauthenticated SQL injection in WP_Query (CVE-2026-60137). Chained, they escalated to remote code execution that created an administrator account and uploaded a malicious plugin. That account was the w2s-••• user. Those plugins were the payload.

What we did

  1. Removed the unauthorized administrators immediately.
  2. Updated core, closing the SQL-injection vector itself.
  3. Rotated keys/salts in wp-config.php and changed the DB password. Stolen sessions invalidated.
  4. Found & deleted the attacker-planted plugins. One site needed root access to remove the attacker's folder.
  5. Checked for persistence in mu-plugins, autoloaded options and cron, so the backdoor couldn't return.
The lesson

Deleting the user and updating isn't enough. This class of backdoor rebuilds itself from a hidden persistence point. Without a reinfection check, a site "gets cleaned" and re-infects within days.

Sources WordPress 6.9.5 release notes · WordPress advisory (wp2shell) · Tenable: WP 6.9.x < 6.9.5
Dates & vulnerabilities verified against official sources. Client names & indicators anonymized.
The method

Five steps, not one plugin

Security isn't a button. It's a process that runs continuously.

01 / Identify

Audit

We scan the site: what's exposed, what's already compromised, what version it runs.

02 / Protect

Harden

WAF, least-privilege, 2FA, wp-login lockdown, correct config, always patched.

03 / Detect

Monitor

File-integrity monitoring & alerts on login and traffic anomalies, 24/7.

04 / Respond

Respond

Cleanup, backdoor removal, persistence check, blocklist delisting.

05 / Recover

Recover

Secure backups, tested restore and post-incident re-hardening.

Packages

Pick your level of protection

Our WordPress security services run from emergency rescue to continuous, managed protection.

Emergency

My site got hacked

Fast response, full cleanup, back online.

  • Malware & backdoor removal
  • Persistence / reinfection check
  • Google blocklist delisting
  • Post-clean hardening
Get help now
One-off

Audit & Hardening

Full assessment and closing the gaps.

  • Security audit & report
  • Core / config / user hardening
  • WAF & 2FA setup
  • Backups & recovery plan
Request a quote
Who does the work

Work by a team that's cleaned up the mess

FD

FDesign

WordPress Engineering & Security · Athens

We build, maintain and harden WordPress & WooCommerce sites since 2015, based in Athens. We work hands-on on incident response, from rogue-admin backdoors to cleanups that needed root access, and on day-to-day maintenance of dozens of production sites.

Since 2015 ~300 clients WordPress · WooCommerce Athens, GR

"Excellent team, with the know-how to meet demanding clients' needs. Great support too!"

Danae · FDesign client

"Fast, effective cooperation at a reasonable cost."

Constantine · FDesign client

"Professionalism that isn't a given in this industry. Thank you."

Anastasia · FDesign client
FAQ

What people ask before starting

Isn't a security plugin like Wordfence enough?

A plugin is a tool, not a plan. It gives you a firewall and scanner, but it doesn't patch for you, doesn't check for persistence after a hack, and won't act when something real slips through. Managed security is the tools plus someone who reads them and responds.

I'm on managed hosting, aren't I covered?

Managed hosting protects the server, not necessarily your site. A vulnerable plugin, a weak password or an unpatched core are still on you. Most compromises enter through the application, not the server.

I'm already hacked. What now?

Don't panic and don't randomly delete files, you may lose the trail. Contact us for an emergency cleanup: we remove the malware, check for hidden backdoors that would bring it back, and get you off blocklists.

How fast do you respond to an emergency?

Monthly-plan clients get priority with an agreed response time (SLA). For non-clients, we start with an immediate assessment and give you a realistic timeline before we begin.

Do you only work with WordPress?

Our specialty is WordPress & WooCommerce, that's where we know every corner. We also cover the surrounding stack: server, Cloudflare, DNS, email.

● Start here

Every day on an unpatched core is a door left open.

Start with a free security audit. We show you exactly where you're exposed, no commitment.

✓ Guaranteed cleanup. If it's not clean, you don't pay.