WordPress 網站被惡意掃描漏洞攻擊。三招基本設定教你快速解決問題。

當你發現你的網站長時間變慢或主機的 CPU 持續在高擋。如果是這樣,恭喜你。你可能中了大量掃描。此時通常個人的作法是 SSH 進主機看 apache/nginx 的 access 的記錄看有無大量的特定 IP 出現。

被攻擊時的網頁記錄

如圖上所示。短時間大量的同一 IP 連線。如果以單筆來看看似正常的搜尋資料。但實際上如果是人來操作是不會在短時間內連按搜尋這麼多次。我們來看另一張畫面就會比較清楚。

user agent 裡有 sql injection 的字串

依紅字所秀那就是 SQL injection 的程式。這通常表示此來源 IP 正在作漏洞掃描。此時的記錄檔就足以証明此 IP 是可被擋掉的無效流量。

一般要擋掉惡意的 IP 連線有很多方式,這邊我只寫出較為簡單的方式。

  • 1:如果你有使用 cloudflare 可用其 firewall 擋掉。
  • 2:如果你是自架主機可用 Linux 上的 ufw 或 Windows 上的防火牆檔掉。
  • 3:如果你使用的網站是 apache 則可用 htaccess 文字檔擋掉。

方法 1 :前往 cloudflare 後台 Security->WAF->Custom rules 建立規則。如下所示把 來源 IP 符合的擋掉

來源 IP 符合的擋掉

方法 2:SSH 進 Linux 執行 ufw command 。如下所以。擋掉所有來至 192.168.1.5 的連線需求

sudo ufw deny from 192.168.1.5 to any

方法 3:SSH 進 Linux 在 網站的根目錄下

執行
/var/www/html$ vi .htaccess

在文字檔最上方加上
<IfModule mod_rewrite.c>
RewriteCond %{REMOTE_ADDR} ^45\.144\.227\.34$
RewriteRule . - [R=403,L]
</IfModule>
把 45.144.227.34 換成你要擋的 IP . 
修改完成後存檔離開。

以上三種方式大概是可以初步快速解決問題的方式。當然還是有其它的方法可以解決。只是處理的時間跟需不需要額外寫程式。各主機商也可能有自已的後台介面可協助處理擋掉各別的 IP ,如 cPanel 。方式有很多端看主機商或程式環境來選擇最佳的方式來解決。

blog.ocam.live
blog.ocam.live

關注科技新聞、SEO、人工智慧、電玩模擬器、程式設言、與 IT 日常等議題,深入簡出文章的說明並持續追蹤相關新聞的發展與報導。