欧美一区2区三区4区公司二百,国产精品婷婷午夜在线观看,自拍偷拍亚洲精品,国产美女诱惑一区二区

歡迎來到云服務(wù)器

網(wǎng)絡(luò)技術(shù)

付出寶錢包手勢暗碼實戰(zhàn)破解

          跟著移動互聯(lián)網(wǎng)的普及以及手機屏幕越做越大等特點,在移動設(shè)備上購物、消費已是人們不行或缺的一個糊口習(xí)慣了。跟著這股海潮的鼓起,安詳、便捷的移動付出需求也越來越大。因此,各大互聯(lián)網(wǎng)公司紛紛推出了其移動付出平臺。個中,用的較量多的要數(shù)騰訊的微信和阿里的付出寶錢包了。           
      正所謂樹大招風(fēng),移動付出平臺的鼓起,也給浩瀚一直彷徨在網(wǎng)絡(luò)陰暗地帶的黑客們又一次更生的時機。因為移動平臺方才鼓起,人們對移動平臺的安詳認(rèn)識度還不足。就拿我身邊的許多伴侶來說,他們一買來手機就開始root,之后卸載預(yù)裝軟件,下載游戲外掛等等。本日,我們就以破解付出寶錢包的手勢暗碼為例,來深入相識下android系統(tǒng)上的一些安詳常識,但愿能引起人們對移動平臺安詳?shù)闹匾暋?

    在此申明:以下文章涉及的代碼與闡明內(nèi)容僅供android系統(tǒng)安詳常識的進修和交換利用,任何小我私家或組織不得利用文中提到的技能和代碼做違法犯法勾當(dāng),不然由此激發(fā)的任何效果與法令責(zé)任本人概不認(rèn)真。

嘗試情況:
小米4TD版
MIUI-JHACNBA13.0(已ROOT)
付出寶錢包8.1.0.043001版

利用東西:
APK IDE
Smali.jar
Ddms
SQLite Expert
應(yīng)用寶

措施闡明
籌備階段:

安裝完付出寶錢包之后,運行軟件,我這里選擇淘寶帳號登錄,界面如圖1所示。
付出寶錢包手勢暗碼實戰(zhàn)破解 
登錄之后,配置手勢暗碼,如圖2所示
付出寶錢包手勢暗碼實戰(zhàn)破解 
完成上述兩步之后,退出付出寶歷程。用騰訊應(yīng)用寶定位到付出寶的安裝目次datadatacom.eg.android.AlipayGphone,查察目次布局如圖3所示。
付出寶錢包手勢暗碼實戰(zhàn)破解 
實戰(zhàn)開始 - 破解手勢暗碼錯誤次數(shù)限制
付出寶錢包手勢暗碼實戰(zhàn)破解 
利用APK IDE對付出寶的安裝包舉辦解包闡明。解包完成之后,搜索setgestureErrorNum字樣,功效如圖5所示
付出寶錢包手勢暗碼實戰(zhàn)破解 
顛末大抵闡明,UserInfoDao.smali文件中的addUserInfo函數(shù)較量可疑,截取個中一段配置手勢暗碼錯誤次數(shù)的
{v0}, Lcom/alipay/mobile/framework/service/ext/security/bean/UserInfo;->getGestureErrorNum()Ljava/lang/String;
move-result-object v1 
#挪用getGestureErrorNum函數(shù)得到未加密的錯誤次數(shù),并生存到v1寄存器

invoke-virtual {v0}, Lcom/alipay/mobile/framework/service/ext/security/bean/UserInfo;->getUserId()Ljava/lang/String;
move-result-object v2 
#挪用getUserId函數(shù)得到user id,并生存到v2寄存器

invoke-static {v2}, Lcom/alipay/mobile/security/gesture/util/GesutreContainUtil;->get8BytesStr(Ljava/lang/String;)Ljava/lang/String;
move-result-object v2 
#獲取user id的前8個字節(jié),生存到v2寄存器

invoke-static {v1, v2}, Lcom/alipay/mobile/common/security/Des;->encrypt(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v1 
#以user id的前8字節(jié)作為key,挪用des加密錯誤次數(shù)字符串,并生存到v1寄存器

invoke-virtual {v0, v1}, Lcom/alipay/mobile/framework/service/ext/security/bean/UserInfo;->setGestureErrorNum(Ljava/lang/String;)V
#挪用setGestureErrorNum函數(shù),將加密的字符串生存[/code]通過對上述代碼的闡明得知,第一次getGestureErrorNum的挪用取出的錯誤次數(shù)應(yīng)該是未加密的字符串,添加log代碼驗證,代碼如圖6所示
付出寶錢包手勢暗碼實戰(zhàn)破解 
生存修改的smali文件,從頭編譯打包,安裝完成之后,輸入錯誤的手勢暗碼,log輸出數(shù)字依次遞增。最后一次輸入正確的手勢暗碼,錯誤次數(shù)從頭歸0。LogCat捕獲到的日志如圖7所示。
付出寶錢包手勢暗碼實戰(zhàn)破解 
措施闡明到這里,我不禁揣摩,在錯誤次數(shù)未加密前,把v1寄存器的值配置為字符串“0”是不是就可以騙過付出寶而可以無限次的輸入手勢暗碼了呢?于是乎,我又開始了下面的驗證,代碼如圖8所示。
付出寶錢包手勢暗碼實戰(zhàn)破解 
編譯打包,從頭安裝付出寶,輸入錯誤的手勢暗碼,發(fā)明5次錯誤之后措施照舊讓我們從頭登錄。看來我們這里配置錯誤次數(shù)已經(jīng)晚了,于是乎,繼承搜索挪用addUserInfo函數(shù)來加密gestureErrorNum的處所。個中,AlipayPattern.smali文件的settingGestureError函數(shù)引起了我的留意。函數(shù)
.method public settingGestureError(Lcom/alipay/mobile/framework/app/ui/BaseActivity;Lcom/alipay/mobile/framework/service/ext/security/bean/UserInfo;I)V
.locals 1
new-instance v0, Ljava/lang/StringBuilder; #初始化StringBuilder實例

invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V

invoke-virtual {v0, p3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
#p3是一個I范例的整型變量,挪用StringBuilder. append賦值

move-result-object v0

invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

move-result-object v0  #挪用toString函數(shù)轉(zhuǎn)換成字符串范例,賦給v0

騰訊云代理

Copyright © 2003-2021 MFISP.COM. 國外vps服務(wù)器租用 夢飛云服務(wù)器租用 版權(quán)所有 ? 粵ICP備11019662號

主站蜘蛛池模板: 隆德县| 武邑县| 广东省| 和平县| 高阳县| 梁河县| 惠安县| 土默特左旗| 万州区| 安徽省| 永年县| 茂名市| 元氏县| 珲春市| 枣强县| 灵璧县| 易门县| 霍邱县| 长沙市| 石嘴山市| 静安区| 固镇县| 台山市| 武功县| 永昌县| 壶关县| 岳西县| 龙口市| 宿州市| 大田县| 西丰县| 临城县| 威信县| 西城区| 元谋县| 卫辉市| 双江| 西乡县| 分宜县| 盐源县| 枞阳县|