一個雜耍演員的鬧劇——“艦娘國服”事件

>>>  創業先鋒 眾人拾柴火焰高  >>> 簡體     傳統


本文作者為程序員Delton,從游戲程序的角度,分析了所謂“《艦娘世界》出資70萬空降艦隊Collection吧吧主”一事,本文僅代表作者意見。


說好來給大家講故事的。


這件事要從一個月前近兩個月的時候有個網友給我看了個奇葩的游戲,就是今天的主角“艦娘國服”,所謂國服,其本質是私服。熟悉Flash的同學我想都很清楚,Flash的ActionScript作為一個腳本語言,反編譯基本不會遇到任何問題。這個游戲就是通過反編譯破解DMM的艦隊Collection游戲后建立的一個私人服務器。作為一個私服,無論在哪里就是一個小眾低調的存在。我在網站逛了一圈之后也摸清了這個網站的基本性質,基本是一個個人作品。網站無論在登錄還是驗證碼系統都存在嚴重的漏洞,但是考慮到艦娘國服是一個小眾自娛自樂的東西也沒有多想。


當時發現的幾個漏洞現在我也可以來說說:


首先密碼明文上傳,通過抓包可以直接獲取到明文密碼。網站是HTTP非加密傳輸的,再加上密碼不哈希直接上傳基本屬于作死行為,任何一個在同一網絡或傳輸的任何一個路徑都可以輕松獲取到用戶的賬號和密碼。


第二個漏洞是驗證碼的生成漏洞,驗證碼生成器只生成一組四位數字,數字的字體、大小、形狀都、位置沒有變化,一個簡單的算法就可以實現100%識別率的自動識別。


第三個漏洞是驗證碼的驗證漏洞,驗證碼由一個名字為athlon的Cookies控制,不受時間影響也不受使用次數影響。只要鎖住Cookies發送驗證碼,無限次發送都可以繞過驗證碼。至此驗證碼系統基本屬于沒有作用的狀態。


但是依然是沒有多想,因為如果是一小群人自己玩玩,安全沒做好也完全是可以理解的。


問題就發生在2015年1月14日。百度 艦隊Collection 貼吧原吧主突然集體消失,此后空降了一位名叫Athlon18的吧主。吧主上臺后大肆刪帖,并將貼吧作為自己所謂“國服”的宣傳。


網傳(未證實)是斥資70萬人民幣購買下的吧主。有人曾洗地說,此吧主和艦娘國服沒有關系,我想這點是不可能的。我們來看一下這位吧主的ID,我們再來看看我一個月前找到的控制驗證碼的Cookies的變量名。顯然是將開發者名字作為變量名的做法(而且此做法非常不科學,基本可認為只是個人小作坊才干得出的事)。并且該游戲稱將于15日公測,至此整個事件的性質發生了變化,也是我決定插手的因素。


許多人可能支持在此事發生之后立刻采取DDoS的攻擊策略,這是我所反對的。因為DDoS的前提還是要認清對方服務器的配置、數量和性能,不要打無畏的資源消耗戰。根據之前發現的驗證碼漏洞,我們可以通過批量發送驗證碼正確,但用戶名密碼錯誤的POST強制對服務器的數據庫進行大量查詢工作,這樣的效率會高很多。


于是當晚發布了 《艦娘國服數據庫壓力測試工具》 和使用方法。截止目前下載量已破萬,并且還有許多人盜鏈搞了鏡像站(不過我不怪你們)。為了安全起見,以免有人說我在程序中埋入后門程序,我將程序源代碼發布至GitHub。截止至14日凌晨登錄服務器已經出現不能訪問的狀況。


但是并沒有結束,當天下午有黑客通過猜測,發現/kancolle/admin為官網CMS的后臺,并且發現使用的是Duxcms 1.1.0作為框架。一開始使用了默認用戶名和密碼 admin/duxcms 登錄成功。這就是大家首先看到的登錄界面的標題被換的事情。



標題先后兩次被換,管理員登錄后修改了密碼并且關閉了直接修改/inc/文件夾的權限以防止標題換。


