3C科技 娛樂遊戲 美食旅遊 時尚美妝 親子育兒 生活休閒 金融理財 健康運動 寰宇綜合

Zi 字媒體

2017-07-25T20:27:27+00:00
加入好友
前陣子小夜的手機因sim卡功能損壞而汰換(所以操作上把簡訊服務砍了,似乎直接迴避了簡訊和行動網路攻擊(ㆆᴗㆆ),請讀者再自行斟酌。),又剛好要去中國大陸,便來大陸行旅專用機吧!你問是出於什麼考量?當然一是資訊安全,二是不想在平常用的手機上裝一些雜七雜八的APP,大陸的Android APP都會要求過多的權限,使用體驗也因為單一APP功能繁多而不好。 於是乎增進終端安全的幾個改造目標: 不常去大陸的話,專門打造一隻手機,即不用帶平常用的手機入境。現在帶筆電出國都要很小心,以後手機也會越來越需要注意。若真的沒辦法不帶平常用的手機,也能藉由實體隔離與主要的手機資料形成氣隙(Air Gap)降低風險。 刷了手機,將root系統最高權限從原廠的拿回消費者手裡,砍掉系統資訊回報、OTA網路推送更新、同步服務……等。(若你用是大陸的廠牌就這點更重要了) 有了root權限,可以修改平常看不見的系統設定增加安全性/隱匿性。如指定DNS域名解析伺服器、偽裝手機識別碼、改變SELinux模式獲得更多安全性。 差點忘了提,避免手機真的遺失,手機和SD卡請先加密再開始改造......(本人就忘得徹底了orz)不過加密會影響運行效能,在這隻上有感。 設定VPN,這點本文就先略過,有機會再提了。 安裝防毒軟體、QRcode安全軟體。 有了root權限,甚至將作業系統換掉,不過這個難度太大,對機種型號有要求,暫時不考慮。 (方便讀者觀看,本文以繁體中文撰寫。) 機型版本: HTC Desire 820f Android 6.0.1 HTC Sense 7.0 軟體版本 3.17.709.3 Magisk 19.4-736729f5(19307) Magisk Manger 7.3.3-f1112fdf(228) Xpose 89 整個流程: 解鎖Bootloader→刷入Recovery、Magisk→備份Partition→安裝模組→砍系統檔→安裝APPstore 流程解釋: 解除開機安全鎖→替換HTC recovery、取得root權限→備份磁碟分割區→開始捏造系統 解鎖畫面如圖左。解鎖後開機會多出紅字訊息如圖右。 電腦的BIOS對應到手機就是Bootloader,HTC在這個機型上了一道安全鎖定,防止磁碟分割區/配置被未經許可的改動,因此第一個步驟要解鎖。步驟請參見:雷禪,〈HTC官方解鎖教學 (HBOOT機型適用)〉,《雷禪光子力研究所》, 2017年8月23日。 第二步則要用TWRP替換原廠的recovery程式,方便對磁碟分割區進行更動。接著支持台灣人!刷入Magisk取得root系統最高權限,方便載入Android後對系統分割區進行更動,如修改選單上沒有選項的設定、刪除系統檔案…等。步驟請參見:雷禪,〈教你如何ROOT HTC Desire 820F〉,《雷禪光子力研究所》, 2017年3月27日。 第三步,在關機後一直按著電源鍵與變小聲音量鍵直到進入Bootloader,接著進入Recovery,準備備份Partition。 備份前先準備好格式化成exfat(才放得下4G以上的檔案)的SD卡,第一次可以將快取(Cache)以外的磁區都備份下來。Recovery就是現在載入的磁區,Boot是開機磁區,這兩個不要亂動;System Image是系統映像檔,即HTC調整過的Android 6.0.1;System、Data、Cache則會在載入Android使用後有所更動,若將System和Data兩個磁區還原,整個系統設定、使用者資料、下載的APP、APP設定都會還原,再後面捏造系統的過程中就靠這招了! 因為手機是用到壞掉才換所以只有最後版本的映像檔,附上除快取外的磁區:檔案連結點此,請要的人請留言和我拿密鑰,務必注意手機版本是Desire 820f!! 在還原System和Data磁區前,先抹除對應的磁區會比較保險(確保系統穩定性),也就是俗稱的雙清、三清、四清,請參見:JACK,〈TWRP Wipe雙清、三清、四清說明及轉換格式教學〉,《月光部落》。 若在還原途中發跳出「Cannot restore system」的訊息,別驚慌,進Mount選單,取消「Mount system partition read-only」即可。詳細圖文:hovatek, "How to fix Cannot restore system -- mounted read only in TWRP", Hovatek, November 13, 2016. 現在你經取得root(最高系統權限了),接著更新Magisk和Magisk Manger到最新版本,準備開始改造吧! SafetyNetafety檢查:來確認root是否會被APP檢測到,如金融類APP、安全防毒類軟體、百度帳號管家…等。GooglePlay服務版本不夠的話它會叫你更新,更新完就能檢測了。 Superuser:最高權限的管理/授予 Magisk Hide:就是要躲過哪些APP偵測手機被root,需要手動勾選。 模組:顯示你已經下載和啟用了那些,可以在這邊刪掉模組或停用。 下載:會列出所有這個本版的Magisk支援的模組,但不一定適用於你的這支手機!!!而且裡面沒有按照類別分類,太難上手的話可以要自己上網看別人推薦或找論壇,或用關鍵字等。安裝前可以點一下模組名稱,通常作者會寫簡單的用途、適用機型軟體、使用方法……等。如Debloater要安裝Terminal(終端機),用root權限執行。 從本文目的推薦以下模組(當然此外還有挑不完的功能性美化等再自行嘗試了),除了Busybox、Single User Mod無須設定,Single User Mod、LKT在安裝時藉由音量鍵選擇,其他都要藉由Terminal輸入簡單的指令設定。 Busybox是一定要裝的;Debloater用來瘦身,下文會講到;Foxy Boot太帥了,豈能不裝一下;LKT調整效能/電池,很好用,真的有效;Single User Mod關閉多帳號登入。 藉由App Systemizer模組改變SELinux模式,從Permissive轉為Enforcing。 DNS switcher可以指定DNS域名解析伺服器。DNSCrpt-Proxy 2則加密與伺服器間的通訊。 Xpose:實現更多模組的安裝!先在Magisk Manager安裝xpose模組,再下載xpose installer,就有許多甚至更多的模組可以安裝了,如Device ID Masker Lite(付費)、DEviceChanger、IMEI Masker來偽造手機裝置訊息,要注意偽造的APP對象越多越消耗資源,開機會頓卡。 Foxy Boot這個模組,會替換開機動畫(hTC白底綠字)成kernel載入紀錄(動態的),超帥的,玩Magisk一定要試試看! 接著就要靠Debloater這個模組移除不必要的系統APP,附圖中是這支手機的系統APP,有分兩個資料夾,照小夜的經驗,/system/app和/system/priv-app,後者刪的時候需要比較注意,比前者容易影響系統穩定性。 我剛開始試驗時,也是一批一批砍,重開機順利再繼續砍,比較有可能影響系統穩定性的幾個APP則是一個一個砍。 邏輯如下: 無法停用的,會在背景運作的。 無法停用的,無法封鎖通知的。 可以停用的,以後用不到的。 桌布小工具(Widget) 內建桌布(Wallpaper) 語言包(IMEXT9) 鍵盤(Keyboard) 順序再自己調整。 盡量將模組先裝一裝,安裝好APP再裝模組,有些會再重開機時「優化」所有安裝的APP,就得再一個個慢慢等。當然若你和我一樣是摸石子過河,那還是有可能遇到( ×ω× )。 Debloater可以匯出、匯入清單。附上小夜移除的系統APP: HTCBackup^=/system/app/HTCBackup debloat.import=1 HTCBackup^=/system/app/HTCBackup HtcBackupReset^=/system/app/HtcBackupReset HTCSetupWizard^=/system/app/HTCSetupWizard MyTask^=/system/app/MyTask HoloSpiralWallpaper^=/system/app/HoloSpiralWallpaper NoiseField^=/system/app/NoiseField PhaseBeam^=/system/app/PhaseBeam HtcAutoRotateWidget^=/system/app/HtcAutoRotateWidget HtcBackgroundDataWidget^=/system/app/HtcBackgroundDataWidget CalculatorWidget^=/system/app/CalculatorWidget HtcSyncWidget^=/system/app/HtcSyncWidget HtcGpsWidget^=/system/app/HtcGpsWidget HtcRingtoneWidget^=/system/app/HtcRingtoneWidget HtcScreenBrightnessWidget^=/system/app/HtcScreenBrightnessWidget HtcScreenTimeoutWidget^=/system/app/HtcScreenTimeoutWidget DeviceManagement^=/system/app/DeviceManagement Hangouts^=/system/app/Hangouts Chrome^=/system/app/Chrome ChromeWithBrowser^=/system/app/ChromeWithBrowser CloudPrint^=/system/app/CloudPrint DownloadProviderUi^=/system/app/DownloadProviderUi Drive^=/system/app/Drive DriveActivator^=/system/app/DriveActivator Exchange3Google^=/system/app/Exchange3Google Facebook_Client^=/system/app/Facebook_Client FMRadioService^=/system/app/FMRadioService Gmail2^=/system/app/Gmail2 GoogleCalendarSyncAdapter^=/system/app/GoogleCalendarSyncAdapter Books^=/system/app/Books PlayGames^=/system/app/PlayGames Videos^=/system/app/Videos Music2^=/system/app/Music2 Newsstand^=/system/app/Newsstand GoogleTTS^=/system/app/GoogleTTS PlusOne^=/system/app/PlusOne HtcCarGps^=/system/app/HtcCarGps KidMode-google^=/system/app/KidMode-google NewsWeather^=/system/app/NewsWeather News_Republic^=/system/app/News_Republic talkback^=/system/app/talkback MyGoogleTaskPlugin^=/system/app/MyGoogleTaskPlugin HtcPowerStripWidget^=/system/app/HtcPowerStripWidget YouTube^=/system/app/YouTube Maps^=/system/app/Maps IMEXT9BahasaIndonesiaLight^=/system/app/IMEXT9BahasaIndonesiaLight IMEXT9BahasaMalaysiaLight^=/system/app/IMEXT9BahasaMalaysiaLight IMEXT9FrenchLight^=/system/app/IMEXT9FrenchLight IMEXT9SpanishLight^=/system/app/IMEXT9SpanishLight IMEXT9ThaiLight^=/system/app/IMEXT9ThaiLight IMEMurasuIndic^=/system/app/IMEMurasuIndic IME_TP_ValueAdd^=/system/app/IME_TP_ValueAdd IMEMurasuViet^=/system/app/IMEMurasuViet Font_Helvetica^=/system/app/Font_Helvetica UserDictionaryProvider^=/system/app/UserDictionaryProvider FaceLock^=/system/app/FaceLock Street^=/system/app/Street SMSBackup^=/system/app/SMSBackup PrintSpooler^=/system/app/PrintSpooler PartnerBookmarksProvider^=/system/app/PartnerBookmarksProvider HtcMessageProvider^=/system/app/HtcMessageProvider GoogleContactsSyncAdapter^=/system/app/GoogleContactsSyncAdapter IMEXT9EnglishUKLight^=/system/app/IMEXT9EnglishUKLight VisualizationWallpapers^=/system/app/VisualizationWallpapers BasicDreams^=/system/app/BasicDreams BasicDream^=/system/app/BasicDream IMEMurasuIndicLight^=/system/app/IMEMurasuIndicLight IMEMurasuVietLight^=/system/app/IMEMurasuVietLight HtcProfilesWidget^=/system/app/HtcProfilesWidget HTCZero^=/system/priv-app/HTCZero HtcDataStripWidget^=/system/priv-app/HtcDataStripWidget HtcDataRoamingWidget^=/system/priv-app/HtcDataRoamingWidget HtcHotspotWidget^=/system/priv-app/HtcHotspotWidget HtcBtWidget^=/system/priv-app/HtcBtWidget HtcCalendarWidgets^=/system/priv-app/HtcCalendarWidgets HtcContactWidgets^=/system/priv-app/HtcContactWidgets HtcFMRadioWidget^=/system/priv-app/HtcFMRadioWidget FM_Radio^=/system/priv-app/FM_Radio PNSClient^=/system/priv-app/PNSClient Plurk^=/system/priv-app/Plurk PolarisOffice^=/system/priv-app/PolarisOffice Updater^=/system/priv-app/Updater LauncherUpdateScreen^=/system/priv-app/LauncherUpdateScreen GoogleFeedback^=/system/priv-app/GoogleFeedback Community^=/system/priv-app/Community HtcWiFiWidget^=/system/priv-app/HtcWiFiWidget Mail^=/system/priv-app/Mail HtcContactsDialer^=/system/priv-app/HtcContactsDialer HTCAdvantage^=/system/priv-app/HTCAdvantage HtcEPSLauncher^=/system/priv-app/HtcEPSLauncher Automotive_Home^=/system/priv-app/Automotive_Home HtcMobileNetworkWidget^=/system/priv-app/HtcMobileNetworkWidget HtcMusicWidget^=/system/priv-app/HtcMusicWidget Message^=/system/priv-app/Message Browser^=/system/priv-app/Browser HtcDotMatrix^=/system/priv-app/HtcDotMatrix Calendar^=/system/priv-app/Calendar CalendarProvider^=/system/priv-app/CalendarProvider Photos^=/system/priv-app/Photos HTCCN_Weibo^=/system/priv-app/HTCCN_Weibo Twitter^=/system/priv-app/Twitter LinkedIn_Fsplugin^=/system/priv-app/LinkedIn_Fsplugin Instagram_SN_Plugin^=/system/priv-app/Instagram_SN_Plugin GooglePlusPlugin^=/system/priv-app/GooglePlusPlugin Facebook^=/system/priv-app/Facebook HMS_VideoPlayer^=/system/priv-app/HMS_VideoPlayer Automotive_Traffic^=/system/priv-app/Automotive_Traffic HTCMode^=/system/priv-app/HTCMode HtcModeClient^=/system/priv-app/HtcModeClient HtcSimpleLauncher^=/system/priv-app/HtcSimpleLauncher Sina_Weibo_FSPlugin^=/system/priv-app/Sina_Weibo_FSPlugin MmsService^=/system/priv-app/MmsService MyDropbox^=/system/priv-app/MyDropbox Tips_Help^=/system/priv-app/Tips_Help HtcBrowserProxyProvider^=/system/priv-app/HtcBrowserProxyProvider CallLogProvider^=/system/priv-app/CallLogProvider Velvet^=/system/priv-app/Velvet iCloudTransfer^=/system/priv-app/iCloudTransfer AMapNetworkLocation^=/system/priv-app/AMapNetworkLocation HTC_LocationServicesSetting^=/system/priv-app/HTC_LocationServicesSetting VoiceDictationGlobal^=/system/priv-app/VoiceDictationGlobal Telephony^=/system/priv-app/Telephony Telecomm^=/system/priv-app/Telecomm HtcLocationService^=/system/priv-app/HtcLocationService AndroidHtcSync^=/system/priv-app/AndroidHtcSync NeroHTCInstaller^=/system/priv-app/NeroHTCInstaller HtcMediaUploader^=/system/priv-app/HtcMediaUploader HtcMessageUploader^=/system/priv-app/HtcMessageUploader Stock^=/system/priv-app/Stock HtcRingtoneTrimmer^=/system/priv-app/HtcRingtoneTrimmer InCallUI^=/system/priv-app/InCallUI MirrorLink_MirrorLinkService^=/system/priv-app/MirrorLink_MirrorLinkService 途中發生重開機後,日曆停止運作的狀況,原來是日曆安裝了更新,進應用程式管理把更新移除,APP就會被清理乾淨,消失了。 圖的左半邊則是大幅瘦身後的留念XD開機超快,不過發現一些基本的功能,如看個照片也沒辦法,就又重弄了。 另外要注意Debloater雖然有回復APP的選項,但不太可靠,試了好幾次都沒有完全回復。真的誤砍了或發生問題,要用partition回復,所以第一步才強調要備份整個硬碟分割區。 減法到一個段落,再來換加法。 有些好用的APP並沒有在GooglePlay上架,如訂票官方APP「中國鐵路12306」,因此來裝大陸地區常用的應用程式商店吧~ 參考了:IT資訊快報,〈2019安卓應用市場排行榜Top10 〉,《搜狐》,2019年4月22日。 前10大使用率依序是: 應用寶 360手機助手 OPPO應用商店 華為應用市場 VIVO應用商店 小米應用商店 阿里雲應用商店 樂趣市場 百度手機助手 安智市場 可發現APP商店市場份額被軟體公司,騰訊(應用寶)、阿里巴巴、百度、360,與硬體公司華為、小米、OPPO、VIVO,兩類給瓜分了。 當然在Google Play Store上是找不到這些第三方應用商店的,只好自己上網找...但後來發現有些網頁上下載下來是假的-.-下載後市其他的東西,不如先下載其中一個應用商店,再進去找其他的應用商店。 不過...最後,我連Google Play Store在內的所有應用商店都給它「停用」了!為什麼?因為它們一直掃描記憶體,和你說oxAPP該更新了,還跳出記憶體清理等自動附帶砍不掉的程式=.=...真的是各山頭再打架,開機進畫面後整個頓卡,索性通通停用,不是移除,要下載APP時再啟用,果然手機運行起來就順多了。 順道一提 Q:為什麼我們用的Google Play Store不再名單上? A:原來是Google Play Store從Android Market進化後需要Google Services也就是Google服務框架才能正常使用,但因為政治因素,中共對網路的控制,使得Google Services即使可用也沒那麼好用(精確、穩定),加上Play Store的APP會被屏蔽。 總結 以上防禦技術性的手段再搭配幾點使用習慣,只要你不是被鎖定追蹤,防禦門檻將會比平均值高很多了。 不要亂放手機、借人,讓自己看的到摸的到。 避免和電腦設備有USB接觸。真的有資料要回傳平常用的設備,可用藍芽。非必要一定得回傳但又需要保備份存,可找大陸的雲端服務放。 每次入境前先備份整個Partition,回台灣後再還原整個Partition。md5認證都要做,它會確認檔案有無變動過。 最後幾點體會觀察: 原本這隻手機就有點小問題,剛開始是有時開不了機,開到一半卻shutdown、放影片會突然黑頻關機等,應該是電池的問題,因為接上充電線情況就減緩許多,清了幾次Partition、用了LKT,居然神奇的有改善!但後來還是把電池換掉了,除了放影片耗電量稍大外,以上症狀都沒有了。(測試蓄電量方法:少女心,〈HTC常見問題:【手機診療室】手機的蓄電量是否正常?!〉,《HTC論壇》,2015年8月24日。) 將系統語言由中文(繁體)換成中文(簡體),HTC sense input鍵盤輸入法會自動更動,原本English(US)、注音、手寫外,自動增加了拼音輸入法。但換系統語音成日文時,原本就沒有日文輸入法還是沒有~.~ 一是使用Google教育帳號做登入,因為設定受到網域管理者管控,每次重開機後使用APP都要重新授予權限,但不給權限APP又無法運作-.-,雖然要很多還是只能給了,暫時沒有解決方法能不給權限又能運作的....好吧,至少看到專用機實體隔離的成效... DNS和裝置偽裝是否真的能發揮功效,尚待方法來證實。 最終,也是搞了快一周┐(´д`)┌,接下來就準備出遊哈~實際實踐看看,等我心得吧!

本文由cloudlyliveblogspotcom提供 原文連結

寫了 5860316篇文章,獲得 23313次喜歡
精彩推薦