2012-12-14 87 views
2

我正在尋找創建一個簡單的html5遊戲街機,人們可以提交他們的遊戲,然後我主持他們。HTML5遊戲街機 - 安全

遊戲將直接在瀏覽器中運行。內容加載完成後,他們不會訪問任何服務器。就像舊學校的閃光拱廊網站(Miniclip等)。它不會是單人遊戲。

我關心遊戲訪問的內容主要是註冊/登錄用戶的用戶會話數據。

我想知道什麼最好的方式來保證這些沒有審計提交的代碼的每一行?

現在我想我應該在不同的域(可能是cdn)上託管遊戲,然後iframe它們。

會這樣嗎?還有什麼我應該做的,以確保遊戲無法訪問有關用戶的信息?

+0

遊戲會是什麼?客戶端代碼只? – alex

+0

你必須更具體 - 關於用戶的哪些信息你不希望他們訪問?這些遊戲將在用戶的瀏覽器中運行,它們將具有與瀏覽器中加載的任何其他頁面相同的用戶訪問權限。 – robertc

+0

嗨 - 感謝您的提問。我在主帖中增加了一些額外的細節。 本質上,遊戲將只在瀏覽器中,而不是多人遊戲(至少在初始階段),我擔心用戶訪問會話數據/其他用戶特定的東西。 – BinaryMoon

回答

2

即使不允許來自不同域的iframe的內容訪問父級的DOM,但通過在iframe上加載不受信任的內容,您的用戶的安全性仍可能有多種方式。


例如,iframe可以重定向到非安全站點,提供惡意軟件或使用某種釣魚方案,例如在iframe上顯示「會話過期」消息以及模擬登錄表單以竊取用戶密碼。在所有這些情況下,由於地址欄中顯示的URL始終是您網站的網址,因此用戶更可能相信其內容,並在出現問題時指責您。

我不知道有任何解決方案可以自動檢查提交的代碼是否是惡意的,如果您找到代碼,我會非常謹慎地評估它的有效性。以釣魚示例爲例。在這種情況下,代碼本身沒有任何問題(因爲有些遊戲可能會爲玩家提供真正的登錄形式),它顯示的內容(作爲您真實登錄形式的模型)是什麼使得它是惡意的。

+0

我認爲這對任何遊戲門戶來說都是個問題。我不打算允許開放上傳,我會聯繫我見過的遊戲的開發者,並詢問他們是否希望在我登錄該網站之前將他們的遊戲託管。我意識到這不會阻止惡意的意圖,但它應該減少潛在的問題。 我的確很感激,無論何時我將代碼放在我的網站上的一個不受信任的源代碼,它都可能讓我對問題有所瞭解。 我不知道是否有某種方法可以搜索特定的命令或阻止連接以外的主機域,以便他們無法傳輸數據 – BinaryMoon

+1

黑名單是相當無效的,因爲有無數可能的惡意組合命令(可以被混淆) 。 相反,您可以嘗試通過一些javascript惡意軟件檢測軟件(如wepawet)運行代碼。我沒有自己嘗試過,所以我只能猜測,但它最有可能比自己實施專門的探測器更好。 – serans

+0

Serans - 那太好了,我以前沒聽說過。謝謝你的提示! – BinaryMoon