PluginProbe ʕ •ᴥ•ʔ
SiteGuard WP Plugin / 1.0.0
SiteGuard WP Plugin v1.0.0
1.8.7 1.8.6 1.8.6-beta1 1.8.6-beta2 1.8.4 1.8.5 1.8.3 1.8.2 1.8.1 trunk 1.0.0 1.0.1 1.0.2 1.0.3 1.0.4 1.0.5 1.0.6 1.1.0 1.1.1 1.1.2 1.2.0 1.2.1 1.2.2 1.2.3 1.4.3 1.5.0 1.5.1 1.5.2 1.6.0 1.6.1 1.7.0 1.7.1 1.7.10 1.7.11 1.7.12 1.7.2 1.7.3 1.7.4 1.7.5 1.7.6 1.7.7 1.7.8 1.7.9 1.8.0 1.8.0-beta1 1.8.0-beta2 1.8.0-beta3 1.8.0-beta4
siteguard / admin / siteguard-menu-login-lock.php
siteguard / admin Last commit date
siteguard-login-history-table.php 11 years ago siteguard-menu-admin-filter.php 11 years ago siteguard-menu-captcha.php 11 years ago siteguard-menu-dashboard.php 11 years ago siteguard-menu-disable-pingback.php 11 years ago siteguard-menu-fail-once.php 11 years ago siteguard-menu-init.php 11 years ago siteguard-menu-login-lock.php 11 years ago siteguard-menu-rename-login.php 11 years ago siteguard-menu-same-error.php 11 years ago siteguard-menu-waf-tuning-support.php 11 years ago siteguard-waf-exclude-rule-table.php 11 years ago
siteguard-menu-login-lock.php
139 lines
1 <?php
2
3 class SiteGuard_Menu_Login_Lock extends SiteGuard_Base {
4 function __construct( ) {
5 $this->render_page( );
6 }
7 function is_interval_value( $value ) {
8 if ( '1' == $value || '5' == $value || '30' == $value ) {
9 return true;
10 }
11 return false;
12 }
13 function is_threshold_value( $value ) {
14 if ( '3' == $value || '10' == $value || '100' == $value ) {
15 return true;
16 }
17 return false;
18 }
19 function is_locksec_value( $value ) {
20 if ( '30' == $value || '60' == $value || '300' == $value ) {
21 return true;
22 }
23 return false;
24 }
25 function render_page( ) {
26 global $config;
27
28 $opt_name_enable = 'loginlock_enable';
29 $opt_name_interval = 'loginlock_interval';
30 $opt_name_threshold = 'loginlock_threshold';
31 $opt_name_locksec = 'loginlock_locksec';
32
33 $opt_val_enable = $config->get( $opt_name_enable );
34 $opt_val_interval = $config->get( $opt_name_interval );
35 $opt_val_threshold = $config->get( $opt_name_threshold );
36 $opt_val_locksec = $config->get( $opt_name_locksec );
37 if ( isset( $_POST['update'] ) && check_admin_referer( 'siteguard-menu-login-lock-submit' ) ) {
38 $error = false;
39 if ( ( false == $this->is_switch_value( $_POST[ $opt_name_enable ] ) )
40 || ( false == $this->is_interval_value( $_POST[ $opt_name_interval ] ) )
41 || ( false == $this->is_threshold_value( $_POST[ $opt_name_threshold ] ) )
42 || ( false == $this->is_locksec_value( $_POST[ $opt_name_locksec ] ) ) ) {
43 echo '<div class="error settings-error"><p><strong>';
44 esc_html_e( 'ERROR: Invalid input value.', 'siteguard' );
45 echo '</strong></p></div>';
46 $error = true;
47 }
48 if ( false == $error ) {
49 $opt_val_enable = $_POST[ $opt_name_enable ];
50 $opt_val_interval = $_POST[ $opt_name_interval ];
51 $opt_val_threshold = $_POST[ $opt_name_threshold ];
52 $opt_val_locksec = $_POST[ $opt_name_locksec ];
53 $config->set( $opt_name_enable, $opt_val_enable );
54 $config->set( $opt_name_interval, $opt_val_interval );
55 $config->set( $opt_name_threshold, $opt_val_threshold );
56 $config->set( $opt_name_locksec, $opt_val_locksec );
57 $config->update( );
58 ?>
59 <div class="updated"><p><strong><?php esc_html_e( 'Options saved.', 'siteguard' ); ?></strong></p></div>
60 <?php
61 }
62 }
63
64 echo '<div class="wrap">';
65 echo '<img src="' . SITEGUARD_URL_PATH . 'images/sg_wp_plugin_logo_40.png" alt="SiteGuard Logo" />';
66 echo '<h2>' . esc_html__( 'Login Lock', 'siteguard' ) . '</h2>';
67 ?>
68 <form name="form1" method="post" action="">
69 <table class="form-table">
70 <tr>
71 <th scope="row"><?php esc_html_e( 'Enable/Disable', 'siteguard' ) ?></th>
72 <td>
73 <ul class="siteguard-radios">
74 <li>
75 <input type="radio" name="<?php echo $opt_name_enable ?>" id="<?php echo $opt_name_enable.'_on' ?>" value="1" <?php echo ( '1' == $opt_val_enable ? 'checked' : '') ?> >
76 <label for="<?php echo $opt_name_enable.'_on' ?>"><?php esc_html_e( 'ON', 'siteguard' ) ?></label>
77 </li><li>
78 <input type="radio" name="<?php echo $opt_name_enable ?>" id="<?php echo $opt_name_enable.'_off' ?>" value="0" <?php echo ( '0' == $opt_val_enable ? 'checked' : '') ?> >
79 <label for="<?php echo $opt_name_enable.'_off' ?>"><?php esc_html_e( 'OFF', 'siteguard' ) ?></label>
80 </li>
81 </ul>
82 </td>
83 </tr><tr>
84 <th scope="row"><?php esc_html_e( 'Interval', 'siteguard' ); ?></th>
85 <td>
86 <input type="radio" name="<?php echo $opt_name_interval ?>" id="<?php echo $opt_name_interval.'_1' ?>" value="1" <?php echo ( '1' == $opt_val_interval ? 'checked' : '') ?> >
87 <label for="<?php echo $opt_name_interval.'_1' ?>"><?php esc_html_e( '1 second', 'siteguard' ) ?></label>
88 <br />
89 <input type="radio" name="<?php echo $opt_name_interval ?>" id="<?php echo $opt_name_interval.'_5' ?>" value="5" <?php echo ( '5' == $opt_val_interval ? 'checked' : '') ?> >
90 <label for="<?php echo $opt_name_interval.'_5' ?>"><?php esc_html_e( '5 seconds', 'siteguard' ) ?></label>
91 <br />
92 <input type="radio" name="<?php echo $opt_name_interval ?>" id="<?php echo $opt_name_interval.'_30' ?>" value="30" <?php echo ( '30' == $opt_val_interval ? 'checked' : '') ?> >
93 <label for="<?php echo $opt_name_interval.'_30' ?>"><?php esc_html_e( '30 seconds', 'siteguard' ) ?></label>
94 </td>
95 </tr><tr>
96 <th scope="row"><?php esc_html_e( 'Threshold', 'siteguard' ); ?></th>
97 <td>
98 <input type="radio" name="<?php echo $opt_name_threshold ?>" id="<?php echo $opt_name_threshold.'_3' ?>" value="3" <?php echo ( '3' == $opt_val_threshold ? 'checked' : '') ?> >
99 <label for="<?php echo $opt_name_threshold.'_3' ?>"><?php esc_html_e( '3 times', 'siteguard' ) ?></label>
100 <br />
101 <input type="radio" name="<?php echo $opt_name_threshold ?>" id="<?php echo $opt_name_threshold.'_10' ?>" value="10" <?php echo ( '10' == $opt_val_threshold ? 'checked' : '') ?> >
102 <label for="<?php echo $opt_name_threshold.'_10' ?>"><?php esc_html_e( '10 times', 'siteguard' ) ?></label>
103 <br />
104 <input type="radio" name="<?php echo $opt_name_threshold ?>" id="<?php echo $opt_name_threshold.'_100' ?>" value="100" <?php echo ( '100' == $opt_val_threshold ? 'checked' : '') ?> >
105 <label for="<?php echo $opt_name_threshold.'_100' ?>"><?php esc_html_e( '100 times', 'siteguard' ) ?></label>
106 </td>
107 </tr><tr>
108 <th scope="row"><?php esc_html_e( 'Lock Time', 'siteguard' ); ?></th>
109 <td>
110 <input type="radio" name="<?php echo $opt_name_locksec ?>" id="<?php echo $opt_name_locksec.'_30' ?>" value="30" <?php echo ( '30' == $opt_val_locksec ? 'checked' : '') ?> >
111 <label for="<?php echo $opt_name_locksec.'_30' ?>"><?php esc_html_e( '30 seconds', 'siteguard' ) ?></label>
112 <br />
113 <input type="radio" name="<?php echo $opt_name_locksec ?>" id="<?php echo $opt_name_locksec.'_60' ?>" value="60" <?php echo ( '60' == $opt_val_locksec ? 'checked' : '') ?> >
114 <label for="<?php echo $opt_name_locksec.'_60' ?>"><?php esc_html_e( '1 minute', 'siteguard' ) ?></label>
115 <br />
116 <input type="radio" name="<?php echo $opt_name_locksec ?>" id="<?php echo $opt_name_locksec.'_300' ?>" value="300" <?php echo ( '300' == $opt_val_locksec ? 'checked' : '') ?> >
117 <label for="<?php echo $opt_name_locksec.'_300' ?>"><?php esc_html_e( '5 minutes', 'siteguard' ) ?></label>
118 </td>
119 </tr>
120 </table>
121 <div class="siteguard-description">
122 <?php esc_html_e( 'It is the function to decrease the vulnerability against an illegal login attempt attack such as a brute force attack or a password list attack. Especially, it is the function to prevent an automated attack. The connection source IP address the number of login failure of which reaches the specified number within the specified period is blocked for the specified time. Each user account is not locked.', 'siteguard' ) ?>
123 </div>
124 <hr />
125 <input type="hidden" name="update" value="Y">
126
127 <?php
128 wp_nonce_field( 'siteguard-menu-login-lock-submit' );
129 submit_button( );
130 ?>
131
132 </form>
133 </div>
134
135 <?php
136 }
137 }
138 ?>
139