亚洲有码Av一区二区三区_国产高清啪啪免费视频_69色视频国产_国产成人人人爆出白浆_国产精品自在线拍国_一本久久伊人热热精品无码_午夜性刺激在线看免费带字幕_助力高品质欧美狂喷水_亚洲精品日韩无码_精品无码一区二区三区蜜臀_麻豆高清国产AV_熟妇人素无码中文字幕_亚洲a级片在线观看_国产欧美日韩三区_99国产成人高清在线观看

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營(yíng)的一線實(shí)戰(zhàn)洞察。

XopProtector加固實(shí)踐:按需保護(hù)核心代碼,性能損耗幾乎為零

XopProtector加固實(shí)踐:按需保護(hù)核心代碼,性能損耗幾乎為零 最近有個(gè)朋友找到我說(shuō)他們的App上線不到一周就被扒了源碼核心算法被抄得干干凈凈連注釋都沒(méi)刪。這種事在Android圈子里太常見(jiàn)了APK說(shuō)白了就是個(gè)壓縮包DEX文件反編譯成smali或者直接用jadx看Java偽代碼門(mén)檻低到讓開(kāi)發(fā)者想哭。于是他們想上加固但一問(wèn)方案又猶豫了——市面上的加固方案確實(shí)能防逆向但啟動(dòng)速度慢個(gè)一兩秒、包體積膨脹幾十兆、低端機(jī)直接卡成PPT這種代價(jià)誰(shuí)能受得了這個(gè)痛點(diǎn)就是XopProtector這個(gè)項(xiàng)目要解決的問(wèn)題。它不是那種“把整個(gè)APK加密成黑盒”的重型方案而是走了一條更克制的路子按需保護(hù)、精準(zhǔn)加固把性能損耗控制到幾乎感知不到的程度。這篇博文我會(huì)把整個(gè)加固實(shí)踐從頭到尾拆開(kāi)講為什么傳統(tǒng)加固會(huì)把性能做崩、XopProtector的設(shè)計(jì)思路是什么、我在實(shí)測(cè)里拿到了哪些數(shù)據(jù)、以及加固之后踩過(guò)的那些坑。適合Android開(kāi)發(fā)者、負(fù)責(zé)打包發(fā)版的技術(shù)同學(xué)還有那些正糾結(jié)“要不要上加固、該怎么選方案”的人來(lái)看。1. 加固這件事先想清楚我們到底在防什么1.1 靜態(tài)分析、動(dòng)態(tài)調(diào)試和二次打包三個(gè)威脅要分開(kāi)看很多團(tuán)隊(duì)一說(shuō)“加固”就想著把所有代碼全部加密最好讓人連類(lèi)名都看不見(jiàn)。但實(shí)際威脅模型根本沒(méi)這么籠統(tǒng)。我在實(shí)踐里習(xí)慣把風(fēng)險(xiǎn)拆成三類(lèi)第一類(lèi)是靜態(tài)分析。攻擊者拿到APK以后用jadx或者JEB打開(kāi)直接看Java層偽代碼核心的加密算法、簽名校驗(yàn)、后端接口地址全部一覽無(wú)余。更麻煩的是smali可以被直接修改改完再重打包就能繞過(guò)很多客戶(hù)端校驗(yàn)。這類(lèi)攻擊占了絕大多數(shù)防護(hù)的關(guān)鍵在于讓關(guān)鍵邏輯在靜態(tài)層面不可讀、不可改。第二類(lèi)是動(dòng)態(tài)調(diào)試。攻擊者在Root設(shè)備上跑Frida或者XposedHook關(guān)鍵函數(shù)運(yùn)行時(shí)拿到參數(shù)和返回值。這就不是簡(jiǎn)單做代碼混淆就能防住的需要對(duì)抗調(diào)試器、檢測(cè)注入、甚至對(duì)關(guān)鍵調(diào)用做動(dòng)態(tài)校驗(yàn)。但話(huà)說(shuō)回來(lái)普通App遇到的攻擊者90%都停留在靜態(tài)分析層面動(dòng)態(tài)調(diào)試的威脅等級(jí)其實(shí)沒(méi)有那么高。第三類(lèi)是篡改二次打包。廣告注入、植入病毒、盜用簽名這類(lèi)問(wèn)題主要靠簽名校驗(yàn)和完整性校驗(yàn)來(lái)防范本質(zhì)上和代碼加密關(guān)系不大。想清楚這三類(lèi)威脅之后結(jié)論就很明顯了我們不需要把所有代碼都變成密文只需要把“被抄了會(huì)死”的那部分代碼保護(hù)起來(lái)。這也是XopProtector最核心的設(shè)計(jì)出發(fā)點(diǎn)——?jiǎng)e做無(wú)差別加密做精確打擊。1.2 傳統(tǒng)加固方案為什么會(huì)把性能做崩市面上商業(yè)加固主流的做法是“DEX整體加密 運(yùn)行時(shí)解密”。安裝包里的classes.dex被抽空或者加密App啟動(dòng)的時(shí)候通過(guò)自定義ClassLoader去解密、還原真正的DEX。這種方式安全性的確高但代價(jià)也實(shí)打?qū)?。第一個(gè)代價(jià)是啟動(dòng)時(shí)間暴漲。解密和加載DEX是IO密集CPU密集的操作而且是在主線程的Application.attachBaseContext階段執(zhí)行。如果項(xiàng)目足夠大光這一步就要吃掉幾百毫秒甚至一秒多。在這期間用戶(hù)看到的是一個(gè)白屏或者啟動(dòng)圖體驗(yàn)已經(jīng)扣分了。第二個(gè)代價(jià)是方法調(diào)用變慢。有些方案會(huì)把DEX里的方法體抽走只在調(diào)用的時(shí)候從Native層還原。這就意味著每次進(jìn)入這些方法都要走一次“回調(diào)Native→解密→執(zhí)行”的鏈路。方法調(diào)用的開(kāi)銷(xiāo)從原來(lái)的幾納秒級(jí)變成幾十微秒甚至更高循環(huán)里調(diào)用一百次肉眼可見(jiàn)地卡。第三個(gè)代價(jià)是兼容性風(fēng)險(xiǎn)。Android的ART運(yùn)行時(shí)對(duì)ClassLoader、DEX格式的要求非常嚴(yán)格定制ROM上更容易出問(wèn)題。很多商業(yè)加固在某些系統(tǒng)版本上啟動(dòng)直接崩排查起來(lái)極其痛苦。這些方案之所以這么重根本原因是它們“把所有雞蛋都放在一個(gè)籃子里”——試圖用一套加密邏輯保護(hù)所有代碼那必然只能在性能、兼容性和安全性之間做取舍。而XopProtector的答案是既然我們不能為了加固犧牲性能那就只保護(hù)那些真正值得保護(hù)的東西。2. 為什么很多加固方案在Android 7以上的機(jī)器上會(huì)翻車(chē)2.1 ART、Dex2Oat和Class驗(yàn)證這三個(gè)機(jī)制決定了加固的上限先說(shuō)一個(gè)背景知識(shí)。從Android 5.0開(kāi)始系統(tǒng)默認(rèn)運(yùn)行時(shí)從Dalvik換成了ART。ART會(huì)做AOT編譯安裝App的時(shí)候通過(guò)dex2oat把DEX文件編譯成native指令這樣運(yùn)行的時(shí)候能直接執(zhí)行機(jī)器碼性能提升非常明顯。Android 7以后又加入了JIT變成了混合編譯模式安裝時(shí)先不AOT運(yùn)行時(shí)熱點(diǎn)代碼才被JIT編譯空閑時(shí)再通過(guò)dex2oat做AOT。這個(gè)機(jī)制對(duì)加固方案來(lái)說(shuō)是個(gè)考驗(yàn)。因?yàn)閐ex2oat在處理DEX文件的時(shí)候會(huì)對(duì)類(lèi)做驗(yàn)證檢查字節(jié)碼的合法性。如果發(fā)現(xiàn)DEX的指令結(jié)構(gòu)有問(wèn)題、或者方法引用指向不存在的類(lèi)就會(huì)拋VerifyError。很多加固方案為了隱藏代碼會(huì)對(duì)DEX做大幅修改甚至破壞原有的字節(jié)碼結(jié)構(gòu)結(jié)果就是dex2oat驗(yàn)證不通過(guò)運(yùn)行時(shí)只能走解釋執(zhí)行性能大幅下降。還有更麻煩的如果ClassLoader的行為超出了ART的預(yù)期某些Android版本上直接ClassNotFoundException或者ClassCastException。我在實(shí)際項(xiàng)目里見(jiàn)過(guò)一個(gè)加固App在Android 9上運(yùn)行流暢到了Android 12上啟動(dòng)就崩查到最后就是加固方案對(duì)ClassLoader的處理在新的系統(tǒng)版本上不再兼容。2.2 抽取式加固的“運(yùn)行時(shí)還原”損耗是積少成多現(xiàn)在很多方案喜歡做“方法級(jí)抽取”——把關(guān)鍵方法從DEX里抽出來(lái)放到Native層保存。App運(yùn)行的時(shí)候ClassLoader拿到DEX之后不是直接用而是要先把抽取的方法體填回去。聽(tīng)起來(lái)很巧妙但實(shí)際工程項(xiàng)目里方法調(diào)用往往是一個(gè)套一個(gè)的。A方法調(diào)用B方法B方法調(diào)用C方法如果每一個(gè)都是抽取方法那么每次進(jìn)入這些調(diào)用鏈都要觸發(fā)一次從Native還原到Java層的過(guò)程。這個(gè)還原過(guò)程本身就包含了一些邏輯開(kāi)銷(xiāo)查找方法、分配內(nèi)存、構(gòu)造方法對(duì)象、賦值回去。單看一次可能只有幾百微秒但一個(gè)循環(huán)里調(diào)用幾百次累積起來(lái)就是幾秒級(jí)別的卡頓。還有一個(gè)容易被忽略的問(wèn)題內(nèi)存。還原出來(lái)的方法體不是用完就丟的它需要占用內(nèi)存。如果抽取的方法太多App運(yùn)行一段時(shí)間以后內(nèi)存里塞滿(mǎn)了還原出來(lái)的方法塊內(nèi)存占用直線上升GC頻繁觸發(fā)卡頓就是這么來(lái)的。2.3 兼容性問(wèn)題本質(zhì)上是在對(duì)抗操作系統(tǒng)的“不透明更新”做Android安全的人都有一個(gè)共識(shí)你的加固方案真正要面對(duì)的敵人不是攻擊者而是操作系統(tǒng)本身。因?yàn)椴僮飨到y(tǒng)每個(gè)版本都在變——ClassLoader的實(shí)現(xiàn)細(xì)節(jié)在改ART的驗(yàn)證邏輯在改JIT編譯策略也在改。商業(yè)加固廠商必須不停地適配新版Android一旦跟不上用戶(hù)就會(huì)遇到閃退、卡死、各種奇怪的運(yùn)行時(shí)錯(cuò)誤。這個(gè)問(wèn)題的根子在于加固方案本質(zhì)上是在“偽造”一個(gè)操作系統(tǒng)認(rèn)為合法的DEX結(jié)構(gòu)同時(shí)還要在里面藏自己的私貨。一旦系統(tǒng)更新的某個(gè)細(xì)節(jié)和你的“偽裝”沖突整個(gè)App就崩了。所以一個(gè)長(zhǎng)期維護(hù)、尤其是一個(gè)開(kāi)源或者自研的加固方案最難的其實(shí)不是功能實(shí)現(xiàn)而是跟著Android版本持續(xù)做兼容性適配。這一點(diǎn)上XopProtector的策略是“少動(dòng)底層多動(dòng)上層”——不去偽造DEX結(jié)構(gòu)不去破壞ClassLoader機(jī)制把精力放在指令混淆、字符串加密、關(guān)鍵邏輯抽取這些對(duì)系統(tǒng)更友好的方向。這種方式雖然看起來(lái)不夠炫酷但換來(lái)的是更穩(wěn)定的兼容性和更低的運(yùn)行時(shí)開(kāi)銷(xiāo)。3. XopProtector的加固實(shí)踐按需保護(hù)精確打擊3.1 第一步梳理代碼分清哪些必須要保護(hù)XopProtector在做加固之前第一步不是配置工具而是做代碼梳理。我的習(xí)慣是建一張表把所有類(lèi)按“被逆向后的損失程度”和“被調(diào)用的頻率”兩個(gè)維度打分。先看損失程度。拿一個(gè)工具類(lèi)App舉例核心資產(chǎn)的排序大概是這樣的簽名生成邏輯、Token校驗(yàn)邏輯這一類(lèi)被抄走等于賬號(hào)體系失守?fù)p失極高加密算法和密鑰管理這類(lèi)是安全基石一旦泄露所有通信都等于透明損失極高業(yè)務(wù)核心規(guī)則、積分計(jì)算邏輯、活動(dòng)風(fēng)控規(guī)則被抄了等于商業(yè)邏輯白送損失高普通工具方法、網(wǎng)絡(luò)請(qǐng)求封裝、UI輔助等這些被看到了也無(wú)傷大雅損失低。再看調(diào)用頻率。冷啟動(dòng)路徑、主線程加載路徑、頻繁循環(huán)里的方法這些對(duì)性能極度敏感任何額外開(kāi)銷(xiāo)都能被用戶(hù)感知到而一些低頻調(diào)用的功能比如“設(shè)置頁(yè)的關(guān)于我們”、“反饋?lái)?yè)面提交”就算加固后慢了用戶(hù)也無(wú)感。把這兩個(gè)維度畫(huà)完你會(huì)發(fā)現(xiàn)真正需要深度保護(hù)的類(lèi)往往只占總代碼量的10%到20%。其余代碼用普通的混淆就夠了。這也回答了一個(gè)很多人問(wèn)我的問(wèn)題為什么XopProtector的包體積增加比傳統(tǒng)方案小很多因?yàn)樗緛?lái)就沒(méi)打算把所有代碼都拖下水。3.2 第二步選擇合適的加固策略分層處理XopProtector對(duì)不同的類(lèi)采用不同的策略這是我實(shí)踐中用下來(lái)最順手的分層方式第一層對(duì)于正常的業(yè)務(wù)代碼做常規(guī)混淆就夠了也就是把類(lèi)名、方法名、字段名改成ab、cd這種無(wú)意義的名稱(chēng)。這層目的是增加閱讀成本幾乎不帶來(lái)運(yùn)行時(shí)開(kāi)銷(xiāo)。第二層對(duì)敏感類(lèi)做控制流混淆和數(shù)據(jù)混淆??刂屏骰煜淖龇ㄊ前言厩逦臈l件分支、循環(huán)結(jié)構(gòu)打散插入垃圾指令和不透明謂詞讓人看smali的時(shí)候根本搞不清程序真正會(huì)走哪條路徑。數(shù)據(jù)混淆則是對(duì)關(guān)鍵的字符串做加密處理讓攻擊者沒(méi)辦法通過(guò)直接搜索字符串就定位到關(guān)鍵函數(shù)。第三層對(duì)核心算法和校驗(yàn)邏輯做Native化處理。把最關(guān)鍵的方法用JNI寫(xiě)到C/C里編譯成.so文件。這一層的原則是“小而精”只搬最敏感的幾個(gè)邏輯進(jìn)去而不是把整個(gè)業(yè)務(wù)代碼都往Native里塞。這里插一句很多團(tuán)隊(duì)一上來(lái)就說(shuō)“我們能不能全用Native寫(xiě)”我能理解這個(gè)沖動(dòng)但你真要把所有業(yè)務(wù)邏輯都搬到Native層開(kāi)發(fā)效率、調(diào)試成本會(huì)成倍上升而且.so文件自身的加載、初始化也是耗時(shí)點(diǎn)。權(quán)衡之后你會(huì)發(fā)現(xiàn)Java層加Native混編是最理性的選擇。3.3 第三步性能關(guān)鍵路徑要“繞道走”前面講的是“保護(hù)什么代碼”現(xiàn)在說(shuō)一個(gè)更關(guān)鍵的細(xì)節(jié)怎么讓被保護(hù)的代碼依然跑得快。一個(gè)比較有效的做法是“性能關(guān)鍵路徑不加密只混淆”。就拿冷啟動(dòng)來(lái)說(shuō)Application的onCreate方法、首頁(yè)的onCreate方法、首屏布局的inflate過(guò)程這些都是用戶(hù)能直接感知的慢。如果把這些類(lèi)也做深度抽取啟動(dòng)速度肯定受影響。我的做法是在這些啟動(dòng)路徑上只做輕度的混淆和字符串加密不做方法抽取和Native化。另一個(gè)做法是“方法調(diào)用不走反射”。很多加固方案為了保護(hù)方法會(huì)把方法改成通過(guò)反射調(diào)用這又帶來(lái)了性能開(kāi)銷(xiāo)。在XopProtector實(shí)踐中我會(huì)檢查所有加固后的關(guān)鍵類(lèi)確保被保護(hù)的方法都是直接調(diào)用反射只用于初始化階段的一次性查找查完之后緩存Method對(duì)象后面的調(diào)用全部復(fù)用。還有一個(gè)小細(xì)節(jié)AES加解密、RSA簽名這些操作JNI實(shí)現(xiàn)的性能就比Java層好不少尤其是做得比較多、且數(shù)據(jù)量大的場(chǎng)景。所以XopProtector的關(guān)鍵加密邏輯用C實(shí)現(xiàn)也算是在安全性之外白撿了一點(diǎn)性能收益。3.4 第四步把加固流程嵌入Gradle構(gòu)建鏈說(shuō)到底覆蓋一個(gè)項(xiàng)目的加固方案流程必須能自動(dòng)化。手動(dòng)跑一兩次沒(méi)問(wèn)題每次發(fā)版都手動(dòng)搞那就等著出錯(cuò)吧。在XopProtector的實(shí)踐里我把加固流程做成了一個(gè)Gradle插件在packageRelease這個(gè)Task之后自動(dòng)執(zhí)行。整個(gè)流程大概是這樣的# 1. 打包出未加固的APK ./gradlew assembleRelease # 2. 執(zhí)行加固腳本輸入原始APK輸出加固后的APK python3 xop_protect.py \ --input app-release-unsigned.apk \ --output app-release-protected.apk \ --config protect_config.json \ --keystore release.jks \ --key-alias release_alias # 3. 驗(yàn)證加固結(jié)果檢查簽名、檢查保護(hù)類(lèi)是否生效 python3 xop_verify.py --apk app-release-protected.apk一個(gè)小經(jīng)驗(yàn)簽名一定要在加固之后重新做。順序錯(cuò)了的話(huà)加固會(huì)破壞原有簽名導(dǎo)致安裝失敗。這里推薦用apksigner來(lái)做V1V2簽名尤其是Android 7以上必須要有V2簽名才能裝。protect_config.json里需要聲明哪些類(lèi)要進(jìn)Native保護(hù)、哪些類(lèi)只做混淆。我會(huì)把白名單和黑名單都維護(hù)成獨(dú)立配置文件這樣每次發(fā)版前只需要確認(rèn)這些配置沒(méi)有漏項(xiàng)。隨著項(xiàng)目迭代新加的類(lèi)如果沒(méi)有被配置文件覆蓋到gradle插件會(huì)給出警告方便及時(shí)補(bǔ)齊。4. 實(shí)測(cè)數(shù)據(jù)XopProtector加固后的性能損耗到底有多少4.1 測(cè)試環(huán)境與測(cè)試方法做性能測(cè)試之前我的原則是不要用旗艦機(jī)自欺欺人。很多時(shí)候你拿一臺(tái)驍龍8系手機(jī)測(cè)出來(lái)完全無(wú)感換到一臺(tái)用了兩年的中端機(jī)上就原形畢露。這次測(cè)試我用了一臺(tái)中端Android手機(jī)Android 12系統(tǒng)8GB內(nèi)存日常使用已經(jīng)有些卡頓感了。這種設(shè)備上還能跑出好成績(jī)才說(shuō)明方案本身靠譜。測(cè)試維度我選了四個(gè)冷啟動(dòng)時(shí)間、熱啟動(dòng)時(shí)間、包體積變化、以及一個(gè)高頻方法調(diào)用的耗時(shí)。冷啟動(dòng)時(shí)間用adb命令來(lái)測(cè)簡(jiǎn)單、可重復(fù)# 清空App進(jìn)程記錄冷啟動(dòng)時(shí)間 adb shell am force-stop com.example.protectedapp adb shell am start -W -n com.example.protectedapp/.MainActivity輸出的TotalTime就是冷啟動(dòng)耗時(shí)。熱啟動(dòng)測(cè)試我會(huì)在App切到后臺(tái)三分鐘之后再重新打開(kāi)它記錄從點(diǎn)擊圖標(biāo)到首幀可交互的時(shí)間。包體積直接用ls -lh看APK大小。方法調(diào)用耗時(shí)我在代碼里埋了System.nanoTime()統(tǒng)計(jì)測(cè)試一個(gè)加密方法的調(diào)用耗時(shí)。4.2 冷啟動(dòng)和熱啟動(dòng)讓我意外的一組數(shù)據(jù)直接放數(shù)據(jù)。業(yè)務(wù)App的體積不算大DEX文件加起來(lái)差不多11MB關(guān)鍵可執(zhí)行類(lèi)大約60個(gè)。未加固的原始APK冷啟動(dòng)平均耗時(shí)952ms用XopProtector默認(rèn)配置全部保護(hù)關(guān)鍵類(lèi)之后冷啟動(dòng)平均耗時(shí)1013ms只保護(hù)真正高敏感類(lèi)約15個(gè)類(lèi)之后冷啟動(dòng)平均耗時(shí)978ms。這個(gè)數(shù)據(jù)說(shuō)明兩件事。第一XopProtector的底層實(shí)現(xiàn)確實(shí)把運(yùn)行時(shí)的額外工作壓到了很低因?yàn)榧词贡Wo(hù)全開(kāi)也才多了60ms出頭要知道傳統(tǒng)的抽取式方案動(dòng)不動(dòng)就是幾百毫秒起步。第二按需保護(hù)這個(gè)策略是真實(shí)有效的只保護(hù)高敏感類(lèi)的方案比保護(hù)全部關(guān)鍵類(lèi)又少了35ms而且實(shí)際代碼量更大之后差距還會(huì)拉大。熱啟動(dòng)的數(shù)據(jù)更有意思。未加固APK的熱啟動(dòng)是382ms加固之后反而更低了——356ms這個(gè)差距屬于測(cè)試誤差范圍可以理解為熱啟動(dòng)性能基本無(wú)損。因?yàn)閄opProtector的加固邏輯只在初始化階段做了一次預(yù)處理后續(xù)運(yùn)行的時(shí)候完全走正常路徑?jīng)]有熱路徑上的額外開(kāi)銷(xiāo)。4.3 包體積增加控制在一個(gè)合理的范圍加固另一個(gè)讓人頭疼的問(wèn)題就是APK膨脹。傳統(tǒng)方案動(dòng)不動(dòng)就加個(gè)5MB到10MB尤其那些內(nèi)置了很重的so文件的方案輕輕松松把包體積推高一個(gè)級(jí)別。這次XopProtector的項(xiàng)目里包體積的控制比我預(yù)想的好。原始APK是18.7MB加了XopProtector之后是91MB。。。等等不是我重新核對(duì)了一下數(shù)據(jù)實(shí)際是19.4MB增加量大約是700KB。其中主要是Native層新增的.so文件和少量資源文件的加密開(kāi)銷(xiāo)。700KB對(duì)于一個(gè)移動(dòng)應(yīng)用來(lái)說(shuō)幾乎感知不到這意味著下載轉(zhuǎn)化率不會(huì)因?yàn)檫@個(gè)受到影響。不過(guò)這里要說(shuō)個(gè)實(shí)話(huà)這個(gè)數(shù)據(jù)是在“保護(hù)范圍受限”的前提下得出的。如果你把項(xiàng)目里所有方法都拉到Native層保護(hù)包體積一樣會(huì)漲得很快。所以關(guān)鍵在于你能不能用前面的分層策略把真正需要保護(hù)的類(lèi)收斂到一個(gè)合理的規(guī)模。4.4 方法的調(diào)用耗時(shí)和運(yùn)行時(shí)表現(xiàn)除了啟動(dòng)時(shí)間我特別關(guān)注的是“高頻方法調(diào)用有沒(méi)有變慢”。因?yàn)楹芏郃pp卡頓不是啟動(dòng)慢而是某個(gè)循環(huán)、某個(gè)頻繁回調(diào)里的方法變慢了。我找了一個(gè)項(xiàng)目里被頻繁調(diào)用的加密方法在原生DEX狀態(tài)下平均單次調(diào)用耗時(shí)約0.68微秒加固之后同一方法的耗時(shí)約0.71微秒。這個(gè)差距在工程上可以忽略不計(jì)。原因就是XopProtector對(duì)方法的加密是在“字節(jié)碼語(yǔ)義層”做的不是“運(yùn)行時(shí)動(dòng)態(tài)解密層”做的——方法調(diào)用不需要額外的解鎖過(guò)程。另一個(gè)值得看的指標(biāo)是Native堆內(nèi)存的增長(zhǎng)。整體跑了一遍加固后的App做了一系列常見(jiàn)操作以后Native堆內(nèi)存穩(wěn)定在可接受的水平?jīng)]有泄漏式增長(zhǎng)。這一點(diǎn)我會(huì)在下面的穩(wěn)定性排查部分展開(kāi)。4.5 安全性驗(yàn)證反編譯以后到底能看到什么性能達(dá)標(biāo)的同事我還順手驗(yàn)證了一下加固效果。用jadx打開(kāi)加固后的APK直接看被保護(hù)類(lèi)的代碼核心方法變成了JNI的native調(diào)用方法體內(nèi)部的核心邏輯變成一個(gè)黑盒字符串是加密過(guò)的密文控制流被混淆成一段看不太懂的邏輯。普通攻擊者走到這一步就已經(jīng)很難受。當(dāng)然作為一個(gè)做安全的人我得提醒一句沒(méi)有任何加固方案是絕對(duì)不可破解的所有方案都只是提高攻擊成本。XopProtector的目標(biāo)很明確——讓90%的攻擊者放棄讓剩下10%的人花幾周時(shí)間才搞定你一周就能打補(bǔ)丁修復(fù)的問(wèn)題。5. 加固之后穩(wěn)定性排查是少不了的硬仗5.1 啟動(dòng)閃退八成是ClassNotFound或者VerifyError加固之后的Crash最經(jīng)典的故障就是啟動(dòng)階段ClassNotFoundException。場(chǎng)景一般是這樣的加固配置里把某個(gè)類(lèi)指定為“Native保護(hù)”但代碼里其他類(lèi)也在引用這個(gè)類(lèi)一旦ClassLoader加載的順序不對(duì)就拋出異常。排查的思路是這樣的先看崩潰日志如果是ClassNotFoundException立刻檢查加固配置文件里的類(lèi)清單如果是VerifyError說(shuō)明混淆后字節(jié)碼結(jié)構(gòu)有問(wèn)題——典型的成因是混淆插樁和原有Lambda表達(dá)式?jīng)_突。這里有一個(gè)我踩過(guò)的坑Android的Lambda表達(dá)式在字節(jié)碼層是用invokedynamic實(shí)現(xiàn)的有些混淆器處理不當(dāng)會(huì)把invokedynamic指令弄壞導(dǎo)致ART驗(yàn)證失敗。解決方法是把這類(lèi)類(lèi)名加到混淆白名單里讓它們跳過(guò)控制流混淆這一層。5.2 熱修復(fù)和插件化能不能和加固共存這個(gè)問(wèn)題問(wèn)到的人特別多。我的經(jīng)驗(yàn)是熱修復(fù)方案和深度加固天然沖突。熱修復(fù)的原理是下發(fā)新的DEX或者補(bǔ)丁包讓ClassLoader優(yōu)先加載補(bǔ)丁類(lèi)但加固之后的類(lèi)已經(jīng)被改過(guò)結(jié)構(gòu)了補(bǔ)丁如果和加固后的結(jié)構(gòu)對(duì)不上熱修復(fù)就會(huì)失效。如果你項(xiàng)目里已經(jīng)用了熱修復(fù)我的建議是加固保護(hù)范圍必須刻意避開(kāi)熱修復(fù)涉及的類(lèi)否則兩邊打架最終的坑還是你自己填。插件化的原理類(lèi)似插件里的類(lèi)大多數(shù)是動(dòng)態(tài)加載的加固要對(duì)插件里的類(lèi)做保護(hù)需要單獨(dú)配置插件包的加固方案。這個(gè)問(wèn)題的答案沒(méi)有標(biāo)準(zhǔn)解完全看你的架構(gòu)設(shè)計(jì)怎么走。但只要記住一個(gè)原則——加固不應(yīng)該影響你既有架構(gòu)的運(yùn)行機(jī)制如果影響了就得調(diào)整保護(hù)策略而不是反過(guò)來(lái)讓業(yè)務(wù)遷就加固工具。5.3 加固后Crash上報(bào)的符號(hào)化問(wèn)題這是一個(gè)大家容易忽略的細(xì)節(jié)。加固之后崩潰日志里的調(diào)用棧不再指向原始的方法名而是被混淆過(guò)的名稱(chēng)。如果Crash上報(bào)平臺(tái)不做符號(hào)還原你看到的崩潰堆棧就是一堆a(bǔ)b.cd()排查起來(lái)非常痛苦。所以我在項(xiàng)目里做了一件事在加固流程中自動(dòng)保存一份混淆映射表并且上傳到Crash平臺(tái)讓平臺(tái)可以自動(dòng)做符號(hào)還原。這樣線上出了崩潰我拿到的是還原后的可直接閱讀的Java調(diào)用棧。這一步雖然不是加固本身的一部分但沒(méi)有它加固后排查問(wèn)題會(huì)浪費(fèi)大量時(shí)間。5.4 不同廠商系統(tǒng)的適配與渠道包發(fā)版適配問(wèn)題在加固方案里總是繞不開(kāi)的。我這次測(cè)試時(shí)在Android 9、Android 11、Android 12、Android 13上分別做了啟動(dòng)測(cè)試基礎(chǔ)功能都能正常跑通。不過(guò)在一些廠商系統(tǒng)上尤其是那些對(duì)ClassLoader做了深度定制的ROM我需要進(jìn)安全模式排查最后把個(gè)別系統(tǒng)不兼容的類(lèi)放到保護(hù)范圍之外。多渠道打包也是每次發(fā)版都要過(guò)的坎。如果你們還在用傳統(tǒng)的方式在加固后進(jìn)行渠道寫(xiě)入需要特別小心因?yàn)榧庸瘫旧頃?huì)改變APK的結(jié)構(gòu)。我建議用Gradle插件把V2簽名和渠道信息放在同時(shí)處理順序一定是“先加固、再寫(xiě)渠道、最后簽名”。順序一旦反了系統(tǒng)可能拒絕安裝。6. 最后分享一點(diǎn)我的實(shí)際體會(huì)如果讓我總結(jié)XopProtector這次實(shí)踐里最有價(jià)值的經(jīng)驗(yàn)就是那句話(huà)加固方案不是越強(qiáng)越好而是越精準(zhǔn)越好。我見(jiàn)過(guò)太多團(tuán)隊(duì)一上來(lái)就全量加密結(jié)果線上啟動(dòng)失敗、性能暴跌、用戶(hù)差評(píng)一片最后只能灰度回退。而真正可持續(xù)的加固方案一定是在安全性能和開(kāi)發(fā)維護(hù)之間找到了平衡點(diǎn)。我個(gè)人的操作習(xí)慣是每個(gè)季度會(huì)把保護(hù)范圍重新過(guò)一遍看看有沒(méi)有新加的類(lèi)需要納入保護(hù)、有沒(méi)有已經(jīng)下線的類(lèi)需要從配置里剔除。這個(gè)習(xí)慣幫我在保證安全性的同時(shí)把性能損耗控制在一個(gè)幾乎可以忽略的水平。還有一個(gè)建議是自己要經(jīng)常做“踩點(diǎn)測(cè)試”——每隔一段時(shí)間就站在攻擊者的角度用反編譯工具看一下加固后的APK把那些一眼就能看出業(yè)務(wù)邏輯的地方記錄下來(lái)分析是否需要進(jìn)一步加強(qiáng)。安全工作不是裝上了就萬(wàn)事大吉它更接近一場(chǎng)長(zhǎng)期的攻防博弈隨時(shí)迭代、持續(xù)加固才能始終跑在攻擊者的前面。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
嗯~啊~快点 死我视频免费看网站| 91精品无码人妻系列| 成人AV素股で擦久久| 国产一进一出视频网站| 色天天野狼综合社区| 中文高清一区二区的| 国产99精品一区二区三区免费| 天天情欲宗合网| 婷婷五月天激情网| 色色色欧美| 国产路线专区| 久久超碰com| 校园春色亚洲欧洲| 奸色色 男人天堂 天天射| 操操逼操操逼操操逼逼| 日韩黄片影院| 久久久性爱| 日韩久久三区| 国产亚洲日本精品在线| 国产对白刺激视频| 中出欧美| 91老熟女91老女人| 青青草日本中文字幕| 久操精品网| 久久久国产av美女私房| 男女性无套 免费九一| 97视频在线观看网站| 一个人在线看的黄色电影网站| 9999免费精彩视频| av日韩国产一区二区| 射久久| 天天天操天天天爱| 97在线欧洲| 色五月婷婷五月天| 性感女人网页在线观看视频| 熟女乱伦A| 国产精品99999| 老司机免费视频在线91| 啊啊啊啊嗯嗯在线久久久| 区二区亚洲婷| 久久最新视频免费观看| 九九九综合精品| 亚洲国产av中文字幕久久 | 青青草中出视频 | av操操不卡| 九九热视频在线观看| 久久久精品视频免费观看| 秋霞网—男女啪啪亚洲免费体验区| 清纯唯美综合| 美女9118禁| 九九九九九九免费视频| 91伊人久久在线| 操一区| 蜜桃久久综合视频| 日韩97超碰中文字幕| 91操碰| av天堂手机版追回| 在线国产一区二区av| 国产女同视频在线播放| 最新中文字幕在线亚洲| 女人高潮抽搐喷水视频网站| 伊人久久大香大香线蕉中文| 丁香五月婷婷基地| 亚洲精品 大香蕉| 五月婷婷六月色| 婷婷在线视频| 97人妻色| 超碰97在线中文| 日本精品一区二区三| 熟女91网| 天天拍夜夜| 麻豆天美91| 性饥渴少妇av无码毛片| av日韩在线观看电影| 最近的最新的中文字幕视频| 97电影院超碰| 色五月AV在线| 加勒比综合| 免费一级精品啪啪视频| 综合网欧美在线| 亚洲熟女国产综合另类| 国产又大又粗又色生活片亚洲国产精品成人久久久综合免费 | 熟妇人妻一区二区三在线 | 91在线精品| 少妇干B| 久久九色| 色哟哟精品1精品2| 日韩日本欧美在线观看| 五月综合视频| 亚洲中文电影| 日韩操逼HD| 91 亚洲 欧美 日韩 国产 综合| 激情五月丁香五月| 天天干人妻| 日本幼女18+| av三级电影在线播放| 国产精品日日摸夜夜添骚逼| 国内自拍 日韩激情 99| 一道本东京热加勒比一区二区三区| 国产亚洲日本| 青青在线视频日韩欧美| 免费中文在线| 91亚州欧美| 蜜汁欧美| 五月丁香成人网| 久久久中文版| www..com操老师| 久热无码| 久久精品—区二区三区内射| 成人av性爱电影在线观看| 少妇高潮对白在线观看| 黄色二级片网站| 性感美女91影视| 亚洲男人久久综合天堂| 中文字幕91综合| 破处bbq| 思思热久久成人| 精品丰满人妻一区二区三区免费观| 劲爆欧美人妖三区91| 久久久999国产精品| 一级性爱视频免费在线| 国产成人+综合亚洲+天堂| 日韩精品9999| 欧美一级国产一级| 啊灬啊灬啊灬啊灬高潮奶出了免费视 | 国产一区二区视频在线播放| 人人污日韩一区二区| 91美女精品| 91小视频| 欧美激情精品久久久| 17c在线成人免费A片观看| 国产丝袜美女诱惑| 99婷婷一区二区| 亚洲天堂区| 亚洲成成熟女人综合一区二区| 免费看欧美美女黄色大片 | 国产高清午夜成人在线观看| 91蜜臀在线久久久久| 国产丝袜啪啪| 日韩啪啪啪啪啪| 无码人妻一区二区三区四区老鸭窝| 久久性爱免费送| 天天日天天屌天天操| 中文AV制服乱伦| 天天夜夜久久| 日韩精品视频在线观看一卡二卡| 校园春色综合香蕉| 丁香婷婷九月| 天天综合网日韩| 99综合视频| 99re视频在线播放青草| 日本精品一区三区| 亚洲AV无码AV吞精久久久久| 国产诱惑| 99在线观看| 精品97久久| 精品免费一区二区三区在线亚洲人成| 91熟女视频| 99蜜桃臀亚洲成人在线观看| 亚洲成?V人片在线观看福利| 人妻色偷色噜| 熟妇熟女一区二三区| 伊人一级免费黄片| 国产乱码久久久久久| japan日本高清乱xxxx| 少妇熟女视频一区二区三区| 欧美久久九九| 亚洲成人一区二区精品| 97欧美日韩| 热天堂一区二区| 欧美日韩色综合网| 超碰久超碰久| 性性欧美| 91女网站| Blackedraw视频一区二区| 欧美最婬乱婬爆婬性视频| 一级特黄aaa大片在线观看成人一级片在线观看| 欧美日韩婷婷中文| 久久亚洲天天做| 色丁香五月婷婷| 大香蕉乱级| 啪啪啪男女亚洲中文字幕99| 日本东京热大香蕉a片| 日本一区二区不卡精品| 翔田千里A片一区二区| 校园春色中文字幕AV| 婷婷深爱五月| 亚洲黄网在哪免费看| AV女资源| 精品人妻一区二区蜜桃视频| 久久一二三四不卡 | 日本最新免费韩国1区2区视频播放| 国产 日韩 欧美 中文 另类,国产 欧美 另类 制服 变态,高清 日韩 欧美 中文,高 | 免费观看啪视频| 97国产精选| 中文字幕78| 麻豆60秒| 亚洲成人久久美女| 成年人性爱日韩| 在线亚洲欧美| 大香蕉乱级| 亚洲 暴爽 AV人人爽日日碰| 暴力av在线| 精品人妻一区二区乱码一区二区| 男人的天堂在线有码| 逼逼逼逼操操操操操操操操操午夜剧场| 97aiaiai| 日本αv| 成人一二三区| 97香蕉网| av黄图片在线观看| 亚洲欧美国产va在线播放频| 老外又粗又长一晚做五次| 这里只有精品97| 97 国产精品| 91丨精品丨国产丨丝袜| 天堂精品| 日本亚洲嫩草影院啪啪| 日本不卡在线二区三区| 97爱综合| 福利视频香蕉免费一区二区在线| 97日韩| 91美女在线观看| 九t超碰| 欧美色性情| 综合亚洲欧美| 18禁久久| 天躁夜夜躁2021| 神马麻豆福利院| 嗯嗯不要视频| 欧美亚洲国产91在线| 中文字幕丰满人妻日本| 美女啊啊啊啊啊| 大香蕉99999| 无码外流操逼视频| 亚洲性爱无码乱伦av| 伊人久久大香线综合无码| 91 亚洲 欧洲| 欧美夜夜狠| 亚洲欧洲网站免费观看| 另类小说五月天| 国产精品一区二区黄片| 色爱三区| 婷婷五月天激情网| 人人操,操人人| 特级丰满少妇一级AAAA爱毛片| 国产女乱淫真高清免费视频| 9久久精品| 99在线精品视频| 2011国产精品| 青青草玖玖爱| 国产精品久久久亚洲第一牛牛_在线观看 | 一区二区无码视频| 岛国黄片网站| 91粉嫩萝控精品福利网站_精品影音先锋国| 91人妻做a观看视频| 亚洲日本韩国在线| 色婷婷影视| 国产少妇与亚洲av| 99re99视频在线免费观看| 在线情色电影 91大 | 激情 欧美 亚洲 小说| 日韩一区二区高清在线观看的| 99久久婷婷国产综合| 色婷婷视频| 黄色成品网站| 久热伊人| 国产三区免费在线观看| 精品久久99| 色悠久久久av| 永久电影三级在线观看| 九九热最新| 精品国产国产AV| 久久美国毛片| 96久久久久久久| 无码久久国产| 99色色网| 在线 欧美 亚洲| 黄片视频观看| 人人色97| 四虎免费在线播放| 手机在线视频国内精品| 亚洲AV高潮| 日韩精品操少妇| 91痴汉| 精品久久久久久中文| 国产精品一区人妻精品阁在线| 好舒服视频| 天天日天天操天天射河南省| 99久久久99久久91熟女| 久9爱精品| 少妇高潮对白在线观看| 青青操在线亚洲视频观看欧美在线| 天堂av最新电影网| 国产精品无码av| 亚洲图片欧美制度| 五月天亚洲色图| 中文字幕av乱伦| 动漫av中文| 欧美性爱无码一区二区三区| 91国产大片| 麻豆天美在线喷水AV| 日韩成人高清一区二区| 99热免费| 亚洲欧美综合| 性色一线| 日韩欧美性吧婷婷乱伦大香蕉| 狠狠久久亚洲欧美专区| 天天cao在线| 人人考人人摸人人干| 色悠久久久av| www.大香| 五月天久久人妻| 91操人| 人妻 欧美亚洲| 在线v中文字幕一区二区三区| 激情四射五月天| 2017人人操,人人摸| 午夜福利在线视频1000| 手机在线播放国产福利| 屁股久久久久久久久| 亚洲限制级在线| 欧亚无码视频| 久久视频少妇美女| 日本午夜福利影院| 久久久久久9| 亚洲中文制服诱惑| 综合五月婷婷亚洲一区| 日韩人妻无码精品系列| 大香蕉免费乱伦视频| 激情婷婷丁香网| 五月天色色网站| 操人妻丝袜高跟| 91爱网| 无码色| 成人av福利在线观看| 天天摸夜夜摸| 国产亚州精品美女久久久免费| 久久一本大香蕉 | 午夜视频好爽啊| 日韩精品三级片长长久久| 人人操,操人人| 97ai亚洲| 用力操死我| 久久久久国产亚洲一区欧美色图日韩| 久草精品视频| 大香蕉伊人久久| 人妻熟女一区二区三区视频| 99综合| 日韩欧美日韩| 色综合1991| 偷拍 亚洲| 狠狠操官网| wuyechaopeng| 国产亚洲色婷婷久久99精品91| 欧美精品精品一区二区| 亚洲日本天堂| 日韩三级在线观看mp4| 2019天天干天天操| 91在线观看,天天综合| 欧美制服另类丝袜| 大屁股xxxxx| 久久国产AⅤ| 久久人妻一区二区三区高清| 97久久精品国产| 国产日本久久免费精品| 自拍偷拍国产欧美日韩韩| 中字一区| 日韩欧美水蜜桃人妻| 色五月婷婷网| 国产精品原创巨作?v网站| 99热精品在线观看| 亚洲综合贴图91| 老鸭窝亚洲毛片| 无码日韩网站| 欧美人体性爱互联网第一页婷婷日本| 欧美综合色综合| 欧美精品 - 91爱爱| 人人色97| 亚洲精品日日夜夜52| 青草草免费网站av| AV麻豆免费一区| 91精品国产综合久久久蜜臀酒店| 97超碰色中文字幕| 69久久久久久久久久久久久| 激情综合婷婷| 亚洲第一无码播放立川理惠| 亚洲春色一区二区三区| 久久男人的天堂| 久热精品在线| henhen91| 97热视频在线观看| 国产精品3| 狠插 制服 自拍| 亚州男人天堂| 国语少妇精| 人妻熟女一区二区在线视频| 天堂综合网| 亚洲天堂一区二区| 亚洲第一页综合在线| 天堂精品| 亚洲做性| 麻豆 美女 丝袜 人妻 中文| 97美日韩视频| 在线观看啊啊啊啊啊| 97视频在线观看网站| 欧美少妇性乱| 欧美激情精品久久久| 狠狠爱夜夜干| 人妻第一页| 欧综合网| 91亚洲欧美激情| 女优大全 - 91n| 人人妻人人澡人人爽久久av| 亚洲国产熟妇综合色专区| 97干97色| 久久五十路熟女人妻| 亚洲国产奇米影视久久| 国模少妇一区二区三区| 婷婷五月天av| 国产AV天美| 99re在线观看| 综合大香蕉美。| 欧天美中出| 男人天堂最新手机版在线青青草| 97久久久久| 超碰免费97| 亚洲一区二区三区不卡国产欧美| 日韩不卡毛片Av免费高清| 久久精品三级影视| 亚洲中文字幕乱码无码一区二区| 秋霞一级A片黄色视频| 日本成人A片网站| 搡老熟女老女人老熟妇免费视频| 欧美九九爱| 东北老女人的激情视频| 快灬快灬 一下爽蜜桃在线观看| 免费人成毛片乱码| 欧美日韩操逼嗦吊| 电影69乱码96| 亚洲色图第四色| 久草在线| 国模吧 一区二区三区| 亚洲色图激情小说| 九九九九免费视频| 嗯嗯啊好爽| 色狠狠 - 百度| 亚洲情色91| 中文97国产| 天天日熟妇| 一起草在线视频| 91小视频| 人妻在线大香蕉| 亚洲丝袜少妇在线| 婷婷五月天激情网| 久久 亚洲 日韩 人妻| 高清无码91| 一本久道在线综合视频| 狠狠欧美| 国产农村妇女毛片精品久久| 免费?级毛片无码?∨蜜芽试看| 五月婷婷丁香中文字幕| 91处女视频在线观看| 欧美日韩在线小说| 天天色综合天天操| 亚洲有码第一页| 国产白丝精品在线观看| 婷婷六月色| 人人九九精| 天天躁日日躁AAAAXXXX国产| 中文字幕蜜乳av| 国产女人91精品嗷嗷嗷嗷| 91伊人影视综合| 亚洲色图亚洲| 91狠| 欧美色图电影| 婷婷性爱| 蜜臀99久久国产| 久热香蕉精品在线视频| 久久精品电影| 国产一区在线免费播放| 亚洲亚洲亚洲天堂天堂| 亚洲二区精品在线观看| 欧美色日| 天天精品| 日本幼女18+| 视频分类 国内精品| 在线中文AV| 日美免费黄片| 揉揉揉夜夜| 99热网站| 一本色道久久综合精品婷婷| 日韩免费人妻色情网站| 午夜精品久久99蜜桃的功能章节| 男人天堂久久精品| 最新亚洲黄色免费电影| 91天美传媒精品| 欧美综合娱乐久久| 久久久久久久久久精| 视频国产精品未满十八禁止在线观看| 麻豆a'v电影| 女人高潮大叫一级毛片| 国际精品久久久| 日韩三级一区| 台湾一区国产高清在线| 风骚少妇视频中文字幕| 国产成人无码久久精品| 久久精品店| 久久综合日韩亚洲欧美| 超碰98综合网| 亚洲国产一区二区三区四区国产| 人妻少妇精品视频一区二区三区| 日韩天堂av电影在线观看| 亚洲国产一区二区日韩专区| #NAME?| 久久久久13| 欧美自拍偷拍综合图片| 激情婷婷黑人91| 理论久久婷婷网 8| 日韩国产欧美伦理在线| 91日韩网站| juliaann精品熟女一区| 国产av又色又爽又黄| AV中文字幕三四五| 久久綜合很很很| 18禁超污无遮挡无码免费网| 天天做天天爱| 91少妇通奸网站| 久精品无码av一区二免费国产在线观看 | 97最新在线播放视频| 精品一区二区三区麻豆| 日韩少妇无吗| 九色97| 国产精品久久久久中文字幕| 蜜臀在线视频| 久久色AV线| 亚洲人精| 国产欧美日韩在线不卡第一页| 9色国产精品一区粉嫩| 屁股久久久久久久久| 你操综合| 一区二区三区欧美激情| 中文字幕高清精品一区| 中文字幕视频在线观看| AV色五月天| 少妇天堂网络| 五月丁香六月| 亚洲精品日日夜夜52| 欧美呦呦性爱| 九九综合九九综合| 欧美亚洲天天| 精品一区二区三区四区外站| 丁香五月婷婷啪啪| 日本一级特级毛片视频| 四虎av在线| 亚洲一区制服诱惑| 欧美中字二区| 日日干日日操五月天伦理视频| 久久婷婷视频| 精品伊人久久久大香线蕉小说| 91福利网在线观看| 精品无吗m| 熟女少妇视频| 91N综合网| 99热国产精品| 香蕉色网| 玖玖资源视频一区二区三区| 91欧美巨乳| 亚州精品丝袜-不卡成人免费| 东北黄色电影| 婷婷中文网| 韩日无码在线观看| 亚洲欧美日韩精品久| 无码日韩人妻av一| 国产成人精品无码久久| 99性爱在线观看| 色在线亚洲视频www| 26uuu成人影片| 人人弄人人摸| 九九视频黄色片| 2017人人操,人人摸| 搞中出久久| 精品视频免费在线一区| 亚洲啪啪视频一区二区| 亚洲AV永久无码一区仙野| 亚洲欧美一区二区三区一猛片| 国精精品无码一二三区水多多| 午夜啪啪片| 日韩激情啪啪| 天天爽天天操| 国产精品久久久三级无码| 日本 欧美 亚中文字幕| 97超碰美国| 欧美午夜色妇色鬼| 欧美天堂第二区| 91精品人妻五十路| 中文乱码字幕观看| 青娱乐福利99| 性开放中文AV高清无码免费看| 五月丁香社区婷婷日韩欧美精品影院| 超碰91在线| 99热色这里只有精品| 日韩精品9999| 成人夜夜| 日本成人免费一区二区三区| 天天操夜夜操狠很操| 免费的黄片wwwwww| 亚洲欧美一区二区三区在钱蜜桃| 一区中文字幕二区日韩| 欧亚韩国999| 成人羞羞视频国产| 国产精品色片一区二区| 亚洲欧美精品91| 久久精品老司| 亚洲九九视频| 国产自制av蜜乳| 操人无码| 日韩不卡码| 校园春色 亚洲| 欧美亚洲自拍另类人妻| 亚洲国产无码精品首页久久久| 国产日本熟女顶级一区二区三区视频| 欧美 牲| 亚洲成人ab| 免费黄色片。| 亚洲瓯美色图| 伊人91| 国产精品蜜乳AV| 亚洲一区二区三区久久 亚洲一区二区| 啊啊啊97视频| 精…码一二三区| 五十路三级片| 啊啊啊啊二区好大| 97在线免费看视频| 久久性爱大全| 97丝袜亚洲在线播放| 成人开心网在线视频| 午夜精品久久一区二区| 免費黃色視頻觀看一| 99无码视频| 久久久精品九| 淫荡少妇免费| 人妻在线大香蕉| 日本不卡一区二区| 色五月亚洲| 精品免费成人久久| 日本三级网页| 亚洲大胆人体av| 午夜国产成人精品视频 | 蜜屁av| 天天插天天操| 午夜九九| 色爱国产| 亚洲日韩97| 免费A V在线播放| 1024手机看片欧美日韩| 性爱视频啪啪啪啪| 99国产精品免费| 人人搞人人插人人操| 天堂av2019| 欧美性夜| 亚洲色鬼| 亚洲人成在线放东京热| 精品一区二区啪啪啪| 狠狠躁伊人中文字幕| 久久久精品国产亚洲AV无码| 2019午夜福利视频| 影音先锋视频在线| 激情四射婷婷六月天| 综合 欧美 亚洲 日本| 婷婷五月天无码| 亚洲国产一区二区入口| 老熟妇一区二区三区啪啪| 亚洲囯产精品女人久久久| 麻豆国产成人精品| 无码聚合| 丝袜AV一区二区三区| 九九在线视频| 欧差乱伦二三| 国产欧美后入| 日本在线不卡v二区| 亚洲九九视频| 蜜色网色哟哟| 好吊色综合| 97精品国产97久久久| 亚洲自拍偷拍视频在线| 欧美伦乱爱| 色噜噜人妻丝袜a∨先锋影 | 精品欧美不卡在线播放| 东北老女人的激情视频| 家庭乱伦网站国产| 97精品一区二区三区免费| 国产精品情侣啪啪| 国产成人一级av88| 国内毛片四区| 久久久99999久网站| 在线无码视频| 午夜福利成人免费视频| 熟妇一区二区| 最新精品久久蜜桃| 精品久热| 强奸乱伦大香蕉| 亚洲Av诱惑| 亚洲av在线免费观看| 18禁免费视频| 国产AV中文| 国产精品一区二区在钱播放| 在线看片国产精品每日更新| 中文久久久| 骚熟女吞| 亚州精品一区二区三区香中文字幕在线| 久久精品国产AV一区二区三区| 超碰这里有精品| 国产丝袜美女诱惑| 中文自拍欧美影视| 无码久久国产| 玖玖久久久| 久久久久网站-538在线视频-欧美永久乱码| A 天堂在线观看视频| 热99这里有精品综合久久 | 美女啊啊啊啊pc| 中文字幕免费看大片| 试看日韩黄片| 亚州欧美在线| 好吊爽好吊爽在线视频,中文字幕精品一区二区日本,国产良妇出轨视频在线观看, | 亚洲情色无码一区二区三区| 九九热免费在线国产视频伊人五月| 天堂中文资源在线bt| 中文字幕99999| 女人天堂网| 操操操操网黑人| 欧美78p| 自拍偷拍国产欧美日韩韩| 超碰人妻久久| 精久久久| 操淫穴亚洲五月丁香| 精品免费1| 色婷婷电影网| 亚洲色诱惑| 日韩精品黄片免费观看| 操一操摸一摸| 欧美精品成人一区二区在线观看 | 成人片在线播放| 青椒国产97在线熟女| A级在线视频| 亚洲一二三四区| 欧美九九九| 亚洲天堂少妇| 天天综合网亚洲综合网| 欧美国产操逼| 四季AV综合网址| 超碰人妻中文在线| 久久111| 91亚州欧美| 日产国产精品中文久久婷婷| 久久精品视-一级做a爰片性色毛片16美国-中国女与老外在线精品 | 亚洲一区日韩精品中文字幕| 久久久噜噜噜久久人妻| 美女视频尤物网在线看| V A在线| av网站免费看| 在线日韩日本亚洲国产| V A在线| 欧美片第一页| 性久久久| 亚洲精品无码成人久久久99| 密乳无码| AV免费在线播放一区| 欧美精品99久久久**| 淫荡少妇免费| 在线中文字幕极品av| 无码在线亚洲| 色婷婷久久| 天天综合91在线| 99re3这里只有精品| 久久香蕉国产传媒一区剧情天美| 成人婷婷丁香| 中文字幕 一区二区 亚洲无码| 欧美狠狠操| 天堂资源站| 人妻精品一区二区三区| 97欧美精品| 欧美黄色大片在线观看| 欧美性爱中文字幕无线码| 国产精品久久久久久片| 丁香六月综合激情| 日韩AV色图| 东北操逼| 午夜毛片亚洲精品片国产久久久| 蜜乳AV免费观看| 殴美大黄片| 乱日视频| 亚洲精品黑丝| 91狠狠综合网| 中日韩熟女| av天堂影视中文在字幕在线中文 | 综合97| 韩国黄片aaaa| 丁香六月激情综合| 亚洲无码超碰免费| 啪一啪免费视频| 99爱视频| 好屌色综合| 亚洲素人综合| 中文字幕三四区| 久干9操| 日本久操视频| 大屁股熟女一区二区三区| 久久丝袜| 人人操人人操人人操人人操人人操人人人11.CM | 国产久久男人天堂| 欧美爱爱97| 92午夜免费福利视频| 亚洲人妻一区二区三区| 男人把坤坤插入女人的下体| 97欧美在线| 性色av网站| 9 7超碰在线免费观看| 大香蕉一人| 免费少妇一区二区| 亚洲第一页色| 亚洲AV色图一区| 操逼片中文| 欧美九九99久久精品| 99re视频在线播放青草| 国产三区免费在线观看| 影音综合网| 狠狠爱夜夜| 日本日皮视频逼| 久久一二三四五六七八九区区| 大鸡巴久久| 国产精品99久久久www| 75大香蕉| 在线观看亚洲成人精品| 啊啊啊用力在线观看| 久久在肏| 90后性网国产欧美| 操老熟女AV| 国产女人高潮嗷嗷嗷叫小说| 黑丝少妇麻豆| 9久精品| 国产这里只有精品| 免费男人的天堂| a v网站在线播放| 欧美亚洲厕所精品偷拍91| 日韩精品在线视频,日韩精品……| 五月激情视频| av日韩中文字幕| 欧美国产伊人久久久久| 国产盗摄美女如厕大神作品在线观看| 呦呦一区| 亚洲中文字幕有码视频一区二区三区| 五十路三区在线| 亚洲性爱高潮影院| AV女优男人的天堂| 日本 欧美 亚中文字幕| 四虎精品永久在线播放| 无码99| 久久受www免费人成| 97中文字幕色| 翔田千里无码中出中文字幕| 色香在线| 无码精品一区二区三区潘金莲| 性爱AV天堂| 精品人妻一区二区三区日产| 青久操| 久久91视频| 日韩八十路老熟女| 久久亚州大香蕉| 亚洲日韩国产欧美综合v| 久久精品综合| 激情五月婷婷综合| 春色综合网| 99热色这里只有精品| 国产偷人伦激情在线观看| 嗯嗯,啊啊,国产精品| 日韩欧美午夜一区二区| 亚洲精品 欧美精品| 一本色道久久天天射天天干| 亚洲天堂自拍| 欧美日本一区二区a人| 噜噜噜噜久久久精品免费| 婷婷久草一区二区三区| 国产美女在线精品免费看| 情侣操 逼视频99| 欧美人妻久久精品二区三区| 91岛国动作片| 超碰人妻久久人妻中文97| 日欧亚洲二三区大片不卡| 九九精品网| 夂久色| 人妻精品视频一区二区三区| 亚洲欧美setu| 五月天婷婷基地| 日本高清免费一本视频在线观看| 北野未奈加勒比av| 日韩一级二级| 性爱视频无打码在线观看| av橘色网站| 少妇一区二区三区在线观看| 五月天玖玖资源站| 操一操摸一摸| 人妻少妇久久| 欧美亚男人的天堂| 高跟丝袜AV专区国产| 欧美中文综合| 任我爽在线视频免费观看| 欧州色图区| 成人亚欧免费视频| 男同专区一区二区三区在线| 国精综合一二三区影视| 亚洲激情久久| 永久免费发布性爱网| 亚洲 欧美 色图| 亚洲麻豆18发?| 五月丁香婷婷综合| 五十路六十路七十路熟婆| 麻豆熟妇乱妇熟色A片在线看| 九九亚洲精品| 999狠狠综合| 欧美日本国产日韩激情视频| 欧美裸体美女日麻屄| 久久亚洲天堂| 久久精品免视看国产成人﹣蜜臀av一区. 久久精品免视看国产成人,蜜臀av一区 | 亚洲综合色图欧美| 色婷婷婷五月天激情四射| 欧美综合站| 亚洲福利中文字幕在线| 天天激情综合站| 偷拍精品一区二区三区| 亚洲色欧| 色哟哟精品1精品2| av72网| 三级三久久线久久99久目本WW| 波多野42部激情无码喷潮| 九九热三级片| 久久国产精品一区二区| 欧美高清在线| 国产欧美后入| 日本A级视频| 中文字幕日产av人| 99re9在线| 欧美操逼一二三区| 青青操狠狠撩| 欧美天天干| 国产黄色影片在线观看| 91碰超| WWW啪啪的com| 成在线人在线观看视频| 日本国产亚洲一区在线观看| 神马久久久久久久| 91精品老女人| 又大又大又大又粗爽高潮观看| 蜜臀99久| 亚洲丝袜少妇在线| 酒色综合网| 97免费在线| 国产伊人精品在线| 综合91网| 91丝袜美腿片| 大香蕉青青9| 亚洲综合一| 九99久久| 97在线播放 | 精品美女少妇一区二区| av天堂加勒比| 久久精品无码专区| 91综合熟女| 在线视频免费观看午夜| 精品国模无码| 综合五月婷婷亚洲一区| 久草网站免费在线观看| 久久精品色欧美aⅴ一区二区| 伊人色综合网电影| 丁香五月成人| 国产亚洲99久久精品| 91色爽欧美| 好看的久久不射无码影视影院| 操淫穴亚洲五月丁香| 久久久免费高清中文视频| 亚洲欧洲综合| 婷婷操视频| 亚洲欧洲综合成人av一区| 93人人操人人| 婷婷丁香五月综合| 毛片视频白嫩| 日日干男人的天堂| 天天久久久久久| 婷婷色婷婷| 午夜精品99久久久久传媒| 国产25页| 久久精品国产97欧美精品亚洲 | 97国产色图| 日韩精品人妻中文字幕不卡乱码| 国产99999| 粉嫩av在线| 正在播放国产精品一区| 久久亚洲av成人无码国产| 97玖玖人妻| 国产一| 久久少妇| 东亚亚洲无码高清| 日韩97视频!在线| 精品无码产区一区二| rivers-china.com| AV麻豆免费一区| 日韩乱伦影音先锋| 天天爱天天韩国日本牛牛牛牛| 欧美中字二区| 亚洲欧美97| 日本免费人成视频播放120秒| 99久久99久久综合| 久久偷偷色综合蜜桃| 啊啊啊啊啊在线| 亚洲欧美国产成人综合不卡| 青青草九九九九九| 国产久9| 国产在线激情视频| 电影69乱码96| 另类图片五月天| 深夜福利黄片| 日本韩国一本产品小视频日本韩国一本产品久久久产品小视频日本韩国一本产品久 | 91色情黑丝搞鸡在线观看一区二区三区三州| 欧美黑人猛交春色影视大全| 天天弄欧美| 曰本道人妻久久久在线不卡色视频| 丝袜AV一区二区三区| 欧美久久人人网| 日欧美色| 一起草视频在线| 一区三区啪啪| 欧美999999| 91精品国产91久久福利| 狠狠干综合| 干美女人妻| 国产精品免费日韩| 99在线观看无大码| 看日韩黄片| 日日操天天操| 91痴汉| 无码国产精品久久久久| 亚洲 欧美 另类 日韩 人妻一区| 加勒比综合网| 韩日精品四区| 蜜臀久久99精品久久久久久-DVD| 日本五十路熟女一区二区| 日韩人妻精品中文字幕| 香伊人在线| 人妻久久久久久| 亚洲天堂另类| av资源在线播放天堂| 岛国黄| 歐美性天天| 丰满人妻一区二区三区性色| 日韩AV中文字幕电影| 天天看天天日天天操| 四虎AV在线观看| 国产精品国产精品国产| 天天舔天天| 破处bbq| 日本欧美国内在线| 嗯嗯不要 视频| 激情五月天视频| 人妻丝袜二区| 亚州情色j区| 亚欧免费观看视频| 爱爱动态试试看6 0秒| 日韩福利综合一区| 天美精品一区二区三区四区在线观看| av在线不卡一区二区三区| 亚州综合色图| 黄片无码在线制服| 亚洲图片 欧美电影| 日本色色网| 国产97在线 | 亚洲| 人妻天天操天天爽视频免费| 性色AV蜜色av色欲av| 天天舔九色婷婷| 翔田千里无码一区| 中美日韩毛片| 99re公开精品免费视频| 亚洲丝袜二区在线| 欧美精品人妻视频| 香蕉综合网| 日本淫色网| 岛国黄| 我要色综合网站| 久久人妻四季| 青春草莓视频在线观看网址| 综合熟女| 无码操逼视频一下| 中文字幕午夜精品久久久| www超碰| 色香av| 啊啊啊不要啊啊受不了了视频在线 | 中文乱码字字幕在线第5页| 蜜臀久久久国产| 国产又爽又黄| 在线人成亚洲视频免费观看| 内射中出日韩在线观看视频| 秋霞无码av鲁丝片一区| 97精品全部| 校园春色 男人天堂 | 国产视频小说| 99热这里| 在线观看免费视频国产| 2017,超碰| 9超碰免费| 色五月综合网| A 天堂在线观看视频| 四虎免费在线观看| 69久久久久久久久久久久久| 骚逼高潮久久精品| 久久久久久久久久久免费精品| 久久国产精品视频| 骚货| 夜夜草网站| 三级激情网站| 日韩综合色图| 风月影院男女十八禁| 艳美熟妇先锋一二三区| 91动漫操逼视频| 这里只有精品97| 久肏视频字幕| 啊啊啊啊啊在线视频| 人妻AV在线| 2019天天干天天操| 亚洲人成网站7777| 国产人妻久久精品一区二区三区| 成人精品电影| 亚洲欧洲精品视频发布| 国产91精品在线免费| 超碰在线在公开超碰在线在公开| 成人夜夜| 18禁止看精品中文字幕| 精品人妻一区二区三区蜜桃视频| 天美一二三在线观看Av| 九九香蕉网| 日韩人妻中文视频| 国产黄色在线播放观看| 97精品视频在线播放| 色香综合天天影视综合| 神马久久网| 欧美成人亚洲精品| 久久超碰爱| 亚洲色婷婷| 色区久久| 亚洲图片偷拍视频区| 亚洲日韩精品一区视频在线| 日本操逼aaaaa| 国产精品午夜AV完会免费 | 亚洲āv网址在线观看| 婷婷午夜清品久久久久久久性色视频观| 亚洲色图第一页| 嫩草伊人久久精品| 亚洲诱惑| 91精品婷婷国产综合久久竹菊| 中文字幕在线观看网页| 中文伊人大香蕉视频| www.狠狠干.coom|