我正在建立某種網路應用程序,目前整個應用程式都在我的機器上運行。我正在梳理我的日誌,發現了幾個「奇怪」的日誌條目,這讓我有點偏執。開始:
***.***.***.** - - [19/Dec/2010:19:47:47 +0100] "\x99\x91g\xca\xa8" 501 1054
**.***.***.** - - [19/Dec/2010:20:14:58 +0100] "<}\xdbe\x86E\x18\xe7\x8b" 501 1054
**.**.***.*** - - [21/Dec/2010:15:28:14 +0100] "J\xaa\x9f\xa3\xdd\x9c\x81\\\xbd\xb3\xbe\xf7\xa6A\x92g'\x039\x97\xac,vC\x8d\x12\xec\x80\x06\x10\x8e\xab7e\xa9\x98\x10\xa7" 501 1054
該死的……這是什麼?
答案1
除非您注意到奇怪的新檔案、更改的系統檔案或伺服器中的其他奇怪行為,否則我不會太擔心這些奇怪的日誌條目。如果您的伺服器向網路開放,任何人都可以向您的伺服器發送格式錯誤的 HTTP 請求,而且很多人(或機器人)都這樣做。
他們為什麼要那樣做?嗯,一些網頁伺服器存在已知的漏洞,可以透過向它們發送「正確」類型的請求來利用這些漏洞。因此,您可能看到的是已知(甚至未知)漏洞的探測。如果這讓您感覺更安全,您可以採取追溯性的措施,例如封鎖/禁止傳送格式錯誤或未知請求的 IP(使用 iptables、fail2ban 等)。
就我個人而言,我認為將“壞”IP 列入黑名單並不值得,因為當您在日誌文件中看到它們的痕跡時,他們要么已經知道您不易受攻擊,要么您已經被黑客攻擊了。我相信更好的方法是積極主動有安全保障:
確保您的伺服器軟體已完全打補丁並處於最新狀態。總是。一絲不苟。宗教上。
盡可能保持攻擊範圍:不要在伺服器上安裝/執行任何不必要的軟體。並作為奧卡姆的威廉曾經說過,「不必要時不要增加使用者帳號」。
為您的伺服器設定防火牆。 (或者不,但知道你在做什麼。
運行入侵偵測系統,例如助理,OSSEC, 或者薩溫。當系統檔案意外變更時,這會向您發出警報,這通常是您的伺服器已受到威脅的提示。
運行系統監控/繪圖軟體,例如穆寧,仙人掌,收集的或類似的。定期觀察圖表,了解正常系統負載的情況以及常規趨勢。然後,當你的圖表顯示出你以前從未見過的東西時,你就會有動力進一步調查。
運行網頁日誌分析器/繪圖器,例如網路化器或者統計數據。再次強調,熟悉正常操作是什麼樣子,這樣您就可以快速識別出異常情況。
運行一個單獨的日誌伺服器——最好是在一個不運行任何其他東西的最小的、安全強化的系統上——並配置你的伺服器將日誌發送到它。這使得入侵者更難掩蓋自己的蹤跡。
答案2
您運行什麼類型的伺服器?阿帕契?
這看起來像是 IIS 漏洞......紅色程式碼/NIMDA
答案3
每個可公開存取的網路伺服器整天都會收到這樣的請求。他們只是盲目地嘗試對您的伺服器進行已知的攻擊。我經常做的是將 Web 伺服器設定為在收到對其 IP 的請求時顯示空白頁面(即http://10.0.0.1)。我只允許在請求正確的虛擬主機網域時顯示網站。
查看當您透過 IP 而不是網域存取 Web 伺服器時會出現什麼網站。大多數爬行 netter-tubes 的漏洞利用腳本都沒有執行有效的虛擬主機請求(正確的虛擬主機標頭)。
您還可以查看各種實用程序,它們會自動阻止嘗試惡意請求的 IP 位址。
答案4
假設這些 IP 位址是您自己的而不是外部位址,那麼它可能只是您的 Web 應用程式日誌垃圾。
這讓我想起了一種情況,我看到 PHP 以 UTF8 記錄數據,然後將其編碼/轉義為 ASCII,這導致了看起來非常相似的消息。