IT技術互動交流平台

Android安全開發之淺談密鑰硬編碼

作者--2018彩票平台排行榜:伊樵-_|038彩票平台合法吗、呆狐@阿裏聚安全  發布日期_|_2019新版跑狗图+今天:2016-05-19 22:09:15

 0x00 簡介

在阿裏聚安全的漏洞掃描器中和人工APP安全審計中|_娃哈哈股票代码,經常發現有開發者將密鑰硬編碼在Java代碼|_现货黄金模拟大赛、文件中-天桥区大桥镇,這樣做會引起很大風險_|寂寞先生 刘悦。信息安全的基礎在於密碼學-||试卖网,而常用的密碼學算法都是公開的||466耳鸣专家,加密內容的保密依靠的是密鑰的保密---2元彩票网走势图大全,密鑰如果泄露|-铜皮厚度,對於對稱密碼算法_|迅雷电视剧,根據用到的密鑰算法和加密後的密文--湖南法检考试,很容易得到加密前的明文;對於非對稱密碼算法或者簽名算法__-1288彩票怎么样,根據密鑰和要加密的明文|-刘钧个人资料,很容易獲得計算出簽名值|我是歌手第10期排名,從而偽造簽名||至尊心水。

0x01 風險案例

密鑰硬編碼在代碼中__1号彩票信得过吗?,而根據密鑰的用途不同_强心脏20110823,這導致了不同的安全風險-_|铁将军防盗器电路图,有的導致加密數據被破解肇东张锡才,數據不再保密|_168彩票被风控了怎么办,有的導致和服務器通信的加簽被破解__|角钢验收标准,引發各種血案|--易点彩票网专家预测,以下借用烏雲上已公布的幾個APP漏洞來講講杨幂不照雅全图。

1.1 某互聯網金融APP加密算法被破解導致敏感信息泄露

某P2P應用客戶端-_中博彩票投诉,用來加密數據的DES算法的密鑰硬編碼在Java代碼中|_-众赢彩票合法吗,而DES算法是對稱密碼算法_-_优信彩票大发是真的吗,既加密密鑰和解密密鑰相同__-诛仙3牵机。

反編譯APP_-李白 谈爱,發現DES算法|-|众盈时时彩是违法的吗:

發現DES算法的密鑰_qq空间情侣模块,硬編碼為“yrdAppKe”|__性价比较高的笔记本电脑,用來加密手勢密碼步步高i606手机主题:

將手勢密碼用DES加密後存放在本地LocusPassWordView.xml文件中-_-1rdt军海:

知道了密文和加密算法以及密鑰_-青岛小海燕艺术学校,通過解密操作_--脱氧剂成分,可以從文件中恢複出原始的手勢密碼_-|qq炫舞紫钻官网。或者使用新的生成新的手勢密碼

而與服務器通信時接口中的Jason字段也用了DES算法和密鑰硬編碼為“yRdappKY”_||杨幂11分钟:

和服務器通信采用http傳輸-|-喷立婷,沒有使用https來加密通信__|自然美酵素官网,如果采用中間人攻擊或者路由器鏡像_--地下城宝珠大全,獲得流量數據_-永盛国际赢了取不出来,可以破解出用戶的通信內容|||1分快三彩票网址。

1.2 某租車APP加密算法被破解導致一些列風險

某租車APP與服務器通信的接口采用http傳輸數據-_狗儿山上的八路军,並且有對傳輸的部分參數進行了加密__盈盈彩正规吗?,加密算法采用AES__-印度新娘第四部,但是密鑰硬編碼在java代碼中為“shenzhoucar123123”_||通成物流单号查询,可被逆向分析出來__赢彩彩票app下载,導致偽造請求_|番禺社保个人查询,結合服務器端的漏洞-_冰河时代2歌词,引起越權訪問的風險-少女网王世界的旅程,如越權查看其它用戶的訂單等|_-滦县二中吧。

和服務器通信時的數據為-_|柯米诺:

q字段是加密後的內容|-重庆电视台少儿频道。逆向APP|_正点对时,從登錄Activity入手--|亿彩彩票北京pk10:

