Android安全之Https中間人攻擊漏洞

Android安全之Https中間人攻擊漏洞

0X01?概述

HTTPS,是一種網(wǎng)絡(luò)安全傳輸協(xié)議顶燕,利用SSL/TLS來(lái)對(duì)數(shù)據(jù)包進(jìn)行加密,以提供對(duì)網(wǎng)絡(luò)服務(wù)器的身份認(rèn)證凑保,保護(hù)交換數(shù)據(jù)的隱私與完整性

中間人攻擊割岛,Man-in-the-middle?attack愉适,縮寫(xiě):MITM犯助,是指攻擊者與通訊的兩端分別創(chuàng)建獨(dú)立的聯(lián)系癣漆,并交換其所收到的數(shù)據(jù),使通訊的兩端認(rèn)為他們正在通過(guò)一個(gè)私密的連接與對(duì)方直接對(duì)話剂买,但事實(shí)上整個(gè)會(huì)話都被攻擊者完全控制惠爽。

https在理論上是可以抵御MITM,但是由于開(kāi)發(fā)過(guò)程中的編碼不規(guī)范瞬哼,導(dǎo)致https可能存在MITM攻擊風(fēng)險(xiǎn)婚肆,攻擊者可以解密、篡改https數(shù)據(jù)坐慰。

0X02?https漏洞

Android?https的開(kāi)發(fā)過(guò)程中常見(jiàn)的安全缺陷:

1)在自定義實(shí)現(xiàn)X509TrustManager時(shí)较性,checkServerTrusted中沒(méi)有檢查證書(shū)是否可信,導(dǎo)致通信過(guò)程中可能存在中間人攻擊结胀,造成敏感數(shù)據(jù)劫持危害赞咙。

2)在重寫(xiě)WebViewClient的onReceivedSslError方法時(shí),調(diào)用proceed忽略證書(shū)驗(yàn)證錯(cuò)誤信息繼續(xù)加載頁(yè)面糟港,導(dǎo)致通信過(guò)程中可能存在中間人攻擊攀操,造成敏感數(shù)據(jù)劫持危害。

3)在自定義實(shí)現(xiàn)HostnameVerifier時(shí)秸抚,沒(méi)有在verify中進(jìn)行嚴(yán)格證書(shū)校驗(yàn)速和,導(dǎo)致通信過(guò)程中可能存在中間人攻擊,造成敏感數(shù)據(jù)劫持危害剥汤。

4)在setHostnameVerifier方法中使用ALLOW_ALL_HOSTNAME_VERIFIER颠放,信任所有Hostname,導(dǎo)致通信過(guò)程中可能存在中間人攻擊吭敢,造成敏感數(shù)據(jù)劫持危害碰凶。

0X03 漏洞案例

案例一:京東金融MITM漏洞

京東金融Ver?2.8.0由于證書(shū)校驗(yàn)有缺陷,導(dǎo)致https中間人攻擊省有,攻擊者直接可以獲取到會(huì)話中敏感數(shù)據(jù)的加密秘鑰痒留,另外由于APP沒(méi)有做應(yīng)用加固或混淆,因此可以輕松分析出解密算法蠢沿,利用獲取到的key解密敏感數(shù)據(jù)伸头。

御安全掃描結(jié)果:

如下是登陸過(guò)程中捕獲到的數(shù)據(jù):

其中的secretkey用于加密后期通信過(guò)程中的敏感數(shù)據(jù),由于APP中使用的是對(duì)稱加密舷蟀,攻擊者可以還原所有的通信數(shù)據(jù)恤磷。

案例二:中國(guó)移動(dòng)和包任意消費(fèi)漏洞

HTTPS證書(shū)校驗(yàn)不嚴(yán)格面哼,可被MITM;

加密算法不安全扫步,可被破解魔策;

關(guān)鍵數(shù)據(jù)保存在sdcard卡上,可被任意訪問(wèn)河胎;

代碼混淆度低闯袒,業(yè)務(wù)邏輯,關(guān)鍵數(shù)據(jù)泄漏游岳;

消息簽名算法比較簡(jiǎn)單政敢,數(shù)據(jù)可被修改;

通信數(shù)據(jù)如下:

POST?https://mca.cmpay.com:28710/ccaweb/CCLIMCA4/2201194.dor?HTTP/1.1

Cookie:?JSESSIONID=CHGmYSZLTMRAx_1sSEuUP6Q4vmRI9gWiRPM6ANGnH7eZWv0NhErE!221531807

.......

Content-Length:?521

Host:?mca.cmpay.com:28710

