This plugin hasn’t been tested with the latest 3 major releases of WordPress. It may no longer be maintained or supported and may have compatibility issues when used with more recent versions of WordPress.

Exploit Scanner


This plugin searches the files on your website, and the posts and comments tables of your database for anything suspicious. It also examines your list of active plugins for unusual filenames.

It does not remove anything. That is left to the user to do.

Latest MD5 hash values for Exploit Scanner:

  • 17e2ccfc834d691bc68cc5c64f9bed89 exploit-scanner.php (1.5.2)
  • 1d5f9d6220fe159cd44cb70a998a1cd7 hashes-4.6.php
  • fbdf61c17f65094c8e331e1e364acf68 hashes-4.6.1.php
  • 477d128d84802e3470cec408424a8de3 hashes-4.7.php
  • d53210f999847fbd6f5a2ecac0ad42f2 hashes-4.7.5.php

Latest SHA1 hash values for Exploit Scanner:

  • 1decc1e47a53d1cab9e8f1ef15b31682198367ee exploit-scanner.php (1.5.2)
  • 5cec64380a2acdc876fd22fbbbbf8c335df1ed3f hashes-4.6.php
  • 99d9e7be23a350f3d1962d0f41e7b4e28c00841e hashes-4.6.1.php
  • 1eeab377a1afc6d776827a063678d2461b29e71d hashes-4.7.php
  • 8c890a6af26bb74e9d17e5d2b21d6be27764da45 hashes-4.7.5.php

See the Exploit Scanner homepage for further information.

Interpreting the Results

It is likely that this scanner will find false positives (i.e. files which do not contain malicious code). However, it is best to err
on the side of caution; if you are unsure then ask in the Support Forums,
download a fresh copy of a plugin, search the Internet for similar situations, et cetera. You should be most concerned if the scanner is:
making matches around unknown external links; finding base64 encoded text in modified core files or the wp-config.php file;
listing extra admin accounts; or finding content in posts which you did not put there.

Understanding the three different result levels:

  • Severe: results that are often strong indicators of a hack (though they are not definitive proof)
  • Warning: these results are more commonly found in innocent circumstances than Severe matches, but they should still be treated with caution
  • Note: lowest priority, showing results that are very commonly used in legitimate code or notifications about events such as skipped files

Help! I think I have been hacked!

Follow the guides from the Codex:

Ensure that you change all of your WordPress related passwords (site, FTP, MySQL, etc.). A regular backup routine
(either manual or plugin powered) is extremely useful; if you ever find that your site has been hacked you can easily restore your site from
a clean backup and fresh set of files and, of course, use a new set of passwords.


Updates to the plugin will be posted here, to Holy Shmoly! and the WordPress Exploit Scanner page will always link to the newest version.

Other Languages

Unfortunately for people using WordPress versions for other locales some of the file hashes may be incorrect as some strings have to be hardcoded in their translated form. Here are some file hashes for WordPress in other languagues provided separately by other members of the community:

The hash files should only be declaring an array called $filehashes and the majority of the hashes should still be the same.


  1. Download and unzip the plugin.
  2. Copy the exploit-scanner directory into your plugins folder.
  3. Visit your Plugins page and activate the plugin.
  4. A new menu item called “Exploit Scanner” will be available under the Tools menu.


Installation Instructions
  1. Download and unzip the plugin.
  2. Copy the exploit-scanner directory into your plugins folder.
  3. Visit your Plugins page and activate the plugin.
  4. A new menu item called “Exploit Scanner” will be available under the Tools menu.
How do I fix the out of memory error?

Scanning your website can take quite a bit of memory. The plugin tries to allocate 128MB but sometimes that’s not enough. You can modify the amount of memory PHP has access to from within the plugin admin page. You can also limit the max size of scanned files. Reduce this number to skip more files but be aware that it may miss hacked files. Any skipped files are listed after scanning. Memory is also used if you have deep directories because of the way the scanner works. It will help if you clean out any cache directories (wp-content/cache/ for example) before scanning.


