我正在嘗試弄清楚為什麼我們的 apache 錯誤日誌中會出現大量錯誤,指出“文件不存在:”,例如
檔案不存在:/home/FTPUSER/public_html/category,引用位址:http://www.DOMAIN.co.uk/category/epson-stylus-c40sx/497/0-0-0-0-0-0-0-0/1
(其中 FTPUSER 是 cpanel 使用者名稱)
程式碼中的任何地方都沒有引用 /home/FTPUSER/public_html/category,有什麼建議嗎?
另請注意 /category/epson-stylus-c40sx/497/0-0-0-0-0-0-0-0/1 是 cat.php?id=497 等的 mod 重寫規則...
答案1
在我看來,您正在看到對您的網頁伺服器進行某種自動/故意攻擊的結果。某人或某個程式正在尋找可能在沒有密碼或預設密碼的情況下安裝的應用程式或具有已知漏洞的應用程式。
我們一直在我們託管的網站上收到這些信息,對於類似的情況,我們也無法做出回應,我們要么有自定義 404 頁面,要么向相關網站的主頁發出自定義 301。
答案2
您可以嘗試查看該網域的存取日誌,以查看特定請求與該錯誤的產生之間是否存在任何關聯。
若要尋找您的日誌,請嘗試以下操作:
grep CustomLog /etc/httpd/conf/httpd.conf
日誌檔案將類似於:
/usr/local/apache/domlogs/domain.co.uk
然後你可以從 apache 錯誤日誌中 grep 這個文件,看看是否顯示了什麼?
答案3
我通常的經驗法則是,如果該文件在我的伺服器上不存在(並且從未存在過),並且引薦網址URL 的長度不計其數(並且不是來自您自己的網站),則它被利用的可能性是不錯。
與 ericmayo 一樣,我們利用 mod_rewrite 將任何 404 轉送到主網站。我們過去曾做過一些編碼,其中解析referer.log以查找利用嘗試,並將任何可疑條目放入“拒絕”列表中。 (.htaccess 是你的朋友)
答案4
我支持 k3ri 和 ericmayo ——這是一次自動利用嘗試。
十多年來,我在日誌中看到了許多類似的利用嘗試,很久以前,我就不再嘗試將引薦來源網址添加到拒絕列表中——因為從字面上看,百萬的 Windows 用戶端被大大小小的機器人牧民所利用,您最終會產生查找開銷每一個請求,從而增加伺服器延遲,比過濾掉不斷變化的攻擊來源所獲得的收益還要多。