分析登錄流程-_-苏州工业园区三中:v1是用戶名_||金铃子种植,v2是密碼-_cctv9女主持人,v3是PushId|__众发彩票APP合法吗,在用戶名和密碼不為空並且長度不小於11情況下|_-永胜集团是做什么的,執行LoginOperate相關操作|_|泉城海洋极地世界门票,追蹤LoginOperate的實現__青岛小海燕艺术学校,發現繼承自BaseOperate|-京东商城首页淘宝,繼續追蹤BaseOperate的實現_||宝安体育馆健身房:

在BaseOperate的initUrl()方法中|-王晗祥康快车,找到了APP是怎麼生成請求數據的--_二手奢侈品寄卖店:

繼續追蹤上圖中的initJsonUrl()方法__-中国青梅产地,發現其調用了AES加密__-苏州园区甲类公积金:

繼續追蹤aes.onEncrypt()函數__瑞丽裳电子杂志:

在onEncrypt()函數中調用了encrypt()函數用來加密數據-|金钟民申智,追蹤encrypt()函數的實現-|-永盛国际平台可靠吗,發現其使用AES算法__|永盛app彩票网址,並且密鑰硬編碼在java代碼中為“shenzhoucar123123”

到現在請求中的數據加密如何實現的就清晰了|__1000彩票,另外由於服務器權限控製不嚴|__金士顿u盘恢复工具,就可以構造訂單id的請求_-若奥穆蒂尼奥,達到越權訪問到其他用戶的訂單-|31999线路检测。

構造{“id”:”11468061”}的請求:

其中uid設置為你自己的uid即可-张一山股票视频下载,可以成功看到其他人的訂單:

 

攻擊者完全可以做到使用其他腳本重新實現相同的加密功能並拚接出各個接口請求||库提价,批量的刷取訂單信息和用戶其他信息|哈雷摩托车官方网。

1.3 某酒店APP加簽算法被破解導致一係列風險

某酒店APP和服務器通信時接口采用http通信_||洪洞贴吧,數據進行了加密|__亿盈嘉的骗局,並且對傳輸參數進行簽名|||众彩app怎么下载,在服務器端校驗簽名|__疥舒宁多少钱一盒,以檢查傳輸的數據是否被篡改|11086现金棋牌下载地址,但是加簽算法和密鑰被逆向分析|-_阿杰路,可導致加簽機製失效|--雅虎 翻译,攻擊者可任意偽造請求包|-_苯达松,若結合服務器端的權限控製有漏洞_|_阿芙诺蒂,則可引發越權風險等|--嘉酒视窗。

APP和服務器通信的原始包如下圖_|永城彩票网软件,可以看到有加簽字段sign_|风法二觉加点:

逆向APP定位到加密算法的邏輯代碼_盈彩网属于合法的吗,com.htinns.biz.HttpUtils.class_||cctvregocx,其實現邏輯為--谈爱李白:

原始數據是unSignData|__幼儿园中班教育随笔,使用RC4算法加密-_高唐贴吧,密鑰為KEY變量所代表的值-_铁道兵家园网,加密後的數據為signData|-好听的炫舞团名,傳輸的數據時的data字段為signData--晨星基金业绩排行榜。

加簽字段signd的生成方法是用unsignData拚接時間戳time和resultkey_-诛仙飞升任务流程,然後做md5_|_181彩票,再進行base64編碼|奇瑞新a1。時間戳保證了每次請求包都不一樣_-陶陶洁具。

sendSign()算法是用c或c++寫的|-168彩票安装ios,放入了so庫-_-11选5助手苹果版app,其他重要算法都是用java寫的||吴迪女朋友王文静家世。

可以使用IDA逆向分析so庫|复古宫廷装,找到sendSign()方法

而烏雲漏洞提交者采用的是分析sign和getSign(sign)的數據|_掌上足球竞彩版,做一個算法破解字典__336时时彩平台害人样。其實還有種方法直接調用此so庫_|-云购彩票是正规平台吗,來生成字典_-金兰妃。

簽名破解以後|_|众富彩票官网,就可以構造發送給服務器的數據包進行其他方麵的安全測試--|金枝玉叶玉琪,比如越權-易发大吉大利下载、重置密碼等-_阜阳卫生局网。

0x02 阿裏聚安全開發建議

通過以上案例__-联想idealife,並總結下自己平時發現密鑰硬編碼的主要形式有|-_众博彩票开多久了:

1-|掌上购彩、密鑰直接明文存在sharedprefs文件中||狱乐营,這是最不安全的_|_银河赌博是不是都作假。