July 2, 2018
Just gives an error: {“status”:”error”,”message”:”$this->files was not an array”,”data”:{“start”:250,”files”:”b:0;”}} Others have posted in the support section and not had responses and the plugin has not been updated for a long time, so it looks to be an abandoned project.
March 13, 2018
Exploit Scanner is a useless plugin. I mean, it does nothing. It just lists hundreds of files of your server. Says nothing about them. And does nothing either. In the end, it says you are a PARANOID. If you have any further worries. I think I will create a Wordpress plugin too.
November 14, 2017
Great plugin, but it’s not well documented. Anyways, it works on version 4.8.3 and theoretically any version as long as you generate (if you don’t have) the hashes for your wordpress version; in my case I had to generate for 4.8.3 and it did a good job 🙂
June 25, 2017
Works really well. I have it installed next to TAC and VIP Scanner on my localhost test site. The trick is you need to use current hashes, and none are available for Wordpress 4.8 and higher on the Internets. So, here are hashes for WordPress 4.8. And easy to follow directions to create new hashes for newer versions of WordPress:
Read all 41 reviews

Contributors & Developers

“Exploit Scanner” is open source software. The following people have contributed to this plugin.


Translate “Exploit Scanner” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.



  • Added hashes for WordPress 4.7.5


  • WordPress 4.6 hashes
  • WordPress 4.6.1 hashes
  • WordPress 4.7 hashes


  • WordPress 4.5.3 hashes
  • Move to follow WP versioning system


  • WordPress 4.5.2 hashes


  • WordPress 4.5 hashes
  • WordPress 4.5.1 hashes


  • WordPress 4.4.1 hashes


  • WordPress 4.4 hashes


  • WordPress 4.3.1 security release hashes
  • Other missing hashes


  • WordPress 4.3 hashes


  • WordPress 4.2.3 hashes
  • WordPress 4.2.4 hashes


  • WordPress 4.2.2 hashes


  • WordPress 3.7.3 hashes
  • WordPress 3.7.4 hashes
  • WordPress 3.7.5 hashes
  • WordPress 3.7.6 hashes
  • WordPress 3.7.7 hashes
  • WordPress 3.8.4 hashes
  • WordPress 3.8.5 hashes
  • WordPress 3.8.6 hashes
  • WordPress 3.8.7 hashes
  • WordPress 3.9.4 hashes
  • WordPress 3.9.5 hashes
  • WordPress 4.0.2 hashes
  • WordPress 4.0.3 hashes
  • WordPress 4.0.4 hashes
  • WordPress 4.1.4 hashes
  • WordPress 4.2.1 hashes


  • WordPress 4.1.3 hashes


  • WordPress 4.2 hashes


  • WordPress 3.9.3, 4.1, 4.1.1 and 4.1.2 hashes


  • Remove an example link to a hacked site
  • Fixed the eval() check incorrectly matching function names that end in “eval”
  • Fixed some PHP warnings
  • WordPress 3.5.2 hashes
  • WordPress 3.6 and 3.6.1 hashes
  • WordPress 3.7, 3.7.1 and 3.7.2 hashes
  • WordPress 3.8, 3.8.1, 3.8.2 and 3.7.3 hashes
  • WordPress 3.9, 3.9.1 and 3.9.2 hashes
  • WordPress 4.0 and 4.0.1 hashes


  • WordPress 3.5 and 3.5.1 hashes


  • WordPress 3.4.2 hashes


  • WordPress 3.4.1 hashes


  • Detect unknown files in the wp-admin and wp-includes directories
  • WordPress 3.4 hashes


  • WordPress 3.3.2 hashes


  • WordPress 3.3.1 hashes
  • Use help tabs introduced in WordPress 3.3
  • Help prevent one cause of hanging scans (MySQL error 1153)


  • Scan for and fix old, vulnerable TimThumb scripts
  • Detect old export files even if they’re larger than the size limit
  • WordPress 3.3 hashes


  • WordPress 3.2 and 3.2.1 hashes


  • WordPress 3.1.4 hashes
  • Suspicious pattern updates and tweaks


  • Detection of export files left by incomplete imports.
  • WordPress 3.1.3 hashes


  • WordPress 3.0.6 and 3.1.2 hashes


  • WordPress 3.1.1 hashes


  • Core file diffs
  • WordPress 3.1 hashes
  • Updated suspicious patterns


  • WordPress 3.0.5 hashes


  • WordPress 3.0.4 hashes
  • Dropped wp-content from hashes


  • WordPress 3.0.3 compatibility


  • 3.0.2 compatibility


  • 3.0.1 compatibility


  • PHP 4 compatibility


  • AJAX paging
  • simplified results system (now only 3 levels)
  • contextual help
  • moved to Tools menu section
  • a number of backend changes


  • Compatibility for WordPress 3.0


  • Added “exploits” scan level for obvious hacker exploit code.
  • Stored results for later review.
  • Rearranged layout of results.
  • Paged scanning so plugin scans 50 files at a time to avoid timeout errors.
  • Only show “General Info” to non MU sites (it’s too expensive for large MU sites)