回答
假設...
- 攻擊者沒有妥協客戶端或服務器計算機,並
- 沒有在聽(無論是本地的客戶端或本地服務器,或在互聯網上核心路由器),或連接充分加密
- 會話令牌是足夠隨機的(你可以假定爲PHP內置的會話機制)
- 你的網站沒有XSS或XSRF漏洞。
......劫持會話的唯一方法實際上是在物理上使用受害者之前使用的瀏覽器。您可以使用session.cookie_lifetime
配置選項配置會話的生命週期。瀏覽器關閉後,默認(0
)建議瀏覽器使會話無效。
這是否應該在php.ini? – Gaourokelos
@Gaourokelos是的,你可以在'php.ini'中設置這個選項,也可以在'.htaccess'或腳本本身(通過['ini_set'](http://php.net/ini_set))設置。請注意,默認值(會話cookie)是一個很好的值。 – phihag
它可以以各種方式製成。
- 黑客可以訪問/放一個病毒在那裏,他發現他的會話ID的受害者計算機上。
- 他可以偵聽網絡流量來嗅出cookie。
- 也可以(特別是在共享主機上)訪問存儲會話數據的目錄。
- 如果您不過濾輸入數據xss攻擊是可能的。
如果您加密連接或會話cookie,並且在他/她登錄時存儲用戶的IP /瀏覽器,然後檢查請求的IP是否匹配,則可以防止某些危險。
非常感謝您的閱讀,因爲我在讀取IP時存儲IP地址,並在每一頁上檢查它是否可靠。 – Gaourokelos
會話存儲在服務器上,並通過會話ID訪問,這就是瀏覽器cookie。 劫持一個會話的所有人都必須使用其他人正在使用的會話ID。換句話說,將他們的會話cookie改爲其他人的會話cookie。
- 1. Powershell遠程計算機會話
- 2. 在Tomcat上發生Spring Security/JSF/Hibernate意外會話劫持?
- 3. 關閉ssh會話而不在遠程計算機上登出
- 4. PHP會話劫持
- 5. 會話劫持和PHP
- 6. PHP會話劫持檢測
- 7. 防止會話劫持
- 8. 會話劫持或攻擊?
- 9. 停止會話劫持
- 10. 會話劫持安全
- 11. 在遠程計算機中創建會話
- 12. 遠程控制計算機並在遠程計算機上顯示
- 13. 遠程計算機
- 14. 遠程計算機
- 15. 在遠程計算機上使用存儲在會話中的數組
- 16. 在遠程計算機上運行QTP
- 17. 的OpenTextFile在遠程計算機上
- 18. 在遠程計算機上使用WMI
- 19. 在遠程計算機上運行.ps1
- 20. 是否有可能劫持遠程主機上的TCP連接?
- 21. 在遠程計算機
- 22. 會話在其他計算機上可見嗎?
- 23. 在ASP.NET中避免會話劫持
- 24. 獲取遠程計算機的會話信息?
- 25. 這可以在遠程計算機上工作嗎?
- 26. 如何在遠程機器上獲得會話的會話ID?
- 27. 訪問遠程計算機上的MySQL
- 28. 遠程計算機上使用腳本
- 29. 遠程計算機上的SQL Server
- 30. AppleScript與遠程計算機上的iTunes
[PHP會話安全]的可能重複(http://stackoverflow.com/questions/328/php-session-security) – Incognito
好閱讀:http://phpsec.org/projects/guide/4.html –
@ibu engish請 – Gaourokelos