Version Description
- Added a new feature to prevent image hot-linking. (See the "Prevent Hotlinks" tab in the firewall menu)
- Added a check in the Rename Login Page feature to prevent people from setting the slug to "wp-admin"
- Fixed a small bug with Login Lockdown feature.
Download this release
Release Info
Developer | mra13 |
Plugin | All In One WP Security & Firewall |
Version | 3.6 |
Comparing to | |
See all releases |
Code changes from version 3.5.1 to 3.6
- admin/wp-security-brute-force-menu.php +3 -0
- admin/wp-security-filescan-menu.php +14 -2
- admin/wp-security-firewall-menu.php +69 -0
- admin/wp-security-settings-menu.php +0 -1
- classes/grade-system/wp-security-feature-item-manager.php +20 -0
- classes/wp-security-configure-settings.php +5 -0
- classes/wp-security-user-login.php +1 -1
- classes/wp-security-utility-htaccess.php +32 -0
- readme.txt +8 -2
- wp-security-core.php +1 -1
- wp-security.php +1 -1
admin/wp-security-brute-force-menu.php
CHANGED
@@ -99,6 +99,9 @@ class AIOWPSecurity_Brute_Force_Menu extends AIOWPSecurity_Admin_Menu
|
|
99 |
$error .= '<br />'.__('Please enter a value for your login page slug.','aiowpsecurity');
|
100 |
}else if (!empty($_POST['aiowps_login_page_slug'])){
|
101 |
$aiowps_login_page_slug = sanitize_text_field($_POST['aiowps_login_page_slug']);
|
|
|
|
|
|
|
102 |
}
|
103 |
|
104 |
if($error){
|
99 |
$error .= '<br />'.__('Please enter a value for your login page slug.','aiowpsecurity');
|
100 |
}else if (!empty($_POST['aiowps_login_page_slug'])){
|
101 |
$aiowps_login_page_slug = sanitize_text_field($_POST['aiowps_login_page_slug']);
|
102 |
+
if($aiowps_login_page_slug == 'wp-admin'){
|
103 |
+
$error .= '<br />'.__('You cannot use the value "wp-admin" for your login page slug.','aiowpsecurity');
|
104 |
+
}
|
105 |
}
|
106 |
|
107 |
if($error){
|
admin/wp-security-filescan-menu.php
CHANGED
@@ -347,8 +347,20 @@ class AIOWPSecurity_Filescan_Menu extends AIOWPSecurity_Admin_Menu
|
|
347 |
|
348 |
echo '<h2>'.__('Scanning For Malware', 'aiowpsecurity').'</h2>';
|
349 |
echo '<p>'.__('Due to the constantly changing and complex nature of Malware, scanning for such things using a standalone plugin will not work reliably. This is something best done via an external scan of your site regularly.', 'aiowpsecurity').'</p>'.
|
350 |
-
'<p>'.__('This is why we have created an easy-to-use scanning service which is hosted off our own server which will scan your site for malware once every day and notify you if it finds anything.', 'aiowpsecurity').'</p>'
|
351 |
-
'<p>'.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
352 |
?>
|
353 |
</div>
|
354 |
|
347 |
|
348 |
echo '<h2>'.__('Scanning For Malware', 'aiowpsecurity').'</h2>';
|
349 |
echo '<p>'.__('Due to the constantly changing and complex nature of Malware, scanning for such things using a standalone plugin will not work reliably. This is something best done via an external scan of your site regularly.', 'aiowpsecurity').'</p>'.
|
350 |
+
'<p>'.__('This is why we have created an easy-to-use scanning service which is hosted off our own server which will scan your site for malware once every day and notify you if it finds anything.', 'aiowpsecurity').'</p>';
|
351 |
+
echo '<p>'.__('When you sign up for this service you will get the following:', 'aiowpsecurity').'</p>';
|
352 |
+
echo '<ul class="aiowps_admin_ul_grp1">
|
353 |
+
<li>'.__('Free for the First 14 Days (zero risk)','aiowpsecurity').'</li>
|
354 |
+
<li>'.__('Automatic Daily Scan of 1 Website','aiowpsecurity').'</li>
|
355 |
+
<li>'.__('Automatic Malware & Blacklist Monitoring','aiowpsecurity').'</li>
|
356 |
+
<li>'.__('Automatic Email Alerting','aiowpsecurity').'</li>
|
357 |
+
<li>'.__('Site uptime monitoring','aiowpsecurity').'</li>
|
358 |
+
<li>'.__('Site response time monitoring','aiowpsecurity').'</li>
|
359 |
+
<li>'.__('Malware Cleanup','aiowpsecurity').'</li>
|
360 |
+
<li>'.__('Blacklist Removal','aiowpsecurity').'</li>
|
361 |
+
<li>'.__('No Contract (Cancel Anytime)','aiowpsecurity').'</li>
|
362 |
+
</ul>';
|
363 |
+
echo '<p>'.sprintf(__('To learn more please %s.', 'aiowpsecurity'), $site_scanners_link).'</p>';
|
364 |
?>
|
365 |
</div>
|
366 |
|
admin/wp-security-firewall-menu.php
CHANGED
@@ -12,6 +12,7 @@ class AIOWPSecurity_Firewall_Menu extends AIOWPSecurity_Admin_Menu
|
|
12 |
'tab2' => 'render_tab2',
|
13 |
'tab3' => 'render_tab3',
|
14 |
'tab4' => 'render_tab4',
|
|
|
15 |
);
|
16 |
|
17 |
function __construct()
|
@@ -26,6 +27,7 @@ class AIOWPSecurity_Firewall_Menu extends AIOWPSecurity_Admin_Menu
|
|
26 |
'tab2' => __('Additional Firewall Rules', 'aiowpsecurity'),
|
27 |
'tab3' => __('5G Blacklist Firewall Rules', 'aiowpsecurity'),
|
28 |
'tab4' => __('Internet Bots', 'aiowpsecurity'),
|
|
|
29 |
);
|
30 |
}
|
31 |
|
@@ -632,4 +634,71 @@ class AIOWPSecurity_Firewall_Menu extends AIOWPSecurity_Admin_Menu
|
|
632 |
<?php
|
633 |
}
|
634 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
635 |
} //end class
|
12 |
'tab2' => 'render_tab2',
|
13 |
'tab3' => 'render_tab3',
|
14 |
'tab4' => 'render_tab4',
|
15 |
+
'tab5' => 'render_tab5',
|
16 |
);
|
17 |
|
18 |
function __construct()
|
27 |
'tab2' => __('Additional Firewall Rules', 'aiowpsecurity'),
|
28 |
'tab3' => __('5G Blacklist Firewall Rules', 'aiowpsecurity'),
|
29 |
'tab4' => __('Internet Bots', 'aiowpsecurity'),
|
30 |
+
'tab5' => __('Prevent Hotlinks', 'aiowpsecurity'),
|
31 |
);
|
32 |
}
|
33 |
|
634 |
<?php
|
635 |
}
|
636 |
|
637 |
+
function render_tab5()
|
638 |
+
{
|
639 |
+
global $aio_wp_security;
|
640 |
+
global $aiowps_feature_mgr;
|
641 |
+
|
642 |
+
if(isset($_POST['aiowps_save_prevent_hotlinking']))//Do form submission tasks
|
643 |
+
{
|
644 |
+
$nonce=$_REQUEST['_wpnonce'];
|
645 |
+
if (!wp_verify_nonce($nonce, 'aiowpsec-prevent-hotlinking-nonce'))
|
646 |
+
{
|
647 |
+
$aio_wp_security->debug_logger->log_debug("Nonce check failed on prevent hotlinking options save!",4);
|
648 |
+
die("Nonce check failed on prevent hotlinking options save!");
|
649 |
+
}
|
650 |
+
$aio_wp_security->configs->set_value('aiowps_prevent_hotlinking',isset($_POST["aiowps_prevent_hotlinking"])?'1':'');
|
651 |
+
$aio_wp_security->configs->save_config();
|
652 |
+
|
653 |
+
//Recalculate points after the feature status/options have been altered
|
654 |
+
$aiowps_feature_mgr->check_feature_status_and_recalculate_points();
|
655 |
+
|
656 |
+
//Now let's write the applicable rules to the .htaccess file
|
657 |
+
$res = AIOWPSecurity_Utility_Htaccess::write_to_htaccess();
|
658 |
+
|
659 |
+
if ($res)
|
660 |
+
{
|
661 |
+
$this->show_msg_updated(__('Settings were successfully saved', 'aiowpsecurity'));
|
662 |
+
}
|
663 |
+
else if($res == -1)
|
664 |
+
{
|
665 |
+
$this->show_msg_error(__('Could not write to the .htaccess file. Please check the file permissions.', 'aiowpsecurity'));
|
666 |
+
}
|
667 |
+
}
|
668 |
+
?>
|
669 |
+
<h2><?php _e('Prevent Image Hotlinking', 'aiowpsecurity')?></h2>
|
670 |
+
<div class="aio_blue_box">
|
671 |
+
<?php
|
672 |
+
echo '<p>'.__('A Hotlink is where someone displays an image on their site which is actually located on your site by using a direct link to the source of the image on your server.', 'aiowpsecurity');
|
673 |
+
echo '<br />'.__('Due to the fact that the image being displayed on the other person\'s site is coming from your server, this can cause leaking of bandwidth and resources for you because your server has to present this image for the people viewing it on someone elses\'s site.','aiowpsecurity');
|
674 |
+
echo '<br />'.__('This feature will prevent people from directly hotlinking images from your site\'s pages by writing some directives in your .htaccess file.', 'aiowpsecurity').'</p>';
|
675 |
+
?>
|
676 |
+
</div>
|
677 |
+
|
678 |
+
<div class="postbox">
|
679 |
+
<h3><label for="title"><?php _e('Prevent Hotlinking', 'aiowpsecurity'); ?></label></h3>
|
680 |
+
<div class="inside">
|
681 |
+
<?php
|
682 |
+
//Display security info badge
|
683 |
+
global $aiowps_feature_mgr;
|
684 |
+
$aiowps_feature_mgr->output_feature_details_badge("prevent-hotlinking");
|
685 |
+
?>
|
686 |
+
|
687 |
+
<form action="" method="POST">
|
688 |
+
<?php wp_nonce_field('aiowpsec-prevent-hotlinking-nonce'); ?>
|
689 |
+
<table class="form-table">
|
690 |
+
<tr valign="top">
|
691 |
+
<th scope="row"><?php _e('Prevent Image Hotlinking', 'aiowpsecurity')?>:</th>
|
692 |
+
<td>
|
693 |
+
<input name="aiowps_prevent_hotlinking" type="checkbox"<?php if($aio_wp_security->configs->get_value('aiowps_prevent_hotlinking')=='1') echo ' checked="checked"'; ?> value="1"/>
|
694 |
+
<span class="description"><?php _e('Check this if you want to prevent hotlinking to images on your site.', 'aiowpsecurity'); ?></span>
|
695 |
+
</td>
|
696 |
+
</tr>
|
697 |
+
</table>
|
698 |
+
<input type="submit" name="aiowps_save_prevent_hotlinking" value="<?php _e('Save Settings', 'aiowpsecurity')?>" class="button-primary" />
|
699 |
+
</form>
|
700 |
+
</div></div>
|
701 |
+
<?php
|
702 |
+
}
|
703 |
+
|
704 |
} //end class
|
admin/wp-security-settings-menu.php
CHANGED
@@ -496,7 +496,6 @@ class AIOWPSecurity_Settings_Menu extends AIOWPSecurity_Admin_Menu
|
|
496 |
<?php
|
497 |
}
|
498 |
|
499 |
-
|
500 |
function check_if_wp_config_contents($wp_file)
|
501 |
{
|
502 |
$is_wp_config = false;
|
496 |
<?php
|
497 |
}
|
498 |
|
|
|
499 |
function check_if_wp_config_contents($wp_file)
|
500 |
{
|
501 |
$is_wp_config = false;
|
classes/grade-system/wp-security-feature-item-manager.php
CHANGED
@@ -28,6 +28,9 @@ class AIOWPSecurity_Feature_Item_Manager
|
|
28 |
//WP Generator Meta
|
29 |
$this->feature_items[] = new AIOWPSecurity_Feature_Item("wp-generator-meta-tag", __("Remove WP Generatore Meta Tag", "aiowpsecurity"), $this->feature_point_1, $this->sec_level_basic);
|
30 |
|
|
|
|
|
|
|
31 |
//User Accounts Menu Features
|
32 |
//Change Admin Username
|
33 |
$this->feature_items[] = new AIOWPSecurity_Feature_Item("user-accounts-change-admin-user", __("Change Admin Username", "aiowpsecurity"), $this->feature_point_3, $this->sec_level_basic);
|
@@ -148,6 +151,11 @@ class AIOWPSecurity_Feature_Item_Manager
|
|
148 |
$this->check_remove_wp_generator_meta_feature($item);
|
149 |
}
|
150 |
|
|
|
|
|
|
|
|
|
|
|
151 |
if($item->feature_id == "user-accounts-change-admin-user")
|
152 |
{
|
153 |
$this->check_user_accounts_change_admin_user_feature($item);
|
@@ -318,6 +326,18 @@ class AIOWPSecurity_Feature_Item_Manager
|
|
318 |
}
|
319 |
}
|
320 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
321 |
function check_user_accounts_change_admin_user_feature($item)
|
322 |
{
|
323 |
if (AIOWPSecurity_Utility::check_user_exists('admin')) {
|
28 |
//WP Generator Meta
|
29 |
$this->feature_items[] = new AIOWPSecurity_Feature_Item("wp-generator-meta-tag", __("Remove WP Generatore Meta Tag", "aiowpsecurity"), $this->feature_point_1, $this->sec_level_basic);
|
30 |
|
31 |
+
//Prevent Image Hotlinks
|
32 |
+
$this->feature_items[] = new AIOWPSecurity_Feature_Item("prevent-hotlinking", __("Prevent Image Hotlinking", "aiowpsecurity"), $this->feature_point_2, $this->sec_level_basic);
|
33 |
+
|
34 |
//User Accounts Menu Features
|
35 |
//Change Admin Username
|
36 |
$this->feature_items[] = new AIOWPSecurity_Feature_Item("user-accounts-change-admin-user", __("Change Admin Username", "aiowpsecurity"), $this->feature_point_3, $this->sec_level_basic);
|
151 |
$this->check_remove_wp_generator_meta_feature($item);
|
152 |
}
|
153 |
|
154 |
+
if($item->feature_id == "prevent-hotlinking")
|
155 |
+
{
|
156 |
+
$this->check_prevent_hotlinking_feature($item);
|
157 |
+
}
|
158 |
+
|
159 |
if($item->feature_id == "user-accounts-change-admin-user")
|
160 |
{
|
161 |
$this->check_user_accounts_change_admin_user_feature($item);
|
326 |
}
|
327 |
}
|
328 |
|
329 |
+
function check_prevent_hotlinking_feature($item)
|
330 |
+
{
|
331 |
+
global $aio_wp_security;
|
332 |
+
if ($aio_wp_security->configs->get_value('aiowps_prevent_hotlinking') == '1') {
|
333 |
+
$item->set_feature_status($this->feature_active);
|
334 |
+
}
|
335 |
+
else
|
336 |
+
{
|
337 |
+
$item->set_feature_status($this->feature_inactive);
|
338 |
+
}
|
339 |
+
}
|
340 |
+
|
341 |
function check_user_accounts_change_admin_user_feature($item)
|
342 |
{
|
343 |
if (AIOWPSecurity_Utility::check_user_exists('admin')) {
|
classes/wp-security-configure-settings.php
CHANGED
@@ -14,6 +14,8 @@ class AIOWPSecurity_Configure_Settings
|
|
14 |
//WP Generator Meta Tag feature
|
15 |
$aio_wp_security->configs->set_value('aiowps_remove_wp_generator_meta_info','');//Checkbox
|
16 |
|
|
|
|
|
17 |
//General Settings Page
|
18 |
|
19 |
//User password feature
|
@@ -116,6 +118,9 @@ class AIOWPSecurity_Configure_Settings
|
|
116 |
//WP Generator Meta Tag feature
|
117 |
$aio_wp_security->configs->add_value('aiowps_remove_wp_generator_meta_info','');//Checkbox
|
118 |
|
|
|
|
|
|
|
119 |
//General Settings Page
|
120 |
|
121 |
//User password feature
|
14 |
//WP Generator Meta Tag feature
|
15 |
$aio_wp_security->configs->set_value('aiowps_remove_wp_generator_meta_info','');//Checkbox
|
16 |
|
17 |
+
//Prevent Image Hotlinks
|
18 |
+
$aio_wp_security->configs->set_value('aiowps_prevent_hotlinking','');//Checkbox
|
19 |
//General Settings Page
|
20 |
|
21 |
//User password feature
|
118 |
//WP Generator Meta Tag feature
|
119 |
$aio_wp_security->configs->add_value('aiowps_remove_wp_generator_meta_info','');//Checkbox
|
120 |
|
121 |
+
//Prevent Image Hotlinks
|
122 |
+
$aio_wp_security->configs->add_value('aiowps_prevent_hotlinking','');//Checkbox
|
123 |
+
|
124 |
//General Settings Page
|
125 |
|
126 |
//User password feature
|
classes/wp-security-user-login.php
CHANGED
@@ -61,7 +61,7 @@ class AIOWPSecurity_User_Login
|
|
61 |
$this->increment_failed_logins($username);
|
62 |
if($aio_wp_security->configs->get_value('aiowps_enable_login_lockdown')=='1')
|
63 |
{
|
64 |
-
if($login_attempts_permitted <= $this->get_login_fail_count()
|
65 |
{
|
66 |
$this->lock_the_user($username);
|
67 |
}
|
61 |
$this->increment_failed_logins($username);
|
62 |
if($aio_wp_security->configs->get_value('aiowps_enable_login_lockdown')=='1')
|
63 |
{
|
64 |
+
if($login_attempts_permitted <= $this->get_login_fail_count())
|
65 |
{
|
66 |
$this->lock_the_user($username);
|
67 |
}
|
classes/wp-security-utility-htaccess.php
CHANGED
@@ -45,6 +45,10 @@ class AIOWPSecurity_Utility_Htaccess
|
|
45 |
|
46 |
public static $enable_login_whitelist_marker_start = '#AIOWPS_LOGIN_WHITELIST_START';
|
47 |
public static $enable_login_whitelist_marker_end = '#AIOWPS_LOGIN_WHITELIST_END';
|
|
|
|
|
|
|
|
|
48 |
// TODO - enter more markers as new .htaccess features are added
|
49 |
|
50 |
function __construct(){
|
@@ -220,6 +224,7 @@ class AIOWPSecurity_Utility_Htaccess
|
|
220 |
$rules .= AIOWPSecurity_Utility_Htaccess::getrules_enable_brute_force_prevention();
|
221 |
$rules .= AIOWPSecurity_Utility_Htaccess::getrules_block_spambots();
|
222 |
$rules .= AIOWPSecurity_Utility_Htaccess::getrules_enable_login_whitelist();
|
|
|
223 |
//TODO: The following utility functions are ready to use when we write the menu pages for these features
|
224 |
|
225 |
//Add more functions for features as needed
|
@@ -873,6 +878,33 @@ class AIOWPSecurity_Utility_Htaccess
|
|
873 |
return $rules;
|
874 |
}
|
875 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
876 |
|
877 |
/*
|
878 |
* This function will do a quick check to see if a file's contents are actually .htaccess specific.
|
45 |
|
46 |
public static $enable_login_whitelist_marker_start = '#AIOWPS_LOGIN_WHITELIST_START';
|
47 |
public static $enable_login_whitelist_marker_end = '#AIOWPS_LOGIN_WHITELIST_END';
|
48 |
+
|
49 |
+
public static $prevent_image_hotlinks_marker_start = '#AIOWPS_PREVENT_IMAGE_HOTLINKS_START';
|
50 |
+
public static $prevent_image_hotlinks_marker_end = '#AIOWPS_PREVENT_IMAGE_HOTLINKS_END';
|
51 |
+
|
52 |
// TODO - enter more markers as new .htaccess features are added
|
53 |
|
54 |
function __construct(){
|
224 |
$rules .= AIOWPSecurity_Utility_Htaccess::getrules_enable_brute_force_prevention();
|
225 |
$rules .= AIOWPSecurity_Utility_Htaccess::getrules_block_spambots();
|
226 |
$rules .= AIOWPSecurity_Utility_Htaccess::getrules_enable_login_whitelist();
|
227 |
+
$rules .= AIOWPSecurity_Utility_Htaccess::prevent_image_hotlinks();
|
228 |
//TODO: The following utility functions are ready to use when we write the menu pages for these features
|
229 |
|
230 |
//Add more functions for features as needed
|
878 |
return $rules;
|
879 |
}
|
880 |
|
881 |
+
/*
|
882 |
+
* This function will write some directives to prevent image hotlinking
|
883 |
+
*/
|
884 |
+
static function prevent_image_hotlinks()
|
885 |
+
{
|
886 |
+
global $aio_wp_security;
|
887 |
+
$rules = '';
|
888 |
+
if($aio_wp_security->configs->get_value('aiowps_prevent_hotlinking')=='1')
|
889 |
+
{
|
890 |
+
$url_string = AIOWPSecurity_Utility_Htaccess::return_regularized_url(AIOWPSEC_WP_URL);
|
891 |
+
if ($url_string == FALSE){
|
892 |
+
$url_string = AIOWPSEC_WP_URL;
|
893 |
+
}
|
894 |
+
$rules .= AIOWPSecurity_Utility_Htaccess::$prevent_image_hotlinks_marker_start . PHP_EOL; //Add feature marker start
|
895 |
+
$rules .= '<IfModule mod_rewrite.c>
|
896 |
+
RewriteEngine on
|
897 |
+
RewriteCond %{HTTP_REFERER} !^$' . PHP_EOL;
|
898 |
+
$rules .= ' RewriteCond %{REQUEST_FILENAME} -f' . PHP_EOL;
|
899 |
+
$rules .= ' RewriteCond %{REQUEST_FILENAME} \.(gif|jpe?g?|png)$ [NC]' . PHP_EOL;
|
900 |
+
$rules .= ' RewriteCond %{HTTP_REFERER} !^'.$url_string.' [NC]' . PHP_EOL;
|
901 |
+
$rules .= ' RewriteRule \.(gif|jpe?g?|png)$ - [F,NC,L]
|
902 |
+
</IfModule>' . PHP_EOL;
|
903 |
+
$rules .= AIOWPSecurity_Utility_Htaccess::$prevent_image_hotlinks_marker_end . PHP_EOL; //Add feature marker end
|
904 |
+
}
|
905 |
+
|
906 |
+
return $rules;
|
907 |
+
}
|
908 |
|
909 |
/*
|
910 |
* This function will do a quick check to see if a file's contents are actually .htaccess specific.
|
readme.txt
CHANGED
@@ -1,10 +1,10 @@
|
|
1 |
=== All In One WP Security & Firewall ===
|
2 |
Contributors: Tips and Tricks HQ, wpsolutions, Peter Petreski, Ruhul Amin
|
3 |
Donate link: http://www.tipsandtricks-hq.com
|
4 |
-
Tags: security, secure, Anti Virus, antivirus, ban, ban hacker, virus, firewall, firewall security, login, lockdown, htaccess, hack, malware, vulnerability, protect, protection, phishing, database, backup, plugin, sql injection, ssl, restrict, login captcha, bot
|
5 |
Requires at least: 3.5
|
6 |
Tested up to: 3.8.1
|
7 |
-
Stable tag: 3.
|
8 |
License: GPLv3
|
9 |
|
10 |
A comprehensive, user-friendly, all in one WordPress security and firewall plugin for your site.
|
@@ -86,6 +86,7 @@ So these firewall rules will stop malicious script(s) before it gets a chance to
|
|
86 |
or malicious bots who do not have a special cookie in their browser. You (the site admin) will know how to set this special cookie and be able to log into your site.
|
87 |
* WordPress PingBack Vulnerability Protection feature. This firewall feature allows the user to prohibit access to the xmlrpc.php file in order to protect against certain vulnerabilities in the pingback functionality. This is also helpful to block bots from constantly accessing the xmlrpc.php file and wasting your server resource.
|
88 |
* Ability to block fake Googlebots from crawling your site.
|
|
|
89 |
|
90 |
= Brute force login attack prevention =
|
91 |
* Instantly block Brute Force Login Attacks via our special Cookie-Based Brute Force Login Prevention feature. This firewall functionality will block all login attempts from people and bots.
|
@@ -147,6 +148,11 @@ None
|
|
147 |
|
148 |
== Changelog ==
|
149 |
|
|
|
|
|
|
|
|
|
|
|
150 |
= 3.5.1 =
|
151 |
- Fixed a bug where the cookie-based brute force directives were not being deleted from the .htaccess file when the Rename Login Page feature was being activated.
|
152 |
|
1 |
=== All In One WP Security & Firewall ===
|
2 |
Contributors: Tips and Tricks HQ, wpsolutions, Peter Petreski, Ruhul Amin
|
3 |
Donate link: http://www.tipsandtricks-hq.com
|
4 |
+
Tags: security, secure, Anti Virus, antivirus, ban, ban hacker, virus, firewall, firewall security, login, lockdown, htaccess, hack, malware, vulnerability, protect, protection, phishing, database, backup, plugin, sql injection, ssl, restrict, login captcha, bot, hotlink
|
5 |
Requires at least: 3.5
|
6 |
Tested up to: 3.8.1
|
7 |
+
Stable tag: 3.6
|
8 |
License: GPLv3
|
9 |
|
10 |
A comprehensive, user-friendly, all in one WordPress security and firewall plugin for your site.
|
86 |
or malicious bots who do not have a special cookie in their browser. You (the site admin) will know how to set this special cookie and be able to log into your site.
|
87 |
* WordPress PingBack Vulnerability Protection feature. This firewall feature allows the user to prohibit access to the xmlrpc.php file in order to protect against certain vulnerabilities in the pingback functionality. This is also helpful to block bots from constantly accessing the xmlrpc.php file and wasting your server resource.
|
88 |
* Ability to block fake Googlebots from crawling your site.
|
89 |
+
* Ability to prevent image hotlinking. Use this to prevent others from hotlinking your images.
|
90 |
|
91 |
= Brute force login attack prevention =
|
92 |
* Instantly block Brute Force Login Attacks via our special Cookie-Based Brute Force Login Prevention feature. This firewall functionality will block all login attempts from people and bots.
|
148 |
|
149 |
== Changelog ==
|
150 |
|
151 |
+
= 3.6 =
|
152 |
+
- Added a new feature to prevent image hot-linking. (See the "Prevent Hotlinks" tab in the firewall menu)
|
153 |
+
- Added a check in the Rename Login Page feature to prevent people from setting the slug to "wp-admin"
|
154 |
+
- Fixed a small bug with Login Lockdown feature.
|
155 |
+
|
156 |
= 3.5.1 =
|
157 |
- Fixed a bug where the cookie-based brute force directives were not being deleted from the .htaccess file when the Rename Login Page feature was being activated.
|
158 |
|
wp-security-core.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
if (!class_exists('AIO_WP_Security')){
|
4 |
|
5 |
class AIO_WP_Security{
|
6 |
-
var $version = '3.
|
7 |
var $db_version = '1.4';
|
8 |
var $plugin_url;
|
9 |
var $plugin_path;
|
3 |
if (!class_exists('AIO_WP_Security')){
|
4 |
|
5 |
class AIO_WP_Security{
|
6 |
+
var $version = '3.6';
|
7 |
var $db_version = '1.4';
|
8 |
var $plugin_url;
|
9 |
var $plugin_path;
|
wp-security.php
CHANGED
@@ -1,7 +1,7 @@
|
|
1 |
<?php
|
2 |
/*
|
3 |
Plugin Name: All In One WP Security
|
4 |
-
Version: v3.
|
5 |
Plugin URI: http://www.tipsandtricks-hq.com/wordpress-security-and-firewall-plugin
|
6 |
Author: Tips and Tricks HQ, Peter, Ruhul, Ivy
|
7 |
Author URI: http://www.tipsandtricks-hq.com/
|
1 |
<?php
|
2 |
/*
|
3 |
Plugin Name: All In One WP Security
|
4 |
+
Version: v3.6
|
5 |
Plugin URI: http://www.tipsandtricks-hq.com/wordpress-security-and-firewall-plugin
|
6 |
Author: Tips and Tricks HQ, Peter, Ruhul, Ivy
|
7 |
Author URI: http://www.tipsandtricks-hq.com/
|