
昨日小編與 2zzt 的大叔在羣中閒聊時發現很多 WordPress 站長都很不注意網站的信息安全,各種漏洞、各種信息泄露。接下來小編就來教大家為自己的 WordPress 修復一些常見的 bug,預防黑客。
首先是 WordPress 的全版本通殺爆絕對路徑漏洞:
1 、/wp-includes/registration-functions.php
2 、/wp-includes/user.php
3 、/wp-admin/admin-functions.php
4 、/wp-admin/upgrade-functions.php
只要直接訪問以上文件或者訪問當前 WordPress 網站的主題目錄下任意 php 文件都會爆出網站的絕對路徑,就連 WordPress 官方的主題 twentytwelve 也不例外。
解決方法一、在以上文件的的頭部 <?php 後加入:
error_reporting(0);
解決方法二、直接修改 php.ini 屏蔽 php 報錯。 (參考:WordPress 防黑教程之預防全版本通殺爆絕對路徑漏洞)
保護 WordPress 後台不被直接訪問,防止直接 post 登錄 WordPress 後台。
早在 v7v3 剛上線的時候小編就寫過一篇隱藏 WordPress 後台的文章 《WordPress 防黑教程之保護登錄文件 wp-login.php 》此方法只是使用 $_GET 對 wp-login.php 做一個訪問的障眼法而已。其實仔細分析下 WordPress 登錄頁面代碼不難發現 WordPress 是以 post 的方式來提交登陸參數的,如下圖:

也就是説我們可以不用訪問 wp-login.php 文件,而是直接通過 post 遞交參數給 wp-login.php 來直接登錄網站後台,那麼之前小編所提到的 $_GET 對 wp-login.php 做的訪問限制就形同虛設,那麼該如何來有效的防止 WordPress 的登錄文件不被直接訪問而且不能以常規的 post 方式來登錄網站後台呢?
第一步:我們登錄後台進入到常規選項:在 WordPress 地址 (URL) 這一欄加上/v7v3 如下圖:

第二步:我們在網站根目錄下新建一個名為 v7v3 的目錄,然後將除了 index.php 、 robots.txt 以及.htaccess 之外的所有網站文件移至 v7v3 目錄 (登錄變為 weixiaoduo.com/v7v3/wp-login.php) 。
第三步:打開 index.php 並將
require('./wp-blog-header.php');
修改為:
require('./v7v3/wp-blog-header.php');
這樣一來 WordPress 的後台地址以及登錄 post 提交參數的地址都隨着 WordPress 系統文件的移動而改變了,再配合小編寫的 $_GET 訪問限制方法就可以達到很好的防黑效果。
(PS:這只是前半篇文章,請大家期待後半篇文章!) 《 WordPress 網站終極防黑手冊,全方位保護網站安全 (二) 》