DriversRecommendedOutdated drivers can make a good PC feel brokenScan driver issues before chasing fixes manually.Scan NowOctober DealsAmazon USOctober deal check: compare before you payAmazon US: current deals, useful picks and tech finds.Check DealsWindows FixRecommendedWindows errors stealing your time? Find the fix fastScan stability, cleanup and performance issues.Fix Now×
Skip to content
World desk13 min

How to Check Your WordPress Site for Malware: A Layered Detection and Cleanup Guide

A clean homepage is not proof that WordPress is safe. Follow this layered process to spot compromise, scan files and databases, preserve recovery options, clean the site, harden access, and clear search-engine warnings.

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Use several checks, not one scanner. A reliable WordPress malware check combines visible symptoms, a WordPress-aware application scan, an external remote scan, and—when the evidence warrants it—a database or server-side review. A clean homepage does not prove that the database, scheduled tasks, administrator accounts, or hosting server are clean.

This guide shows how to check for compromise safely, interpret findings, preserve recovery options, clean an infected installation, remove search warnings, and reduce the chance of reinfection. If the site handles payments, health information, customer accounts, or other high-value data, involve a qualified incident-response professional rather than experimenting on the live site.

As an Amazon Associate I earn from qualifying purchases.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

What a WordPress malware check can—and cannot—prove

Malware is code, content, accounts, or configuration that an attacker added or changed without authorization. On WordPress, it may live in plugin or theme files, modified core files, the database, uploads, scheduled tasks, server configuration, or another site sharing the hosting account. Different checks see different layers.

Think of the result as a set of evidence rather than a single pass/fail label:

  • Symptoms: what visitors, administrators, and search engines can observe.
  • Application scan: a scan that understands WordPress core, plugins, themes, and common attack patterns.
  • Remote scan: a separate service requesting pages from outside the server, similar to a search crawler or visitor.
  • Database and server review: inspection of stored content, users, cron jobs, hosting files, logs, and server software when a file or remote scan cannot explain the behavior.

Mark Maunder, Wordfence founder and CTO, advises: “If you suspect you have been hacked, first make sure that you have actually been hacked.” That caution matters because a warning can be caused by a stale cache, an injected advertisement from a third party, an innocent modified file, or a genuine compromise. Treat every positive signal as actionable, but verify it before deleting files.

Warning signs that justify an immediate check

One sign is enough to start an investigation. Several signs together should be treated as a likely compromise until disproved.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Signal What it may indicate First check
Visitors are redirected to an unfamiliar site Injected JavaScript, PHP, server rules, or a compromised advertising script Test in a private browser window and from a second network; then scan files and database content
Google shows “This site may be hacked” Google detected spam, malicious downloads, or other unsafe content Review the affected URLs and security issues in Google Search Console
An unfamiliar administrator exists An attacker may have created persistence through a privileged account Review all users, roles, creation dates, and recent activity
Unknown or modified PHP files appear Backdoors, loaders, web shells, or altered legitimate files Compare core, theme, and plugin files with clean vendor copies
Spam pages, links, or email are appearing Database injections, compromised forms, or unauthorized content creation Search posts, pages, comments, options, user metadata, and mail settings
Unexplained slowness, crashes, or resource spikes Malicious processes, database abuse, traffic floods, or a broken update Check hosting resource graphs and logs alongside a malware scan
Login no longer works or settings changed Password theft, account takeover, or an attacker changing privileges Use the host’s recovery process and audit every administrator account
A security scanner reports a finding Possible malware, vulnerability, suspicious change, or false positive Record the file, line, signature, and scanner explanation before modifying anything

Do not dismiss a warning because the site looks normal to you. Attackers commonly target only search crawlers, logged-out visitors, mobile devices, or requests containing a particular referrer. A clean-looking front end is evidence about one viewing path, not proof about the whole installation.

Prepare before you scan or remove anything

Rushed cleanup can destroy the evidence needed to identify the entry point or restore the site correctly. Take these steps first.

  1. Record the current state. Note the time, symptoms, suspicious URLs, affected accounts, scanner messages, recent updates, and hosting changes. Save screenshots and copies of relevant logs if your host permits it.
  2. Make a separate copy of the current site. Preserve files and a database export for investigation. Store it away from the live document root and label it as potentially infected. Do not overwrite it with a later “clean” backup.
  3. Do not restore an old backup blindly. Backups can contain the same backdoor or malicious database row. Check the backup date, scan its files and database, and establish that it predates the compromise before using it.
  4. Limit damage while investigating. If the site is actively redirecting visitors, distributing malware, or exposing customer information, place it behind a maintenance page or ask the host to isolate it. Preserve access for the investigator and keep a record of the change.
  5. Use a clean device for account work. Change passwords from a computer and network you trust. A compromised workstation can immediately capture replacement credentials.

