Incident Operations

Manual Malware Elimination

Removing malware from WordPress requires human judgment, not just a scanner running a script.

Automated malware removal tools find what they already know to look for. Sophisticated infections survive scans by hiding in database fields, using encoded payloads that bypass signature detection, and nesting backdoors in locations scanners typically skip. We find everything.

150+websites actively managed
24hresponse guarantee
99.9%uptime monitored

The Gap Between "Scanner Says Clean" and "Actually Clean"

Running a WordPress security plugin and receiving a green "no threats found" report feels reassuring. But that result means the scanner found no threats matching its known-malware database. It does not mean the site is clean.

Modern malware authors are aware that sites run security scanners. They write infections specifically designed to evade them, using encoding techniques that obscure the malicious intent of the code, storing payloads in database tables that file scanners don't examine, and timing certain behaviors to activate only on specific conditions (mobile user agents, referrer strings, certain times of day).

A clean scan result on an actively infected site is a common experience. The scanner isn't lying, it genuinely didn't find anything in its database. The database just doesn't include this particular infection yet.

The Limits of Automated Removal Tools

Automated removal tools exist on a spectrum. At the low end: free plugins that scan files and compare checksums. At the higher end: professional services like Sucuri's automated cleanup that are genuinely effective against common infections.

Neither extreme reliably handles advanced or custom attacks. The free plugin misses sophisticated infections. The automated professional service cleans common malware effectively but still relies on signature databases and automated file comparison, which sophisticated attackers have adapted to evade.

Manual removal means a human reads the code. Not a heuristic algorithm, a person, looking at the PHP, understanding what it does, identifying what shouldn't be there based on context and behavior rather than a signature match.

The Manual Malware Removal Process

- **Full file download:** We download a complete copy of the infected site's file system to inspect it safely outside the live environment.

Full file download

We download a complete copy of the infected site's file system to inspect it safely outside the live environment.

Core file comparison

We compare every WordPress core file against the official WordPress.org release, character for character.

Plugin and theme manual review

We read the code in every active plugin and theme, not just compare checksums, because legitimate-looking files can contain injected malicious logic.

Database table review

We inspect every database table, including `wp_options`, `wp_posts`, `wp_usermeta`, for injected scripts, spam content, malicious options, and rogue accounts.

Server configuration inspection

We review `.htaccess`, `wp-config.php`, and any server-level configuration files for attacker-added rules.

Encoding audit

We specifically scan for encoded payloads using `eval`, `base64_decode`, `gzinflate`, `str_rot13`, the common encoding functions used to disguise malicious PHP.

Post-Mortem Report

Case Study: The Malware That Three Automated Tools Missed

SymptomAn online learning platform had run three different automated malware scanning tools, all returned clean. But visitors were intermittently being redirected to a competitor's site. The redirects happened only when arriving from Google, and only on the first visit.
ResolutionA malicious code block had been injected into the theme's `header.php` file, encoded using a multi-layer `gzinflate/base64_decode` combination. The code checked for the `HTTP_REFERER` header, only executing the redirect when the visitor arrived from a search engine. All three automated scanners had identified the file as legitimate because the code structure matched a known WordPress file pattern, and the encoding was not in their signature databases.
Business Impact
Manual code review identified the encoded block within two hours. The infection was removed and the entry point (an outdated theme file loaded in a non-standard way) was closed. The site has been clean since.

Want results like this? Get a free audit and see what we can fix in 24 hours.

Get a Free Audit

Common questions

Questions answered.

My security plugin says the site is clean. Why do I need manual removal?

Automated scanners compare against known malware databases. Manual review means a human reads every file. Sophisticated infections are specifically written to evade automated detection, manual review catches what scanners miss.

How long does manual malware removal take?

For a standard WordPress site, manual removal takes 4–8 hours. Sites with large media libraries, complex plugin stacks, or multiple backdoors may take longer.

Do you need my site to be offline while you work?

We can work on a live site using a read-first approach, downloading files for inspection before making changes. For active infections that are causing harm to visitors, we recommend putting the site into maintenance mode while we work.

What's included — just the cleanup, or hardening too?

Every manual cleanup includes entry point identification and basic hardening. Full security hardening (2FA, login protection, file permission audit) is available as an add-on or as part of our maintenance plan.

Request WordPress Support.

Whether you need emergency help or ongoing maintenance, submit your website details below. Our WordPress experts will review and respond within 4 hours.

Request received. Our WordPress experts will review your details and respond within 4 hours.
256-bit SSL Secure 30-Day Money-Back No Lock-In Contract
Request WordPress Support