及时更新系统和插件,可以修复漏洞和提高安全性。
使用强密码,并定期更改密码。
使用插件限制登录尝试次数,可以防止暴力破解密码。
使用过滤函数(如:sanitize_text_field()、esc_html()、wp_kses()等)处理输入数据,防止SQL注入、跨站脚本等攻击。
使用插件禁止执行PHP代码,可以防止代码执行漏洞。
限制文件上传类型、文件大小,使用插件限制上传文件目录,可以防止文件上传漏洞。
将wp-config.php文件移动到其他目录,可以防止针对该文件的攻击。
示例代码:
限制登录尝试次数:
使用Limit Login Attempts插件可以限制登录尝试次数。
防止注入攻击:
使用sanitize_text_field()函数处理输入数据:
$username = sanitize_text_field( $_POST['username'] );
$password = sanitize_text_field( $_POST['password'] );
使用wp_kses()函数过滤HTML标签:
$content = wp_kses( $content, array(
'a' => array(
'href' => array(),
'title' => array()
),
'br' => array(),
'em' => array(),
'strong' => array()
) );
禁止执行PHP代码:
使用Remove PHP Execution插件禁止执行PHP代码。
限制文件上传漏洞:
使用WP Security Audit Log插件限制上传文件目录:
function wpse_56043_upload_dir( $args ) {
$args['basedir'] = 'absolute/path/to/secure/folder';
$args['baseurl'] = 'http://yourdomain.com/secure/folder';
$args['path'] = $args['basedir'] . $args['subdir'];
$args['url'] = $args['baseurl'] . $args['subdir'];
return $args;
}
add_filter( 'upload_dir', 'wpse_56043_upload_dir' );
将wp-config.php文件移动到其他目录:
将wp-config.php文件移动到其他目录,如根目录的上级目录。然后将该目录设置为只读权限,以防止该文件被恶意操作。