日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

5G時(shí)代,跟IMSI

 達(dá)坂城大豆 2018-07-04

作者:張婉橋

0x00 IMSI & IMSI-Catcher

我們以前擔(dān)心的手機(jī)泄漏個(gè)人位置隱私的問(wèn)題,也就是在2G/3G/4G一直存在的IMSI Catcher問(wèn)題,終于有望在5G標(biāo)準(zhǔn)里得到徹底解決啦! 這個(gè)問(wèn)題在每次制定新一代網(wǎng)絡(luò)標(biāo)準(zhǔn)的時(shí)候,都要爭(zhēng)論一回。這是網(wǎng)絡(luò)功能性、成本與安全性之間的斗爭(zhēng)。在5G的第一版標(biāo)準(zhǔn),Release15,關(guān)于安全的標(biāo)準(zhǔn)[1]中,IMSI加密是最大的亮點(diǎn)。

在2/3/4G網(wǎng)絡(luò)中,攻擊者能通過(guò)十分廉價(jià)的設(shè)備獲取你的位置。這是由于手機(jī)每次需要聯(lián)網(wǎng)的時(shí)候都要大聲喊著,“我是誰(shuí)誰(shuí)誰(shuí)”,攻擊者就可以通過(guò)手機(jī)報(bào)告的信息確定手機(jī)的大概位置了。專業(yè)一點(diǎn)的說(shuō),手機(jī)所廣播的那條“我是誰(shuí)誰(shuí)誰(shuí)”就是手機(jī)的IMSI碼,全球唯一,就如同你的身份證號(hào)。設(shè)想,如果滿大街都在喊著每個(gè)人的身份證號(hào),那么追蹤某一個(gè)人就變得容易了。

當(dāng)然實(shí)際上,IMSI這么關(guān)鍵的信息不會(huì)在你發(fā)送的每條信息中都帶著。手機(jī)還會(huì)有一個(gè)臨時(shí)身份證(GUTI/TMSI),平時(shí)傳遞數(shù)據(jù)都是使用這個(gè)臨時(shí)身份證,手機(jī)只有在特殊的場(chǎng)景下會(huì)發(fā)送自己的IMSI。手機(jī)會(huì)在哪些場(chǎng)合會(huì)發(fā)送自己的IMSI呢?

0x01 什么情況下手機(jī)會(huì)發(fā)送IMSI?

情景一:手機(jī)接入正常的網(wǎng)絡(luò)時(shí)
手機(jī)開(kāi)機(jī)后,先從USIM中讀取之前運(yùn)營(yíng)商分配的臨時(shí)身份信息GUTI/TMSI,發(fā)送攜帶該身份信息的信令給基站,請(qǐng)求接入運(yùn)營(yíng)商網(wǎng)絡(luò)?;臼盏皆撓⒑蟊戕D(zhuǎn)發(fā)給核心網(wǎng)的MME,若MME中可以查詢到對(duì)應(yīng)的GUTI/TMSI對(duì)應(yīng)的真實(shí)身份,則允許手機(jī)接入。若MME查詢不到,則需要重新對(duì)手機(jī)發(fā)起真實(shí)身份核驗(yàn)的請(qǐng)求“Identity Request”,即要求手機(jī)提供真實(shí)身份IMSI。
通常觸發(fā)手機(jī)真實(shí)身份驗(yàn)證的合理情況有:手機(jī)首次入網(wǎng)或手機(jī)移動(dòng)到其它MME覆蓋范圍后,MME中無(wú)法從網(wǎng)絡(luò)中查詢到手機(jī)的GUTI/TMSI,故而需要手機(jī)上報(bào)自己的真實(shí)身份。
在這種情景下,攻擊者只需采取被動(dòng)監(jiān)聽(tīng)就可以捕捉到手機(jī)的IMSI。

