WordPress security audit: what a 2026 audit must check, and how to hire for one
A WordPress security audit checklist built on the 2026 exploits: what to check, commands to run yourself, what a good report includes, and questions to ask.
Our content is written and reviewed by the Four Cents team. We may recommend our own services. Read our editorial standards.
On this page
A WordPress security audit tells you whether your site is already compromised, what it is exposed to, and whether you could recover if it were hacked tonight. In 2026 the scope grew: WordPress core itself was exploited, attacks began on the day of a patch, and nearly half of plugin flaws arrived with no fix. This guide sets out what a current audit must check, the commands you can run yourself, and how to judge a provider.
What a WordPress security audit is
A WordPress security audit is a structured check of everything an attacker could use to get into your site, plus a search for signs that someone already has. It ends in a written report that ranks what to fix first. It is not the same as running a scanner plugin, which checks one layer and cannot see your server, your accounts or your backups.
A good audit answers four questions:
- Is the site already compromised?
- Which known vulnerabilities is it exposed to right now?
- How easy is it to break in through logins, permissions and server settings?
- If the worst happened tonight, could you recover?
Why 2026 changed what an audit must cover
The 2026 numbers moved several items from "nice to check" to "must check". Each is sourced in our WordPress security statistics.
| What happened | What the audit must now check |
|---|---|
| Three WordPress core flaws were added to CISA's exploited list in July and September 2026 | The exact core version and whether automatic security updates actually work |
| Attackers tried CVE-2026-87902 the same day it was patched | Signs of entry from before the patch, not just the current version |
| Patchstack found 46% of 2025 vulnerabilities had no fix at disclosure | Each plugin against a vulnerability database, including ones with no update available |
| Premium plugins had three times more known exploited vulnerabilities than free ones (Patchstack, 2025) | Premium plugin licences, since a lapsed licence stops updates |
| 58.2% of WordPress sites run PHP 8.2 or older, unsupported after 31 December 2026 | PHP version and a plan to upgrade it |
| Self-restoring malware stored in files, the database and shared memory (Sucuri, reported 1 October 2026) | The database and scheduled tasks, not only files |
An audit quote that does not mention core version checks, the database, or PHP is working from an older playbook.
The full audit checklist
This is the scope we would expect from any competent audit. Use it to compare quotes, or work through it yourself.
1. Compromise checks
- Core files compared against official checksums.
- PHP files in
wp-content/uploads, which should contain none. - Unknown administrator accounts and recently created users.
- Injected options, rogue scheduled tasks and unexpected autoloaded data in the database.
- Spam pages indexed under your domain, including cloaked pages only Google sees.
- Indicators named in current advisories, such as the files reported for CVE-2026-87902.
2. Known vulnerability exposure
- WordPress version against the latest security release for its branch.
- Every plugin and theme, active or not, against a vulnerability database.
- Plugins abandoned by their authors. Our WordPress statistics found 46.4% of directory plugins not updated in over two years.
- Premium plugins with expired licences.
- PHP and database versions against their support dates.
3. Access and configuration
- Number of administrators, and whether each one needs that role.
- Two-factor authentication on admin accounts.
- Login rate limiting, and whether XML-RPC is needed.
- File permissions and file editing in the dashboard (
DISALLOW_FILE_EDIT). - Settings in
wp-config.phpthat disable automatic updates. - Debug output and exposed files such as backups or
phpinfopages in the web root. - HTTPS, security headers and the host's firewall.
- Hosting, SFTP, database and DNS accounts: who has access, and whether former staff or contractors still do.
4. Recovery readiness
- Backups stored off the server, on a schedule.
- A test restore, timed.
- Uptime monitoring and who gets the alert.
- A written plan for who to call if the site is hacked.
Checks you can run yourself
If you have SSH and WP-CLI, these cover a large part of sections 1 and 2 in a few minutes. Run them on a copy if you are unsure.
# 1. core version and integrity
wp core version
wp core verify-checksums
# 2. plugins and themes, with available updates
wp plugin list --fields=name,status,version,update_version,auto_update
wp theme list --fields=name,status,version,update_version
# 3. administrators
wp user list --role=administrator --fields=ID,user_login,user_email,user_registered
# 4. PHP in uploads (should return nothing)
find wp-content/uploads -name '*.php'
# 5. recently changed PHP files, last 14 days
find . -name '*.php' -mtime -14 -not -path './wp-content/cache/*'
# 6. scheduled tasks
wp cron event list
# 7. settings that block updates
grep -nE "AUTOMATIC_UPDATER_DISABLED|WP_AUTO_UPDATE_CORE|DISALLOW_FILE_MODS|DISALLOW_FILE_EDIT" wp-config.php
# 8. PHP version used by the site
wp eval 'echo PHP_VERSION, PHP_EOL;'
Anything unexpected from checks 1, 3, 4 or 6 means you should stop treating this as an audit and start treating it as an incident. Follow how to fix a hacked WordPress site. A quick non-technical version of these checks is in our WordPress security checklist.
What these commands cannot tell you: whether a plugin has an unpatched flaw (you need a vulnerability database), whether Google sees spam pages that you do not, and whether your backups actually restore.
What you should receive
The report is the product. Ask to see a sample before you agree to pay.
| A useful audit report has | A weak one has |
|---|---|
| Findings ranked by severity, with the most urgent first | A scanner export with hundreds of unranked lines |
| Plain-English explanation of each risk to your business | Jargon and CVSS scores only |
| A specific fix for each finding, and who should do it | "Update everything" |
| A clear statement of whether the site is compromised now | Silence on the question |
| What was not checked, and why | An implied claim that everything was checked |
| Versions and dates recorded, so the next audit can compare | No baseline |
Be wary of any audit that promises a site will be "unhackable" or "100% secure". No honest provider can promise that. What an audit can do is remove known, fixable weaknesses and tell you what is left.
Questions to ask before you hire
- What exactly is in scope? Files only, or the database, server settings and accounts too?
- Do you need server access, or only an admin login? Admin-only audits cannot check core integrity properly.
- Which vulnerability database do you check plugins against?
- Do you check for existing compromise, or only for weaknesses?
- Will you fix what you find, and is that priced separately?
- If you find malware, what happens next? Cleanup should be a clear next step, not a surprise invoice.
- Will you work on a copy of the site, or on live?
- How is access handled and removed afterwards?
Our guide to hiring a WordPress developer covers contracts and access in more depth.
How often to audit
| Situation | Audit |
|---|---|
| You have just taken over a site built by someone else | Now, before anything else |
| Automatic updates were off or failing during July to September 2026 | Now, including compromise checks |
| Before a PHP upgrade or a major change such as WordPress 7.2 | Light audit as part of the staging test |
| Store or site with personal data, under a care plan | Yearly full audit, with continuous monitoring between |
| Small brochure site, well maintained | Every one to two years |
| After any security incident | Immediately after cleanup |
An audit is a snapshot. Its value fades as soon as the next plugin vulnerability is published, which, at Patchstack's 2025 rate of 11,334 a year, averages more than one an hour. Ongoing maintenance is what keeps the result true. That is the argument in is WordPress maintenance worth it.
What an audit costs
We do not publish a fixed audit price, because the work depends on the site: a ten-page brochure site with eight plugins is a different job from a store with sixty plugins and custom code. We quote a fixed scope after a short look. Under our care plans, which our pricing page says are "typically about 15 to 20 percent of the build cost per year", an onboarding review of versions, plugins, backups and security is part of starting the plan, as described on our maintenance and support page.
When you compare quotes from different providers, compare the scope against the checklist above, not just the price.
Checklist: before the auditor starts
- Take a full backup of files and database and store it off the server.
- Gather access: WordPress admin, hosting panel, SFTP or SSH, and DNS.
- List who else has access, including past developers and agencies.
- Note anything odd you have seen: slow pages, strange redirects, spam emails from your domain, Search Console warnings.
- Note any premium plugins and where their licences are held.
- Decide who will approve fixes, and by when.
Frequently asked questions
What is a WordPress security audit?
A structured review of a WordPress site’s exposure and health: checks for existing compromise, known vulnerabilities in core, plugins and themes, access and server configuration, and backup and recovery readiness, ending in a ranked written report.
Is a security plugin scan the same as an audit?
No. A scanner checks files and known signatures from inside WordPress. An audit also covers server settings, accounts, the database, PHP version, Google’s view of the site and whether backups restore.
How long does a WordPress security audit take?
It depends on the size of the site and the access available. A small site with server access is a much shorter job than a store with dozens of plugins and custom code, which is why we scope before quoting.
Can I audit my WordPress site myself?
Partly. The WP-CLI commands on this page cover core integrity, plugins, admin accounts, PHP in uploads and scheduled tasks. Checking plugins against a vulnerability database and testing a restore are the parts most owners skip.
How often should a WordPress site be audited?
When you take over a site, after any incident, before major changes, and at least every one to two years. Stores and sites with personal data benefit from a yearly audit with monitoring in between.
Does an audit fix the problems it finds?
Not by itself. An audit identifies and ranks issues. Fixing them is a separate step, which the same provider may quote for. Ask about this before you start.
Was my site affected by the 2026 core vulnerabilities?
Check your version against the latest release for your branch and confirm automatic updates were not disabled. Our article on WordPress core exploited in 2026 lists the indicators to look for.
Sources
Each figure and date above comes from one of these. The retrieved date is when we last confirmed the source still says what we say it says.
- State of WordPress Security in 2026 Patchstack. Retrieved 2026-10-23.
- Known Exploited Vulnerabilities Catalog Cybersecurity and Infrastructure Security Agency (CISA). Retrieved 2026-10-23.
- WordPress 7.1.2 Release WordPress.org. Retrieved 2026-10-23.
- Attackers Exploit WordPress CVE-2026-87902 Within Hours of Disclosure The Hacker News. Retrieved 2026-10-23.
- WordPress backdoor rebuilds itself after cleanup The Hacker News. Retrieved 2026-10-23.
- WordPress PHP version statistics (API) WordPress.org. Retrieved 2026-10-23.
- WP-CLI commands WordPress.org. Retrieved 2026-10-23.
About the author
Founder, Accountant & Project Manager, Four Cents
Hamza Hai is a founder of Four Cents and its accountant and project manager. She keeps projects on track and the numbers clear.
She manages timelines, scope and client communication, so there are no surprises for clients along the way.
She writes the guides on WPDeveloper.ca, including its WordPress planning guides. They draw on the quoting and scoping work she does for Four Cents clients every week.
Areas of expertise
- Software and app project management
- Development costing and estimates
- Project scoping
- Budgeting for software projects
All articles by Hamza Hai (133 on WPDeveloper.ca)
Reviewed by Zee, Founder & Lead Developer, Four Cents
Zee leads every Four Cents build as the senior full-stack engineer, from the first call to launch and beyond, and technically reviews the articles on this site.
Our editorial standards: who writes and reviews our articles, where our prices come from and how to report a correction.