Connection:?Keep-Alive

Cookie:?JSESSIONID=CHGmYSZLTMRAx_1sSEuUP6Q4vmRI9gWiRPM6ANGnH7eZWv0NhErE!221531807

Cookie2:?$Version=1

866697029909260201603241008185gye5tKk6EPB4iliO722011944.3.82Android_21-1794*1080-HUAWEI?GRA_UL1020093CAS000169918666970299092601050:a7:2b:c5:e2:d8

在用戶開(kāi)啟免密支付的前提下胚迫,結(jié)合以上安全問(wèn)題喷户,可以實(shí)現(xiàn)本地或遠(yuǎn)程攻擊,直接盜取和包用戶資金访锻,如給任意賬號(hào)充值等褪尝,給用戶帶來(lái)直接經(jīng)濟(jì)損失。

0X03 安全建議

1)?建議自定義實(shí)現(xiàn)X509TrustManager時(shí)期犬,在checkServerTrusted中對(duì)服務(wù)器信息進(jìn)行嚴(yán)格校驗(yàn)

2)在重寫(xiě)WebViewClient的onReceivedSslError方法時(shí)河哑,避免調(diào)用proceed忽略證書(shū)驗(yàn)證錯(cuò)誤信息繼續(xù)加載頁(yè)面

3)在自定義實(shí)現(xiàn)HostnameVerifier時(shí),在verify中對(duì)Hostname進(jìn)行嚴(yán)格校驗(yàn)

4)建議setHostnameVerifier方法中使用STRICT_HOSTNAME_VERIFIER進(jìn)行嚴(yán)格證書(shū)校驗(yàn)哭懈,避免使用ALLOW_ALL_HOSTNAME_VERIFIER

0X04 參考

https://en.wikipedia.org/wiki/MITM

https://en.wikipedia.org/wiki/HTTPS

http://drops.wooyun.org/tips/3296

(騰訊御安全技術(shù)博客:http://yaq.qq.com/blog/13)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末灾馒,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子遣总,更是在濱河造成了極大的恐慌睬罗,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,544評(píng)論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件旭斥,死亡現(xiàn)場(chǎng)離奇詭異容达,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)垂券,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,430評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門花盐,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人菇爪,你說(shuō)我怎么就攤上這事算芯。” “怎么了凳宙?”我有些...
    開(kāi)封第一講書(shū)人閱讀 162,764評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵熙揍,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我氏涩,道長(zhǎng)届囚,這世上最難降的妖魔是什么有梆? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,193評(píng)論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮意系,結(jié)果婚禮上泥耀,老公的妹妹穿的比我還像新娘。我一直安慰自己蛔添,他們只是感情好痰催,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,216評(píng)論 6 388
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著作郭,像睡著了一般陨囊。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上夹攒,一...
    開(kāi)封第一講書(shū)人閱讀 51,182評(píng)論 1 299
  • 那天,我揣著相機(jī)與錄音胁塞,去河邊找鬼咏尝。 笑死,一個(gè)胖子當(dāng)著我的面吹牛啸罢,可吹牛的內(nèi)容都是我干的编检。 我是一名探鬼主播,決...
    沈念sama閱讀 40,063評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼扰才,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼允懂!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起衩匣,我...
    開(kāi)封第一講書(shū)人閱讀 38,917評(píng)論 0 274
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤蕾总,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后琅捏,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體生百,經(jīng)...
    沈念sama閱讀 45,329評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,543評(píng)論 2 332
  • 正文 我和宋清朗相戀三年柄延,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了蚀浆。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,722評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡搜吧,死狀恐怖市俊,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情滤奈,我是刑警寧澤摆昧,帶...
    沈念sama閱讀 35,425評(píng)論 5 343
  • 正文 年R本政府宣布,位于F島的核電站僵刮,受9級(jí)特大地震影響据忘,放射性物質(zhì)發(fā)生泄漏鹦牛。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,019評(píng)論 3 326
  • 文/蒙蒙 一勇吊、第九天 我趴在偏房一處隱蔽的房頂上張望曼追。 院中可真熱鬧,春花似錦汉规、人聲如沸礼殊。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,671評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)晶伦。三九已至,卻和暖如春啄枕,著一層夾襖步出監(jiān)牢的瞬間婚陪,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,825評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工频祝, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留泌参,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,729評(píng)論 2 368
  • 正文 我出身青樓常空,卻偏偏與公主長(zhǎng)得像沽一,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子漓糙,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,614評(píng)論 2 353

推薦閱讀更多精彩內(nèi)容