PluginProbe
The WP Remote WordPress Plugin / 6.44
The WP Remote WordPress Plugin v6.44
6.72 6.69 6.65 6.62 6.48 6.47 4.87 4.97 5.05 5.09 5.16 5.22 5.24 5.25 5.38 5.41 5.42 5.45 5.47 5.53 5.56 5.65 5.68 5.72 5.73 All 53 releases
← All changes | plugin.php +47 -53 5.726.44 View file →
@@ -4,10 +4,12 @@
4 4 Plugin URI: https://wpremote.com
5 5 Description: Manage your WordPress site with <a href="https://wpremote.com/">WP Remote</a>.
6 6 Author: WP Remote
7 7 Author URI: https://wpremote.com
8 -Version: 5.72
8 +Version: 6.44
9 9 Network: True
10 +License: GPLv2 or later
11 +License URI: [http://www.gnu.org/licenses/gpl-2.0.html](http://www.gnu.org/licenses/gpl-2.0.html)
10 12 */
11 13
12 14 /* Copyright 2017 WP Remote (email : support@wpremote.com)
13 15
@@ -37,10 +39,13 @@
37 39 require_once dirname( __FILE__ ) . '/wp_actions.php';
38 40 require_once dirname( __FILE__ ) . '/info.php';
39 41 require_once dirname( __FILE__ ) . '/account.php';
40 42 require_once dirname( __FILE__ ) . '/helper.php';
43 +require_once dirname( __FILE__ ) . '/wp_file_system.php';
41 44 require_once dirname( __FILE__ ) . '/wp_2fa/wp_2fa.php';
42 45
46 +require_once dirname( __FILE__ ) . '/wp_login_whitelabel.php';
47 +
43 48 ##WPCACHEMODULE##
44 49
45 50
46 51 $bvsettings = new WPRWPSettings();
@@ -55,10 +60,12 @@
55 60 register_uninstall_hook(__FILE__, array('WPRWPAction', 'uninstall'));
56 61 register_activation_hook(__FILE__, array($wp_action, 'activate'));
57 62 register_deactivation_hook(__FILE__, array($wp_action, 'deactivate'));
58 63
64 +
59 65 add_action('wp_footer', array($wp_action, 'footerHandler'), 100);
60 66 add_action('wpr_clear_bv_services_config', array($wp_action, 'clear_bv_services_config'));
67 +
61 68 ##SOADDUNINSTALLACTION##
62 69
63 70 ##DISABLE_OTHER_OPTIMIZATION_PLUGINS##
64 71
@@ -76,8 +83,11 @@
76 83 add_action('admin_menu', array($wpadmin, 'menu'));
77 84 }
78 85 add_filter('plugin_action_links', array($wpadmin, 'settingsLink'), 10, 2);
79 86 add_action('admin_head', array($wpadmin, 'removeAdminNotices'), 3);
87 +
88 + ##MG_AJAX_ACTIONS##
89 + ##POPUP_ON_DEACTIVATION##
80 90 add_action('admin_notices', array($wpadmin, 'activateWarning'));
81 91 add_action('admin_enqueue_scripts', array($wpadmin, 'wprsecAdminMenu'));
82 92 ##ALPURGECACHEFUNCTION##
83 93 ##ALADMINMENU##
@@ -82,10 +92,10 @@
82 92 ##ALPURGECACHEFUNCTION##
83 93 ##ALADMINMENU##
84 94 }
85 95
86 -if ((array_key_exists('bvreqmerge', $_POST)) || (array_key_exists('bvreqmerge', $_GET))) {
87 - $_REQUEST = array_merge($_GET, $_POST);
96 +if ((array_key_exists('bvreqmerge', $_POST)) || (array_key_exists('bvreqmerge', $_GET))) { // phpcs:ignore WordPress.Security.NonceVerification.Missing, WordPress.Security.NonceVerification.Recommended
97 + $_REQUEST = array_merge($_GET, $_POST); // phpcs:ignore WordPress.Security.NonceVerification.Missing, WordPress.Security.NonceVerification.Recommended
88 98 }
89 99
90 100 #Service active check
91 101 if ($bvinfo->config != false) {
@@ -102,66 +112,37 @@
102 112 $actlog = new BVWPActLog($bvdb, $bvsettings, $bvinfo, $bvconfig['activity_log']);
103 113 $actlog->init();
104 114 }
105 115
106 - if ($bvinfo->isServiceActive('maintenance_mode')) {
107 - require_once dirname( __FILE__ ). '/maintenance/wp_maintenance.php';
108 - $bvconfig = $bvinfo->config;
109 - $maintenance = new BVWPMaintenance($bvconfig['maintenance_mode']);
110 - $maintenance->init();
111 - }
112 -
116 + ##MAINTENANCEMODULE##
113 117 }
114 118
115 -if ((array_key_exists('bvplugname', $_REQUEST)) && ($_REQUEST['bvplugname'] == "wpremote")) {
119 +if (WPRHelper::getRawParam('REQUEST', 'bvplugname') == "wpremote") {
116 120 require_once dirname( __FILE__ ) . '/callback/base.php';
117 121 require_once dirname( __FILE__ ) . '/callback/response.php';
118 122 require_once dirname( __FILE__ ) . '/callback/request.php';
119 123 require_once dirname( __FILE__ ) . '/recover.php';
120 124
121 - $pubkey = WPRAccount::sanitizeKey($_REQUEST['pubkey']);
125 + $pubkey = WPRHelper::getRawParam('REQUEST', 'pubkey');
126 + $pubkey = isset($pubkey) ? WPRAccount::sanitizeKey($pubkey) : '';
127 + $rcvracc = WPRHelper::getRawParam('REQUEST', 'rcvracc');
122 128
123 - if (array_key_exists('rcvracc', $_REQUEST)) {
129 + if (isset($rcvracc)) {
124 130 $account = WPRRecover::find($bvsettings, $pubkey);
125 131 } else {
126 132 $account = WPRAccount::find($bvsettings, $pubkey);
127 133 }
128 134
129 - $request = new BVCallbackRequest($account, $_REQUEST, $bvsettings);
130 - $response = new BVCallbackResponse($request->bvb64cksize);
135 + $request = new WPRCallbackRequest($account, $_REQUEST, $bvsettings); // phpcs:ignore WordPress.Security.NonceVerification.Recommended
136 + $response = new WPRCallbackResponse($request->bvb64cksize);
131 137
132 138 if ($request->authenticate() === 1) {
133 - if (array_key_exists('bv_ignr_frm_cptch', $_REQUEST)) {
134 - #handling of Contact Forms 7
135 - add_filter('wpcf7_skip_spam_check', '__return_true', PHP_INT_MAX, 2);
139 + $bv_frm_tstng = WPRHelper::getRawParam('REQUEST', 'bv_frm_tstng');
140 + if (isset($bv_frm_tstng)) {
141 + require_once dirname(__FILE__) . '/form_testing/form_testing.php';
142 + $form_testing = new BVFormTesting($_REQUEST); // phpcs:ignore WordPress.Security.NonceVerification.Recommended
143 + $form_testing->init();
136 144
137 - #handling of Formidable plugin
138 - add_filter('frm_is_field_hidden', '__return_true', PHP_INT_MAX, 3);
139 -
140 - #handling of WP Forms plugin
141 - add_filter('wpforms_process_bypass_captcha', '__return_true', PHP_INT_MAX, 3);
142 -
143 - #handling of Forminator plugin
144 - if (defined('WP_PLUGIN_DIR')) {
145 - $abstractFrontActionFilePath = WP_PLUGIN_DIR . '/forminator/library/abstracts/abstract-class-front-action.php';
146 - $frontActionFilePath = WP_PLUGIN_DIR . '/forminator/library/modules/custom-forms/front/front-action.php';
147 -
148 - if (file_exists($abstractFrontActionFilePath) && file_exists($frontActionFilePath)) {
149 - require_once $abstractFrontActionFilePath;
150 - require_once $frontActionFilePath;
151 - if (class_exists('Forminator_CForm_Front_Action')) {
152 - Forminator_CForm_Front_Action::$hidden_fields[] = "bv-stripe-";
153 - }
154 - }
155 - }
156 -
157 - #handling of CleanTalk Antispam plugin
158 - add_action('init', function() {
159 - global $apbct;
160 - if (isset($apbct) && is_object($apbct)) {
161 - $apbct->settings['forms__contact_forms_test'] = 0;
162 - }
163 - });
164 145 } else {
165 146 define('WPRBASEPATH', plugin_dir_path(__FILE__));
166 147
167 148
@@ -166,14 +147,14 @@
166 147
167 148
168 149 require_once dirname( __FILE__ ) . '/callback/handler.php';
169 150
170 - $params = $request->processParams($_REQUEST);
151 + $params = $request->processParams($_REQUEST); // phpcs:ignore WordPress.Security.NonceVerification.Recommended
171 152 if ($params === false) {
172 153 $response->terminate($request->corruptedParamsResp());
173 154 }
174 155 $request->params = $params;
175 - $callback_handler = new BVCallbackHandler($bvdb, $bvsettings, $bvsiteinfo, $request, $account, $response);
156 + $callback_handler = new WPRCallbackHandler($bvdb, $bvsettings, $bvsiteinfo, $request, $account, $response);
176 157 if ($request->is_afterload) {
177 158 add_action('wp_loaded', array($callback_handler, 'execute'));
178 159 } else if ($request->is_admin_ajax) {
179 160 add_action('wp_ajax_bvadm', array($callback_handler, 'bvAdmExecuteWithUser'));
@@ -189,16 +170,16 @@
189 170 if ($bvinfo->hasValidDBVersion()) {
190 171 if ($bvinfo->isProtectModuleEnabled()) {
191 172 require_once dirname( __FILE__ ) . '/protect/protect.php';
192 173 //For backward compatibility.
193 - WPRProtect_V572::$settings = new WPRWPSettings();
194 - WPRProtect_V572::$db = new WPRWPDb();
195 - WPRProtect_V572::$info = new WPRInfo(WPRProtect_V572::$settings);
174 + WPRProtect_V644::$settings = new WPRWPSettings();
175 + WPRProtect_V644::$db = new WPRWPDb();
176 + WPRProtect_V644::$info = new WPRInfo(WPRProtect_V644::$settings);
196 177
197 - add_action('wpr_clear_pt_config', array('WPRProtect_V572', 'uninstall'));
178 + add_action('wpr_clear_pt_config', array('WPRProtect_V644', 'uninstall'));
198 179
199 180 if ($bvinfo->isActivePlugin()) {
200 - WPRProtect_V572::init(WPRProtect_V572::MODE_WP);
181 + WPRProtect_V644::init(WPRProtect_V644::MODE_WP);
201 182 }
202 183 }
203 184
204 185 if ($bvinfo->isDynSyncModuleEnabled()) {
@@ -234,5 +215,18 @@
234 215 add_filter('site_transient_update_plugins', array($wpadmin, 'hidePluginUpdate'));
235 216 }
236 217
237 218 ##THIRDPARTYCACHINGMODULE##
238 -}
219 +}
220 +
221 +if (WPRWP2FA::isEnabled($bvsettings)) {
222 + $wp_2fa = new WPRWP2FA();
223 + $wp_2fa->init();
224 +}
225 +
226 +if (!empty($bvinfo->getLPWhitelabelInfo())) {
227 + $wp_login_whitelabel = new WPRWPLoginWhitelabel();
228 + $wp_login_whitelabel->init();
229 +}
230 +
231 +add_action('wpr_clear_wp_2fa_config', array($wp_action, 'clear_wp_2fa_config'));
232 +##PLUGIN_LOADED_MODULE##