These precautions preserve two recovery paths: an untouched snapshot for analysis and a verified clean source for rebuilding.

Layer 1: inspect the rendered site and search results

Test as different visitors

Open the site while logged out, in a private browsing window, and on a second device. Follow internal links, submit ordinary forms, and check pages that receive the most search traffic. If the symptom appears only for one browser or location, compare extensions, DNS, caching, and network filtering before concluding that WordPress is infected.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Look for unexpected redirects, pop-ups, fake browser-update notices, downloads, gambling or pharmaceutical text, hidden links, changed contact details, and pages you did not publish. Check the page source and browser developer console for unfamiliar domains or scripts, but do not treat every third-party script as malicious; advertising, analytics, consent, and payment services also load external code.

Use search-engine evidence

Search for your domain and distinctive phrases from your pages. Unexpected indexed URLs, foreign-language titles, doorway pages, or snippets that do not exist on the visible site can indicate database or server-side spam. Google’s “This site may be hacked” warning is a high-priority signal, but it does not identify every infected file. Record the affected URLs and the warning category in Google Search Console before changing content.

Check administrative behavior

Review the user list, roles, email addresses, registration setting, and recent changes. An unknown administrator is more urgent than an ordinary spam comment because it can restore malware after cleanup. Also inspect menus, widgets, reusable blocks, forms, redirects, and settings for changes no legitimate editor made.

Layer 2: run a WordPress-aware application scan

A WordPress-aware scanner can compare core files with known originals, inspect plugins and themes, search for suspicious signatures, and identify risky changes that a visual inspection misses. Run it from an administrator account you trust, and save the full report rather than only the headline result.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

How to read the report

  • Modified core file: compare it with the matching clean version for the exact WordPress release. A legitimate customization in core is unusual and should be documented.
  • Unknown PHP file: determine who created it, when it appeared, whether WordPress references it, and whether it contains executable code. Do not delete a file solely because its name looks random; quarantine a copy first.
  • Plugin or theme mismatch: compare against the vendor’s clean package. A changed file may be malware, a legitimate local edit, or a failed update.
  • Suspicious database value: inspect the complete option, post, comment, user metadata, or widget record. Short obfuscated strings can be legitimate serialized settings, so preserve the original before editing.
  • Vulnerability notice: a vulnerable component is not proof of infection, but it identifies a likely entry point and must be updated, replaced, or removed.

False-positive review is essential. Record the exact path, checksum or signature, line number, and reason the scanner flagged it. If a clean vendor package confirms the file is legitimate, mark the finding as reviewed and keep the evidence.

When the scan cannot complete

A scan may time out because of hosting limits, huge media directories, low memory, or a site that is already crashing. Ask the host about PHP memory, execution-time, and process limits; scan in smaller scopes if the tool supports that; and obtain a server-side scan when the application cannot safely inspect its own files. An incomplete scan is not a clean result.

Layer 3: use an external remote scanner

A remote scanner requests the public site from outside the hosting account. It can reveal redirects, malicious scripts, blocklist status, and content served only to unauthenticated visitors. Because it cannot normally read private files or the database, it complements rather than replaces an application or server-side scan.

External results are affected by caching, geolocation, user-agent targeting, and whether the malicious behavior is currently active. Run the scan more than once if the symptom is intermittent, and compare the requested URL, response, and timestamp. If the remote scan is clean while visitors still see redirects, investigate conditional code, caches, DNS, hosting rules, and database-generated output.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Sucuri reported that 1.15% of 108,122,130 sites scanned in 2023 showed malware in its vendor-reported SiteCheck results. That figure describes those scans and that provider’s detection method; it is not a neutral estimate of the proportion of all WordPress sites that are infected.

Know when to inspect the database and server

File scanners can miss database infections, and remote scanners cannot see private storage. Escalate beyond WordPress files when any of these conditions applies:

  • The front end is clean but spam URLs, users, or settings keep returning.
  • A scanner identifies injected content in posts, options, widgets, comments, or user metadata.
  • Unknown administrator accounts reappear after password changes.
  • Redirects occur only for search crawlers, mobile users, or specific referrers.
  • Server CPU, memory, mail volume, or disk usage is abnormal.
  • Multiple sites in the same hosting account show related symptoms.
  • The site uses custom server rules, scheduled jobs, deployment scripts, or a content-delivery layer that can alter responses.

