[心得] 瑪奇帳號防盜小步驟
2013/11/29 更新:
測試結果出來了,抱歉可能害大家虛驚一場
重新測試的結果是:
瀏覽器關閉一個小時就會自動登出!!
中槍的應該只剩下樓主:
每次回家都先開一下瑪奇,想說晚上可能還會再打些任務
所以Beanfun網頁就沒關掉留著,留著晚上可以少打一次密碼
果然,偷懶是最大的敵人(檢討中)
在這邊跟大家抱歉,因為在下不夠謹慎可能造成了大家慌張
前情提要:
原PO很久沒開瑪奇,FB上看到活動送黑火馬與100AP藥水才忽然想回鍋
雖然看到活動時已經趕不上黑火馬,而且一想到20歲的初音就...
不過100AP藥水對我還是很有吸引力
同時也上PTT逛逛
沒想到一上來就看到被盜
當下直覺就是:來分析Beanfun安全狀況的並寫文章讓大家知道哪裡要小心吧
還沒開始寫文,先用自己電腦測試一下:這機制夠不夠安全 (結果測試不夠謹慎)
於是意外就這樣發生了...... 不夠謹慎的測試還成了更大的意外
(多希望不會看到意外讓我可以寫原來的分析文)
重點:
目前如果要小心「瑪奇帳號」被盜用,請做好以下幾個安全措施:
更新:問題沒想像嚴重,要不要照做請參考下面原理自行評估
1. 登入瑪奇後,盡快將Beanfun網頁登出,或者至少關電腦前網頁要登出
不要用清除Cookie的方式登出,直接關網頁後你得重新登入也不算登出
請直接點Beanfun網頁右下角的登出可以確保帳號安全
2. 隨時檢查瀏覽器擴充套件,有沒有被安裝奇怪的東西
當然不要被裝擴充套件最好,不過很多軟體都可以不詢問你直接幫你裝
尤其是現在很少防毒軟體會確保瀏覽器是安全的
如果以上兩點不確實,尤其是第一點沒做好的話
就算用PlaySafe或OTP保護,瑪奇帳號還是會被盜用 更新:只影響一小時
漏洞已經電話回報遊戲橘子,似乎也有其他人回報,但什麼時候修正也不確定
修正之前做好以上兩點至少可以少一點被盜的機會
版主都說可以了,那就把原理寫上吧:
Beanfun以前的登入流程如下圖:
啟動遊戲→輸入帳號密碼→登入遊戲
而新Beanfun的登入流程如下(舊Beanfun的流程也差不多)
開啟Beanfun網頁→網頁登入→點選啟動遊戲→產生「Session參數」→
傳「參數」給BFWebStart→BFWebStart跟橘子伺服器要求產生OTP→
帶著「包含OTP的參數」啟動遊戲→自動登入遊戲(因為帳號密碼已寫在參數)
PS. OTP = On Time Password = 具有時效性的密碼
像是信用卡刷卡要用手機接收一個五分鐘內輸入的認證碼,那也是OTP
PS2. 如果你把工作管理員的命令列打開,就可以看到該應用程式啟動時的參數
前幾篇有人提到踢人的方式,也是類似的方式找出OTP
基本上只要程式還在執行,你執行時的參數都可以查(不過依然安全原因如下)
Beanfun剛出來的時候我就在踹(Try)說如果把OTP抄下來,能不能用
答案是:可以用,但是只有五分鐘的時效,不構成危脅(隨時可查到可是查到也過期了)
因為以前一直只有踹這塊,所以一直覺得Beanfun還蠻安全的(慚愧)
這次看到被盜才想到:如果給BFWebStart的「Session參數」被抄下來呢
話不多說開始動手踹,不過因為BFWebStart只會執行20秒
(程式結束就查不到參數,而且瑪奇主程式出現開始遊戲時,他就任務完成結束了)
手腳再快也抄不下來,所以寫了個小工具把流程從原本的:
網頁→BFWebStart
改成這樣:
網頁→攔截→BFWebStart
第一次當然很正常的啟動遊戲登入遊戲(只是多個步驟攔截參數嘛)
如果這串參數跟後面的OTP一樣5分鐘就過期,那倒也還好
畢竟你登入5分鐘內被踢出,一定會懷疑有問題馬上重新登入
(BF後直接登入瑪奇雖然會寫「請升級帳號」,不過其實會自動幫你按是踢人)
關閉遊戲休息個五分鐘後,把剛剛攔截下來的參數拿出來,再次啟動BFWebStart
等等,五分鐘後還是可以啟動?! 我以為這參數只能用一次或5分鐘後就會失效啊
很不幸的,睡覺前共放了兩個小時以上 確定是因為沒關網頁才會放兩個小時還有效
這串參數還是可以讓我直接自動登入瑪奇(也就是前面講的意外)
沒錯,如果你啟動遊戲時,給BFWebStart的參數有抄下來
根本不需要Beanfun網頁就可以直接登入遊戲
也是PlaySafe沒用的原因(網頁都不需要開了,哪需要晶片卡)
後來測試一下,要怎麼讓「給BFWebStart的參數」,確定以下行為會讓參數報廢
1.登出Beanfun網頁
2.不登出關網頁,直到網頁顯示要登入後,重新登入網頁Beanfun
3.單純的關閉網頁,一個小時後參數會失效(先前不會過期確定是筆誤)
而以下行為不會讓參數失效:
1.改密碼(對,進信箱改密後沒重新登入參數依然有效)
2.直接把網頁關掉然後去睡覺(確定是筆誤,等一個小時就會失效了)
3.之前Beanfun網站宣導的「關掉遊戲」
很不幸的是,這串參數還可以從「瀏覽器」取得
雖然傳說過程有加密不至於被攔截,不過到你的瀏覽器上也解密了
(不然你看不到網頁)
如果直接插入一些腳本,讓瀏覽器把這串參數傳到別的地方....
外加瀏覽器傳輸資料也很正常,防火牆根本不會發現異常
以上,希望大家都能保護好自己的瑪奇帳號
修正後的結論:我要修正我網頁開著不關的壞習慣了...
--
※ 發信站: 批踢踢實業坊(ptt.cc)
留言