绕过了.htaccess密码保护

时间:2015-10-07 作者:Parneix

我已经创造了。htaccess密码,以便为WordPress安装添加一层安全性。这个htpasswd文件位于安装上方一层。

然而,我看到过暴力攻击试图绕过此登录,直接尝试使用正确的用户名(不是“admin”,而是随机字符串)登录WordPress wpadmin。

我知道。htaccess解决方案并不完美。我想知道是否有办法让它更安全?我想知道这次袭击是如何绕过的。htaccess保护,但这可能是一个过于宽泛的问题。

欢迎提出任何建议。

谢谢

P

P、 我在使用apache的服务器上运行安装。我的htaccess文件如下所示:

<Files wp-login.php> AuthUserFile /home/servername/.htpasswd AuthType Basic AuthName Restricted Order Deny,Allow Deny from all Require valid-user Satisfy any </Files>

3 个回复
SO网友:Nikolay Nikolov

您使用什么web服务器?如果使用nginx,您可以尝试以下方法来保护您的wp管理员:

location ~ ^/(wp-login\\.php$) {
 root /var/www/wordpress/;
     allow 127.0.0.1;
     allow Your-ip-address;
     allow Your-second-ip-address;
     deny all;
保护您的wp管理员免受暴力攻击的另一种方法是将这一行添加到您的nginx中。形态:

限制请求

limit_req_status 403;
limit_req_zone $binary_remote_addr zone=one:10m rate=1r/s;
以及nginx虚拟主机conf的那些行:

# Limit access to avoid brute force attack
location = /wp-login.php {
        limit_req zone=one burst=1 nodelay;
        include fastcgi_params;
        fastcgi_pass php;
}
通过这种设置,黑客在尝试暴力时将被禁止403次。

在你的情况下,我认为。htaccess设置可能错误。如果您没有访问web服务器的权限,并且您使用apache,那么您的。htaccess文件必须位于wordpress文档根目录中。

SO网友:scytale

首先,与马克·卡普伦的回答相反,htaccessprotecting wp-login is recommended in the Wordpress Codexfar from pointless. 在运行WP脚本和数据库连接和查找之前,它将阻止许多暴力/DDOS攻击,即大幅降低服务器负载;它使我的一个站点能够继续响应,而不是缓慢或崩溃。此外,如果出现身份验证摘要请求,许多暴力工具可能会立即停止。

由于需要输入凭据,您的htaccess正在工作。但你需要做更多。

Protect your admin directory via its own htaccess file. 上述法典建议(请参见注意事项)“;“阻止”;通过IP。如果您旅行,这可能不实用,因此我改为对目录进行密码保护,这很好。

"E;(黑客)使用正确的用户名(不是“admin”,而是arandom字符串)“;

Prevent hackers identifying your (case insensitive) login names:

WP使用您的用户名创建一个作者URL slug,即向全世界广播它(甚至在谷歌搜索中)。文章中关于更改管理员用户名的建议(没有额外警告)给那些接受建议的人一种错误的安全感,并证明文章作者缺乏知识(我没有看到一篇黑客文章说尝试使用“admin”登录,但我看到许多人建议查找作者slug)。

尝试浏览yoursite.com/?author=1 (或author=2或author=3)生成的URL或内容很可能会识别您的登录名(不区分大小写)。N、 B.如果您更改了初始管理员,则可能已删除作者“;1英寸)。

通常,黑客会使用安全工具列出前十名用户(人数较少的用户更有可能是管理员)。使用htaccess挫败大多数此类工具,或者403或重定向他们的请求,例如。

RewriteCond %{QUERY_STRING} author=
RewriteRule (.*) https://www.fbi.gov/investigate/cyber/%1 [R=302,L]
然而;在大多数网站上,仍然可以手动从主题通常包含在帖子中的作者链接URL中识别用户名。你的已经知道了。解决方案是创建一个新的管理员用户,并立即在WP数据库中更改其URL slug(user\\u nicename)条目。您可以使用插件(可能)执行此操作https://wordpress.org/plugins/edit-author-slug/ (然后可以删除)。或者如果有信心by using phpMyadmin. 如果您可以使用新管理员用户登录,则可以删除旧管理员。

您可以在上看到上面的建议my site (单击任意作者(AW)链接查看对nicename/url slug的更改;并添加“;?作者=1“;到原始链接以查看重定向)。

SO网友:Mark Kaplun

唯一可行的保护措施是使用强密码(实际上根据我的经验,即使是中等强度的密码也足以阻止任何随机脚本的玩弄)。

这个wp-login.php 文件主要是UI,它只是一个可能的攻击向量,其他的将是xml rpc、rest api以及任何允许您通过ajax登录的插件。

使用htpasswd文件,使用的密码不比wordpress中使用的密码强,这是毫无意义的,如果你的密码比wordpress中的密码强,为什么呢?

另一方面。。。。wordpress在隐藏用户名方面没有做任何真正的努力。要得到它们并不总是那么容易,但并没有人试图隐藏它们。因此,有人试图使用正确的用户名登录,这只是使用wordpress时的一个事实,它本身并不表示有任何比“正常”脚本kiddies黑客攻击更复杂的恶意尝试。

相关推荐

Contact Form Security

在Wordpress中构建我自己的联系人表单。除了典型的电子邮件etc验证和可能的验证码之外,我还需要考虑任何其他安全步骤。我没有向数据库发送任何数据。