1.在模擬器上安裝app,使用Charles抓包;

2.在接口數(shù)據(jù)中上傳參數(shù)包含uuid date,這個(gè)是切入點(diǎn),非常關(guān)鍵。使用dex2jar-2.0工具反編譯dex文件得到j(luò)ar文件;
3.搜索uuid,找到接口上傳參數(shù)加密位置;

4.可以看到代碼是這樣的
paramContext = BaseRequestBuilder.buildAESData(paramContext, paramRequestCfgBean);
((j.a)localObject).b("data", v.k(paramContext.data)); ((j.a)localObject).b("uuid", paramContext.uuid);
這就是上傳加密的算法,大致就是將json試用AES加密,ASE加密后一般是16進(jìn)制或者是base64;順藤摸瓜找到加密算法;

分析得出是AES加密 ecb模式 填充 ZeroBytePadding AES/ECB/ZeroBytePadding ecb模式不需要iv只需要key 結(jié)果是bast64 ;
總結(jié):一般能抓包并且能反編譯看到代碼的被破解就很簡(jiǎn)單,基本是也是在防抓包和加殼這兩個(gè)方面上對(duì)app進(jìn)行防護(hù),防抓包和加固技術(shù)不斷增強(qiáng),只有不斷學(xué)習(xí)提升自己的技術(shù);
|