2011-04-24 57 views
0

我最近與某人討論了網站在用戶機器上截屏的能力。他認爲,使用GUI程序來模擬點擊鼠標非常快以贏得簡單的Flash遊戲,理論上可以通過記錄非常高的分數並截取這些玩家的桌面進行版主審查來檢測(如果網站足夠關注)。我認爲,由於所有網站代碼都在瀏覽器中運行,因此無法跨越系統採取這樣的屏幕截圖。什麼用戶信息可用於在瀏覽器中運行的代碼?

通過Javascript,Flash或其他任何方法(可接受的或惡意的),可以將這一步放在系統之外,從而更加一般地討論網站的功能。我們同意至少有一些東西是可以抓取的:操作系統,用戶完整桌面的大小。但我們絕對不能同意沙盒內瀏覽器代碼的使用方式。總而言之,他給網站代碼的方式比我做得更多。

那麼,誰是對的?網站可以使用桌面屏幕截圖嗎?他們可以枚舉所有打開的窗口嗎?還有什麼可以(或不能)他們做什麼?顯然,任何這樣的代碼都必須是特定於操作系統的,但想象一個雄心勃勃的站點願意編寫代碼來定位多個操作系統和系統。

谷歌搜索這促使我以相對較少的良好的信息很多紅鯡魚,所以我決定在這裏提出

+0

瀏覽器插件!=瀏覽器內代碼 – Oded 2011-04-24 07:06:06

+0

嗯真的,劃傷,編輯。其餘的問題仍然存在。 – rotanimod 2011-04-24 07:10:15

+0

哦,除了某些原因,我認爲Flash不是插件。好吧,我仍然對Flash的功能感興趣,因爲它是一個自己的沙盒,在這個意義上,網站只能做Flash語言的內容。我沒有實際的Flash經驗來了解這些功能的侷限性。 – rotanimod 2011-04-24 07:36:15

回答

1

一般來說,瀏覽器的安全模型應該保持它的沙箱中完全包含JavaScript代碼。任何有關本地機器的信息都不能反映在窗口對象及其子項的屬性中。

另一方面,插件可以免費使用。它們由用戶安裝,並且可以訪問用戶可以訪問的任何內容。這就是爲什麼他們能夠訪問您的網絡攝像頭,上傳文件,進行病毒掃描等。他們還能夠將API暴露給JavaScript代碼,這會在JavaScript沙箱中挖出一個洞,併爲JavaScript代碼提供一些外部訪問權限。這就是Phonegap這樣的工具如何讓網絡應用程序中的JavaScript代碼訪問手機硬件(GPS,方向,相機等)

+0

有趣的是,因爲Flash是一個插件,所以Flash遊戲和其他內容具有用戶級訪問權限。但Flash語言本身必須爲網站提供用戶環境監聽功能,因爲它們必須在該沙箱中運行。像那樣的東西? – rotanimod 2011-04-24 07:34:09

+0

沒錯。我知道Flash支持上傳文件,並且能夠顯示上傳進度,這意味着可以執行逐塊文件IO。有了這種能力,Flash可以訪問任何它需要從機器獲取信息的東西。雖然可能沒有截圖,但至少在沒有用戶許可的情況下才是如此。 – DougWebb 2011-04-24 07:38:05

相關問題