2010-01-21 56 views
2

我正在編寫一個應用程序,其中記錄應用程序錯誤並將其發佈到我們服務器上的偵聽HTTP端口。我們決定不使用電子郵件,因爲許多運行服務器的客戶端「無法通過SMTP發送任何東西」(根據老闆哥們的說法)通過HTTP記錄錯誤 - 安全隱患

我只是使用log4net和custom-編寫HTTPAppender。

我想了解一下使用這種方法的可能的安全問題,或者是否有一個更好的在那裏。監聽端口當然會受到SQL注入等的保護。

回答

3

這取決於您如何定義安全性,以及如何鎖定它。

如果外部攻擊者能夠訪問您的HTTP偵聽器,會有什麼影響?假設偵聽器本身是安全的,他們所能做的就是將僞造的條目附加到日誌中。這是一個嚴重的問題嗎?你是否擔心可能的拒絕服務,例如,填滿所有可用磁盤空間的垃圾日誌條目?

如果是這樣,那麼請盡你所能鎖定聽衆。使用某種形式的HTTP身份驗證。將其配置爲僅接受來自特定IP地址的流量。更好的是,把它放在一個外部世界根本無法達到的受限制的網絡上。

其他唯一的風險是,如果你的聽衆是從字面上在遠程位置,你必須去通過公共互聯網來實現它。我不推薦這樣做,因爲它可能讓某些人窺探消息,從而發現有關係統的潛在敏感信息。

2

我會加密簽署任何文件發送到監聽器 - 而不是保守祕密,但要防止DoS攻擊的類型,你不希望它大開,使任何人都可以送什麼東西給它。任何未簽名的內容都應該被拒絕。

1

如果請求是通過HTTP無SSL/TLS發送,則消息都受到了一系列的人在這方面的中間人,當然攻擊。發件人/客戶端和服務器之間的任何節點將能夠讀取和操作消息。

1

如果你的服務器在同一個網絡上,並且不能公開訪問,應該沒有問題。

如果是從Internet訪問,那麼你會想要簽名日誌來避免DOS攻擊。如果您的應用程序錯誤中存在任何敏感內容,您可能需要考慮加密以避免信息泄漏。

另一種選擇可能是要離開你的服務器在防火牆後面,並用SSH隧道或類似連接。如果客戶端機器僅接受來自本地主機的端口轉發連接,這將減輕拒絕服務和泄漏問題。