2013-04-16 32 views
0

我想通過ajax請求傳遞存儲在會話變量中的用戶ID和用戶名。將數據從PHP會話轉換爲ajax(與之間的一些jQuery)

我知道我可以將值作爲隱藏文本框或作爲jQuery數據值打印到頁面的html中,但我認爲這不安全,並且用戶可以更改值並且ajax調用將發送該值,這將使其不安全。請讓我知道專業人員如何處理這個問題...

在此先感謝!

+0

用戶可以隨時向服務器發送他們想要的任何數據。 – Paulpro

+0

所以我該如何解決這個問題 – ShadowZzz

+0

這聽起來像你有一個更大的安全問題,你需要先解決。您應始終假定您的用戶可以編寫任何HTTP請求並通過POST或GET或Cookie發送他們想要的任何輸入。 – Paulpro

回答

1

專業人員通過仔細篩選所有的輸入,執行強有力的密碼標準(使用戶無法猜測其他用戶的密碼)處理好這個問題,並通過存儲在網頁上的代碼的憑據,而是通過使用隨機生成會話令牌將用戶的令牌映射到服務器上的身份。

客戶端可以通過規避所有客戶端代碼輕鬆發送任何他們想要的數據。你必須假設客戶端是邪惡的,並從這個角度來看待保護你的服務器。

編輯:

如果你需要一些幫助,令牌和它們的用法,這個問題可以幫助你:PHP cookies and member security

如果你是新的安全我會極力推薦的Web Application Hacker's Handbook。我讀過它,閱讀起來非常全面和有趣。

還有一本新書叫,看起來相當有前途的Web Application Defender's Cookbook,雖然我還沒有看過。

+0

好的是否有任何可以使用的方法。用戶詳細信息被安全地保存在數據庫中並被加密。我將如何傳遞用戶的詳細信息...我做會話字符串並傳遞,以便我可以將它與服務器或其他東西進行比較? – ShadowZzz

+1

謝謝!這些資源對我很有價值。 – ShadowZzz

+1

將令牌發送到服務器,然後在服務器端從數據庫中提取正確的用戶憑據(使用令牌映射到用戶ID),然後從服務器發送它們。這樣客戶就不會看到證書,因此不能篡改證書(或竊取證書)。 –