Finds the malware every other scanner misses.

Most scanners check your files against a list of known malware — and stop. MalCare reads everything — every file, every database table, every plugin, every cron — with AI that recognizes malware by its behavior, not its face. On our servers, so your site never feels a thing.

$ malcare.com/scan — no plugin, no signup · results in ~60 seconds

400,000+sites protected
2M+files scanned / day
0.2%false positives
ONE SITE · SIX PLACES TO HIDEFIG. 0 · THE DEEP SCANCORE FILESPLUGINSTHEMES/UPLOADSDATABASECRON✓ cleanFOUND · injected linewp-settings.php · line 41FOUND · fake pluginwp-compat/ · exists in no repoFOUND · web shelllogo.png · PHP inside an imageFOUND · payloadwp_options · row 8412FOUND · re-infectorruns nightly · 03:12found — pinned to exact file, row, or cronwhere malware hides
deep scanlive
seeing symptoms?check now

Think you've been hacked?

Redirects you didn't create, spam in your search results, a warning from Google. Run a free scan now — no plugin, no signup, results in about a minute.

Check my site now

Trusted by 400,000+ websites across 120 countries

Intel
Toshiba
eBay
Manthan
SiteCare
NMU
01The problem

Malware's first job isn't damage. It's staying hidden.

Modern malware shows you a perfectly healthy site — and shows its real face only to your visitors, or to Google. It lives where nobody looks, and it waits. 43.5% of WordPress hacks are only discovered after the damage is done.

FIG. 1The same page · two audiences · cloaked malware
WHAT YOU SEE · LOGGED IN AS ADMINWHAT GOOGLE SEESyoursite.comlooks fine ✓yoursite.com302 → pharma-shop.examplehidden pharma links —visible only to crawlersif ( is_admin() ) { show_clean_site(); } else { inject_spam(); redirect_visitor(); }

Read: a scanner that "visits your site like a visitor" gets served the clean version. You cannot find cloaked malware without reading the code itself.

FIG. 1Cloaked malware
1.1

What you see

A perfectly normal site — cloaked malware shows admins the clean version.

LOOKS FINE
1.2

What Google sees

Hidden pharma links and a redirect to a spam domain — served only to crawlers and visitors.

302 → SPAM
1.3

The trick

One line of code checks who's asking before deciding which site to show.

CLOAKING

A burglar who trips the alarm is easy. The one to worry about has been living in the attic for months — the average infection sits undiscovered for 180 days.

Expand: how cloaking actually works

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.

02Off-server scanning

A scan this deep would crush your server. So it never touches it.

Every file and every database table is read and analyzed on MalCare's servers — no CPU spike, no timeout, no slowdown of any kind. Depth isn't a setting; it's what off-server architecture makes possible.

FIG. 2Two architectures · same scan depth attempted
ON-SERVER SCANNERMALCARE — OFF-SERVERYOUR HOSTING SERVERYOUR SITESCANNER (PLUGIN)reads every file · hereCPU 92%during scanthe scan competes with your visitors — so it skims, samples, or slows you downYOUR SERVERYOUR SITEbaselineduring scansyncMALCARE SERVERSSCANNERL1 · L2 · L3every file · every tableno CPU spike · no timeout · no slowdown of any kind

Read: on-server scanners can't afford to look everywhere — every file they read costs your visitors performance. We read everything, because it costs your site nothing.

FIG. 2Two architectures
2.1

On-server scanner

Runs as a plugin on your hosting — CPU spikes past 90%, the scan competes with your visitors, so it skims or slows you down.

CPU 92%
2.2

MalCare — off-server

Your site syncs to our servers; all three scan layers run there. Every file, every table — your CPU stays at baseline.

BASELINE
03The gap

Signature scanners find yesterday's malware. Hosts find almost none.

A signature scan is a mugshot lineup — it catches malware already on a wanted poster. Rewrite one character and it walks straight past. And your host's scanner protects the host's infrastructure, not your WordPress site.

FIG. 3The 50-hack test · share of infections detected
malcare91%
wordfence61%
sucuri sitecheck~37%
typical host scanWP layer: not scanned

50 recent real-world infections, replayed against each scanner · our test · 2026

