WordPress 的管理员账户很容易就能获取,虽然说拿到了管理员账号,用处不是很大,但是不排除有些小白的密码是简单的数字密码。被攻击者爆破或者撞库成功,从而获得后台的管理员账户。
那么。攻击者是怎样拿到你的Wordpress 【管理员用户名】的,以及如何保护自己的管理员账户不被获取,这篇文章就来谈谈!!!
获取
1、先说说管理员账户如何泄露
攻击者或者攻击程序构造了:https://你的域名/wp-json/wp/v2/users/
的URL进行GET,这样99%会返回一串信息,里面包含了你的管理员账户。如下:
[{"id":1,"name":"daniao","url":"","description":"","link":"https:\/\/daniao.com\/author\/daniao","slug":"daniao","avatar_urls":{"24":"https:\/\/cn.gravatar.com\/avatar\/28f745cefb1ad2da1747cdcfccc0ddfa?s=24&d=mm&r=g","48":"https:\/\/cn.gravatar.com\/avatar\/28f745cefb1ad2da1747cdcfccc0ddfa?s=48&d=mm&r=g","96":"https:\/\/cn.gravatar.com\/avatar\/28f745cefb1ad2da1747cdcfccc0ddfa?s=96&d=mm&r=g"},"meta":[],"_links":{"self":[{"href":"https:\/\/daniao.com\/wp-json\/wp\/v2\/users\/1"}],"collection":[{"href":"https:\/\/daniao.com\/wp-json\/wp\/v2\/users"}]}}]
以上信息可以发现:daniao就是管理员账号,真实已被隐藏,这里只为了演示。
2、确认是否使用了wordpress程序
其实上面的代码差不多已经确认你用的是wp程序了,这里还是提及一下:
攻击者或者攻击程序通过构造 https://你的域名//wp-includes/wlwmanifest.xml
的URL进行GET,来判断你是否使用了Wordpress程序。以及你的后台登录地址!输入后你会得到这样的反馈。所以修改后台登录地址很重要。
<manifest xmlns="http://schemas.microsoft.com/wlw/manifest/weblog"> <options> <clientType>WordPress</clientType> <supportsKeywords>Yes</supportsKeywords> <supportsGetTags>Yes</supportsGetTags> </options> <weblog> <serviceName>WordPress</serviceName> <imageUrl>images/wlw/wp-icon.png</imageUrl> <watermarkImageUrl>images/wlw/wp-watermark.png</watermarkImageUrl> <homepageLinkText>View site</homepageLinkText> <adminLinkText>Dashboard</adminLinkText> <adminUrl> <![CDATA[ {blog-postapi-url}/../wp-admin/ ]]> </adminUrl> <postEditingUrl> <![CDATA[ {blog-postapi-url}/../wp-admin/post.php?action=edit&post={post-id} ]]> </postEditingUrl> </weblog> <buttons> <button> <id>0</id> <text>Manage Comments</text> <imageUrl>images/wlw/wp-comments.png</imageUrl> <clickUrl> <![CDATA[ {blog-postapi-url}/../wp-admin/edit-comments.php ]]> </clickUrl> </button> </buttons> </manifest>
3、确认你的用户id
攻击者还会通过构造 < https://你的域名?author=1 //?author=2 //?author=3> 来确认你的管理员id,以此来和上面的匹配。
保护
既然知道了,那么如何防护呢,继续往下看吧。
4、设置访问权限
1)禁止访问/wp-json/wp/v2/users/,如果是宝塔的话,可以在网站配置或者伪静态中设置如下代码。
4)效果
这时候访问上述网页,就会被屏蔽结果。如图:
5、如果你是宝塔而且安装了专业版防火墙,还可以这样设置
在禁止访问的url中添加以下规则:
/wp-json/wp/v2/users /wp-includes/wlwmanifest.xml
此时访问,会出现防火墙拦截的提示。
6、最后
这其实不是个漏洞,所以不用紧张,其实稍微注意点安全的小伙伴早就修改了一个非常强壮的密码,隐藏了登录后台,禁用了xmlrpc.php。
1)如果要禁用xmlrpc.php,可以利用nginx,代码如下,放置还是和上面一样,放在伪静态设置中。
location ^~ /xmlrpc.php { return 403; }
是否禁用根据自己需要吧,如果出现升级错误,那么可以删除掉或者禁用掉代码即可。
2)其实有一些主题的管理员账号是显示在文章里面的,感觉这样真的是……,我们可以在wp后台设置一个昵称,这样文章会显示昵称在文章中。
3)各位小伙伴可以通过以上URL测试一下自己的Wordpress站点。看看是不是可以拿到敏感信息。如果特别敏感,就赶紧设置权限。
关于wp后台加固,可以看之前的文章:
WordPress网站默认登录地址wp-admin如何自定义的教程
61F
感谢分享!!
62F
emmm额
63F
感谢分享
64F
感谢分享。
65F
感谢分享
66F
感谢分享
67F
感谢分享。
68F
感谢分享
69F
感谢分享。
70F
感谢分享!
71F
感谢分享,不错的教程
72F
66666学到啦!
73F
66666学到啦!
74F
我就想看看为什么这么难
75F
看看是什么事
76F
学习学习
77F
去学习
78F
看一下
79F
先学习一下