如何使用wpscan扫描你的WordPress网站的漏洞
WordPress是一个非常流行的博客程序,或许你的网站中就有一两个是用它来搭建的。WordPress管理虽然简单,但你可能不太了解你的站点中存在的漏洞。不管你多么频繁的更新WordPress及其插件和主题,可能还是会有潜在的问题。其实您可以使用一个简单的扫描工具,它叫wpscan。我将向您介绍这个工具的安装和使用。有了它,你就知道在你的WordPress网站上需要解决什么问题了。
这里将演示在Ubuntu Server 18.04上的安装。您可以在几乎所有支持Ruby的Linux发行版上安装wpscan。考虑到这一点,您将需要:
Ubuntu 18.04(或任何Linux发行版)的运行实例、具有sudo特权的用户和一个要扫描的WordPress网站。
如果您使用的不是基于Debian / Ubuntu的Linux发行版,则需要稍微修改安装说明。
1、如何安装必要的依赖项
首先要做的是安装必要的依赖项。登录服务器或在桌面上打开终端窗口,然后发出以下命令:
sudo apt install curl git libcurl4-openssl-dev make zlib1g-dev gawk g++ gcc libreadline6-dev libssl-dev libyaml-dev libsqlite3-dev sqlite3 autoconf libgdbm-dev libncurses5-dev automake libtool bison pkg-config ruby ruby-bundler ruby-dev -y
该命令完成后,您可以使用gem通过以下命令安装wpscan:
sudo gem install wpscan
该命令将需要一两分钟才能完成。完成后,就可以进行扫描了。
2、如何扫描网站
在扫描第一个站点之前,您需要使用以下命令更新wpscan数据库:
wpscan --update
数据库的更新,让我们扫描一个站点。扫描命令如下所示:
wpscan --url=http://ADDRESS
其中ADDRESS是要扫描的服务器的域或IP地址。
您将看到扫描的输出显示:
每个已安装插件的版本(以及是否有可用更新);
每个已安装插件的可信度度;
其他等等。
仔细阅读所有列出的表,您很可能会发现需要解决的问题。例如,在扫描我的一个站点时,我发现我在wp-content / uploads目录中启用了列表。为了解决该问题,我可以安装另一个第三方加载项,或者如果我对宿主服务器具有外壳访问权限,则可以修改该目录的.htaccess文件,并添加Options -Indexes条目以禁用目录浏览。
您可能会从wpscan的输出中找到许多要解决的问题,因此请确保仔细梳理结果。如果此时您没有时间检查输出,则始终可以将命令的输出发送到如下文件:
wpscan --url=http://ADDRESS > wpscan_output
其中ADDRESS是要扫描的服务器的域或IP地址。
您还可以使用wpscan枚举站点上的用户。您可以使用此方法尝试破解密码,以确保您的用户没有使用弱凭据。为此,您首先需要有一个词典文件(例如rockyou.txt词典)。
要枚举用户,请发出以下命令:
wpscan --url http://ADDRESS --enumerate u
其中ADDRESS是WordPress网站的URL或IP地址。
这将为您提供站点上已注册用户的列表。现在,假设您想检查一下这些用户的密码是否可以轻松破解。为此,发出命令:
wpscan --url=http://ADDRESS --passwords FILE --usernames USER
其中ADDRESS是您的WordPress网站的URL或IP地址,FILE是您下载的文件名,而USER是要测试的用户的名称。
此扫描将花费大量时间,尤其是在检查大量用户的情况下。但是一旦完成,您将看到是否容易破解任何用户密码。如果是这样,您应该立即处理。如果您没有发现有效的密码,则该用户可能被利用。
以上就是您安装和使用wpscan工具检查WordPress网站中是否存在漏洞的方式。确保定期使用此工具,以便您尽可能了解WordPress安全问题。