情景二:手機(jī)接入到偽基站網(wǎng)絡(luò)時(shí)
偽基站通過(guò)高信號(hào)強(qiáng)度壓制真實(shí)基站把手機(jī)吸進(jìn)來(lái)(手機(jī)會(huì)自動(dòng)選擇信號(hào)強(qiáng)度最強(qiáng)的基站),之后強(qiáng)行給連接過(guò)來(lái)的手機(jī)發(fā)送身份驗(yàn)證請(qǐng)求消息——“Identity Request”,手機(jī)就會(huì)乖乖的把自己真實(shí)身份報(bào)上來(lái)。
在該情境下,攻擊者采取的是主動(dòng)攻擊,需要打開(kāi)偽基站,不停的發(fā)送“Identity Request”就可以獲取周圍手機(jī)的真實(shí)身份。
這種獲取IMSI的工具,就稱為IMSI Catcher,其中比較出名的一款工具叫Stingray(黃貂魚(yú)),目前被一些執(zhí)法部門使用。Stingray是一款同時(shí)具有被動(dòng)監(jiān)聽(tīng)(監(jiān)聽(tīng)+數(shù)據(jù)分析)和主動(dòng)攻擊(偽造基站)的IMSI Catcher。通過(guò)獲取IMSI,TMSI,IMEI可以更好地獲取移動(dòng)終端的數(shù)據(jù)信息。并且設(shè)備非常便攜,可以裝在飛機(jī)、汽車、無(wú)人機(jī)等交通工具適用以上兩種情景,并且該設(shè)備還可以測(cè)繪基站的分布情況,自行進(jìn)行數(shù)據(jù)分析,追蹤目標(biāo)手機(jī)位置,監(jiān)聽(tīng)通信內(nèi)容,進(jìn)行DDoS攻擊等。

Stingray
圖:Stingray(圖片來(lái)自網(wǎng)絡(luò))

講到這,大家一定有疑問(wèn),這么重要的身份信息為何不能加密傳輸呢?因?yàn)樵诮踩B接的過(guò)程中,一開(kāi)始網(wǎng)絡(luò)不知道手機(jī)是誰(shuí),要先知道它是誰(shuí),才開(kāi)始交換密鑰,換句話說(shuō),核心網(wǎng)在加密信息前要確定對(duì)方是自己人。

0x02 5G是如何解決IMSI-Catcher問(wèn)題的呢?

5G決定引入公鑰私鑰的機(jī)制,公鑰用來(lái)公開(kāi)并加密,私鑰用來(lái)保留并解密。將公鑰存放在手機(jī)端,私鑰存放在運(yùn)營(yíng)商手里,如此一來(lái),只有運(yùn)營(yíng)商可以解密手機(jī)的真正的身份信息,攻擊者只能拿到加密后的信息,沒(méi)有私鑰而無(wú)法解出IMSI。

此時(shí),整個(gè)手機(jī)的鑒權(quán)流程是什么樣的呢?
手機(jī)的真實(shí)身份在5G里稱為SUPI(SUbscription Permanent Identifier)(類似IMSI),通過(guò)公鑰加密后的密文稱為SUCI(SUbscription Concealed Identifier),SUCI傳送給基站后,基站直接上傳至核心網(wǎng)[1]。
大概的流程如下圖所示:


鑒權(quán)流程
  1. 手機(jī)向基站gNB發(fā)起接入網(wǎng)絡(luò)的請(qǐng)求,發(fā)送SUCI(即加密的SUPI)或是GUTI;(注:在4G和5G共存的時(shí)代,將存在兩種無(wú)線接入與核心網(wǎng),這里我們單討論5G里通過(guò)NR-gNB作為接入核心網(wǎng)NGCN(NextGen Core)的方式)
  2. 基站gNB收到信息后,轉(zhuǎn)發(fā)至核心網(wǎng)的SEAF(SEcurity Anchor Function);
  3. SEAF收到信令后解析后看是GUTI還是SUCI,若是GUTI就匹配到對(duì)應(yīng)的SUPI,若為SUCI則不解密,繼續(xù)向AUSF(Authentication Server Function)發(fā)起鑒權(quán)申請(qǐng)Nausf_UEAuthentication_Authenticate Request,并攜帶對(duì)應(yīng)的網(wǎng)絡(luò)服務(wù)信息SN-Name,方便AUSF調(diào)用對(duì)應(yīng)鑒權(quán)算法AV(Authentication Vector,包含RAND, AUTN, HXRES*和 K_seaf);
  4. AUSF通過(guò)分析SEAF攜帶的網(wǎng)絡(luò)信息SN-Name,確定手機(jī)是否在網(wǎng)絡(luò)服務(wù)范圍內(nèi),并保存手機(jī)需要的網(wǎng)絡(luò)服務(wù)信息,接下來(lái)繼續(xù)將SUCI或SUPI和服務(wù)網(wǎng)絡(luò)信息SN-Name轉(zhuǎn)發(fā)給UDM(Unified Data Management);
  5. 在UDM中調(diào)用SIDF(Subscription identifier de-concealing function)將SUCI解密得到SUPI,然后通過(guò)SUPI來(lái)配置手機(jī)對(duì)應(yīng)所需的鑒權(quán)算法。
  6. 接下來(lái)便會(huì)根據(jù)手機(jī)的鑒權(quán)方式一步步提取對(duì)應(yīng)的鑒權(quán)秘鑰與鑒權(quán)結(jié)果,直至最后將結(jié)果反饋給手機(jī),手機(jī)端USIM會(huì)校驗(yàn)網(wǎng)絡(luò)側(cè)所發(fā)送鑒權(quán)結(jié)果的真?zhèn)巍?/li>

