自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

從HTML 5游戲BrowserQuest看代碼漏洞

開(kāi)發(fā) 前端
首先,介紹一下背景,前段時(shí)間Mozilla發(fā)布了一款新游戲Browser Quest。這是一款多人在線游戲。游戲規(guī)則并不復(fù)雜。任何人都可以一試。但是作為HTML5實(shí)現(xiàn)的一個(gè)例子,這的確很酷。

聲明:作弊并不是什么好事,我不提倡作弊。我也不想諷刺Mozilla的代碼質(zhì)量(實(shí)際上其代碼糟透了)。我不是超級(jí)黑客,也不想在此唱高調(diào)。只是想演示一下我在Mozilla新游戲上是如何作弊的,以后大家在編寫HTML5游戲時(shí)要注意避免這些問(wèn)題。我的***個(gè)編程實(shí)例非常簡(jiǎn)單。為了將Bard’s Tale游戲通過(guò)磁盤編輯器進(jìn)行編輯并存入我的Apple 2e,我不得不學(xué)習(xí)16進(jìn)制。

首先,介紹一下背景,前段時(shí)間Mozilla發(fā)布了一款新游戲Browser Quest。這是一款多人在線游戲。游戲規(guī)則并不復(fù)雜。任何人都可以一試。但是作為HTML5實(shí)現(xiàn)的一個(gè)例子,這的確很酷。

進(jìn)入網(wǎng)站,輸入用戶名,選擇角色(此功能的實(shí)現(xiàn)有點(diǎn)難度),然后就可以開(kāi)始游戲了。

[[76781]]

真正酷的是,Mozilla把整個(gè)游戲開(kāi)放了源代碼,包括前臺(tái)客戶端和后臺(tái)技術(shù)。如果有興趣,可以在這里下載源碼:https://github.com/mozilla/BrowserQuest。

為了進(jìn)行研究,我玩了一下這款游戲,馬上就意識(shí)到它用的是本地存儲(chǔ)。我用Chrome extension(LocalStorage Monitor)來(lái)檢測(cè)該游戲是否真的使用本地存儲(chǔ),結(jié)果發(fā)現(xiàn):

首先我注意到,裝備清單是在本地存儲(chǔ)的,這就意味著我可以隨便修改我的裝備。查看代碼后我發(fā)現(xiàn),裝備清單中的裝備是被限定在一定范圍內(nèi)的,范圍的大小由一個(gè)簡(jiǎn)單的數(shù)字指標(biāo)來(lái)確定。如果把自己的裝備都改成了***裝備,那么系統(tǒng)會(huì)重置裝備清單。

所以,***步就是到控制臺(tái)復(fù)制數(shù)據(jù):

copy(localStorage["data"])

這樣就把數(shù)據(jù)(JSON 字符串)復(fù)制到了剪切板,然后粘貼到記事本并編輯這兩個(gè)值:

  1. {"hasAlreadyPlayed":true,"player":  
  2. {"name":"Romana","weapon":"goldensword","armor":"goldenarmor","image":"data:image/png;base64,deleted"},"achievements":  
  3. {"unlocked":  
  4. [2,5,11,6],"ratCount":3,"skeletonCount":1,"totalKills":5,"totalDmg"  
  5.  
  6.  

獲取字符串并返回控制臺(tái)……

  1. localStorage["data"] = (pasted my string here) 

重新加載頁(yè)面,瞧—我變成了一個(gè)強(qiáng)大威武裝備精良的復(fù)仇者:

[[76782]]

再次重申,我并不是在些貶低Mozilla的成果。該游戲的確是個(gè)很不錯(cuò)的示例。只是別忘了本地存儲(chǔ),這種實(shí)現(xiàn)方式太不安全了。

原文鏈接:http://css.dzone.com/articles/how-i-cheated-mozillas-new

【編輯推薦】

  1. 如何制作HTML 5的iPhone應(yīng)用程序
  2. HTML 5和CSS3快速制作便簽特效
  3. HTML 5 WebDataBase設(shè)計(jì)離線數(shù)據(jù)庫(kù)
  4. HTML 5實(shí)現(xiàn)拍照上傳應(yīng)用實(shí)現(xiàn)
  5. HTML 5打造桌面應(yīng)用
責(zé)任編輯:張偉 來(lái)源: HTML5研究小組
相關(guān)推薦

2012-04-13 09:42:34

2014-12-30 17:13:51

HTML5

2014-04-14 13:22:33

OpenSSL漏洞OpenSSL

2020-11-19 10:09:55

漏洞逆向角度證書覆蓋

2015-07-08 16:38:10

Cocos游戲引擎

2012-05-15 10:35:35

HTML5

2012-01-06 14:10:13

HTML 5

2011-05-11 13:58:19

HTML5

2009-10-12 11:23:38

2014-04-08 10:02:20

2011-03-23 09:33:51

HTML 5

2009-07-08 19:44:56

2012-01-11 10:14:58

HTML 5

2016-04-18 16:20:55

2012-05-10 09:45:14

HTML5

2013-06-21 13:33:46

HTML 5游戲

2011-12-09 20:25:16

HTML5

2012-05-15 13:57:41

HTML5

2012-04-25 14:36:52

HTML5

2011-02-23 11:22:59

DojoHTML 5
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)