Defender Security – Malware Scanner, Login Security & Firewall - Version 2.8.2

Version Description

( 2022-04-25 ) =

  • Fix: All site visitors are blocked
Download this release

Release Info

Developer gvgvgvijayan
Plugin Icon 128x128 Defender Security – Malware Scanner, Login Security & Firewall
Version 2.8.2
Comparing to
See all releases

Code changes from version 2.8.1 to 2.8.2

languages/wpdef-default.pot CHANGED
@@ -6,9 +6,9 @@
6
  #, fuzzy
7
  msgid ""
8
  msgstr ""
9
- "Project-Id-Version: wp-defender 2.8.1\n"
10
  "Report-Msgid-Bugs-To: \n"
11
- "POT-Creation-Date: 2022-04-08 12:02+0000\n"
12
  "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13
  "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
14
  "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -1294,8 +1294,8 @@ msgstr ""
1294
  msgid "Inactive %s"
1295
  msgstr ""
1296
 
1297
- #: src/component/backup-settings.php:1060 src/controller/firewall.php:498
1298
- #: src/controller/firewall.php:533 src/controller/scan.php:671
1299
  #: src/controller/scan.php:700 src/controller/security-tweaks.php:881
1300
  #: src/controller/security-tweaks.php:905
1301
  msgid "Email notifications active"
@@ -1325,8 +1325,8 @@ msgstr ""
1325
  #: src/component/backup-settings.php:1301 src/controller/audit-logging.php:504
1326
  #: src/controller/audit-logging.php:528
1327
  #: src/controller/blocklist-monitor.php:206
1328
- #: src/controller/blocklist-monitor.php:222 src/controller/firewall.php:486
1329
- #: src/controller/firewall.php:524 src/controller/mask-login.php:743
1330
  #: src/controller/mask-login.php:756 src/controller/password-protection.php:278
1331
  #: src/controller/password-protection.php:295 src/controller/recaptcha.php:989
1332
  #: src/controller/scan.php:663 src/controller/scan.php:696
@@ -1537,7 +1537,7 @@ msgid "Unsubscribed"
1537
  msgstr ""
1538
 
1539
  #: src/component/notification.php:383 src/component/notification.php:398
1540
- #: src/controller/firewall.php:412 src/model/notification.php:321
1541
  #: src/model/notification.php:336 src/model/notification/malware-report.php:164
1542
  #: front/src/module/ip-lockout/screen/settings.vue:28
1543
  msgid "Never"
@@ -2327,7 +2327,7 @@ msgid "Your settings have been updated."
2327
  msgstr ""
2328
 
2329
  #: src/controller/audit-logging.php:508 src/controller/audit-logging.php:532
2330
- #: src/controller/firewall.php:503 src/controller/firewall.php:538
2331
  #: src/controller/scan.php:675 src/controller/scan.php:705
2332
  #, php-format
2333
  msgid "Email reports sending %s"
@@ -2483,28 +2483,28 @@ msgstr ""
2483
  msgid "Demo"
2484
  msgstr ""
2485
 
2486
- #: src/controller/firewall.php:387
2487
  msgid "Your logs have been successfully deleted."
2488
  msgstr ""
2489
 
2490
- #: src/controller/firewall.php:396
2491
  msgid "Failed remove!"
2492
  msgstr ""
2493
 
2494
- #: src/controller/firewall.php:494 src/controller/firewall.php:528
2495
  #, php-format
2496
  msgid "User agent banning %s"
2497
  msgstr ""
2498
 
2499
- #: src/controller/firewall.php:495 src/controller/firewall.php:529
2500
  msgid "active"
2501
  msgstr ""
2502
 
2503
- #: src/controller/firewall.php:495 src/controller/firewall.php:529
2504
  msgid "inactive"
2505
  msgstr ""
2506
 
2507
- #: src/controller/firewall.php:509 src/controller/firewall.php:544
2508
  #: src/controller/scan.php:680 src/controller/scan.php:711
2509
  #, php-format
2510
  msgid "Email report inactive %s"
6
  #, fuzzy
7
  msgid ""
8
  msgstr ""
9
+ "Project-Id-Version: wp-defender 2.8.2\n"
10
  "Report-Msgid-Bugs-To: \n"
