《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 業(yè)界動態(tài) > 《羊了個羊》服務(wù)器又雙叒叕宕機了 你的「小程序」還安全嗎?

《羊了個羊》服務(wù)器又雙叒叕宕機了 你的「小程序」還安全嗎?

2022-11-06
來源:安全419
關(guān)鍵詞: 羊了個羊 服務(wù)器 小程序

  近日,一款號稱“通關(guān)率不到0.1%”的堆疊式消除游戲“羊了個羊”火遍全網(wǎng),在極短時間內(nèi)儼然有了一副“全民級游戲”的架勢,在各大社交媒體上取得了驚人的熱度。

  據(jù)羊了個羊官方微博,由于該游戲過于火爆,《羊了個羊》多次出現(xiàn)宕機的情況,服務(wù)器2天崩了3次。其創(chuàng)始團(tuán)隊在面對記者采訪時表示,游戲大火之后最忙的事情就是應(yīng)對持續(xù)的DDoS攻擊,解決服務(wù)器反復(fù)出現(xiàn)的無法登錄的異常情況。

  眾所周知,作為微信生態(tài)中的應(yīng)用模塊,微信小程序以其在微信內(nèi)即可被便捷地獲取和傳播的特點,無需安裝應(yīng)用的便捷使用體驗,逐漸深入到生活和商業(yè)中的方方面面。

  那作為依附在微信之下的一種創(chuàng)新應(yīng)用形態(tài),為什么小程序依然會遭受網(wǎng)絡(luò)攻擊呢?微信小程序主要面臨著哪些方面的安全挑戰(zhàn)?相對于傳統(tǒng)的Web應(yīng)用和移動應(yīng)用來看,小程序的安全防護(hù)又有哪些技術(shù)層面的安全側(cè)重點?圍繞這些問題,我們向業(yè)內(nèi)一家專業(yè)的應(yīng)用安全廠商瑞數(shù)信息進(jìn)行了請教。

  針對業(yè)務(wù)和敏感數(shù)據(jù)的攻擊

  已成為小程序面對的主要風(fēng)險

  瑞數(shù)信息技術(shù)總監(jiān)吳劍剛告訴我們,事實上大眾存在一個對微信小程序的理解誤區(qū),小程序看似是在微信中打開,但實則與微信并不存在緊密的耦合關(guān)系,微信只是為小程序開發(fā)者們提供了一個快速連接用戶的入口。盡管小程序在微信體內(nèi)運行,由微信提供了其運行環(huán)境和認(rèn)證方面的安全保護(hù),但業(yè)務(wù)邏輯風(fēng)險、信息泄露,以及小程序自身安全性方面仍然存在問題。

  “從防護(hù)的角度來看,一次合法的用戶訪問過程中,用戶在通過手機終端向微信小程序提交訪問請求后,會由微信來驗證此次訪問的合法性并向用戶下發(fā)一個App ID,在這一環(huán)節(jié)之后用戶的所有訪問行為都是和小程序服務(wù)器之間的直接交互,因此,除非小程序服務(wù)器是部署在騰訊云上,否則騰訊云的防火墻、抗DDoS等安全能力是很難賦能給小程序開發(fā)者的?!?/p>

  據(jù)他介紹,小程序作為一個輕量級的應(yīng)用,它具備著開發(fā)成本低、使用便捷等多方面的特點,但從技術(shù)的角度看,小程序本身是一個較為簡單的應(yīng)用形式,開發(fā)者主要通過JavaScript 來開發(fā)業(yè)務(wù)邏輯以及調(diào)用小程序的API來完成業(yè)務(wù)需求。

  小程序的JavaScript架構(gòu)使得它對于網(wǎng)頁的交互和訪問都是通過調(diào)用API的接口來實現(xiàn)的,因此攻擊者往往也會通過模擬獲取App ID的方式繞開騰訊的安全校驗環(huán)節(jié),跳過通過手機訪問小程序的過程,通過協(xié)議直接對小程序的API接口發(fā)起批量請求和攻擊。

  吳劍剛表示,協(xié)議攻擊是針對小程序的最主要的攻擊形式,這種攻擊不需要真實的手機、群控設(shè)備等客戶端,能夠大幅度降低攻擊的成本。同時,脫離了設(shè)備的限制后,攻擊的門檻也大幅的降低,一些初級的黑灰產(chǎn)從業(yè)者也能夠非常輕易地實施規(guī)?;?,導(dǎo)致針對小程序的攻擊劇增。

  在他看來,小程序面臨的安全風(fēng)險主要集中在業(yè)務(wù)安全和數(shù)據(jù)安全兩個方面。

  在業(yè)務(wù)安全層面,如應(yīng)用層的DDoS攻擊、刷量、薅羊毛、虛假砍價助力等都是常見的黑灰產(chǎn)的攻擊方式,黑灰產(chǎn)會通過批量請求的方式進(jìn)行虛假的點擊和注冊,來從事營銷欺詐活動;在數(shù)據(jù)安全層面,攻擊者則會利用小程序自身的業(yè)務(wù)邏輯缺陷,針對小程序進(jìn)行越權(quán)訪問攻擊,通過不安全的API接口批量獲取敏感的用戶數(shù)據(jù)和交易數(shù)據(jù),進(jìn)而誘發(fā)更嚴(yán)重的數(shù)據(jù)泄露或商業(yè)信息泄露的風(fēng)險。

  吳劍剛告訴我們,傳統(tǒng)的web網(wǎng)站應(yīng)用和移動端應(yīng)用中都會采用設(shè)備指紋技術(shù)來進(jìn)行精準(zhǔn)的標(biāo)識,在設(shè)備指紋技術(shù)面前,盡管攻擊者會使用多源低頻的攻擊手法,不斷地變換IP地址發(fā)去訪問請求,但只要設(shè)備指紋不被剝離隱藏,防御方就能夠溯源到真實的攻擊者IP進(jìn)行封禁。

  但在小程序中,由于權(quán)限的原因,小程序可采集的設(shè)備信息少到無法形成唯一的設(shè)備指紋,導(dǎo)致這一高效的防御技術(shù)在小程序中毫無用武之地。再有,針對小程序的攻擊幾乎都是協(xié)議攻擊,導(dǎo)致設(shè)備指紋在小程序防護(hù)上的效果微乎其微。從小程序自身來說,因為黑灰產(chǎn)針對小程序的攻擊大多是在業(yè)務(wù)層面,傳統(tǒng)的安全防護(hù)技術(shù)如漏洞掃描、安全加固等效果也極為有限。

  另外,相較于移動端應(yīng)用,小程序還存在代碼邏輯簡單、代碼無法實時更新、安全加固算法和簽名校驗算法薄弱等特點,一旦攻擊者利用逆向技術(shù)破解,便更能夠在短時間內(nèi)肆意妄為。

  他談到,《羊了個羊》小游戲遭到的DDoS攻擊也是業(yè)務(wù)攻擊中一種形式,攻擊者主要是通過模擬正常請求的方式高頻的訪問其服務(wù)器,最終造成服務(wù)器資源耗盡業(yè)務(wù)不可用的后果?!斑@種訪問請求并不存在惡意的特征,依靠傳統(tǒng)的漏洞掃描和安全加固顯然是無法起到防護(hù)效果的。”

  小程序安全防護(hù)難點重重

  如何應(yīng)對才是良策?

  據(jù)吳劍剛介紹,針對當(dāng)前小程序面臨復(fù)雜的安全挑戰(zhàn),安全行業(yè)內(nèi)也提出了不同路徑的解決方案。針對小程序JavaScript架構(gòu)特性,業(yè)內(nèi)的傳統(tǒng)做法是幫助開發(fā)者對JavaScript進(jìn)行安全加固,通過JS混淆技術(shù)去替換JavaScript代碼中的一些關(guān)鍵函數(shù)和關(guān)鍵的業(yè)務(wù)邏輯,利用加密技術(shù)在攻擊者對小程序代碼逆向分析這一環(huán)節(jié)上接入安全防護(hù)措施,讓攻擊者難以對小程序代碼進(jìn)行逆向。

  他談道:“瑞數(shù)信息認(rèn)為,安全是攻防雙方的博弈,絕對的安全是不存在的,這就導(dǎo)致無論安全廠商在應(yīng)用外層怎么加殼,攻擊者仍然會想方設(shè)法地突破進(jìn)來。”

  因此,有別于傳統(tǒng)安全加固廠商的做法,作為業(yè)內(nèi)主流的應(yīng)用安全廠商,瑞數(shù)信息的關(guān)注點在于“讓攻擊者逆向之后無功而返”,并提出了以“動態(tài)安全技術(shù)”為核心的小程序動態(tài)安全防護(hù)解決方案。

  具體而言,瑞數(shù)信息主要通過三個維度的安全性校驗,進(jìn)而實現(xiàn)對企業(yè)小程序的安全防護(hù):

  第一個維度是進(jìn)行客戶端的真實性校驗。在小程序用戶發(fā)來訪問請求時,瑞數(shù)信息的動態(tài)應(yīng)用保護(hù)系統(tǒng)首先會協(xié)助小程序的運營團(tuán)隊去校驗發(fā)起訪問請求的客戶端所在的微信環(huán)境是否涉及偽造,同時還會以SDK的形式去獲取用戶的App ID,并與用戶提交的ID進(jìn)行比對,以此來保證客戶端的合法性和真實性;

  第二個維度是針對自動化工具的校驗。在抵御Bot自動化攻擊方面,瑞數(shù)信息一直走在行業(yè)的前列。借助在人機識別技術(shù)、動態(tài)令牌技術(shù)以及動態(tài)驗證技術(shù)方面的優(yōu)勢,瑞數(shù)信息動態(tài)應(yīng)用保護(hù)系統(tǒng)會能夠高效地發(fā)現(xiàn)工具性行為,將由工具發(fā)起的請求予以阻斷。“微信小程序是一個以To C業(yè)務(wù)主導(dǎo)的場景,微信小程序端的每一次點擊行為都應(yīng)該由用戶個人來完成,因此,工具性的訪問行為注定是非法的,此類行為都會被直接攔截掉。”

  第三個維度是圍繞內(nèi)容展開校驗。針對小程序API接口容易出現(xiàn)的敏感數(shù)據(jù)泄露風(fēng)險,瑞數(shù)信息主要通過動態(tài)算法對提交內(nèi)容和請求內(nèi)容進(jìn)行雙向混淆,將小程序提交的數(shù)據(jù)進(jìn)行動態(tài)混淆成為一次性密文,極大地提高了非法訪問行為的攻擊成本和門檻。同時瑞數(shù)信息還將會對內(nèi)容的完整性進(jìn)行校驗,防止內(nèi)容遭到攻擊者篡改。

  “以《羊了個羊》的案例來看,攻擊者顯然是在應(yīng)用層發(fā)起了大量的DDoS攻擊,以自動化工具批量請求的方式集中訪問應(yīng)用服務(wù)器,導(dǎo)致了服務(wù)器的過載。如果處于瑞數(shù)信息動態(tài)應(yīng)用保護(hù)系統(tǒng)的保護(hù)下,平臺就能夠通過人機識別技術(shù),把所有的工具性訪問行為識別出來并攔截掉,保證此類游戲小程序應(yīng)用的業(yè)務(wù)穩(wěn)定性”,吳劍剛分析稱。

  安全能力薄弱的小程序開發(fā)團(tuán)隊

  應(yīng)該從哪些方面著手規(guī)避安全風(fēng)險?

  9月15日,一張“流量主數(shù)據(jù)日報”截圖在網(wǎng)上流傳,圖片顯示,僅僅半天《羊了個羊》的收入就達(dá)到468萬元,月收入更是高達(dá)2564萬元。但就是這樣一款一夜爆火的應(yīng)用,其游戲的開發(fā)者曾對記者透露,整個開發(fā)團(tuán)隊只有3人,這一游戲應(yīng)用的開發(fā)時間也僅有3個月左右。

  那么,針對此類安全能力較為薄弱的小型應(yīng)用開發(fā)團(tuán)隊,從整個小程序應(yīng)用的開發(fā)到上線過程中,應(yīng)該從哪些方面著手規(guī)避安全風(fēng)險呢?在采訪最后,我們也邀請瑞數(shù)信息的安全專家分享了一些安全建議。

  吳劍剛表示,無論是何種規(guī)模的應(yīng)用開發(fā)團(tuán)隊,都應(yīng)該提高對應(yīng)用安全的重視程度,最大程度地降低業(yè)務(wù)層面潛在的安全隱患。對小型開發(fā)團(tuán)隊而言,首先應(yīng)該注意避免使用第三方開發(fā)工具,盡量選擇微信官方提供的安全開發(fā)工具保障安全性。

  同時開發(fā)者還應(yīng)該采取一些必要的安全措施對代碼采取必要的安全保護(hù)措施,包括將AppSecret在生成后需要后臺應(yīng)用保存維護(hù),后臺留存安全性需后臺應(yīng)用考慮,在獲取客戶敏感信息時注意加密傳輸、以白名單機制來限制傳輸通道內(nèi)的互相訪問等等。

  他建議,尤其在自身安全能力不足的情況下,小程序的開發(fā)團(tuán)隊?wèi)?yīng)該向第三方安全團(tuán)隊尋求合作,使用帶有小程序安全加固、自動化Bot攻擊防護(hù)類安全功能的產(chǎn)品來應(yīng)對安全風(fēng)險,盡早將黑灰產(chǎn)攻擊掐滅于萌芽之中。



更多信息可以來這里獲取==>>電子技術(shù)應(yīng)用-AET<<

二維碼.png


本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。