小編總結(jié)的目前3GPP標(biāo)準(zhǔn)里已經(jīng)確定的,與身份信息隱私保護(hù)相關(guān)的幾個(gè)關(guān)鍵點(diǎn):

  1. 手機(jī)端用來(lái)加密SUPI的公鑰存放在UICC的USIM中;
  2. SUCI的解密算法(SIDF)只會(huì)被執(zhí)行一次,放置在核心網(wǎng)的UDM中;
  3. 當(dāng)手機(jī)身份臨時(shí)身份GUTI無(wú)法識(shí)別時(shí),由AMF向手機(jī)發(fā)起Identity Request請(qǐng)求;若手機(jī)在注冊(cè)Emergency Service時(shí)收到Identity Request可以發(fā)送Null-Scheme的SUCI,即不加密的SUPI;
  4. 由AMF負(fù)責(zé)配置發(fā)送手機(jī)的5G-GUTI;
  5. SUCI的生成算法可以采用橢圓曲線集成加密方案(ECIES,elliptic curve integrate encrypt scheme),運(yùn)營(yíng)商也可以根據(jù)自己需求單獨(dú)采用個(gè)體方案,甚至可以采用Null-Scheme;

尚未確定的問(wèn)題有:

  1. GUTI更新的頻率未做硬性標(biāo)準(zhǔn)規(guī)定。GUTI雖然是臨時(shí)身份證,但如果長(zhǎng)時(shí)間不變,也是可以在一段時(shí)間內(nèi)用于追蹤的。標(biāo)準(zhǔn)有要求GUTI要經(jīng)常更新,并且有一些定時(shí)器設(shè)置,但什么時(shí)候更新是由網(wǎng)絡(luò)決定的。
  2. SUCI上報(bào)的頻率未做硬性規(guī)定。手機(jī)在收到網(wǎng)絡(luò)側(cè)發(fā)送的Identity Request時(shí),需要回復(fù)SUCI。手機(jī)要保證每次發(fā)送的SUCI都是新鮮的,隨機(jī)的。但偽基站仍可以不斷要求手機(jī)發(fā)送SUCI,會(huì)導(dǎo)致手機(jī)電力消耗或者發(fā)起一些DoS攻擊等等。

0x03 如何把SUPI加密為SUCI

下圖1所示中我們可以看到兩對(duì)秘鑰對(duì),一對(duì)是終端側(cè)Eph.key pair generation,產(chǎn)生Eph. public key和Eph. private key。另外一對(duì)來(lái)自運(yùn)營(yíng)商網(wǎng)絡(luò), 終端側(cè)有Public key of HN(固定存放在USIM中)。這兩對(duì)秘鑰均采用橢圓曲線加密算法ECC生成。私鑰可以衍生出唯一的公鑰,但是從公鑰不能反推出私鑰。

終端生成的私鑰與網(wǎng)絡(luò)提供的公鑰結(jié)合,派生出一對(duì)加密秘鑰Eph.shared key(用來(lái)加密的原始秘鑰),隨后派生出加密的主密鑰,取高有效位對(duì)SUPI進(jìn)行對(duì)稱加密,得到SUCI,即Ciphertext;低有效位對(duì)所有的有用信息,包含終端參數(shù),進(jìn)行一個(gè)完整性保護(hù)。所以最后終端發(fā)出的消息包括:終端生成的公鑰、SUCI和終端參數(shù)等系列信息。


SUCI
圖1 終端側(cè)SUCI的生成方案

下圖2為網(wǎng)絡(luò)側(cè)對(duì)終端身份進(jìn)行SUCI驗(yàn)證的方案。網(wǎng)絡(luò)側(cè)采用私鑰(Private key of HN)與終端所發(fā)送的公鑰(Eph.public key of UE)組合成秘鑰Eph.shared key,隨后派生出主密鑰master key。不同于終端加密流程的是,網(wǎng)絡(luò)側(cè)會(huì)先通過(guò)秘鑰的低有效位校驗(yàn)消息的完整性與否(步驟5),若消息經(jīng)過(guò)中間人篡改,則該步驟的驗(yàn)證無(wú)法通過(guò)。若驗(yàn)證通過(guò),才會(huì)進(jìn)一步將信令轉(zhuǎn)發(fā)至UDM中執(zhí)行SIDF的過(guò)程,解密得到SUPI(Plain-text)。
該方案可以順利通過(guò)驗(yàn)證并解密得到SUPI的關(guān)鍵也是利用橢圓加密算法的特性:終端私鑰·網(wǎng)絡(luò)公鑰=網(wǎng)絡(luò)私鑰·終端公鑰(注:密鑰之間的乘法是橢圓曲線上的標(biāo)量乘法,所以終端與網(wǎng)絡(luò)側(cè)均采用同一條曲線,即橢圓曲線的參數(shù)一致Curve25519 [2]或secp256r1 [3])。