11
+ "POT-Creation-Date: 2022-04-08 13:43+0000\n"
12
  "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13
  "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
14
  "Language-Team: LANGUAGE <LL@li.org>\n"
1294
  msgid "Inactive %s"
1295
  msgstr ""
1296
 
1297
+ #: src/component/backup-settings.php:1060 src/controller/firewall.php:505
1298
+ #: src/controller/firewall.php:540 src/controller/scan.php:671
1299
  #: src/controller/scan.php:700 src/controller/security-tweaks.php:881
1300
  #: src/controller/security-tweaks.php:905
1301
  msgid "Email notifications active"
1325
  #: src/component/backup-settings.php:1301 src/controller/audit-logging.php:504
1326
  #: src/controller/audit-logging.php:528
1327
  #: src/controller/blocklist-monitor.php:206
1328
+ #: src/controller/blocklist-monitor.php:222 src/controller/firewall.php:493
1329
+ #: src/controller/firewall.php:531 src/controller/mask-login.php:743
1330
  #: src/controller/mask-login.php:756 src/controller/password-protection.php:278
1331
  #: src/controller/password-protection.php:295 src/controller/recaptcha.php:989
1332
  #: src/controller/scan.php:663 src/controller/scan.php:696
1537
  msgstr ""
1538
 
1539
  #: src/component/notification.php:383 src/component/notification.php:398
1540
+ #: src/controller/firewall.php:419 src/model/notification.php:321
1541
  #: src/model/notification.php:336 src/model/notification/malware-report.php:164
1542
  #: front/src/module/ip-lockout/screen/settings.vue:28
1543
  msgid "Never"
2327
  msgstr ""
2328
 
2329
  #: src/controller/audit-logging.php:508 src/controller/audit-logging.php:532
2330
+ #: src/controller/firewall.php:510 src/controller/firewall.php:545
2331
  #: src/controller/scan.php:675 src/controller/scan.php:705
2332
  #, php-format
2333
  msgid "Email reports sending %s"
2483
  msgid "Demo"
2484
  msgstr ""
2485
 
2486
+ #: src/controller/firewall.php:394
2487
  msgid "Your logs have been successfully deleted."
2488
  msgstr ""
2489
 
2490
+ #: src/controller/firewall.php:403
2491
  msgid "Failed remove!"
2492
  msgstr ""
2493
 
2494
+ #: src/controller/firewall.php:501 src/controller/firewall.php:535
2495
  #, php-format
2496
  msgid "User agent banning %s"
2497
  msgstr ""
2498
 
2499
+ #: src/controller/firewall.php:502 src/controller/firewall.php:536
2500
  msgid "active"
2501
  msgstr ""
2502
 
2503
+ #: src/controller/firewall.php:502 src/controller/firewall.php:536
2504
  msgid "inactive"
2505
  msgstr ""
2506
 
2507
+ #: src/controller/firewall.php:516 src/controller/firewall.php:551
2508
  #: src/controller/scan.php:680 src/controller/scan.php:711
2509
  #, php-format
2510
  msgid "Email report inactive %s"
readme.txt CHANGED
@@ -1,13 +1,13 @@
1
  === Defender Security - Malware Scanner, Login Security & Firewall ===
2
  Plugin Name: Defender Security - Malware Scanner, Login Security & Firewall
3
- Version: 2.8.1
4
  Author: WPMU DEV
5
  Author URI: https://wpmudev.com/
6
  Contributors: WPMUDEV
7
  Tags: security plugin, security, firewall, malware, malware scanner, antivirus, ip blocking, login security, brute force attacks, two-factor authentication, activity log, audit logs, block hackers, 2fa, hack
8
  Requires at least: 5.2
9
  Tested up to: 5.9.3
10
- Stable tag: 2.8.1
11
  Requires PHP: 5.6.20
12
  License: GPL v2 - http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
13
 
