1 回答

TA貢獻1799條經驗 獲得超8個贊
如果此文件中的代碼不安全,則可能。由于我們看不到它,因此不可能說它是如何被損害的。但一般來說,面向Web的請求應該無法控制你的php代碼,除非你有一個嚴重不安全的設置。
這些值無關緊要。存儲在 中的數據永遠不會存儲在客戶端上,而只會存儲在服務器上。這在php中由接口控制(默認情況下,它以純文本文件的形式存儲在服務器上)。
$_SESSION
session.handler
session.save_path
傾向于使會話不安全的事情幾乎總是由于代碼編寫不當或服務器配置不當造成的。
您可以采取的一些措施來提高會話的安全性,如下所示:
在用戶登錄時始終使用(這可以防止會話固定攻擊)。
session_regenerate_id(true)
當您注銷用戶時,始終刪除客戶端上的會話 Cookie(請參閱 http://php.net/session-destroy 中的第一個示例)。例如,當用戶從公共計算機登錄時,這可以防止會話接管攻擊,因為會話可能并不總是在服務器端立即刪除,并且cookie允許客戶端在服務器上重新觸發會話TTL。
僅通過安全連接傳輸會話 Cookie(請參閱
session.cookie_secure
為了防止某些 XSS 和 CSRF 向量,請考慮使用
session.cookie_httponly
和session.cookie_samesite
來防止惡意 JS 打開此類攻擊。始終使用CSRF令牌以及所有修改請求,以保護用戶免受通過會話嚴格損害其訪問權限。這是一個額外的安全層。
請記住,這不是一個未刪節的列表。安全性是分層構建的,需要在用例和目標中進行大量深思熟慮。
- 1 回答
- 0 關注
- 127 瀏覽
添加回答
舉報