儘管攻擊者透過嗅探(察看)你的使用者和應用程式間的網路通訊並不專門用於存取控制,但要意識到資料暴露變得越來越重要,特別是對於驗證資訊。
使用SSL可以有效地防止HTTP請求和回應不被揭露。對任何使用https方案的資源的請求可以防止密碼嗅探。最好的方法是一直使用SSL來發送驗證訊息,同時你可能還想用SSL來傳送所有的包含會話標識的請求以防止會話劫持。
為防止使用者驗證資訊不致暴露,在表單的action屬性的URL中使用https方案如下:
CODE: <form action="https://example.org/login.php" method="POST"> <p>Username: <input type="text" name="username" /></p> <p>Password: <input type="password" name="password" /></p> <p><input type="submit" /></p> </form>
POST你使用了SSL,這樣做與GET方法相比,驗證資訊較少暴露。
儘管這樣做只是為了保護使用者的驗證資訊不被揭露,但你還是應該同時對HTML表單使用SSL。這樣做不是出於技術上的原因,但是使用者在看到表單被SSL所保護時,在輸入驗證資訊時會感覺更為舒坦(見圖7-1)。
圖7-1. 大多數瀏覽器在目前資源被SSL所保護時會顯示一個鎖形圖示
多相關內容請關注PHP中文網(www.php.cn)!