Skip to content
Noroxi

WordPress security scanner

Look at your WordPress site the way an attacker does

Enter a domain. We detect the WordPress core, plugins and themes in use, match each against vulnerability records and tell you what to fix first. Nothing to install; nothing is written to the site.

Passive scan: a few read-only requests to public URLs. No password attempts; nothing on the site changes.

Sample report · fictional domain and plugins

anadolu-lojistik.example

3 confirmed vulnerabilities in 1 component, 1 actively exploited.

Security score 50/100 · Weak

Confirmed vulnerabilities
3
Actively exploited
1
Possible (unconfirmed)
3
Configuration issues
2

Do these first

  1. Sample Form: upgrade to 5.9.2

    3 confirmed vulnerabilities · 1 actively exploited · 2 need no login · currently 5.3.1

  2. Sample Counter: closed on wordpress.org; remove or replace it

    security issue · no updates will come

  3. Turn off directory listing

    The uploads folder shows its file list to anyone.

Plugins

  • Sample Form

    sample-form · 5.3.1

    3 confirmed
  • Sample Counter

    sample-counter · 1.2.0

    closed on wordpress.org
  • Sample Gallery

    sample-gallery · version not readable

    3 possible records
  • Sample Cache

    sample-cache · 2.4.0

    no known issues in this version
plugins
12,568
themes
1,455
mapped vulnerability records
29,920
records with public exploit code
1,224

Directory updated daily · newest record Oct 3, 2026

How it works

  1. 01

    Finds components

    Extracts the running plugins, theme and core version from the homepage and the REST API. A handful of read-only requests; no password guessing, nothing changed.

  2. 02

    Matches vulnerabilities

    Compares every component with our WordPress vulnerability directory. When the version is readable, only records affecting that version count as “confirmed”; otherwise they are “possible”.

  3. 03

    Puts them in order

    Actively exploited, login-free and weaponized issues come first; it names the version to upgrade to and how to close each setting. For a plugin with no fix or one that was closed, it does not say “update”.

Which one is actually urgent?

A vulnerability count alone sets no priority. We answer three questions for every record.

What we check

The standard scan is open to everyone. The deep scan also probes sensitive file paths, so it only runs on a domain whose ownership you have verified in your account.

The standard scan requests at most 10 URLs, the deep scan at most 48. All of them are read-only (GET) requests; the content of a sensitive file is never stored, only its path appears in the report.

  • Core version

    The version is matched against WordPress core vulnerabilities, branch by branch.

    Standard

  • Plugins and their versions

    Every plugin brings its own vulnerabilities; a readable version makes the match exact.

    Standard

  • Themes

    The active theme and child theme are matched against the same directory.

    Standard

  • wordpress.org status

    Was the plugin removed from the directory, is the installed version behind the latest, does WordPress.org mark the core version as insecure?

    Standard

  • HTTPS redirect

    A site left on HTTP carries session cookies and passwords in clear text.

    Standard

  • Username exposure (REST API and author archive)

    Leaked usernames make password-guessing attacks easier.

    Standard

  • User registration

    With open registration, plugin flaws that need a “subscriber” become exploitable from outside.

    Standard

  • XML-RPC

    Allows many password guesses per request and pingback abuse.

    Standard

  • readme.html

    A leftover install file that tells what the site runs.

    Standard

  • Directory listing (uploads)

    Every uploaded file can be browsed without guessing URLs.

    Standard

  • Pinning plugin and theme versions

    readme.txt and style.css are read; “possible” records become “confirmed” or “clean”.

    Deep

  • wp-config backups

    Can the database password and secret keys be downloaded?

    Deep

  • debug.log

    Contains file paths, queries and sometimes personal data.

    Deep

  • Database backup and backup folders

    All content and user password hashes; are backup-plugin folders listed?

    Deep

  • .env and .git

    Can passwords, API keys and source code be downloaded?

    Deep

Who it is for

  • Site owner

    Am I safe, and what should I do?

    • Not a technical dump: a to-do list ordered by urgency
    • The version to upgrade to for each plugin
    • A “how to fix” note for every setting
  • Agencies and freelancers

    All client sites in one place

    • Shareable report link: send it straight to the client
    • Continuous watching: 3 watch rows on the free account, 50 on Pro, 500 on Team
    • Check a plugin in the directory before installing: closed? fix available?
    • Subscribe to the RSS feed of the plugins you use
  • Security team

    With evidence, without exaggeration

    • CVE ID, CVSS, CISA KEV, exploit maturity and required access level on every record
    • “Confirmed” and “possible” are counted separately; possible records never affect the score
    • Requests identify as NoroxiWP and show up in your logs

Plugin and theme directory

Check before you install: every plugin and theme's known vulnerabilities, active exploitation and patched version.

Ready-made lists5,278 closed plugins 974 plugins with no fix seen 14,995 records need no login

Highest-risk plugins

