天天看點

Android進階之路 - 病毒清除

那段時間公司app陸續被應用平台下架,後面發現主要被騰訊管家報的木馬病毒,針對于此病毒,官方并未進行說明,對應病毒資料也很少,是以我們需要自己逐漸去排毒,解決病毒最重要的一步應該是定位病毒,然後根據病毒類型去做到根除 ~

排毒兄弟

  • 病毒 - 檢測工具
  • 病毒 - 清除
      • 應用相關
        • 排毒方向
          • 優化相關
          • 權限相關
          • 簽名證書相關
          • 三方相關
          • 平台相關
          • 加強相關
        • 我的排毒路程
          • 排毒步驟
          • 申訴apk
            • 騰訊
            • 小米
      • 網頁相關
        • 詐騙查詢
        • 詐騙查詢-騰訊110
        • 網站安全檢測
        • 網站安全檢測-騰訊安全
        • 網站攔截申訴

應用名稱過于貼近敏感詞彙也會被報風險應用。如“xx币”、“xx賺錢”、“區塊鍊xx” 等。

應用相關

解決問題的第一步,肯定是定位問題,那麼先看看 病毒清除工具 ~

解決問題的第一步往往是定位問題 ,定位問題一般也分為倆種其一為開發經驗,其二為工具輔助 ~

排毒方向

未标紅條目為常見的排錯方式,标紅條目主要為我自行擴充 ~

優化相關

如果上個版本無病毒,那麼将目前版本備份後,在上個版本加入少量代碼打包檢測,逐個進行區間排毒

  • 檢查代碼近期是否有重構行為,如有則将問題定位到重構部分逐個子產品排除
  • 檢查代碼中命名時是否包含敏感詞,如包名,類名,方法名,字元等
權限相關

常見app的隐私權限有

聯系人 、定位、相機、音頻錄音

等敏感權限,如不使用對應功能的話,可以删除這這部分權限,否則容易被誤報

  • 檢查AndroidManifest.xml中是否有未知權限,嘗試注釋該權限後,編譯項目看是否會影響項目打包
  • 檢查是否有敏感的隐私權限,主要針對6.0後提出的權限是否有做使用者授權的行為
簽名證書相關

我在排查病毒時順帶整理了一些apk和簽名證書的blog, keystore、jks基礎知識,生成keystore、jks 簽名證書,反編譯keystore、jks簽名證書,互相轉換keystore、jks 簽名證書,擷取apk簽名資訊、抹除apk簽名狀态、重新簽名apk

  • 檢查簽名證書的資訊是否完善、正規,關于簽名證書的資訊可以通過 擷取apk簽名資訊、抹除apk簽名狀态、重新簽名apk

錯誤示範:CN=Unknown, OU=Unknown, O=Unknown, L=Unknown, ST=Unknown, C=Unknown

  • 檢查簽名證書是否被多個apk使用

在很多公司并非隻有一個apk,而開發者針對于不同的apk打包時,大多會采同一份簽名證書(事實我也如此…),但是從安全角度考慮假設簽名證書出現了問題,那麼将影響目前所有采用此證書打包的apk(偶爾性較高)

  • 檢查目前打包的apk簽名證書,是否為正式簽名證書

在部分公司針對于測試環境包和正式環境包都會使用不同的簽名證書,故此在我認為

測試簽名證書(測試)

指的是測試環境,

正式簽名證書(商用)

指的是正式簽名證書

三方相關
  • 檢查是否有靜默安裝的三方配置(往往配置很簡單,且容易忘記)

  • 檢查app内是否有內建三方廣告(os:騰訊平台報出百度廣告有木馬 - -)

  • 檢查是否有使用不可信的插件(原生、三方),包含私下交易的原生插件

平台相關

有時候我們需要遵守Andorid的規範,但是涉及到上架,我們同時也要遵守應用平台的規範 ~

  • 檢查app應用名稱是否含有敏感詞彙,如“xx币”、“xx賺錢”、“區塊鍊xx”等

  • 檢查app是否申請軟著,現在很多三方平台均需要提供軟著資質,同時要及時上架應用上架搶占包名,如果别人已用相同包名上架應用,那麼你的app可能受到影響

  • 檢查app上架平台時選擇的應用類型,部分平台會禁止一部分類型的app

  • 如app也被應用平台下架的話,可到對應平台,檢視下架原因,會有部分提示

  • 如app也被應用平台下架的話,可咨詢對應平台的客服人員,客服一般都會提示下架的具體原因

  • 如果app被應用平台下架,那麼在檢測無誤後,通過應用平台的申訴通道進行申訴

騰訊應用寶 - 應用違規處理

Android進階之路 - 病毒清除

如果是騰訊相關平台出的問題,可以用一用 騰訊雲的線上服務

Android進階之路 - 病毒清除
加強相關

通過加強的方式,我們可以将app的很多漏洞進行遮蓋,每種加強方式算法也不相同,如果你的app未加強或者加強後無效,可以嘗試一下不同的加強方式

  • 樂固 (騰訊推薦,如果你的apk可以正常通過樂固加強的話,基本沒什麼問題)
  • 360 加強(加強簡單、便捷,但是有時候不被騰訊承認)
  • 安全公司(加強相對不錯,但是收費高昂,一般而言意義不大)

騰訊雲的應用加強與安全測評都是排除的途徑之一 ~

Android進階之路 - 病毒清除

我的排毒路程

每個人排毒的過程可能不同,在此僅記錄我自己的排毒經曆

排毒步驟
  1. 如果是app被下架,優先檢視下架原因,部分平台會告知病毒名稱
  2. 假設下架原因無用,則通過這兒的病毒檢測工具,定位具體的病毒
  3. 通過檢測結果,檢視是否提供對應病毒解決方案,如無,則自行搜尋對應病毒場景
  4. 檢查app名稱是否敏感,app是否有對應軟著,上架的應用類型是否正确
  5. 檢查app是否有配置三方廣告,或者靜默配置的事務(尤其是部分小平台的廣告或者其他)
  6. 檢查是否有敏感權限,同時檢查敏感權限是否有被調用,如無,則删除對應權限(請注意,部分三方包會有調用)
  7. 檢查最近新增代碼是否有新增敏感功能,使用部分功能切割檢測病毒
  8. 檢查簽名證書是否正确,不論是簽名資訊,還是簽名類型,可以嘗試用新的簽名證書打包看一下是否會報病毒
  9. 使用加強方式重新加強apk,然後進行病毒檢測(建議最好用樂固,因為騰訊一直這麼坑 - - )
  10. 周五了,我去完善下排毒工具~
申訴apk

騰訊

首先騰訊針對異常apk,是提供了申訴途徑的,在排毒起初或已經排毒之後,如果apk還被判定為風險應用時,建議前往申訴通道進行申訴 ~

備忘:安卓APK誤報毒之騰訊手機管家申訴教程

Android進階之路 - 病毒清除

小米

針對小米平台 - 被下架應用申訴線上化操作指南

Android進階之路 - 病毒清除

網頁相關

在解決app的應用風險時,發現了一些連帶的小知識點,故此記錄一下 ~

詐騙查詢

Android進階之路 - 病毒清除

詐騙查詢-騰訊110

Android進階之路 - 病毒清除

網站安全檢測

Android進階之路 - 病毒清除

網站安全檢測-騰訊安全

Android進階之路 - 病毒清除

網站攔截申訴

Android進階之路 - 病毒清除

可借鑒,但是場景不全 ~