2|--2018大乐透开奖号全部、密鑰直接硬編碼在Java代碼中_|青岛台东八路洗头房,這很不安全__掌上足球竞彩,dex文件很容易被逆向成java代碼_-168彩票真的吗。

3_-青岛台东洗头房、將密鑰分成不同的幾段|-门头沟电大在线,有的存儲在文件中-日本漫画在动车上被强、有的存儲在代碼中||_小灿男装,最後將他們拚接起來||-栾城贴吧,可以將整個操作寫的很複雜-_-陈丽华前夫离婚原因,這因為還是在java層-__青岛火车站咨询电话,逆向者隻要花點時間|_斗战神怎么入定修炼,也很容易被逆向|__lenovoa60软件。

4||晨星基金业绩排行榜、用ndk開發_-_笔头草,將密鑰放在so文件1q币购物券怎么用,加密解密操作都在so文件裏-_-公主日记2电影,這從一定程度上提高了的安全性_注册就送199的彩票网站,擋住了一些逆向者|-安达舞子,但是有經驗的逆向者還是會使用IDA破解的|金正大oa。

5|-2000彩平台、在so文件中不存儲密鑰_|-众盈彩票app下载安装,so文件中對密鑰進行加解密操作|-厦门同安野山谷,將密鑰加密後的密鑰命名為其他普通文件_易彩富民地,存放在assets目錄下或者其他目錄下--|花小幽,接著在so文件裏麵添加無關代碼(花指令)|-|永安彩票兼职,雖然可以增加靜態分析難度--|初中数学教师述职报告,但是可以使用動態調式的方法___长沙口碑网,追蹤加密解密函數-__邻水铁路,也可以查找到密鑰內容|-金兜洞兕大王。

保證密鑰的安全確是件難事-|-198彩怎么样,涉及到密鑰分發-|168彩票安装ios,存儲-_手机卡盟,失效回收|||星岛田阳子,APP防反編譯和防調試_|收破烂歌词,還有風險評估||12选5开奖结果辽宁。可以說在設備上安全存儲密鑰這個基本無解--广东银业雁山酒店,隻能選擇增大攻擊者的逆向成本|-蛋神奇踪第1部全集,讓攻擊者知難而退||-重庆艾一若厨卫电器。而要是普通開發者的話__北京58同城二手车,做妥善保護密鑰這些事情這需要耗費很大的心血-_众发彩票可靠吗?。

產品設計者或者開發者要明白自己的密鑰是做什麼用的__王卫生骨质增生外敷灵,重要程度怎麼樣_-|金正大oa,密鑰被逆向出來會造成什麼風險-__苏州园区乙类公积金,通過評估APP應用的重要程度來選擇相應的技術方案_|阿发祥。

參考

p2p宜人貸app幾種安全問題

神州租車APP客戶端設計缺陷導致的一係列安全問題(算法破解/權限遍曆等)

講解一步步逆向破解華住酒店集團官網APP的http包加密算法以及一係列漏洞打包

http://jaq.alibaba.com/safety?spm=a313e.7837752.1000001.1.zwCPfa

https://www.zhihu.com/question/35136485/answer/84491440

 

延伸閱讀|意彩怎么注册账号:

Tag標簽|||杀人游戏 电影: 密鑰   編碼  
  • 專題推薦

  • Directx11 遊戲編程入門教程
  • 專題主要學習DirectX的初級編程入門學習_--永胜国际是干嘛的,對Directx11的入門及初學者有...... 詳細
  • Windows7係統入門 優化 技巧技術專題
  • Windows7係統專題 無論是升級操作係統___青海卫视直播、資料備份||_木樨园服装批发、加強資料的安全及管...... 詳細
About IT165 - 廣告服務 - 隱私聲明 - 版權申明 - 免責條款 - 網站地圖 - 網友投稿 - 聯係方式
本站內容來自於互聯網,僅供用於網絡技術學習,學習中請遵循相關法律法規
E乐彩秒速快3腾讯分分彩qq分分彩幸运飞艇大发彩票

免责声明: 本站资料及图片来源互联网文章,本网不承担任何由内容信息所引起的争议和法律责任。所有作品版权归原创作者所有,与本站立场无关,如用户分享不慎侵犯了您的权益,请联系我们告知,我们将做删除处理!