Review database tables and serialized values carefully; malformed edits can break the site. Ask the host for access logs, error logs, file timestamps, process information, cron entries, and evidence of other accounts being accessed. If you cannot distinguish a web shell from application code, stop editing and obtain professional help.

Confirm whether a finding is real

Before cleaning, correlate at least two independent clues. For example, an unfamiliar PHP file is more credible when its timestamp matches a new administrator account and the file appears in a redirect chain. A scanner signature alone may be a false positive; a Google warning alone may refer to a page already removed.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Use this verification checklist:

  • Is the file, account, URL, or setting present in a known-clean backup?
  • Does the file match the official package for the exact core, plugin, or theme version?
  • Does the suspicious code execute, alter output, create users, send mail, or fetch remote instructions?
  • Do logs show an upload, vulnerable request, stolen login, or control-panel change near the first suspicious timestamp?
  • Does the same indicator appear in the database, another site, or a remote scan?

Keep a written list of confirmed indicators and reviewed false positives. That list becomes your post-cleanup validation test.

Clean a confirmed infection in a controlled order

Cleaning is not simply deleting the file a scanner names. Attackers often add persistence in several locations, so work from a clean source and verify each layer.

  1. Isolate the site if necessary. Prevent visitors from receiving malicious content while retaining the preserved copy and logs.
  2. Choose a clean rebuild source. Use a verified backup or fresh packages from the official WordPress source and the legitimate plugin and theme vendors. Do not reuse files from the infected document root without comparison.
  3. Replace compromised core files. Sucuri recommends replacing compromised core files with clean copies from the official WordPress source. Keep site-specific configuration only after checking it for injected code.
  4. Replace or remove compromised extensions. Reinstall affected plugins and themes from trusted packages. Remove abandoned, nulled, duplicated, and unused components rather than attempting to preserve them.
  5. Remove malicious files and content. Delete confirmed backdoors, unauthorized uploads, spam posts, injected links, rogue users, and altered scheduled tasks. Quarantine copies first if they may be needed for analysis.
  6. Review the database. Search for unauthorized users, options, widgets, posts, comments, form destinations, and redirect values. Validate serialized data after any edit.
  7. Check hosting scope. Scan neighboring sites, shared directories, control-panel accounts, and server rules. A reinfected WordPress directory often means another infected site or account remains.
  8. Update everything. Bring WordPress core, themes, plugins, PHP, and other server software to supported versions. Replace components that are no longer maintained.
  9. Rescan from every applicable layer. Repeat the application and remote scans, then verify the database and server indicators that led to the cleanup.

Do not declare success until the original symptoms stop, confirmed indicators are gone, and no persistence mechanism remains.

Rotate credentials and harden the installation

Cleanup is incomplete while an attacker can log in again. Change credentials from a trusted device for WordPress administrators, hosting and control-panel accounts, FTP or SFTP, SSH, the database, deployment systems, email accounts used for password resets, and any API or payment integration that could expose the site.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Use unique passwords, enable two-factor authentication wherever available, and remove unused administrator accounts. Review application passwords, security keys, connected services, and recovery email addresses. Invalidate active sessions after changing credentials.

Reduce the attack surface by deleting unused plugins, themes, old WordPress installations, test copies, and writable files that do not need to be writable. Restrict file permissions according to your host’s documented configuration, protect configuration secrets, and ask the host to address unsupported server software. Keep automatic updates where they are appropriate, but test major changes on a staging copy.

Remove a Google hacked-site warning only after cleanup

A warning review is not a substitute for remediation. First fix the infection, remove malicious pages and downloads, update the installation, rotate credentials, and confirm with fresh scans. Then use the security-issue and reconsideration workflow in Google Search Console for the affected property. Explain what was removed and what preventive steps were taken, and monitor for new issues after Google recrawls the site.

The same order applies to antivirus or blocklist operators: diagnose, clean, verify, and only then request review. Submitting a review while the site still serves malicious content can delay trust restoration and expose visitors.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Choosing the right type of scanner

No neutral study in the available evidence establishes that one product detects more malware, runs faster, or costs less than another. Select tools by coverage and by the access you have.

