我有一台用於測試目的的伺服器,最近在 /var/log/syslog、/var/log/user.log 和 /var/log/messages 中捕獲了一些奇怪的日誌條目。 auth.log 沒有顯示任何可疑內容。在此期間不應有(人類)使用者登入。
伺服器幾乎不運行任何軟體,僅執行 sshd 守護程式。
日誌條目沒有顯示哪個程式創建了它們,它們似乎源自於某些連接埠掃描和探測活動。
有沒有人知道這些消息來自哪裡? (SOMEDATETIME 是日誌條目的時間,SOMEIP 是未知的 IP 位址)
SOMEDATETIME GET / HTTP/1.0#015
SOMEDATETIME SOMEIP #015
SOMEDATETIME SOMEIP #015
SOMEDATETIME SOMEIP #015
SOMEDATETIME OPTIONS / HTTP/1.0#015
SOMEDATETIME SOMEIP #015
SOMEDATETIME OPTIONS / RTSP/1.0#015
SOMEDATETIME SOMEIP #015
SOMEDATETIME SOMEIP HELP#015
SOMEDATETIME SOMEIP #026#003#000#000S#001#000#000O#003#000?G���,���`~�#000��{�Ֆ�w����<=�o�#020n#000#000(#000#026#000#023
SOMEDATETIME SOMEIP #026#003#000#000i#001#000#000e#003#003U#034��random1random2random3random4#000#000#014#000/
SOMEDATETIME SOMEIP #000#000#000qj�n0�k�#003#002#001#005�#003#002#001
SOMEDATETIME GET /nice%20ports%2C/Tri%6Eity.txt%2ebak HTTP/1.0#015
SOMEDATETIME SOMEIP #015
SOMEDATETIME SOMEIP #001default
SOMEDATETIME SOMEIP #002
SOMEDATETIME OPTIONS sip: nm SIP/2.0#015
SOMEDATETIME SOMEIP Via: SIP/2.0/TCP nm;branch=foo#015
SOMEDATETIME SOMEIP From: <sip:nm@nm>;tag=root#015
SOMEDATETIME SOMEIP To: <sip:nm2@nm2>#015
SOMEDATETIME SOMEIP Call-ID: 50000#015
SOMEDATETIME SOMEIP CSeq: 42 OPTIONS#015
SOMEDATETIME SOMEIP Max-Forwards: 70#015
SOMEDATETIME SOMEIP Content-Length: 0#015
SOMEDATETIME SOMEIP Contact: <sip:nm@nm>#015
SOMEDATETIME SOMEIP Accept: application/sdp#015
SOMEDATETIME SOMEIP #015
答案1
這是某人對您的伺服器運行Nmap 掃描的結果- Nmap 找到一個開放的TCP 端口,然後發送各種數據包嘗試發現多種常見服務類型(HTTP、RTSP、SIP...)中的任何一種是否處於活動狀態在那個連接埠上。
(我剛剛嘗試針對我正在開發的伺服器應用程式運行 Zenmap 7.40,並記錄了完全相同的字串序列)。
答案2
我發現此行為的解釋在 rsyslog 配置中。預設情況下,rsyslog 接受來自連接埠 514 的 UDP 輸入,並將任何傳入的套件記錄到訊息、syslog 和 usr.log 日誌檔案中。這是因為預設情況下 rsyslog 也被配置為充當遠端日誌記錄服務。可以透過評論停用此功能
#$ModLoad imudp
#$UDPServerRun 514
#$ModLoad imtcp
#$InputTCPServerRun 514
在 /etc/rsyslog.conf 中
答案3
您顯示的日誌不是很有幫助:不清楚 SOMEIP 是否始終相同,或者 SOMEDATETIME 是否相差很大,或者它們全部發生在一次突發中,或者它們聚集在一些少量的時間間隔周圍。
無論如何,它們基本上是嘗試聯繫您沒有運行的 Web 伺服器,因此訊息會記錄到 /var/log 而不是/var/log/apache2
類似的東西。似乎有點奇怪,有人花這麼多精力試圖撬開一個沒有監聽的 Web 伺服器,請確保你這樣做了不是透過檢查輸出來擁有正在運行的 Web 伺服器
ss -lntp
適用於偵聽標準 (80,443) 或非標準連接埠的伺服器。
其餘的日誌變得更有趣,因為它們記錄了透過您的 Web 伺服器聯繫 PBX 的嘗試,根據您的 OP,您沒有執行 PBX。然而協定 (SIP)、位址、<sip:nm@nm>
以及會話描述協議( Accept: application/sdp
) 都充分說明了這一點。
再說一遍,您確定您沒有運行集團電話?看起來有人在你的機器上植入了一個。再次,如果你認為你的機器沒有被侵犯,命令
ss -lnup
(對於 UDP 協議,而不是 TCP 協定)會告訴您哪個程序正在偵聽哪個連接埠。
但,如果您的機器已被侵犯,上述內容很可能報告沒有任何可疑之處,而確實有很多非法行為正在發生。您可以嘗試透過下載並運行chkrootkit
和 來減輕您的恐懼(唉,這是有根據的)rkhunter
。您還可以在這裡讀(很抱歉引用我自己的答案,我知道這不好,但它節省了我一些工作)。最重要的是,你應該問自己:我是否禁用了 ssh 上的密碼登入並引入了加密金鑰?如果這個問題的答案是不,那麼很可能你的機器已被侵犯。然後,您應該從頭開始重新安裝,並按照上面的說明停用密碼登錄,轉而ssh
使用公鑰/私鑰,這要安全得多。