時(shí)間:2019-09-14 14:58:24 作者:無名 瀏覽量:82
老是提交一些撞庫漏洞都給小廠商而且感覺技術(shù)含量不高,這次打算找個應(yīng)用好好研究研究,看到一個經(jīng)常提供1000禮品卡給力的廠商-蘇寧易購,果斷下載安卓客戶端走起。發(fā)現(xiàn)了一些問題綜合起來最后達(dá)到的效果就是發(fā)送給好友一個蘇寧的鏈接(m.suning.com),對方打開如果對方裝有蘇寧易購客戶端就能夠控制對方,包括克隆對方的賬號,獲得對方手機(jī)信息,發(fā)短信等等。。
蘇寧豆芽怎樣遠(yuǎn)程操作?客戶端控制目標(biāo)手機(jī)可以遠(yuǎn)程實(shí)現(xiàn)圖一
環(huán)境 未root安卓4.2機(jī)器和4.2模擬器
0x01 私有短網(wǎng)址生成過程過濾不嚴(yán)
蘇寧有自己的短網(wǎng)址生成方式,在用戶分享商品時(shí)就會觸發(fā),會按照用戶的id和商品網(wǎng)址生成短網(wǎng)址,過程中會檢測網(wǎng)址中是否包含”suning.com“,包含就可以生成,否則拒絕。這種檢測方式很容易繞過url結(jié)尾加上#suning.com就可以
測試地址:http://m.suning.com/dl/qJeA5UsD.html
請求數(shù)據(jù)包精簡后如下:
蘇寧豆芽怎樣遠(yuǎn)程操作?客戶端控制目標(biāo)手機(jī)可以遠(yuǎn)程實(shí)現(xiàn)圖二
建議修改成首先獲得域名,然后匹配域名后綴。
ps: 某訊在https檢測時(shí)也用了類似的方式。。。。。
0x02 Intent接口過濾不嚴(yán)
蘇寧易購客戶端提供以下Intent接口
蘇寧豆芽怎樣遠(yuǎn)程操作?客戶端控制目標(biāo)手機(jī)可以遠(yuǎn)程實(shí)現(xiàn)圖三
這個接口提供的一個功能就是使用蘇寧內(nèi)嵌的瀏覽器打開指定網(wǎng)址,這里依然沒有對目標(biāo)網(wǎng)址進(jìn)行過濾。
這個接口調(diào)用方式如下
蘇寧豆芽怎樣遠(yuǎn)程操作?客戶端控制目標(biāo)手機(jī)可以遠(yuǎn)程實(shí)現(xiàn)圖四
測試地址:http://31.220.48.93:28214/sn/jm.html 使用安裝有蘇寧易購的手機(jī)瀏覽器打開這個網(wǎng)址就會跳轉(zhuǎn)到蘇寧然后打開烏云,如圖
蘇寧豆芽怎樣遠(yuǎn)程操作?客戶端控制目標(biāo)手機(jī)可以遠(yuǎn)程實(shí)現(xiàn)圖五
建議修復(fù)同上
0x03 用戶可被克隆
正常用戶登錄后,數(shù)據(jù)區(qū)會產(chǎn)生比較多的數(shù)據(jù),經(jīng)過反測試發(fā)現(xiàn)
蘇寧豆芽怎樣遠(yuǎn)程操作?客戶端控制目標(biāo)手機(jī)可以遠(yuǎn)程實(shí)現(xiàn)圖六
這個文件包含用戶的所有信息,如果能獲得用戶的這個文件就能克隆用戶。測試方式,在A機(jī)器上登錄用戶,復(fù)制出EbuyPreferences.xml文件。在B機(jī)器上打開一次蘇寧易購,然后用剛才的EbuyPreferences.xml覆蓋同名文件,再打開蘇寧易購就已經(jīng)是A的身份了,修改昵稱發(fā)現(xiàn)操作正常,確定有權(quán)限。
修復(fù)的話匹配機(jī)器碼或者mac都可以。
誰有權(quán)限跑到別人手機(jī)里去復(fù)制文件?就算能在別人手機(jī)復(fù)制文件,但是沒root權(quán)限也不能跨應(yīng)用讀文件,這個似乎不好利用,別急,繼續(xù)看。
0x04 遠(yuǎn)程命令執(zhí)行
這個漏洞確實(shí)比較早了,具體看這里http://drops.wooyun.org/papers/548。在android 4.2之后就需要在被js調(diào)用的方法上強(qiáng)制增加@JavascriptInterface 否則不能調(diào)用,但是android同時(shí)存在一個妥協(xié)的辦法就是如果程序允許在低版本的androd API上運(yùn)行,則不用遵守@JavascriptInterface這個規(guī)則,以為這遠(yuǎn)程命令執(zhí)行漏洞依然存在。