QQ客服 全國服務熱線:0535-6737371
您當前位置:首頁 > 煙台小(xiǎo)程序_煙台小(xiǎo)程序開(kāi)發_煙台小(xiǎo)程序制作 >

看知(zhī)識付費(fèi)app小(xiǎo)程序開(kāi)發公司如何做安全維護

來源:銘碩網絡   日期:2020-09-01 09:02:45


微信小(xiǎo)程序誕生(shēng)基于微信的社交屬性,依托微信9. 8 億活躍用戶,微信小(xiǎo)程序可以說是在微信生(shēng)态内完成設計裂變。從一(yī)開(kāi)始,微信就爲小(xiǎo)程序開(kāi)通了46個場景入口,推廣迅猛。這也使得微信小(xiǎo)程序才發布就具備得天獨厚的優勢。 在互聯網界掀起不小(xiǎo)的波瀾,已有許多公司發布了自己的小(xiǎo)程序,涉及不同的行業領域。大(dà)家在體(tǐ)驗小(xiǎo)程序用完即走便利的同時,是否對小(xiǎo)程序的安全性還存有疑慮。龍兵科技知(zhī)識付費(fèi)團隊的小(xiǎo)夥伴對微信小(xiǎo)程序進行初步的安全技術分(fēn)析,在此整理出來抛磚引玉,如有描述不當的地方,歡迎糾正,交流。

本文将從小(xiǎo)程序的功能模塊安全方面進行剖析,希望能爲大(dà)家帶來小(xiǎo)程序安全方面的認知(zhī)。

一(yī),功能模塊安全分(fēn)析

功能模塊安全分(fēn)析大(dà)白(bái)将分(fēn)爲4個部分(fēn)介紹,分(fēn)别是:

網絡傳輸安全

數據存儲安全

文件存儲安全

掃描二維碼安全

1.1,網絡傳輸安全

微信小(xiǎo)程序支持發起通用請求、文件上傳下(xià)載、WebSocket通訊機制, 在開(kāi)發微信小(xiǎo)程序的過程中(zhōng),微信小(xiǎo)程序官方強制使用https協議進行網絡請求數據傳輸。小(xiǎo)程序請求的域名必須經過微信小(xiǎo)程序管理後台通過服務域名設置特定的安全域名(見下(xià)圖),微信小(xiǎo)程序僅能訪問已經配置的安全域名下(xià)的url,确保網絡請求是安全的。

在網絡文件下(xià)載過程中(zhōng)同樣僅支持從含有已配置域名的url下(xià)載資(zī)源,不是走http/https協議。下(xià)載成功後文件臨時存放(fàng),通過微信小(xiǎo)程序自定義協議wxfile進行訪問,在android平台通過映射到SD卡上目錄/sdcard/tencent/MicroMsg/wxafiles/wx_id/tmp_[hash_value]。

1.2,數據存儲安全

微信小(xiǎo)程序以K/V形式存放(fàng)在本地緩存,将小(xiǎo)程序需要存儲的K/V數據直接存儲到Storage DB緩存,微信小(xiǎo)程序進行數據保護需要自行做加密處理。數據存儲在本地DB,微信APP會對DB數據整體(tǐ)做本地加密保護,所以小(xiǎo)程序本地存儲數據的安全性依賴于微信數據庫加密方案的安全,策略與EnMicroMsg.db類似。

1.3,文件存儲安全

通過微信小(xiǎo)程序下(xià)載的文件保存在SD卡/sdcard/tencent/MicroMsg/wxafiles/wx_id/目錄下(xià),通過微信小(xiǎo)程序自定義wxfile://協議指向SD卡目錄下(xià)的文件。微信App會對存放(fàng)SD卡的文件有做完整性校驗,無法被篡改。首先,最終存儲的文件名是:對稱加密(文件流内容Alder32校驗和|原始文件名)生(shēng)成的,最終文件名和文件内容會通過自校驗判斷完整性;其次,本地緩存是通過HASH映射查找文件。所以即使能破解文件名和文件内容,繞過文件自身簽名校驗,篡改爲攻擊者的僞造文件,小(xiǎo)程序APP也無法映射到該僞造文件進行使用。

1.4,掃描二維碼安全

微信小(xiǎo)程序掃一(yī)掃功能依賴微信App的原生(shēng)的掃碼功能;生(shēng)成小(xiǎo)程序特定頁面的專屬二維碼,依賴于微信認證機制的ACCESS_TOKEN,而ACCESS_TOKEN是通過小(xiǎo)程序私有的唯一(yī)APPID和Appsecret請求得到,攻擊者無法獲知(zhī)到該信息僞造生(shēng)成二維碼。