Capability WordPress-aware application scan External remote scan Server-side or manual review
Rendered pages and redirects Usually, depending on the tool Yes, from outside the host Can verify causes in files, rules, and logs
Core, plugin, and theme files Strongest fit Not normally visible Yes, with direct filesystem access
Database infections Only if the tool includes database checks Only when the infection changes public output Yes, with database access and careful review
Hosting account and neighboring sites Usually outside scope No private access Best fit
Cleanup or repair May offer guided repair; verify every change Usually reports rather than repairs Can rebuild, but requires technical skill
False-positive investigation Review signatures, paths, and clean originals Compare responses and timestamps Correlate logs, hashes, database records, and backups
Speed and cost Not stated on a neutral basis Not stated on a neutral basis Depends on host access and specialist time

For a small personal site with no warning signs, a scheduled application scan plus occasional remote checks may be sufficient. A business-critical or repeatedly reinfected site needs layered monitoring, tested backups, server visibility, and an escalation plan.

Backups and monitoring that make the next incident survivable

Maintain backups on a schedule that matches how much content you can afford to lose. Keep copies separate from the hosting account, protect them from deletion by a compromised administrator, and test restoring both files and the database. A backup that has never been restored is an assumption, not a recovery plan.

Monitor for new administrator accounts, plugin and theme changes, unexpected file changes, redirects, spam, outbound mail spikes, and resource anomalies. Record the normal baseline for traffic and server usage so a sudden change is visible. Review scan alerts promptly; Wordfence guidance notes that the longer a compromised site remains infected, the greater the risk of data loss, SEO penalties, or further spread.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

A practical decision path

  1. No symptoms and no scanner findings: keep updates current, maintain tested backups, and schedule layered checks.
  2. One suspicious symptom: preserve the current state, inspect the site and search results, then run both application and remote scans.
  3. Confirmed file or account change: isolate if needed, rebuild from clean sources, review the database and server, rotate credentials, and rescan.
  4. Persistent or recurring infection: assume a missed persistence mechanism, shared-host compromise, stolen credential, or vulnerable component; escalate to the host or an incident-response specialist.
  5. Google or antivirus warning after cleanup: verify that the affected content is gone, then request review through the relevant operator.

Frequently Asked Questions

Can a WordPress site be hacked even if the homepage looks normal?

Yes. Malware can target search crawlers, logged-out visitors, mobile users, particular referrers, database output, or server rules. Combine visual checks with application, remote, and—when indicated—database or server-side scans.

Should I restore my oldest backup immediately?

No. Check the backup for infected files, database records, users, and timestamps first. Preserve the current state for investigation and use only a verified clean backup or fresh vendor files.

What should I do when a scanner flags a WordPress core file?

Save the report, compare the file with the clean package for the exact WordPress version, and review its timestamp and code. Replace it with a clean official copy if it is compromised; document it as a reviewed false positive if it matches the legitimate release.

Why is a remote scanner clean while visitors still see redirects?

The behavior may be conditional, cached, geotargeted, database-driven, or controlled by hosting rules. Check application files, database content, caches, DNS, logs, and server configuration rather than treating the remote result as proof of safety.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

When should I ask my host or a professional for help?

Escalate when scans cannot complete, the database or server appears infected, multiple sites share symptoms, credentials keep being compromised, customer data may be exposed, or you cannot distinguish malicious code from legitimate custom code.

When should I request removal of a Google hacked-site warning?

Only after cleaning and updating the site, rotating credentials, verifying the fix with fresh scans, and removing malicious pages or downloads. Then submit the review through Google Search Console.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Leave a Reply

Your email address will not be published. Required fields are marked *

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

More from the Wire

  1. World desk4 min
    How to Spot an AI Voice Scam Before Sending MoneyDon’t rely on how a caller sounds. Pause, call back through a known number, and verify the emergency with another trusted person before sending money.
  2. Mountain View desk4 min
    Google’s SynthID Detector: How to Check AI-Generated Images, Video and AudioGoogle’s SynthID Detector looks for an embedded watermark in supported images, video and audio. Here is what its results do—and do not—show.
  3. Redmond desk20 min
    How to create a link to File or Folder in Windows 11Windows 11 gives you several ways to point to a file or folder without moving or duplicating it. You can create a desktop shortcut,…
Recommended PC Tool
Recommended PC Tool
PC Slower Than It Used to Be?Free scan - under a minute
Outdated Drivers Are Slowing You DownFree scan - exact matches

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.