第三次被攻破CMS是Duxcms漏洞和社工庫的幫助。Duxcms在登錄時的返回會提示是用戶名不存在還是密碼錯誤。所以在猜測后,發現了第二個可以登錄后臺的用戶名athlon,經過社工庫查詢密碼為qia**i(開發者真名的縮寫)。這是第三次被破解,但是由于/inc目錄被鎖,接下來就是大家看到的各種奇奇怪怪的公告的出現。



先后有六七次。但是再后來管理員更換了密碼,使后臺一度安全。


但是不久之后就被發現Duxcms 1.1.0版本存在SQL注入漏洞,使得可以不需要用戶名和密碼登錄。這時候事情就變得更復雜,出現了如下的公告。



這之后先后有多個黑客發現該漏洞導致網站公告欄一度陷入了混亂。之后管理員出現將整個網站的/admin目錄轉移使得網站直到第二天都比較安全。


但是SQL注入的出現使得剛剛的漏洞的暴露期間可能出現了其他許多問題。比如說泄露用戶數據。雖然官方曾出來洗地說數據沒有泄露。



但是事實上已經有黑客曬出了充值記錄圖(據稱是利用了Duxcms的漏洞,驗證過按照其說法確實可訪問):



還記得嗎,我一個多月前就發現過這個網站是明文上傳密碼的,就不能排除也是明文存儲的密碼。并且SQL被注入成功等事件的出現,用戶的用戶名密碼是否被泄露至今還是一個謎,但一旦被泄露,造成的影響是不可設想的,我想這點大家從CSDN、7k7k等很多事件中都有了無數的了解。所以各位用戶還是保持好警惕,此事我也會跟進是否有庫流出。


第二天,網站在延后4小時后毅然開始了公測,隨著公測IP的外泄,基于新服務器的DDoS開始了新的一輪,并由于多個其他黑客開發的更方便使用的幾個工具的出現(尤其是那個支持多線程的網頁版出現后),攻擊效率在此發生質變,網站此后再無法正常登錄。


并且網站被發現沒有ICP備案,一度顯示的ICP備案和公司不符,沒有文化許可證(之后網站顯示有了許可證,但是許可證屬于深圳一公司而非先前顯示的北京公司),整個網站就是一個非法網站。不知道各位有沒有辦過ICP備案。凡是要進行備案的網站必須是沒有在運營的網站。


所以艦娘國服現在什么都敢搞,為了文化許可證去搞了聯運(雖然不知道是不是也是假的)。但是ICP是辦不下來的,它就是非法網站,沒有第二個定義。網友也及時多次對該網站域名向國家多個部門進行了舉報。最后不知道是DDoS的壓力還是有關部門的壓力,網站于當晚6點下線,經測試全球都無法正常訪問首頁了。


至此,此事發展到首個階段性勝利。


那么我們來小結一下這件事吧,這件事究竟是個什么樣的東西呢?就我個人的感覺,這就是一個雜耍演員的鬧劇。說是雜耍演員說的就是這位名字叫Athlon的程序員。據稱該程序員以前就寫過一些游戲腳本,事實上也確實如此。對服務器的安全意識極度薄弱,基本不會任何形式的優化,網站開發過程中代碼也是各種牽強和隨性。我記得第一次看完網站代碼時我就說,這代碼寫得和雜耍似的,這樣的程序員放之四海都不會寫出好程序


更不可思議的是,如此一個弱智的產品更是敢于把自己推向風口浪尖,去空降一個貼吧吧主去(不知道背后到底有沒有70萬,甚至說背后有推手將他推向這個風口浪尖),引發眾怒后的后果是不可想象的。大家想一下,艦隊Collection的用戶日本服務器對用戶限制就很麻煩,能很順利通過這些限制玩上這個游戲大多也有些計算機水平。這些人中更有藏龍臥虎的大佬。整個事情從開始攻擊開始事情發展的命運就已經被決定了,一定是一邊倒的結果。


一個三流程序員編寫的三流服務器被一群一流黑客攻擊,從開始就注定不會有好下場。


不作死,就不會死。


游戲葡萄 2015-08-23 08:44:06

[新一篇] 2014英國手游市場動態 葡萄盤點

[舊一篇] 向二次元手游學做游戲的細分垂直
回頂部
寫評論


評論集


暫無評論。

稱謂:

内容:

驗證:


返回列表