驗(yàn)證方案
圖2 網(wǎng)絡(luò)側(cè)對(duì)終端的驗(yàn)證方案

看完以上方案,大家可能有疑問(wèn):
1、網(wǎng)絡(luò)側(cè)的公鑰為何要存放在USIM中,而不是通過(guò)網(wǎng)絡(luò)下發(fā)更新?
2、網(wǎng)絡(luò)側(cè)公鑰泄露會(huì)有影響嗎?

問(wèn)題1:答:為了防中間人攻擊。設(shè)想網(wǎng)絡(luò)側(cè)的公鑰也是放在網(wǎng)絡(luò)中傳播的,那么就可以有中間人先截獲網(wǎng)絡(luò)中所傳送的公鑰,替換后發(fā)送給終端。如此一來(lái),終端發(fā)送過(guò)來(lái)的數(shù)據(jù)可以被中間人接收并解密,隨后中間人對(duì)數(shù)據(jù)進(jìn)行重新加密(在這個(gè)過(guò)程中還可以篡改數(shù)據(jù)),將消息傳回運(yùn)營(yíng)商網(wǎng)絡(luò)中,完成鑒權(quán)過(guò)程。

問(wèn)題2:答:不會(huì)。僅拿到公鑰無(wú)法完成對(duì)信令的解密,更不會(huì)影響終端的正常鑒權(quán)過(guò)程。

0x04 使用IMSI進(jìn)行paging的方法在5G網(wǎng)絡(luò)中可能失效

前段時(shí)間在通信圈比較熱門的一篇LTE曝光多個(gè)漏洞的論文賺足了眼球,可以參考我們之前發(fā)的博客:
對(duì)LTE INSPECTOR論文的一些解讀

其中有一種攻擊使用IMSI進(jìn)行paging的攻擊,在5G網(wǎng)絡(luò)中可能會(huì)失效,小編在此與大家探討一下。

作者采用目標(biāo)受害者的IMSI來(lái)廣播尋呼消息Paging,只有目標(biāo)手機(jī)聽(tīng)到這個(gè)paging消息會(huì)返回一個(gè)Attach Request消息,并且攜帶相同的IMSI。這個(gè)思路擴(kuò)展到5G中,就是之前捕捉到手機(jī)SUCI(無(wú)需解密)來(lái)Paging目標(biāo)手機(jī)。如果手機(jī)的SUCI更新頻率較低,則可能觸發(fā)手機(jī)的Attach Request,通過(guò)捕捉該消息依舊有可能得知手機(jī)的位置。不過(guò),3GPP SA3要求5G只采用GUTI做Paging來(lái)尋呼手機(jī),如果最終相關(guān)的標(biāo)準(zhǔn)確定,就能保證在5G中這種攻擊不會(huì)有效。

然而,如果決定只使用GUTI做paging的話,一旦手機(jī)與網(wǎng)絡(luò)間的GUTI的同步關(guān)系丟失,基站就有可能尋呼不到目標(biāo)手機(jī),只有等待手機(jī)再次主動(dòng)與網(wǎng)絡(luò)同步。因此3GPP其他小組(非安全組)仍在討論相關(guān)的方案。

不管怎么說(shuō),IMSI的加密傳輸實(shí)在是令人大快人心的決定,機(jī)智的小伙伴,你能在5G的SUPI/SUCI機(jī)制中發(fā)現(xiàn)什么紕漏嗎?如果有,歡迎跟我們一起交流討論,盡量在5G網(wǎng)絡(luò)商用之前及時(shí)補(bǔ)救,讓下一代的移動(dòng)通信更有力的保護(hù)我們每個(gè)人的隱私。

[1] 3GPP TS 33.501 Security architecture and procedures for 5G system(Release 15)
[2] IETF RFC 7748: “Elliptic Curves for Security”.
[3] SECG SEC 2: Recommended Elliptic Curve Domain Parameters, Version 2.0, 2010. Available at http://www./sec2-v2.pdf

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多