2012-06-27 51 views
-2

我的服務器配置有https。但所有憑據都緩存在RAM(客戶機)中。緩存在RAM中的html密碼?

如果我們有客戶端機器的IP地址,我們可以輕鬆獲取存儲在RAM中的用戶憑證。我知道RAM不會被清除,除非您關閉/重新啓動客戶機。

如何停止RAM中憑據的緩存?

+0

你如何緩存RAM中的憑據在第一位。只需重新做它。 – pyfunc

+0

每當用戶嘗試登錄應用程序時都會自動緩存 – vatson

+0

什麼都不是自動的。 RAM中的內容將存在於某些變量或某些事物中。修改它的內容將改變內存 – pyfunc

回答

1

運行Web服務器時,您接受來自客戶端計算機上的Chrome,Safari或Internet Explorer等Web瀏覽器的連接。當您的客戶端通過https連接時,瀏覽器向您發送的信息以及您發回給該瀏覽器的信息在傳輸過程中會被加密隱藏。

用戶將其用戶名和密碼提供給瀏覽器軟件中的對話框,然後管理其傳輸(加密)到您的服務器。瀏覽器確實存儲未加密的用戶名和密碼。它需要這樣做,因爲BASIC認證需要每個請求到服務器攜帶(加密的)用戶名/密碼對。

如果用戶在開機時失去對機器的控制,那麼一個壞人確實可以發現密碼。

瀏覽器軟件在退出時擦除RAM中的密碼。大多數商業瀏覽器軟件包在退出之前都會清除內存。

如果您正在創建專用瀏覽器(特殊用途的https客戶端軟件包),您可能也希望這樣做。

您的疑慮是有效的:這是病毒和其他惡意軟件具有這種危害的原因之一。但是,如果您是普通的Web開發人員,除了推薦您的用戶安裝和維護防病毒軟件外,您無法對此客戶端風險做任何事情。

+0

非常感謝..一個簡單的問題,是否可以清除出口(通過腳本)的內存? – vatson

+0

從服務器端發送的腳本訪問(讀取或寫入)在客戶端持有明文密碼的RAM沒有簡單的方法。如果有它會是一個安全漏洞。再說一遍,除非你正在開發一個特殊用途的客戶端瀏覽器,你不需要擔心這個問題。 –