All plugins

Highest-risk themes

All themes
  • Newscrunch

    newscrunch

    2 records · 2 with exploit code

  • XStore

    xstore

    12 records · 1 with exploit code

  • RealHomes

    realhomes

    5 records · 1 with exploit code

  • Real Estate 7

    realestate-7

    5 records · 1 with exploit code

  • 3 records · 1 with exploit code

  • Nexter

    nexter

    2 records · 1 with exploit code

Open data and feeds

Use our WordPress vulnerability data in your own tooling. Fields derived by Noroxi (component mapping, access level, fix status) are CC BY 4.0: with attribution, commercial use is fine. No output contains exploit code or links.

  • RSS feed

    Newest plugin and theme vulnerabilities; each item carries the component, severity, required access and fix status. Add ?access=unauth for login-free issues only; per-plugin feeds are on each component page.

    Open the feed
  • JSON feed

    The same content for machines. No key needed; responses are cached for 15 minutes.

    Open the JSON
  • Component lookup (API and MCP)

    “Is this version of this plugin affected, who can exploit it, was the plugin closed?” With a free API key or the MCP tool; no scan is run.

    API docs
  • Full directory

    Daily dump: component ↔ CVE mapping, access level, fixed version and wordpress.org status. CSV and Parquet.

    Open data

What is free, what paid plans add

Scanning, reports and the directory are free. Paid plans add more frequent re-scans and more sites.

Without an account you can still run 3 passive scans per day.

See plans

Free accountPro$29/moTeam$99/mo
Scan quota10 per hour60 per hour200 per hour
Verified domains eligible for deep scan115100
Re-scan of watched sitesweeklydailydaily
Watch rows (shared with all tools)350500
Shareable report and directoryincludedincludedincluded

Limits and what we do not do

  • A passive scan only sees components the site reveals; plugins that leave no trace on the front end are not listed.
  • Records for a component whose version cannot be read stay “possible” and never affect the score; we do not guess versions.
  • No password guessing, no form submissions, no exploitation attempts. We infer a vulnerability from the version, not by exploiting it.
  • If a firewall returns a challenge page, the report says so; we do not impersonate a browser.
  • Government domains are never scanned in any mode.
  • The access level is read from the record's text, otherwise from CVSS; when neither says, it stays “unknown” and no discount is applied.
  • “No fix seen” is only stated when the record explicitly lists the latest wordpress.org release as affected. No such claim is made for components that are not on wordpress.org (paid ones); status data is refreshed regularly and the check date is shown on the component page.
  • This is not a penetration test: business logic, authorization and custom-code flaws are out of scope.

Frequently asked

Can the scan harm or slow down my site?
No. The standard scan sends one read-only request to each of at most 10 URLs, no different from a visitor opening a few pages. It writes nothing and never tries to log in.
Can I scan someone else's site?
The standard scan only requests URLs anyone can open in a browser, so it does not require ownership. The deep scan, which probes sensitive file paths, only runs on a domain you have verified.
What is the difference between “confirmed” and “possible”?
Confirmed: we read the component's version and it falls inside the affected range. Possible: the component is present but its version could not be read; you may not be affected. Possible records do not lower the score.
I hide version numbers. What will you see?
Less. If we see a component but cannot read its version, its records are shown as “possible”. Once you verify the domain, the deep scan reads the version from the plugin's own readme.txt.
Are results stored, and who can see them?
Every scan is saved and gets an unguessable link. Only someone with the link can open the report; report pages are closed to search engines.
How do I hear about a new vulnerability?
Add the site to your watch list. We re-scan weekly on the free account and daily on Pro and Team; if the number of confirmed vulnerabilities rises, you get a notification in your account and in your daily email digest when it is enabled.
I do not want my site scanned.
Requests come with the NoroxiWP user agent; you can block that name on your server or firewall. A site that blocks it returns no scan result.
Where do labels like “unauthenticated” or “subscriber+” come from?
From the record's own text. WordPress vulnerability records usually state the required role (e.g. “subscriber-level access and above”). When the text names no role we use the CVSS “privileges required” field and only say “login required” or “high privilege”; we do not invent a role name. If registration is open on your site, “subscriber+” issues are moved up as issues anyone can try.
The report says “closed on wordpress.org”. What should I do?
The plugin was removed from the official directory (the report shows when and why) and no longer receives updates. It keeps running on your site but its vulnerabilities will not be fixed. Remove it or move to a maintained alternative.
Is there an API, feed or MCP tool?
Yes. Keyless RSS and JSON feeds carry the newest records. With an API key, /api/v1/wordpress?host= returns the scan and /api/v1/wordpress/component the plugin-and-version lookup; the MCP server offers the same as wordpress_scan and wordpress_component. The full directory is in the open data dump.

One scan is not enough

New records land in the directory every day; a site that is clean today may not be tomorrow. Watch your site and we will tell you when its status changes.