WordPress plugin intelligence profile

Threat Scan Plugin

This is a very simple threat scan that looks for things out of place in the content directory as well as the database.

WP PlugIndex snapshot

Current directory snapshot

Tested up to WordPress 6.6
Current version1.4
WordPress coverageTested up to WordPress 6.6
Minimum stackWP 3.0 · PHP —
Directory statusactive
Last directory update14 Jul 20242y ago
Active installations400Adoption metric — not a quality score
WordPress.org rating5.0 / 5 from 1 ratings
Official packageDirect from WordPress.org

Repository metrics are context, not quality scores. Active installations measure adoption and can strongly reflect a plugin’s age and historical popularity. Ratings, recent updates and “Tested up to” metadata also do not guarantee modern code, error-free operation, security, feature completeness or suitability for a particular site. Why active installs don’t tell the whole story →

WP PlugIndex currently records Threat Scan Plugin version 1.4 as active, updated 2y ago and tested up to WordPress 6.6.

Overview

About this plugin

This is a very simple threat scan that looks for things out of place in the content directory as well as the database.

It searches PHP files for the occurrence of the eval() function, which, although a valuable part of PHP is also the door that hackers use in order to infect systems. The eval() function is avoided by many programmers unless there is a real need. It is sometimes used by hackers to hide their malicious code or to inject future threats into infected systems.

If you find a theme or a plugin that uses the eval() function it is safer to delete it and ask the author to provide a new version that does not use this function.

When you scan your system you undoubtedly see the eval used in javascript because it is used in the javascript AJAX and JSON functionality. The appearance of eval in these cases does not mean that there is a possible threat. It just means that you should inspect the code to make sure that it is in a javascript section and not native PHP.

The plugin continues its scan by checking the database tables for javascript or html where it should not be found.

Normally, javascript is common in the post body, but if the script tag is found in a title or a text field where it does not belong it is probably because the script is hiding something, such as a hidden admin user, so that the normal administration pages do not show bad records. The scan looks for this and displays the table and record number where it believes there is something hinky.

The scan continues looking in the database for certain html in places where it does not belong. Recent threats have been putting html into fields in the options table so that users will be sent to malicious sites. The presence of html in options values is suspect and should be checked.

The options table will have things placed there by plugins so it is difficult to tell if scripts, iframes, and other html tags are a threat. They will be reported, but they should be checked before deleting the entries.

This plugin is just a simple scan and does not try to fix any problems. It will show things that may not be threats, but should be checked. If anything shows up you should try to repair the damage or hire someone to do it.

I am not a security expert, but a programmer who discovered these types of things in a friend’s blog. After many hours of checking I was able to fix the problem, but a professional could have done it faster and easier, although they would have charged for it.

You probably do not have a backup to your blog, so if this scan shows you are clean; your next step is to install one of the plugins that does regular backups of your system. Next make sure you have the latest WordPress version.

If you think you have problems, the first thing to do is change your user id and password. Next make a backup of the infected system. Any repairs to WordPress might delete important data so you might lose posts, and the backup will help you recover missing posts.

The next step is to install the latest version of WordPress. The new versions usually have fixes for older threats.

You may want to export your WordPress posts, make a new clean installation of WordPress, and then import the old posts.

If this doesn’t work it is time to get a pro involved.

A clean scan does not mean you are safe. Please do Backups and keep your installation up to date!

Support

This plugin is in active development. All feedback is welcome.

If this plugin helps you, you might support my programming by buying

ee/keithpgraham

WordPress.org metadata

Plugin tags

Topics listed for this plugin in the WordPress.org directory.

  • malicious code
  • hacked
  • scan
  • threats
  • virus
Compatibility & maintenance

Compatibility & maintenance

Tested up to WordPress 6.6

Not yet marked as tested with WordPress 7.1. WordPress.org currently lists Tested up to 6.6.

Current WordPress releaseWordPress 7.1
WordPress.org Tested up to6.6
Minimum requirementsWordPress 3.0 · PHP not listed
Update activity14 Jul 20242y ago

“Tested up to” is directory metadata supplied by the plugin author. WP PlugIndex does not turn an older declaration into a claim that the plugin is incompatible.

Changes recorded by WP PlugIndex

Recent tracked changes

No tracked version or compatibility changes have been recorded by WP PlugIndex yet.

Tracking & source

WP PlugIndex tracks public WordPress.org directory metadata and records selected version, compatibility and availability changes as they are detected.

Plugin watchlist

Watch this plugin

Sign in to your WP PlugIndex account or create a free account. Free accounts can watch up to 5 plugins and see what changed.

Watch limit

Watchlist limit reached

You have reached your current active watch limit.