最近 wordpress 爆出最新漏洞,2018 年 6 月 29 日,该网站漏洞通杀所有 wordpress 版本,包括目前的 wordpress 4.8.6 以及 wordpress 4.9.6 版本。可以删除网站上的任意文件,影响危害严重,甚至是致命的一个漏洞,如果被攻击者利用,后果将不堪设想。截止目前该漏洞还未有被修复。如果您在使用 wordpress,请尽快将 wp-includes 文件夹下的 post.php 文件改名,等官方出 wordpress 漏洞补丁后,再改回并升级。
以上是网传文章的一个解决办法,那么这个漏洞会删除 wp-config.php 文件,大家都知道这是 wordpress 配置文件,没有了他数据库无法连接,很多设置也没有了,等于把 wordpress 给瘫痪了。为了避免被利用我们要把 wp-config.php 文件设置为禁止修改。这个禁止修改是应用请求层面的权限,如果你自己用 SSH 连接修改或者 sftp 修改都不影响的,下面说一下详细操作。
有两种操作方法可以实现这个目的。一是 ssh 连接使用 vi 或者 vim 命令直接修改文件,二是使用 SFTP 下载到本地修改后再上传覆盖。
一、命令修改
编辑 nginx 虚拟主机配置文件命令:
vi /usr/local/nginx/conf/vhost/www.vpsss.net.conf
请把我的域名换成你自己的域名。
把下面命令添加进去,保存。
# 禁止他人访问 wp-config.php location ~* wp-config.php { deny all; }
添加完后是下面图片这样子,记得和上下命令之间留一行空格。
二、SFTP 修改
更简单用 winScp 下载上面的 www.vpsss.net.conf 文件到本地,用 dreamweaver、Notepad++、Editplus 等等编辑软件添加同样内容,再覆盖掉服务器文件。
三、重新加载 nginx
/etc/init.d/nginx reload
这样在应用层面就无法修改 wp-config.php 文件了,还不影响你自己 SSH 连接和 SFTP 的使用。 剩下的就是等 wordpress 官方出新版本修正这个问题了。