@@ -244,6 +244,10 @@ Please open a new thread in Defender’s [support forum](https://wordpress.org/s
244
 
245
  == Changelog ==
246
 
 
 
 
 
247
  = 2.8.1 ( 2022-04-25 ) =
248
 
249
  - Enhance: Hide write permissions error notices for Tweaks while applying config
1
  === Defender Security - Malware Scanner, Login Security & Firewall ===
2
  Plugin Name: Defender Security - Malware Scanner, Login Security & Firewall
3
+ Version: 2.8.2
4
  Author: WPMU DEV
5
  Author URI: https://wpmudev.com/
6
  Contributors: WPMUDEV
7
  Tags: security plugin, security, firewall, malware, malware scanner, antivirus, ip blocking, login security, brute force attacks, two-factor authentication, activity log, audit logs, block hackers, 2fa, hack
8
  Requires at least: 5.2
9
  Tested up to: 5.9.3
10
+ Stable tag: 2.8.2
11
  Requires PHP: 5.6.20
12
  License: GPL v2 - http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
13
 
244
 
245
  == Changelog ==
246
 
247
+ = 2.8.2 ( 2022-04-25 ) =
248
+
249
+ - Fix: All site visitors are blocked
250
+
251
  = 2.8.1 ( 2022-04-25 ) =
252
 
253
  - Enhance: Hide write permissions error notices for Tweaks while applying config
src/controller/firewall.php CHANGED
@@ -271,8 +271,15 @@ class Firewall extends Controller {
271
  $the_list = wd_di()->get( \WP_Defender\Model\Setting\Blacklist_Lockout::class );
272
  $service = wd_di()->get( Blacklist_Lockout::class );
273
  $ip = $this->get_user_ip();
 
 
 
 
 
 
 
274
  // If this IP is whitelisted, so we don't need to blacklist this.
275
- if ( $service->is_ip_whitelisted( $ip ) ) {
276
  return;
277
  }
278
  // Green light if access staff is enabled.
271
  $the_list = wd_di()->get( \WP_Defender\Model\Setting\Blacklist_Lockout::class );
272
  $service = wd_di()->get( Blacklist_Lockout::class );
273
  $ip = $this->get_user_ip();
274
+
275
+ $model = Lockout_Ip::get( $ip );
276
+ $is_lockout_ip = is_object( $model ) && $model->is_locked();
277
+
278
+ $is_country_whitelisted = ! $service->is_blacklist( $ip ) &&
279
+ $service->is_country_whitelist( $ip ) && ! $is_lockout_ip;
280
+
281
  // If this IP is whitelisted, so we don't need to blacklist this.
282
+ if ( $service->is_ip_whitelisted( $ip ) || $is_country_whitelisted ) {
283
  return;
284
  }
285
  // Green light if access staff is enabled.
vendor/autoload.php CHANGED
@@ -4,4 +4,4 @@
4
 
5
  require_once __DIR__ . '/composer/autoload_real.php';
6
 
7
- return ComposerAutoloaderInit73b5f1072dced8cf0fc7b627db1f5805::getLoader();
4
 
5
  require_once __DIR__ . '/composer/autoload_real.php';
6
 
7
+ return ComposerAutoloaderInit8d4a1f52be9ef2664fc8c52e8ac1233e::getLoader();
vendor/composer/autoload_real.php CHANGED
@@ -2,7 +2,7 @@
2
 
3
  // autoload_real.php @generated by Composer
4
 
5
- class ComposerAutoloaderInit73b5f1072dced8cf0fc7b627db1f5805
6
  {
7
  private static $loader;
8
 
@@ -22,15 +22,15 @@ class ComposerAutoloaderInit73b5f1072dced8cf0fc7b627db1f5805
22
  return self::$loader;
23
  }
24
 
25
- spl_autoload_register(array('ComposerAutoloaderInit73b5f1072dced8cf0fc7b627db1f5805', 'loadClassLoader'), true, true);
26
  self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(\dirname(__FILE__)));
27
- spl_autoload_unregister(array('ComposerAutoloaderInit73b5f1072dced8cf0fc7b627db1f5805', 'loadClassLoader'));
28
 
29
  $useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
30
  if ($useStaticLoader) {
31
  require __DIR__ . '/autoload_static.php';
32
 
33
- call_user_func(\Composer\Autoload\ComposerStaticInit73b5f1072dced8cf0fc7b627db1f5805::getInitializer($loader));
34
  } else {
35
  $map = require __DIR__ . '/autoload_namespaces.php';
36
  foreach ($map as $namespace => $path) {
@@ -51,12 +51,12 @@ class ComposerAutoloaderInit73b5f1072dced8cf0fc7b627db1f5805
51
  $loader->register(true);
52
 
53
  if ($useStaticLoader) {
54
- $includeFiles = Composer\Autoload\ComposerStaticInit73b5f1072dced8cf0fc7b627db1f5805::$files;
55
  } else {
56
  $includeFiles = require __DIR__ . '/autoload_files.php';
57
  }
58
  foreach ($includeFiles as $fileIdentifier => $file) {
59
- composerRequire73b5f1072dced8cf0fc7b627db1f5805($fileIdentifier, $file);
60
  }
61
 
62
  return $loader;
@@ -68,7 +68,7 @@ class ComposerAutoloaderInit73b5f1072dced8cf0fc7b627db1f5805
68
  * @param string $file
69
  * @return void
70
  */
71
- function composerRequire73b5f1072dced8cf0fc7b627db1f5805($fileIdentifier, $file)
72
  {
73
  if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
74
  $GLOBALS['__composer_autoload_files'][$fileIdentifier] = true;
2
 
3
  // autoload_real.php @generated by Composer
4
 
5
+ class ComposerAutoloaderInit8d4a1f52be9ef2664fc8c52e8ac1233e
6
  {
7
  private static $loader;
8
 
22
  return self::$loader;
23
  }
24
 
25
+ spl_autoload_register(array('ComposerAutoloaderInit8d4a1f52be9ef2664fc8c52e8ac1233e', 'loadClassLoader'), true, true);
26
  self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(\dirname(__FILE__)));
27
+ spl_autoload_unregister(array('ComposerAutoloaderInit8d4a1f52be9ef2664fc8c52e8ac1233e', 'loadClassLoader'));
28
 
29
  $useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
30
  if ($useStaticLoader) {
31
  require __DIR__ . '/autoload_static.php';
32
 
33
+ call_user_func(\Composer\Autoload\ComposerStaticInit8d4a1f52be9ef2664fc8c52e8ac1233e::getInitializer($loader));
34
  } else {
35
  $map = require __DIR__ . '/autoload_namespaces.php';
36
  foreach ($map as $namespace => $path) {
51
  $loader->register(true);
52
 
53
  if ($useStaticLoader) {
54
+ $includeFiles = Composer\Autoload\ComposerStaticInit8d4a1f52be9ef2664fc8c52e8ac1233e::$files;
55
  } else {
56
  $includeFiles = require __DIR__ . '/autoload_files.php';
57
  }
58
  foreach ($includeFiles as $fileIdentifier => $file) {
59
+ composerRequire8d4a1f52be9ef2664fc8c52e8ac1233e($fileIdentifier, $file);
60
  }
61
 
62
  return $loader;
68
  * @param string $file
69
  * @return void
70
  */
71
+ function composerRequire8d4a1f52be9ef2664fc8c52e8ac1233e($fileIdentifier, $file)
72
  {
73
  if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
74
  $GLOBALS['__composer_autoload_files'][$fileIdentifier] = true;
vendor/composer/autoload_static.php CHANGED
@@ -4,7 +4,7 @@
4
 
5
  namespace Composer\Autoload;
6
 
7
- class ComposerStaticInit73b5f1072dced8cf0fc7b627db1f5805
8
  {
9
  public static $files = array (
10
  'bbf73f3db644d3dced353b837903e74c' => __DIR__ . '/..' . '/php-di/php-di/src/DI/functions.php',
@@ -286,9 +286,9 @@ class ComposerStaticInit73b5f1072dced8cf0fc7b627db1f5805
286
  public static function getInitializer(ClassLoader $loader)
287
  {
288
  return \Closure::bind(function () use ($loader) {
289
- $loader->prefixLengthsPsr4 = ComposerStaticInit73b5f1072dced8cf0fc7b627db1f5805::$prefixLengthsPsr4;
290
- $loader->prefixDirsPsr4 = ComposerStaticInit73b5f1072dced8cf0fc7b627db1f5805::$prefixDirsPsr4;
291
- $loader->classMap = ComposerStaticInit73b5f1072dced8cf0fc7b627db1f5805::$classMap;
292
 
293
  }, null, ClassLoader::class);
294
  }
4
 
5
  namespace Composer\Autoload;
6
 
7
+ class ComposerStaticInit8d4a1f52be9ef2664fc8c52e8ac1233e
8
  {
9
  public static $files = array (
10
  'bbf73f3db644d3dced353b837903e74c' => __DIR__ . '/..' . '/php-di/php-di/src/DI/functions.php',
286
  public static function getInitializer(ClassLoader $loader)
287
  {
288
  return \Closure::bind(function () use ($loader) {
289
+ $loader->prefixLengthsPsr4 = ComposerStaticInit8d4a1f52be9ef2664fc8c52e8ac1233e::$prefixLengthsPsr4;
290
+ $loader->prefixDirsPsr4 = ComposerStaticInit8d4a1f52be9ef2664fc8c52e8ac1233e::$prefixDirsPsr4;
291
+ $loader->classMap = ComposerStaticInit8d4a1f52be9ef2664fc8c52e8ac1233e::$classMap;
292
 
293
  }, null, ClassLoader::class);
294
  }
vendor/composer/installed.php CHANGED
@@ -5,7 +5,7 @@
5
  'type' => 'wordpress-plugin',
6
  'install_path' => __DIR__ . '/../../',
7
  'aliases' => array(),
8
- 'reference' => 'f35abbfcbc330246d36d36c9d3b4e7cfaa157d4e',
9
  'name' => 'incsub/wp-defender',
10
  'dev' => false,
11
  ),
@@ -49,7 +49,7 @@
49
  'type' => 'wordpress-plugin',
50
  'install_path' => __DIR__ . '/../../',
51
  'aliases' => array(),
52
- 'reference' => 'f35abbfcbc330246d36d36c9d3b4e7cfaa157d4e',
53
  'dev_requirement' => false,
54
  ),
55
  'mnapoli/php-di' => array(
5
  'type' => 'wordpress-plugin',
6
  'install_path' => __DIR__ . '/../../',
7
  'aliases' => array(),
8
+ 'reference' => '180c1a6446d4dc2b87a2398cc25050569ce7bd55',
9
  'name' => 'incsub/wp-defender',
10
  'dev' => false,
11
  ),
49
  'type' => 'wordpress-plugin',
50
  'install_path' => __DIR__ . '/../../',
51
  'aliases' => array(),
52
+ 'reference' => '180c1a6446d4dc2b87a2398cc25050569ce7bd55',
53
  'dev_requirement' => false,
54
  ),
55
  'mnapoli/php-di' => array(
wp-defender.php CHANGED
@@ -2,7 +2,7 @@
2
  /**
3
  * Plugin Name: Defender
4
  * Plugin URI: https://wpmudev.com/project/wp-defender/
5
- * Version: 2.8.1
6
  * Description: Get regular security scans, vulnerability reports, safety recommendations and customized hardening for your site in just a few clicks. Defender is the analyst and enforcer who never sleeps.
7
  * Author: WPMU DEV
8
  * Author URI: https://wpmudev.com/
@@ -33,10 +33,10 @@ if ( ! defined( 'ABSPATH' ) ) {
33
  die;
34
  }
35
  if ( ! defined( 'DEFENDER_VERSION' ) ) {
36
- define( 'DEFENDER_VERSION', '2.8.1' );
37
  }
38
  if ( ! defined( 'DEFENDER_DB_VERSION' ) ) {
39
- define( 'DEFENDER_DB_VERSION', '2.8.1' );
40
  }
41
  if ( ! defined( 'DEFENDER_SUI' ) ) {
42
  define( 'DEFENDER_SUI', '2-12-2' );
2
  /**
3
  * Plugin Name: Defender
4
  * Plugin URI: https://wpmudev.com/project/wp-defender/
5
+ * Version: 2.8.2
6
  * Description: Get regular security scans, vulnerability reports, safety recommendations and customized hardening for your site in just a few clicks. Defender is the analyst and enforcer who never sleeps.
7
  * Author: WPMU DEV
8
  * Author URI: https://wpmudev.com/
33
  die;
34
  }
35
  if ( ! defined( 'DEFENDER_VERSION' ) ) {
36
+ define( 'DEFENDER_VERSION', '2.8.2' );
37
  }
38
  if ( ! defined( 'DEFENDER_DB_VERSION' ) ) {
39
+ define( 'DEFENDER_DB_VERSION', '2.8.2' );
40
  }
41
  if ( ! defined( 'DEFENDER_SUI' ) ) {
42
  define( 'DEFENDER_SUI', '2-12-2' );