FIG. 4Why the numbers differ · mugshots vs behavior
SIGNATURE APPROACH · A MUGSHOT LINEUPMALCARE · BEHAVIOR RECOGNITIONKNOWN-MALWARE LIST01 · eval(base64_decode(02 · preg_replace('/.*/e'03 · @assert($_REQUEST[eval(base64_decode('aGFjaw=='))✓ CAUGHT · entry 01$x='ev'.'al'; $x($payload);✕ MISSEDSITEinfectedone character changed → invisible to the listBEHAVIOR FINGERPRINT→ writes an executable file→ hides itself from admins→ calls a remote host+ 100 more signalseval(base64_decode('aGFjaw=='))✓ CAUGHT · behavior match$x='ev'.'al'; $x($payload);✓ CAUGHT · same behaviordifferent faces · same behavior · both flagged

Read: a signature list can only grow as fast as humans add mugshots. Behavior doesn't need a mugshot — the second variant is caught the first time it's ever seen.

FIG. 4Mugshots vs behavior
4.1

Published exploit

On the known-malware list — both approaches catch it.

BOTH CATCH
4.2

Same payload, re-encoded

One character changed. Signature scanners: no match, walks past. MalCare: same behavior — writes a file, hides, calls home — caught.

ONLY MALCARE

Signature matching is useful — it's our first layer too. It's just nowhere near enough on its own.

04The method

Every scan runs three layers. Malware has to beat all three.

Signatures catch the known. Integrity checks catch the tampered. Behavioral AI catches the never-seen-before. If any layer flags, the scan flags.

L1

Signature matching

Every file compared against a continuously updated database of known malware — backdoors, shells, injected scripts, SEO spam. The method other scanners end with is where we start.

layer 1 · known-malware patterns
// continuously updated pattern database
scan: /wp-content/uploads/x.php
hit: eval(base64_decode($_POST['k']))
FLAGGED · matches known backdoor

the fast pass — catches everything already known

L2

File integrity

Core, plugin, and theme files verified against official repository checksums. A single injected line flags — which catches supply-chain attacks before any signature for them exists.

layer 2 · checksum vs official repository
wp-includes/functions.php
expected: sha256 9f2c…e1
actual:   sha256 41b7…9a
+ line 2041: include '/tmp/.cache.php';
FLAGGED · core file modified

one injected line — flagged, no signature needed

L3

AI behavioral analysis

100+ signals recognize malware by what code does — AI-generated code, database-resident payloads, scripts that only fire for certain visitors. Detection by behavior, not by face.

layer 3 · behavioral signals (100+)
entropy:   7.9 / 8.0 · packed
writes:    /uploads/.x.php · executable
condition: runs only if !is_admin()
outbound:  hxxp://cdn-metrics.example
FLAGGED · write → hide → call home

no signature required — behavior is enough

FIG. 5The gauntlet · different malware dies at different gates
L1 · SIGNATUREL2 · INTEGRITYL3 · BEHAVIOR01 · known backdoor02 · supply-chain injection03 · AI-obfuscated payloadCLEAN FILEFLAGGED · L1FLAGGED · L2FLAGGED · L3REPORTCLEAN ✓malware — flagged at the first layer that recognizes itclean code — passes all three, reported clean

Read: no single method catches everything — that's the point of running three. Whatever one layer misses, the next is built to catch.

FIG. 5The gauntlet
L1

Signature

Known backdoors and shells die here.

FLAGS THE KNOWN
L2

Integrity

Tampered core, plugin, and theme files die here — even one injected line.

FLAGS THE TAMPERED
L3

Behavior

Never-seen-before and AI-generated malware dies here — caught by what it does.

FLAGS THE UNKNOWN
Expand: what "100+ signals" actually means

Signals are measurable properties of code and data: entropy (is this packed or encoded?), reconstruction (does a string assemble into a callable?), placement (executable code where none belongs — an image, a database row, an option field), conditionality (does it behave differently for admins vs visitors?), and network behavior (does it call out, and to where?). No single signal convicts; the model weighs them together, which is how it stays at a 0.2% false-positive rate.

Our detection methodology is published, so anyone can audit how it works. We think a scanner you're trusting with your site should be able to show its reasoning.

05Coverage

There is nowhere on a WordPress site we don't look.

Malware doesn't stay in files anymore. It registers fake plugins, hides PHP inside images, writes itself into database rows, and schedules crons to restore itself after cleanup. Coverage is what decides whether it's found.

FIG. 6Where each scanner type actually looks
hiding placemalcaresignature scannersremote scannershost scans
WordPress 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
scanned in full partial○ not scanned
6.1

The fake plugin

A folder named wp-compat that exists in no repository. It has one job: keep a door open.

CAUGHT · L2+L3
6.2

The image that isn't

logo.png opens with <?php. Browsers see a broken image; the attacker sees a shell.

CAUGHT · L3
6.3

The database resident

A base64 payload inside wp_options, injected into every page at render time. No file ever changes.

CAUGHT · L3
6.4

The re-infector

A cron that quietly restores the malware every night at 03:12 — why hacks "keep coming back."

CAUGHT · L3
06Precision

Not "you have malware." This file, this line, this table, this row.

A vague warning creates panic. An exact location creates action — and it's what makes safe, surgical removal possible: the malware goes, your content stays.

FIG. 7A scan report · click a detection to inspect it
scan report · yoursite.com4 detections
Detection detail
LOCATIONATTYPECAUGHT BY

0.2% false-positive rate across all scans — when we flag it, it's malware. And every removal runs a safety check before anything is touched: one-click cleanup takes out the malware, never your content.
07False alarms

When we say you're hacked, you're hacked.

The industry's quiet problem isn't just missed malware — it's phantom malware. Crude scanners flag whatever they can't understand, and every false alarm costs you something real: a night of worry, hours of checking, an upgrade or an expert you never needed. 0.2% false positives across all scans — the fewest false alarms in WordPress security.

FIG. 8Two alerts · what each one costs you
A CRY-WOLF SCANNERA MALCARE VERDICT⚠ 47 suspicious files foundno locations · no evidence · "upgrade to see details"cost 01 · a night convinced your site is hackedcost 02 · hours comparing files against forum threadscost 03 · an upgrade — or an expert — you didn't needRESULT: NOTHING WAS WRONG…and the next alert — maybe the real one — gets ignored.1 detection · CRITICAL/wp-content/uploads/2024/logo.png · line 1 · evidence attachedstep 01 · 100+ signals agree — no single test convictsstep 02 · exact file, line, and evidence in the alertstep 03 · safety-checked one-click removal, readyRESULT: IT WAS REAL0.2% false positives — an alert here means action.

Read: a missed detection hurts you once. A false alarm hurts you every time it fires — and it fires a lot more often.

FIG. 8What a false alarm costs
8.1

The vague alert

"47 suspicious files found. Upgrade to see details." No locations, no evidence.

COSTS YOUR SLEEP
8.2

The spiral

Hours comparing files against forum threads, trying to be your own analyst.

COSTS YOUR HOURS
8.3

The spend

An upgrade — or an expert — paid to tell you nothing was wrong.

COSTS YOUR MONEY
8.4

A MalCare alert

Exact file, line, and evidence — 0.2% false positives. When it fires, act.

MEANS ACTION

The most expensive thing a false alarm takes isn't money — it's your trust in the next alert. A scanner that cries wolf trains you to ignore the wolf.

Expand: why crude scanners cry wolf

A signature-fragment match can't tell an encoder in a legitimate caching plugin from a packer in malware — so signature-based tools flag both and let you sort it out, which is why they're notorious for false-positive notifications. Host scanners lean the same way: flagging aggressively protects their infrastructure and liability, while the investigating is left to you. And a vague "suspicious files found" alert pairs a little too conveniently with a paid upgrade to see the details.

MalCare's model works the other way: no single signal convicts. 100+ signals are weighed together, ambiguity triggers deeper analysis on our side — not an alarm on yours — and what reaches you is a verdict with evidence, not homework.

08Provenance

Ten years of watching malware. Built into one scanner.

The scanner wasn't built in a sprint. It was built on 240,000+ analyzed websites, 2.5 years of research, and training on millions of real infections — by the team that has secured WordPress since 2011.

FIG. 9How the scanner came to be · and how it keeps learning
2011securing WordPress · BlogVault240,000+ sites analyzed2.5 years of researchbehavioral modeltrained on millions of infectionsTODAY400,000+ sites400,000+ sites protectednew malware surfacesmodel retrainedevery site gets sharperthe flywheel

Read: every infection found anywhere on the network becomes training data everywhere. Scale isn't a vanity metric — it's why detection keeps improving.

FIG. 9The build, in brief
9.1

2011

Securing WordPress with BlogVault.

THE FOUNDATION
9.2

The research

240,000+ websites analyzed over 2.5 years; model trained on millions of real infections.

THE SCANNER
9.3

Today

400,000+ sites — every infection found anywhere becomes training data everywhere.

THE FLYWHEEL

Every infection we clean anywhere makes the scanner sharper everywhere. 1,500+ sites cleaned every month — each one is training data.

09The arms race

Malware is written by AI now. Signature lists never stood a chance.

Attackers generate thousands of variants of one payload — every copy unique, no shared signature. But every variant still has to do the same things. Behavior is the one thing malware can't disguise.

FIG. 10One payload · a thousand faces
ONE PAYLOAD · 24 GENERATED VARIANTS (OF THOUSANDS)eval(b64…$x='ev'.'al'assert($_Rgzinflate(chr(101).c\x65\x76\x61str_rot13(create_fn($GLOBALS['array_map(call_user_fpreg_re(/epack('H*'$_REQUEST[hex2bin('6strrev(')laurldecode(extract($_$$k($_POSTinclude($_ob_start('Reflectionfile_put_cbase64_dec✓ = the only two on any signature listSIGNATURE LIST2 / 24 caught22 walk straight pastBEHAVIOR FINGERPRINTwrite → hide → call home24 / 24 caughtincluding variants generated after this scan shippedevery variant is unique code — and identical behavior.

Read: AI made writing new malware faces free. It didn't change what malware has to do — and doing is what we detect.

FIG. 10One payload · a thousand faces
10.1

Signature list

24 AI-generated variants of one payload — only 2 are on any list. 22 walk straight past.

2 / 24 CAUGHT
10.2

Behavior fingerprint

Every variant still has to write, hide, and call home — so every variant matches.

24 / 24 CAUGHT

The attacker's AI has to fool ours only once. Ours learns from every attempt on 400,000+ sites.

10Telemetry

Measured, not claimed.

Detection numbers from the live network — not a brochure.

0sites protected · 120 countries
0files scanned every day
0minutes to detection
0false positives · all scans
0sites cleaned / month

FIG. 3 (RECAP) — the 50-hack test

malcare91%
wordfence61%
sucuri sitecheck~37%

same 50 infections · three scanners · one variable

FIG. 11 — found across the network, live

detection feedlive

Point-in-time figures as of July 2026 · refreshed monthly

11The free scanner

Not sure? Know in 60 seconds.

Enter your URL. We run a deep scan on our servers — no plugin, no signup, no credit card. If it's clean, sleep well. If it's not, you'll know exactly what we found, and exactly what to do next.

FIG. 12The free scan · start to verdict
01 · ENTER YOUR URLyoursite.comno plugin · no signupno credit card02 · DEEP SCAN — ON OUR SERVERSfilespluginsdatabasecrons~60 seconds · every layerCLEAN ✓timestamped report — files checked,tables read, every layer coveredMALWARE FOUNDexact locations + a cleanup path —one-click removal, or experts if blacklisted
FIG. 12The free scan
11.1

Enter your URL

No plugin, no signup, no credit card.

10 SECONDS
11.2

Deep scan on our servers

Files, plugins, database, crons — every layer.

~60 SECONDS
11.3

The verdict

A timestamped clean report — or exact locations and a cleanup path.

KNOW EITHER WAY
Want it daily?30-second install · first scan in ~2 minutes · automatic deep scans + one-click cleanup on paid plans.

A free scan is a snapshot · continuous protection scans every day and removes what it finds

12Always watching

We find it first — before Google, before your host, before the damage.

Scans run automatically, on a schedule matched to what your site does — and detection lands in minutes once a scan runs. If anything is wrong, you get an alert while it's still a small problem, not a warning label or a suspension email.

FIG. 13Who finds it first · alert vs consequence
HOUR 1DAY 1WEEK 1LATERMALCARE · HOURLYMALCARE · DAILYMALCARE · WEEKLYYOUR VISITORSGOOGLEYOUR WEBHOSTfound ≤ 1 hour · alert sent · checkout never unwatchedfound ≤ 24 hours · alert sentfound ≤ 7 days · alert sent · freecomplaints & lost sales — they tell you"Deceptive Site Ahead" · days–weeks latera suspension email — site already offlinedamage compounds the whole time →an alert — from a scan working for youa consequence — from someone else

Read: without a scanner, "detection" is whoever punishes you first. The cadence you choose decides how long malware can exist on your site at all.

FIG. 13Who finds it first
A

MalCare — hourly / daily / weekly

Found within the hour, the day, or the week — always ending in an alert to you.

AN ALERT
B

Everyone else

Visitors complain, Google shows "Deceptive Site Ahead" days–weeks later, your host emails a suspension.

A CONSEQUENCE
12.1

Personal sites & blogs

A full deep scan every week, with an alert if anything is ever wrong — free, forever.

EVERY 7 DAYS · FREE
12.2

Business & brochure sites

Your site is your storefront window. Daily automatic deep scans keep it never more than a day from a verdict.

EVERY 24 HOURS
12.3

Ecommerce & membership sites

Checkout pages and customer data can't wait overnight. Hourly scans mean an infection's maximum lifespan is one hour.

EVERY HOUR

Every scan ends one of two ways: a clean report you never need to read — or an alert that reaches you first. Before Google. Before your host. Before the damage.

13Voices

Trusted by the people who fix hacked sites.

Real customers, real infections found — quotes from our case studies.

"

I had been running iThemes, WordFence & Sucuri, but they kept getting hacked. Then I installed MalCare, which quickly found the malware and cleaned up the entire site.

Adam SilverAdam SilverConciergeWP · Founder
Watch case study →
"

I was on the beach with my family when MalCare notified me of a plugin vulnerability across 50 of my sites. With one click on my smartphone, all sites were fixed within minutes.

Paul LaceyPaul LaceyWordPress Expert
Watch case study →
"

MalCare's one-click cleanup is exactly what I needed. Instead of waiting, guessing, or dealing with a complicated manual cleanup, I could clean the site quickly and get back to work.

Kristina RomeroKristina RomeroWP Care Market · Founder
Watch case study →
14Humans

Worried? Don't diagnose this alone.

Something looks strange, Google flagged you, your host sent a scary email — or you just want to know where you stand. Talk to a security engineer before you pay anyone anything.

If you think you're hacked

Get a real diagnosis today

Run the free scan, then talk to an expert about exactly what it found — including what to do if Google has blacklisted you or your host has suspended you. If you don't need us, we'll say so.

If you just want peace of mind

Ask the team that sees it all

We clean 1,500+ hacked sites every month. Ask what your host's scan actually covers, what your current setup misses, and what's worth paying for — and what isn't.

Real security engineers · personalized help · no obligation

15Questions

Answered straight.

My host already scans for malware — isn't that enough?+

Host scanners protect the host's infrastructure, not your WordPress application. The places WordPress malware actually lives — the database, plugin folders, uploads, crons — are mostly outside what they read. That's why hacked sites on "scanned" hosting are so common.

I run Wordfence or Sucuri — can I keep it?+

Yes. MalCare runs alongside them without conflict. Most customers add us specifically for the layers those tools don't have — off-server depth, database scanning, and behavioral detection.

Will scanning slow my site down?+

No. All the heavy file and database reading happens on MalCare's servers, not yours — no CPU spike, no timeout, no slowdown of any kind.

What if you flag something that isn't malware?+

Our false-positive rate is 0.2% across all scans, and every removal runs a safety check before anything is touched. If something is ever ambiguous, we tell you — no silent deletions.

What does a "clean" result actually mean?+

A timestamped report of real scan depth: files checked, database tables read, and every layer that ran. Not a green checkmark — a record you can inspect.

Can it find malware in my database, a premium plugin, or an image?+

Yes — those are exactly the places signature scanners miss. We scan every database table (including custom ones), premium and non-repo plugins, and uploads, where PHP routinely hides inside image files.

How fast will I know?+

The free scan returns in about 60 seconds. On the plugin, detection typically lands in under 3 minutes, with automatic scans daily — or as often as hourly on higher plans.

What happens if you find malware?+

You get the exact location of every detection. On paid plans, one-click cleanup removes the malware — never your content. And if Google has blacklisted you or your host suspended you, our experts help with recovery.

16Start

If it's there, we'll find it.

A deep scan on our servers, results in about a minute. Malware's whole job is to hide — finding it is ours.

No plugin needed · no credit card · results in ~60 seconds