免费国产精品自在自线-91精品国产色综合久久久浪潮-99热久久免费频精品-国产精品国模在线观看-久久亚洲国产精品成人?V秋霞-久久国产一级A片免费播放-亚洲国产欧洲综合97久久-久久国产白嫩美女呻吟高潮

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營(yíng)的一線(xiàn)實(shí)戰(zhàn)洞察。

STM32H5 Secure Manager與CycloneCRYPTO集成:Opaque Key與TLS安全實(shí)踐

STM32H5 Secure Manager與CycloneCRYPTO集成:Opaque Key與TLS安全實(shí)踐 當(dāng)一個(gè)嵌入式設(shè)備的TLS連接需要用到私鑰簽名而私鑰本身又不允許被應(yīng)用層代碼直接讀取時(shí)問(wèn)題就變得非常棘手。STM32H5的Secure Manager配合CycloneCRYPTO TLS棧恰好解決了這個(gè)“既要安全、又要可用”的矛盾。這篇文章圍繞實(shí)際項(xiàng)目中的外設(shè)所有權(quán)分配和Opaque Key處理把方案選型、配置流程、集成要點(diǎn)和踩坑實(shí)錄一次性講透。1. 項(xiàng)目場(chǎng)景與方案選型思路1.1 為什么在STM32H5上需要Secure ManagerSTM32H5系列采用的是Cortex-M33內(nèi)核配套TrustZone技術(shù)這讓芯片在硬件層面天然劃分出安全世界Secure World和非安全世界Non-Secure World。但很多開(kāi)發(fā)者第一次接觸這個(gè)架構(gòu)時(shí)有個(gè)很直接的困惑我為什么要自己維護(hù)安全世界的固件安全啟動(dòng)、可信根、密鑰管理、加密算法庫(kù)這些東西都要自己寫(xiě)、自己調(diào)試、自己保證沒(méi)有漏洞工作量非常大而且安全固件本身就是最容易被攻擊的部分。Secure Manager存在的意義就是把這些事全部接管。它是ST官方預(yù)置在芯片中的固定功能安全固件運(yùn)行在安全世界對(duì)外提供PSA Certified API。應(yīng)用開(kāi)發(fā)者只需要在非安全世界調(diào)用它的接口就能完成密鑰管理、加密運(yùn)算、安全存儲(chǔ)、初始 attestation 等操作。換句話(huà)說(shuō)你不需要自己寫(xiě)安全世界的代碼也不需要了解TrustZone底層的工作細(xì)節(jié)只要按照PSA API的規(guī)矩來(lái)調(diào)用就行。用ST官方的話(huà)說(shuō)Secure Manager為STM32H5提供了符合PSA Certified Level 3認(rèn)證的安全服務(wù)。Level 3意味著它不僅做了軟件隔離還包含了硬件防護(hù)能夠抵御物理攻擊比如側(cè)信道分析、故障注入、調(diào)試接口探測(cè)。對(duì)于物聯(lián)網(wǎng)設(shè)備、工業(yè)控制器、醫(yī)療設(shè)備這類(lèi)對(duì)安全等級(jí)有硬性要求的產(chǎn)品這一步省下來(lái)的不只是開(kāi)發(fā)時(shí)間更是安全審計(jì)時(shí)的底氣。1.2 為什么選CycloneCRYPTO而不是mbedTLSTLS協(xié)議棧的選擇我對(duì)比過(guò)mbedTLS和CycloneCRYPTO。mbedTLS在嵌入式領(lǐng)域知名度很高資料多社區(qū)活躍但它和Secure Manager的集成方式相對(duì)原始需要自己做很多膠水代碼。CycloneCRYPTO在這方面有個(gè)明顯的優(yōu)勢(shì)它本身就是為嵌入式環(huán)境設(shè)計(jì)的模塊化做得非常干凈TLS層和Crypto層分離底層可以靈活對(duì)接不同的硬件加速和安全服務(wù)。更重要的一點(diǎn)是CycloneCRYPTO對(duì)PSA Crypto API有較為成體系的適配思路。它允許你在TLS握手過(guò)程中把私鑰操作回調(diào)出去而不是像mbedTLS那樣默認(rèn)直接讀取內(nèi)存中的私鑰。這種架構(gòu)上的契合度讓我在集成Secure Manager時(shí)省了不少事。當(dāng)然mbedTLS也完全可以用如果你熟悉它的回調(diào)機(jī)制同樣能把私鑰操作轉(zhuǎn)發(fā)到Secure Manager。但從項(xiàng)目開(kāi)發(fā)效率的角度看CycloneCRYPTO的分層設(shè)計(jì)讓我能更專(zhuān)注于業(yè)務(wù)邏輯而不是修補(bǔ)協(xié)議棧的邊界。1.3 整體架構(gòu)誰(shuí)在哪一側(cè)干什么活把整體架構(gòu)理清楚是項(xiàng)目啟動(dòng)前最重要的一步。在這個(gè)方案里系統(tǒng)被分為兩個(gè)世界安全世界這邊Secure Manager負(fù)責(zé)密鑰的生成、存儲(chǔ)、簽名、解密等所有涉及敏感材料的操作。非安全世界這邊跑的是你的應(yīng)用程序、網(wǎng)絡(luò)協(xié)議棧、CycloneCRYPTO TLS棧、還有RTOS。TLS握手過(guò)程中的私鑰簽名請(qǐng)求會(huì)經(jīng)由PSA API調(diào)度的方式進(jìn)入安全世界由Secure Manager完成簽名后返回結(jié)果。這中間最關(guān)鍵的點(diǎn)在于私鑰永遠(yuǎn)不需要離開(kāi)安全世界。應(yīng)用代碼拿到的是一個(gè)Opaque Key Handle也就是不透明密鑰句柄通過(guò)它去引用安全世界中的密鑰對(duì)象。這個(gè)過(guò)程對(duì)TLS協(xié)議棧來(lái)說(shuō)是透明的協(xié)議棧只關(guān)心“給我一個(gè)簽名結(jié)果”完全不關(guān)心簽名是在哪里完成的。外設(shè)所有權(quán)則通過(guò)GTZCGlobal TrustZone Controller來(lái)分配。比如以太網(wǎng)外設(shè)、串口這類(lèi)TLS需要訪(fǎng)問(wèn)的外設(shè)可以分配給非安全世界而Secure Manager自身需要的系統(tǒng)資源、存儲(chǔ)區(qū)域則保留在安全世界。具體的分配邏輯和配置方法下面會(huì)詳細(xì)展開(kāi)。2. 外設(shè)所有權(quán)分配先劃清楚邊界才能談其他2.1 TrustZone世界劃分與Secure Manager的邊界在STM32H5上系統(tǒng)啟動(dòng)后默認(rèn)大部分資源歸安全世界所有。當(dāng)Secure Manager初始化完成后它會(huì)釋放一部分資源給非安全世界這個(gè)過(guò)程由芯片內(nèi)部的IDAUImplementation Defined Attribution Unit和SAUSecurity Attribution Unit共同決定。IDAU是芯片廠(chǎng)商定義的固定內(nèi)存映射規(guī)則哪些地址區(qū)域?qū)儆诎踩?、哪些屬于非安全在芯片出廠(chǎng)時(shí)就定死了代碼無(wú)法修改。SAU則是ARM內(nèi)核提供的一個(gè)可配置單元允許軟件在IDAU的基礎(chǔ)上進(jìn)一步細(xì)化安全屬性。對(duì)于開(kāi)發(fā)者來(lái)說(shuō)理解這個(gè)機(jī)制的意義在于不是所有看起來(lái)要用的地址都能直接訪(fǎng)問(wèn)。如果你在非安全世界訪(fǎng)問(wèn)了一個(gè)被標(biāo)記為安全的地址會(huì)直接觸發(fā)HardFault或Security Fault。這類(lèi)問(wèn)題在調(diào)試時(shí)特別讓人抓狂因?yàn)樗桓嬖V你具體原因只會(huì)看到程序突然死掉。Secure Manager會(huì)把自己的安全服務(wù)接口通過(guò)特定的內(nèi)存窗口暴露給非安全世界調(diào)用。這些窗口在出廠(chǎng)時(shí)已經(jīng)配置好你需要做的是確定自己的外設(shè)和內(nèi)存緩沖區(qū)分別放在哪一側(cè)然后嚴(yán)格按照這個(gè)劃分來(lái)寫(xiě)代碼。2.2 用STM32CubeMX配置GTZC的實(shí)操步驟GTZC負(fù)責(zé)管理外設(shè)的安全屬性。在STM32CubeMX中你可以通過(guò)圖形化界面給每個(gè)外設(shè)分配安全或非安全屬性。操作路徑大致是在STM32CubeMX中選中STM32H5系列芯片后在Pinout視圖里找到GTZC然后在安全配置界面中你會(huì)看到所有外設(shè)的列表。將需要給非安全世界使用的外設(shè)勾選為Non-Secure將Secure Manager依賴(lài)的外設(shè)保留為Secure。以我這個(gè)項(xiàng)目為例需要分配的外設(shè)包括以太網(wǎng)MAC、PHY管理接口、相關(guān)DMA通道分配給非安全世界因?yàn)長(zhǎng)wIP協(xié)議棧跑在非安全側(cè)。USART用于日志輸出、配置指令下發(fā)分配給非安全世界。系統(tǒng)Tick定時(shí)器、SysTick中斷分配給非安全世界否則RTOS跑不起來(lái)。安全存儲(chǔ)相關(guān)的Flash區(qū)域保留在安全世界。這里有個(gè)容易忽略的細(xì)節(jié)當(dāng)你把一個(gè)外設(shè)設(shè)置為非安全屬性時(shí)它的中斷也要同步設(shè)置為Non-Secure否則中斷無(wú)法正常觸發(fā)。在CubeMX中這通常是在NVIC配置界面中完成但GTZC的安全配置不會(huì)自動(dòng)聯(lián)動(dòng)。我見(jiàn)過(guò)不少人在這一步踩坑外設(shè)已經(jīng)非安全了中斷還是安全的結(jié)果功能完全不正常。2.3 中斷、DMA和時(shí)鐘的權(quán)限細(xì)節(jié)外設(shè)所有權(quán)不只是“數(shù)據(jù)寄存器能不能訪(fǎng)問(wèn)”這么簡(jiǎn)單。中斷控制器、DMA通道、時(shí)鐘樹(shù)里每個(gè)外設(shè)的時(shí)鐘使能位都存在安全屬性問(wèn)題。在STM32H5上NVIC支持安全和非安全中斷。Secure Manager使用安全中斷來(lái)完成它的內(nèi)部調(diào)度用戶(hù)應(yīng)用使用非安全中斷。你在配置RTOS的SysTick、以太網(wǎng)接收中斷等都必須確保這些中斷被設(shè)置為Non-Secure狀態(tài)。如果你在非安全代碼里嘗試操作一個(gè)安全中斷的掛起或使能位會(huì)發(fā)生總線(xiàn)錯(cuò)誤。DMA方面STM32H5的DMA控制器支持按通道配置安全屬性。以太網(wǎng)收發(fā)使用DMA是常態(tài)你要么把用到的DMA通道都設(shè)置成非安全要么就用一個(gè)獨(dú)立的非安全DMA控制器。我建議直接按通道配置這樣靈活性更大調(diào)試時(shí)也方便逐個(gè)排查。時(shí)鐘配置是另一個(gè)容易漏掉的點(diǎn)。RCCReset and Clock Control模塊在GTZC中被視為一個(gè)外設(shè)它的安全屬性決定了非安全代碼能否修改時(shí)鐘樹(shù)。如果你在系統(tǒng)初始化階段把RCC分配給了安全世界而后面的外設(shè)驅(qū)動(dòng)在非安全世界試圖開(kāi)啟某個(gè)外設(shè)時(shí)鐘會(huì)直接失敗。一般的做法是把RCC設(shè)置為非安全讓外設(shè)驅(qū)動(dòng)可以正常操作時(shí)鐘但Secure Manager自己的安全啟動(dòng)流程依賴(lài)的時(shí)鐘會(huì)在早期初始化完成后才會(huì)被釋放。這里有個(gè)實(shí)操技巧建議在CubeMX中把所有外設(shè)的安全屬性先整體規(guī)劃好不要一邊配置一邊改。因?yàn)橥庠O(shè)之間可能有依賴(lài)關(guān)系比如USART需要DMADMA又需要RCC如果只改了其中一個(gè)很容易引入隱蔽問(wèn)題。2.4 我踩過(guò)的外設(shè)所有權(quán)坑第一個(gè)坑是在以太網(wǎng)DMA上。當(dāng)時(shí)把ETH的MAC和PHY都設(shè)置成了非安全但DMA通道還留著安全屬性。結(jié)果就是PHY通信正常MAC寄存器也能訪(fǎng)問(wèn)但一旦啟用了DMA傳輸就觸發(fā)總線(xiàn)錯(cuò)誤。排查了很久才發(fā)現(xiàn)DMA通道的安全屬性沒(méi)有同步配置。這里提醒一句GTZC的安全配置是按外設(shè)顆粒度設(shè)置的但不代表外設(shè)內(nèi)部的所有子資源DMA通道、時(shí)鐘請(qǐng)求、中斷源都會(huì)自動(dòng)跟隨。第二個(gè)坑是RCC時(shí)鐘使能。最初我把RCC設(shè)置為安全后來(lái)發(fā)現(xiàn)從非安全世界調(diào)用HAL_RCC_ClockConfig時(shí)函數(shù)返回HAL_ERROR但沒(méi)有任何日志。一開(kāi)始以為是對(duì)外設(shè)的時(shí)鐘配置寫(xiě)錯(cuò)了排查了幾天才發(fā)現(xiàn)是GTZC的安全屬性擋住了非安全側(cè)的RCC操作。這個(gè)問(wèn)題的隱蔽點(diǎn)在于是它沒(méi)有HardFault就只是API返回錯(cuò)誤非常容易讓人的排查方向跑偏。第三個(gè)坑是調(diào)試接口。Secure Manager運(yùn)行后調(diào)試器默認(rèn)無(wú)法訪(fǎng)問(wèn)安全世界的資源。如果你想用J-Link或ST-LINK直接看安全世界的內(nèi)容需要在調(diào)試器的初始化腳本里使能調(diào)試授權(quán)同時(shí)設(shè)置好授權(quán)的安全等級(jí)。開(kāi)發(fā)早期我把所有調(diào)試都放在非安全側(cè)結(jié)果每次想看Secure Manager內(nèi)部狀態(tài)都無(wú)從下手最后是通過(guò)Secure Manager自帶的tracer接口和日志輸出來(lái)解決的。3. Opaque Key處理讓私鑰“看得見(jiàn)卻拿不走”3.1 不透明密鑰機(jī)制的核心邏輯Opaque Key翻譯過(guò)來(lái)叫不透明密鑰。它是整個(gè)方案里最核心的一個(gè)概念應(yīng)用代碼通過(guò)一個(gè)句柄引用密鑰但密鑰本身的內(nèi)容永遠(yuǎn)不會(huì)暴露給使用者。你可以把它理解成一把被鎖在保險(xiǎn)柜里的鑰匙你拿到的是一個(gè)保險(xiǎn)柜的編號(hào)憑證用來(lái)讓別人幫你開(kāi)鎖而不是真正擁有那把鑰匙。在Secure Manager的語(yǔ)境下這個(gè)機(jī)制由PSA Crypto API實(shí)現(xiàn)。你在安全世界中生成或?qū)朊荑€后Secure Manager會(huì)返回一個(gè)32位的密鑰標(biāo)識(shí)符key ID應(yīng)用代碼后續(xù)的操作都依賴(lài)這個(gè)ID。當(dāng)需要私鑰簽名時(shí)調(diào)用psa_sign_hash傳入密鑰ID、摘要和輸出緩沖區(qū)Secure Manager在安全世界完成簽名計(jì)算返回結(jié)果。為什么必須這樣設(shè)計(jì)因?yàn)門(mén)LS握手過(guò)程中客戶(hù)端使用私鑰進(jìn)行簽名這個(gè)簽名的最終結(jié)果是可公開(kāi)的但私鑰本身一旦泄露安全體系就徹底崩潰。Opaque Key保證了即使非安全世界的代碼被完全攻破攻擊者也拿不到私鑰只能通過(guò)受限的API讓Secure Manager幫它簽名。3.2 PSA Crypto API的密鑰調(diào)用流程在實(shí)際的調(diào)用流程中你需要熟悉一組PSA API。下面這段以導(dǎo)入私鑰為例psa_key_attributes_t key_attrs PSA_KEY_ATTRIBUTES_INIT; psa_key_id_t key_id; psa_set_key_usage_flags(key_attrs, PSA_KEY_USAGE_SIGN_HASH); psa_set_key_algorithm(key_attrs, PSA_ALG_ECDSA(PSA_ALG_SHA_256)); psa_set_key_type(key_attrs, PSA_KEY_TYPE_ECC_KEY_PAIR(PSA_ECC_FAMILY_SECP_R1)); psa_set_key_bits(key_attrs, 256); psa_import_key(key_attrs, private_key_buffer, private_key_buffer_len, key_id);這段代碼做的事情是把一段私鑰字節(jié)流導(dǎo)入到Secure Manager中。導(dǎo)入完成后private_key_buffer這個(gè)緩沖區(qū)里存放的私鑰數(shù)據(jù)理論上可以擦除后續(xù)一切操作都通過(guò)key_id來(lái)引用。在TLS握手階段CycloneCRYPTO需要私鑰簽名時(shí)我們?cè)谶m配層實(shí)現(xiàn)一個(gè)回調(diào)把簽名請(qǐng)求分發(fā)到PSA APIpsa_sign_hash(key_id, PSA_ALG_ECDSA(PSA_ALG_SHA_256), hash, hash_len, signature, signature_capacity, signature_len);注意簽名算法必須和導(dǎo)入密鑰時(shí)設(shè)置的一致否則PSA API會(huì)返回錯(cuò)誤。在TLS 1.2中這個(gè)算法需要和證書(shū)簽名算法匹配TLS 1.3中因?yàn)楹灻惴▍f(xié)商的粒度更細(xì)這個(gè)約束更嚴(yán)格。3.3 密鑰導(dǎo)入與持久化的細(xì)節(jié)密鑰的導(dǎo)入方式有好幾種可以是純文本的私鑰導(dǎo)入也可以直接在安全世界內(nèi)部生成密鑰對(duì)內(nèi)導(dǎo)出公鑰。實(shí)際開(kāi)發(fā)中我更推薦在Secure Manager內(nèi)部生成密鑰對(duì)因?yàn)檫@樣私鑰從誕生到使用全程沒(méi)有離開(kāi)過(guò)安全世界。psa_generate_key(key_attrs, key_id);生成后通過(guò)psa_export_public_key導(dǎo)出公鑰再拿公鑰去制作CSR證書(shū)簽名請(qǐng)求然后交給CA簽發(fā)證書(shū)。這個(gè)過(guò)程既安全又符合邏輯。關(guān)于持久化PSA API提供了存儲(chǔ)屬性設(shè)置。通過(guò)psa_set_key_lifetime設(shè)置持久化生命周期密鑰就會(huì)保存到安全存儲(chǔ)中系統(tǒng)重啟后依然存在。這里要特別注意持久化密鑰的ID分配——建議用一個(gè)配置文件定義所有密鑰的ID避免重啟后代碼引用不到正確的密鑰。一個(gè)反復(fù)出現(xiàn)的坑是存儲(chǔ)在Flash中的密鑰備份問(wèn)題。如果設(shè)備需要固件升級(jí)且升級(jí)過(guò)程會(huì)擦除安全存儲(chǔ)區(qū)域必須提前考慮密鑰備份與恢復(fù)方案否則升級(jí)后設(shè)備證書(shū)還在但私鑰沒(méi)了會(huì)導(dǎo)致TLS握手徹底失敗。3.4 結(jié)合TLS握手的密鑰使用流程整個(gè)流程串起來(lái)看是這樣的系統(tǒng)啟動(dòng)Secure Manager初始化。非安全世界調(diào)用PSA API打開(kāi)持久化的私鑰拿到key_id。網(wǎng)絡(luò)安全棧初始化LwIP或CycloneTCP開(kāi)始監(jiān)聽(tīng)TLS端口??蛻?hù)端發(fā)起TLS握手服務(wù)器發(fā)送證書(shū)并請(qǐng)求客戶(hù)端證書(shū)雙向認(rèn)證場(chǎng)景。CyCloneCRYPTO在握手過(guò)程中需要客戶(hù)端私鑰簽名調(diào)用適配層回調(diào)。適配層用key_id和握手摘要調(diào)用psa_sign_hash。簽名結(jié)果返回給TLS協(xié)議棧完成握手。對(duì)這個(gè)流程的直觀感受是TLS協(xié)議棧本身完全不知道Secure Manager的存在它只是調(diào)用了一個(gè)看起來(lái)像普通軟件實(shí)現(xiàn)的簽名函數(shù)。這層透明性是CycloneCRYPTO設(shè)計(jì)優(yōu)秀的地方。4. 集成CycloneCRYPTO TLS棧的關(guān)鍵環(huán)節(jié)4.1 CycloneCRYPTO分層架構(gòu)與適配點(diǎn)CycloneCRYPTO的架構(gòu)分為幾個(gè)層次底層是加密算法實(shí)現(xiàn)AES、ECC、RSA、SHA等中間是密碼學(xué)操作上下文cipher context、hash context上層是和TLS協(xié)議對(duì)接的TLS層最外層是一個(gè)平臺(tái)抽象層platform abstraction layer。平臺(tái)抽象層是你需要重點(diǎn)關(guān)注的地方。它定義了以下幾個(gè)關(guān)鍵接口隨機(jī)數(shù)生成用于TLS握手中的隨機(jī)數(shù)、臨時(shí)密鑰生成。時(shí)間獲取用于證書(shū)有效期驗(yàn)證。硬件加速回調(diào)用于把AES、SHA等運(yùn)算交給硬件加密引擎。內(nèi)存分配TLS握手過(guò)程中需要大量的動(dòng)態(tài)內(nèi)存分配CycloneCRYPTO支持兩個(gè)內(nèi)存區(qū)域數(shù)據(jù)面和堆面。其中隨機(jī)數(shù)和時(shí)間這兩個(gè)接口最容易出問(wèn)題。如果隨機(jī)數(shù)質(zhì)量不行TLS握手的隨機(jī)數(shù)就會(huì)弱化直接導(dǎo)致會(huì)話(huà)密鑰可預(yù)測(cè)。STM32H5內(nèi)置了TRNG真隨機(jī)數(shù)生成器可以直接用但要注意初始化順序TRNG外設(shè)在初始化完成后才能提供合格的隨機(jī)數(shù)提前調(diào)用會(huì)卡住或返回錯(cuò)誤。關(guān)于時(shí)間獲取很多嵌入式設(shè)備沒(méi)有RTC或者RTC沒(méi)校準(zhǔn)。如果證書(shū)驗(yàn)證使用的是絕對(duì)時(shí)間而系統(tǒng)時(shí)間是錯(cuò)的TLS握手會(huì)在證書(shū)有效期校驗(yàn)時(shí)報(bào)錯(cuò)。一個(gè)實(shí)用的做法是在產(chǎn)品出廠(chǎng)時(shí)寫(xiě)入一個(gè)基準(zhǔn)時(shí)間后續(xù)通過(guò)NTP等方式同步。4.2 和Secure Manager的對(duì)接接口實(shí)現(xiàn)CycloneCRYPTO中私鑰操作是通過(guò)tlsSetEllipticCurvePrivateKey或tlsSetRsaPrivateKey等函數(shù)傳入。在標(biāo)準(zhǔn)使用中你需要傳入私鑰的內(nèi)容。但與Secure Manager對(duì)接時(shí)不能直接傳私鑰而是要傳一個(gè)回調(diào)函數(shù)。以ECDSA簽名為例在初始化TLS上下文時(shí)TlsContext tlsContext; tlsInit(tlsContext); tlsSetECDSASigningCallback(tlsContext, secureManagerEcdsaSignCallback);回調(diào)函數(shù)內(nèi)部實(shí)現(xiàn)PSA API簽名int32_t secureManagerEcdsaSignCallback(const TlsContext *context, const TlsKeyExchange *keyExchange, const uint8_t *digest, size_t digestSize, uint8_t *signature, size_t *signatureSize) { psa_key_id_t keyId (psa_key_id_t)keyExchange-privateKey; psa_algorithm_t alg PSA_ALG_ECDSA(PSA_ALG_SHA_256); if (psa_sign_hash(keyId, alg, digest, digestSize, signature, *signatureSize, signatureSize) ! PSA_SUCCESS) { return -1; } return 0; }這里有個(gè)很有意思的細(xì)節(jié)privateKey字段在標(biāo)準(zhǔn)實(shí)現(xiàn)中是一個(gè)指向私鑰結(jié)構(gòu)的指針但在對(duì)接Secure Manager時(shí)我們把這個(gè)字段的語(yǔ)義改成了存key_id。從數(shù)據(jù)類(lèi)型的角度說(shuō)它仍然是一個(gè)整型變量所以不會(huì)產(chǎn)生編譯問(wèn)題。這種技巧在移植第三方TLS庫(kù)時(shí)非常常用相當(dāng)于在協(xié)議棧預(yù)留的接口上做了一層狀態(tài)注入。TLS客戶(hù)端驗(yàn)證服務(wù)器證書(shū)時(shí)也需要配置CA證書(shū)。這部分不涉及私鑰可以直接把CA證書(shū)鏈放在非安全世界因?yàn)镃A證書(shū)是公開(kāi)信息。但如果你想做得更安全可以把CA證書(shū)也存入Secure Manager的安全存儲(chǔ)通過(guò)PSA API讀取。不過(guò)我建議不要這樣因?yàn)槊看挝帐侄家x取證書(shū)會(huì)拖慢性能而且CA證書(shū)泄露本身不構(gòu)成安全威脅。4.3 TLS會(huì)話(huà)建立流程與代碼實(shí)現(xiàn)下面是一個(gè)比較貼近實(shí)際項(xiàng)目的TLS服務(wù)器初始化流程// 初始化TLS上下文 TlsContext tlsCtx; TlsInit(tlsCtx); // 設(shè)置服務(wù)器證書(shū) tlsSetCertificate(tlsCtx, serverCert); // 設(shè)置ECDSA簽名回調(diào)為Secure Manager適配層 tlsSetECDSASigningCallback(tlsCtx, secureManagerEcdsaSignCallback); // 設(shè)置密鑰交換參數(shù) TlsKeyExchange keyExchange; keyExchange.privateKey secureManagerKeyId; // 把keyId傳給適配層 tlsSetKeyExchange(tlsCtx, keyExchange); // 設(shè)置密碼套件列表 const TlsCipherSuite *cipherSuites[]; tlsSetCipherSuites(tlsCtx, cipherSuites, cipherSuiteCount); // 設(shè)置平臺(tái)抽象接口 TlsPlatformContext platformCtx; platformCtx.getRandom h5TrngGetRandom; platformCtx.getTime rtcGetTime; tlsSetPlatformContext(tlsCtx, platformCtx); // 開(kāi)始握手 TlsPerformHandshake(tlsCtx, socket);這段代碼已經(jīng)在實(shí)際項(xiàng)目中跑通。整體來(lái)說(shuō)CycloneCRYPTO的API是清晰穩(wěn)定的不需要像mbedTLS那樣手動(dòng)管理握手狀態(tài)機(jī)。但需要注意TlsPerformHandshake是阻塞調(diào)用你必須確保它運(yùn)行在一個(gè)有足夠??臻g的任務(wù)中如果用的是RTOS建議給它分配不小于8KB的棧。4.4 吞吐優(yōu)化與資源占用TLS握手的資源占用大致分布握手過(guò)程中需要為每個(gè)會(huì)話(huà)分配臨時(shí)緩沖區(qū)主要包括握手消息緩沖區(qū)、加密上下文等一個(gè)TLS 1.2握手的內(nèi)存峰值大約5-10KB。STM32H5的SRAM配置一般是640KB所以?xún)?nèi)存不是瓶頸。性能方面TLS握手最耗時(shí)的操作是ECDHE密鑰交換和ECDSA簽名。在STM32H5上如果使用硬件加速的橢圓曲線(xiàn)運(yùn)算單個(gè)ECDSA簽名大概需要幾毫秒到幾十毫秒取決于時(shí)鐘頻率和優(yōu)化級(jí)別。如果完全靠軟件CycloneCRYPTO自帶的軟件實(shí)現(xiàn)也能跑但握手時(shí)間會(huì)明顯變長(zhǎng)用戶(hù)體驗(yàn)差很多。我把CycloneCRYPTO的底層哈希和對(duì)稱(chēng)加密都切到了STM32H5的硬件加密引擎上實(shí)測(cè)TLS 1.2握手總耗時(shí)大約在200ms以?xún)?nèi)100MHz主頻下后續(xù)數(shù)據(jù)傳輸?shù)耐掏铝恳材芘艿揭蕴W(wǎng)速率的90%以上。這個(gè)優(yōu)化就一句話(huà)在平臺(tái)抽象層的加密回調(diào)里調(diào)用HAL的硬件接口別讓它走軟件實(shí)現(xiàn)。5. 常見(jiàn)握手失敗與安全加固排查實(shí)錄5.1 TLS憑據(jù)創(chuàng)建失敗內(nèi)部錯(cuò)誤狀態(tài)10013的排查思路現(xiàn)實(shí)中遇到“創(chuàng)建TLS客戶(hù)端憑據(jù)時(shí)發(fā)生嚴(yán)重錯(cuò)誤內(nèi)部錯(cuò)誤狀態(tài)為10013”這種問(wèn)題在嵌入式TLS服務(wù)器端也會(huì)以類(lèi)似的形式出現(xiàn)常見(jiàn)的是客戶(hù)端返回TLS alert服務(wù)端日志顯示handshake failure。10013這個(gè)錯(cuò)誤在Windows的SSPI體系里大致意思是安全包無(wú)法找到或憑據(jù)創(chuàng)建失敗。如果是嵌入式設(shè)備作為T(mén)LS客戶(hù)端去連接遠(yuǎn)程服務(wù)器出現(xiàn)類(lèi)似報(bào)錯(cuò)通??梢詮膸讉€(gè)方向排查第一證書(shū)鏈不完整或證書(shū)格式不兼容。STM32H5上存放證書(shū)時(shí)如果格式是DER而服務(wù)器要求的是PEM或者證書(shū)鏈中間證書(shū)缺失都可能導(dǎo)致客戶(hù)端無(wú)法構(gòu)造可接受的憑據(jù)。第二私鑰類(lèi)型與算法套件不匹配。很多設(shè)備商喜歡用RSA證書(shū)但你的TLS棧默認(rèn)密碼套件列表可能壓根不含RSA套件。比如CycloneCRYPTO的默認(rèn)配置如果只啟用了ECDSA套件你拿著RSA私鑰的證書(shū)去握手報(bào)錯(cuò)信息就是你看到的這個(gè)樣子。第三時(shí)間不同步。證書(shū)有效期的驗(yàn)證依賴(lài)系統(tǒng)時(shí)間。設(shè)備出廠(chǎng)時(shí)如果時(shí)間沒(méi)校準(zhǔn)證書(shū)會(huì)顯示已過(guò)期或未生效。一個(gè)建議是排查這類(lèi)TLS握手失敗時(shí)不要只看錯(cuò)誤碼本身先去打開(kāi)TLS調(diào)試日志。CycloneCRYPTO提供了TLS_TRACE_LEVEL宏開(kāi)啟后能打印詳細(xì)的握手過(guò)程比對(duì)著報(bào)錯(cuò)碼猜要高效得多。5.2 CVE-2011-1473重協(xié)商攻擊的防護(hù)CVE-2011-1473描述的是TLS客戶(hù)端發(fā)起的重協(xié)商攻擊。攻擊者在己方控制的TLS連接中在未完成握手時(shí)通過(guò)重協(xié)商請(qǐng)求注入數(shù)據(jù)可能導(dǎo)致數(shù)據(jù)保密性問(wèn)題。實(shí)際上現(xiàn)在的安全掃描器在掃描嵌入式設(shè)備時(shí)如果發(fā)現(xiàn)支持TLS重協(xié)商且未啟用RFC 5746安全重協(xié)商擴(kuò)展就會(huì)報(bào)這個(gè)漏洞。在STM32H5設(shè)備上這個(gè)問(wèn)題的處理方式有兩層。第一層是協(xié)議棧層面。CycloneCRYPTO在TLS 1.2實(shí)現(xiàn)中支持安全重協(xié)商。你需要在編譯配置中啟用TLS_RENEGOTIATION_SUPPORT并且確認(rèn)啟用了TLS_SECURE_RENEGOTIATION_SUPPORT。如果掃描器還是報(bào)漏洞說(shuō)明可能啟用了客戶(hù)端發(fā)起的重協(xié)商而且沒(méi)有回退機(jī)制。最省事的防護(hù)措施是在服務(wù)器端禁止在握手完成后接受客戶(hù)端發(fā)起的重協(xié)商請(qǐng)求或者直接不啟用重協(xié)商。第二層是安全策略層面。如果你的業(yè)務(wù)場(chǎng)景完全不需要TLS重協(xié)商干脆把重協(xié)商功能編譯掉。攻擊面越小越安全這是嵌入式安全的基本原則。實(shí)際操作起來(lái)我在CycloneCRYPTO的配置文件中修改了下面兩個(gè)宏#define TLS_RENEGOTIATION_SUPPORT DISABLED #define TLS_SECURE_RENEGOTIATION_SUPPORT ENABLED其實(shí)第二個(gè)宏在第一個(gè)被禁用的情況下沒(méi)有實(shí)際意義但保留它表示你確認(rèn)理解了這個(gè)安全機(jī)制的作用方便后續(xù)代碼審查的人理解設(shè)計(jì)意圖。5.3 CVE-2016-2183 3DES弱算法問(wèn)題CVE-2016-2183是SWEET32攻擊相關(guān)的漏洞本質(zhì)是3DES和DES等64位分組密碼算法在長(zhǎng)期連接場(chǎng)景下會(huì)泄露明文信息。安全掃描器檢測(cè)到設(shè)備支持TLS_RSA_WITH_3DES_EDE_CBC_SHA之類(lèi)的密碼套件時(shí)就會(huì)報(bào)這個(gè)漏洞。嵌入式設(shè)備默認(rèn)會(huì)編譯很多密碼套件為了兼容老客戶(hù)端。但在實(shí)際部署中我強(qiáng)烈建議只保留TLS 1.2及以上版本的強(qiáng)套件。以CycloneCRYPTO為例它的密碼套件列表在tls_cipher_suites.c中定義你需要把3DES相關(guān)的套件從列表中移除。我自己在項(xiàng)目中的密碼套件選擇原則是優(yōu)先ECDHE_ECDSA_WITH_AES_128_GCM_SHA256。其次ECDHE_RSA_WITH_AES_128_GCM_SHA256。如果不考慮兼容性只保留這兩條就夠了。要注意的是移除3DES套件后如果你的客戶(hù)端沒(méi)有更新可能連不上設(shè)備。但這是值得的SWEET32的影響在低速嵌入式設(shè)備上更明顯設(shè)備長(zhǎng)期運(yùn)行大量連接時(shí)攻擊者可以收集到足夠的密文來(lái)分析。5.4 證書(shū)驗(yàn)證和TLS alert 40的排查建議如果客戶(hù)端報(bào)出“從遠(yuǎn)程終點(diǎn)接收到嚴(yán)重警告TLS協(xié)議所定義的嚴(yán)重警告代碼為40”也就是handshake_failure這個(gè)錯(cuò)誤是最通用的TLS握手失敗提示。它出現(xiàn)的場(chǎng)景很多但歸納起來(lái)常見(jiàn)原因也就幾類(lèi)服務(wù)器端沒(méi)有可用的密碼套件與客戶(hù)端匹配??蛻?hù)端證書(shū)驗(yàn)證失敗。簽名驗(yàn)證失敗。TLS版本不匹配。針對(duì)嵌入式TLS服務(wù)器我給一個(gè)比較高效的排查順序先看客戶(hù)端支持的TLS版本和服務(wù)端是否一致再用抓包工具看看ClientHello里帶了哪些密碼套件最后看服務(wù)端有沒(méi)有輸出日志說(shuō)明具體是哪個(gè)環(huán)節(jié)失敗。在使用Secure Manager的場(chǎng)景里有個(gè)特殊的可能ECDSA簽名回調(diào)返回錯(cuò)誤。因?yàn)镾ecure Manager要求簽名算法和密鑰屬性必須匹配如果握手時(shí)協(xié)商出的簽名算法與key_id對(duì)應(yīng)的密鑰屬性不一致PSA API會(huì)拒絕簽名最終表現(xiàn)就是TLS alert 40。排查時(shí)看到日志里握手失敗但前面什么都正常就要想到去檢查密鑰屬性配置。6. 寫(xiě)在最后幾個(gè)值得堅(jiān)持的實(shí)踐習(xí)慣項(xiàng)目做完后回頭總結(jié)有幾個(gè)經(jīng)驗(yàn)想分享給后來(lái)者。第一安全設(shè)計(jì)不能后期補(bǔ)丁。外設(shè)所有權(quán)分配和密鑰管理方案一定要在項(xiàng)目一啟動(dòng)就規(guī)劃好。如果先調(diào)通了非安全世界的TLS再回過(guò)頭去加Secure Manager你會(huì)發(fā)現(xiàn)外設(shè)屬性、中斷映射、密鑰導(dǎo)入等一堆東西都要返工工作量翻倍。第二日志和調(diào)試能力是安全開(kāi)發(fā)的生命線(xiàn)。Secure Manager本身是黑盒出了問(wèn)題很難直接觀察所以要盡早接入它提供的調(diào)試通道。在項(xiàng)目的開(kāi)發(fā)板上別把Secure Manager的調(diào)試功能關(guān)掉否則遇到問(wèn)題只能盲猜。第三密鑰ID管理要像數(shù)據(jù)庫(kù)主鍵一樣嚴(yán)肅。建立一個(gè)key_id的映射表每個(gè)密鑰都有明確用途和生命周期。不要為了省事在代碼里硬編碼隨機(jī)key_id調(diào)試時(shí)你會(huì)后悔。第四安全掃描器的報(bào)告要認(rèn)真過(guò)一遍。CVE-2011-1473和CVE-2016-2183是最常見(jiàn)的嵌入式設(shè)備安全掃描項(xiàng)如果你把這些都處理干凈了整個(gè)方案的安全性已經(jīng)超過(guò)了大多數(shù)同類(lèi)產(chǎn)品。第五也是我在反復(fù)折騰中體會(huì)最深的一點(diǎn)Secure Manager Opaque Key這套組合真正的價(jià)值不只是在技術(shù)層面隔離了密鑰而是在產(chǎn)品迭代過(guò)程中你不需要因?yàn)榘踩珯C(jī)制去修改業(yè)務(wù)代碼所有的安全邏輯都收斂在邊界很清晰的PSA API背后。這種架構(gòu)帶來(lái)的安全感是開(kāi)發(fā)過(guò)程中最值錢(qián)的隱形財(cái)富。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
丁香五月天堂| 婷婷综合亚洲| 大香蕉综合在线| 久热99热| www.超碰97| 五月丁香操亭亭网| 久久这有这里精品| 婷婷久久丁香五月| 大香蕉婷婷婷| 无码激情AAAAA片-区区| 丁香六月激情网C0W| 夜夜躁婷婷AV| 五月黄色婷婷| 国产麻豆视频| 激情五月天色色网| 久久综合五月天| 丁香激惜男女| 欧美情月伍月天| 亚洲a片免费观看| AV人人操| 五月天婷婷视频| 亚城区在线| 99熟女视频| 日韩av在线播放综合网| 亚洲精品又粗又大又爽A片| 婷婷亚洲色| 九九综合精品| 棕合影院色色| 2021日韩无码| 婷婷丁香综合色AV| 香蕉99网| 狠狠色中色| 九九色影院| 色五月在线播放| \\五月天婷婷激情| 伦乱美欧| 七七九九色色| 99热在线免费观看精品| 亚洲激情图文小说| 五月婷婷深深爱爱| 久久99婷婷| 墨西哥毛片内射精| 五月天激情图片网| 玖玖婷婷色| 九九久久腿| 亚洲视频在线观看| 极品人妻VIDEOSSS人妻| 99热这里只有精品8| 婷婷久久久久| www.99在线| 五月天色丁香| 日日爽夜夜爽| 亚洲啪啪网| 日日操人人操| www.成人婷婷综合| 九九这里都是精品| 久操97| 天堂AV在线看| 色99网站| 五月天婷婷免费| 五月激情影院| 伦乱天堂| 26uuu国产| 日韩无码色色| 亚洲精品久久久久AV无码| 丁香五月五月婷婷| 狠狠CAO日日穞夜夜穞AV| 思思热精品在线| 伊人婷婷五月天| 精品在线网站| 日本九九九九| 俺也去色| 色婷婷91激情小说| 91啪啪网| 久久伊人9| 国产精品汇聚精彩第二页 - 高清完整版在线 - 青蛙AV | 激情五月婷| 五月丁香影视| 六月色丁香婷婷| se色婷婷视频| 五月婷婷国产| 涩五月婷婷| 99热大全在线观看| 国产精品激情五月天色婷婷| 亚洲性视频| 国产婷婷五月天| 丁香五月欧美成人| 国产99热| 久久精品五月| 99re这里只有精品9| 五月婷婷开心爱| 夜夜操狠狠操天天操| 五月精品免费XXX| 管管補管管紱| 人妻少妇色综合| 92久久| 欧美精品99久久久| www.色色色com| 久久天堂色| 丁香六月狠狠干| 99免费在线视频| av久热| 九九大香视频| 丁香成人综合| 激情五月天综合网| 国产成人精品一区二三区熟女在线 | 婷婷丁香五月天熟女丝袜| 超碰免费99| 亚州操逼网| 五月婷婷六月丁香玖玖玫瑰91| 婷婷丁香五月天大香蕉| 日本精品99网站| 日本人妻丁香婷婷久久寝取熟女五月| 色屌丝中文字幕| 中文字幕视频在线播放| 免费看欧美成人A片无码 | 人妻在线中文字幕久久| 婷婷六月啪啪| 一本大道伊人AV久久综合| 欧美久久久中文字幕| 久久九九@| 激情网五夜婷婷| 99热精品6| 色色热| 成人在线日韩| www.sebowuyue| 密黄站| 色五月婷婷激情| 五月丁香香蕉| 久久一级片| 成人超碰AV| 色色日本| 亚洲精品久久久无码| 超碰97免费在线| 五婷婷六月合| 久久ab| 九九99热精品| 99热日本| 婷婷丁香六月| 开心五月婷婷激情| 操日视频| 操人精品| 丁香五月成人网| 亚洲成av人影院| 久久伦乱| 天天干天天拍| 激情婷婷网| 婷婷丁香成人在线视频| 天天综合色| 色婷婷av综合网| 亚洲色色在线| 思思热在线观看| 哇嘎成人久久| 婷婷国产成人| 亚洲成人九九九| 九九在线免费观看| 日本欧美成人片AAAA| 99九九综合久久九九| 5月婷婷五月天| 九九99久久| 国产激情在线| 丁香五月手机在线| 成人丁香色| 99er精品视频| 变态另类色图| 欧美日韩AAAA| 成人AV综合在线| 婷婷涩五月天综合| 久久婷婷免费| 九九热精品6| 成人无码精品1区2区3区免费看| 91九色国产| 五月天色不卡| 人人性久久| 99热这里精品| 91久久国产综合久久| 婷婷五月婷婷五月天| 五月丁香啪啪| www好屌操| 99视频自拍| 五月婷婷婷综合网| 久久久久久激情| 五月婷婷导航| 丁香婷婷基地| 欧美天天爽| 婷婷五月天成人网| Av性爱网| www.丁香六月婷婷久久天堂影院.con| 色情综合网| 五月激情综合婷婷| 五月天六月色| 99在线视频播放| 超碰猛烈的性猛交| 九九av| 97色色色色色| 色婷婷成人影片| 精品国产AV色一区二区深夜久久| 婷婷五亚洲| 久久五月热| 99热在线观看精品| 亚洲精品国产成人AV在线| 亚洲不卡| 色婷婷丁香五月天在线视频 | 天天色天天色天天色天天色天天色| 色一情一乱一伦一区二区三区| 久久久婷丁香五月| www五月天com| 色色免费网站| 无码G高清天| 婷婷五月色播天| 婷婷色网站| 激情五月天婷婷色色色色色色色色色色色| 久久激情天堂| 99精品视频在线免费观看| 人妻无码精品一区| 六月婷婷网站| 成人在线网站| 中国丰满熟女A片免费观| 亚洲五月婷天天操| 九月丁香八月婷婷久久综合久97| 色色丁香| 可以直接看的AV网站| 黄色AAAAAAA| 婷婷五月天BBw| 婷婷久久免费| A片试看120分钟做受视频红杏| 久久婷婷亚洲五月天| 91综合色噜噜| 九色视频91| 99re热视频| 六月色激情| 亚洲操B| 激情都市五月天| 婷婷色五月天色| 五月婷在线观看| 婷婷久久五月天亚洲欧美国产日韩在线观看 | 五月丁香 六月婷婷a| 色一情一乱一乱一区91Av| 丁香五月综合在线播放| 99热这里都是精品| 1024AV视频| 伊人久久大香蕉网| 婷婷色情五月| 色综合色综合婷婷热| 欧美天堂婷婷日韩| 色综合久久久久| 亚洲激情网站| 婷婷六月丁香综合| 亚洲综合婷婷五月| 亚洲免费在线观看岛国| www.色五月| 亚洲顶级VA在线观看-高清完整版在线影院观看-S022AV | 激情综合五月开心狠狠| 夜夜天天久久婷婷| 精品思思久久| 光棍影院日韩精品| 99干免费视频| 久久精品国产一区二区三区四区| 爱操人妻| 色情五月综合婷婷| 99热国产在线| 激情五月天网页| 国产精品人妻欲求不满| 中文成人在线| 激情五月四色| 欧美槡BBBB槡BBB少妇| 色五月综合资源推荐| 狠狠狠狠狠狠草| 非洲一级AV| 久草热久草在线视频| 丁香五月婷婷五月天| 无码婷婷五月天| 色五月综合| 五月天伊人久久| 成人做爰高潮A片免费视频| 丁香婷婷九月| 五月天成人在线播放| 午夜无码精品色综合久久| 日韩成人中文字幕| 五月丁香激| 综合久久首页| 超碰京东热av男人的天堂| 久久九九99| 色五月丁香五月| 99热这里只有精品一| 91性高潮久久久久久久久| 996黄色片| 成人无码免费一区二区中文| 国产偷人爽久久久久久老妇APP| 丁香婷婷社区| 久热9| 中文字幕综合| 久久人操| 99热偷拍| 99这里| 丁香五月天激情| 婷婷五月天视频免费在线观看| 欧美25p| 欧美天堂婷婷日韩| 狠狠爱青青草| 嫩草AV久久伊人妇女超级A| 综合色播| 亚洲色五月婷婷| 久99久在线| 99碰碰视频| 日本一毛片| 九九热手机在线视频| 五月人人丁香婷婷五月人人丁香| 97激情五月天| 欧美综合激情五月天| 丁香五月综合激情久久潮喷| 日韩狠狠色婷婷| 五月丁香怕啪啪| 无码九九| 天天橾日日橾夜夜橾17| 99久久6| 丁香五月婷婷俺也要去| 亚洲综合激情五月久久| 啪啪婷婷五月天激情| 98色花堂98t.R| 天堂在线9| 日本啪啪天堂| 99热这里有精品| 麻豆AV一区二区三区| 麻豆AV一区二区三区| 97超碰免费超级在线观看| 丰满少妇乱A片无码| 国产AV影片| 久久全意婷婷| 男人的天堂在线婷婷| 激情超碰网| 激情五月瑟瑟| 亚洲激情AV| 色婷婷五月影视| 都市激情五月婷婷综合| 五月丁香六月综合激情无码软件亮点| 色天堂在线| www激情| 超碰国产在线| 久色大香蕉| 99久久久久久www| 色婷婷久久综合| 国产日韩欧美性生活| 婷婷天天综合| 91九色欧美| 色五月人妻| 亚洲亚洲人成综合网络| 婷婷伊人75| 综合色情网| 99久久思思| 丁香五月激情澎湃一区| 日本99色| 97碰碰碰免费公开在线视频| 色蜜婷婷| 激情综合网,婷婷五月天| 色婷婷小说网| 久久精品一区二区三区四区| 亚洲热久| 九九热这里只有精品23| 五月婷高清视频| 婷婷六月久久综合导航| 可以直接看的av| 狠狠色丁香乆乆| 国产精品操| 26uuuu精品一区二区| 99热一区| 亚洲xx在线| 欧美 日韩 成人在线| 色天天久婷婷| 亚洲精品99| 欧美精品XXXXBBBB| 玖玖99免费视频| 五月天婷婷激情小说| 成人在线99| 亚洲亚洲人成综合网络| 999热在线视频| 亚洲天堂AV免费片| 99久在线精品99re8热| 午夜一区| www.五月婷婷| 丁香五月天成人网站| 色五月亚洲| 久久五月天色婷婷| 久久成人人妻| 婷婷色色综合| 91干| 啪啪 综合网| 性爱网五月婷婷| 久久婷婷五月综合97色一本| 亚州操逼网| 六月香五月婷| 午夜天堂啪啪| 色黄啪啪| 色 五月婷婷基地| 老司机伊人| 伊人大香蕉综合在线| 六月亚洲| 日韩九区| 99er这里只有精品视频| 91超级碰碰碰| 日本三级中国三级99| 六月丁香婷婷五月| 2025超碰| 日日夜夜天天爽| 五月丁香色色网| 探花搜索结果 - 黄上黄| 99久久九九| 大地9中文在线观看免费高清| 在线观看的av| 激情五月天婷婷五月天| 综合网色综合| 日本九九热| 丁香五月婷婷基地| 琪琪秋霞| 夜夜穞天天穞狠狠穞AV美女按摩| 欧美久草在线日本一级特黄大片做受9在线观看韩国电影《两个女人》未删减-毛片 | 综合激情站| 情欲禁地| 丁香六月天婷婷开心综合| 国产精自产拍久久久久久蜜| 色婷婷五月天av在线| 亚洲综合新99视频| 免费无码毛片一区二区A片| 激情婷婷五月久久| 色人久久| 日韩六十路91性交电影| 婷婷五月天天| 深爱激情网五月天| 男人天堂AV在线一区二区| 婷婷六月情| 免费一区二区三区| 五月婷婷六月激情在线| 69精品人人人人| 99成人精品六| 久久XX日本综合| 99这里只有精彩视频| 激情五月天。| 99热这里只有精品在线观看| 五月婷婷久久大香蕉| 日本一级| 99色这里| 97人人操人人干| 色五月婷婷内射| se99高清无码| 9久久久久久久久久久| 熟女色色一区二区| 99在线精品免费视频| 超碰国产AV| 五月色亚洲| www,setingting| 天天日,天天射,天天舔| 久久婷婷五月综合精品蜜芽| 久久久久人妻网址| 丁香六月婷婷操逼网| www.成人婷婷综合| AV在线大香蕉| 性av| 五月丁香六月激情在线| 婷婷伊人中文字幕| 51精品国自产在线| 色综合久久88色综合天天99| 色九四色| 综合色色五月| 开心激情五月天网| 99热最新网址| 色婷婷丁香五月天| 久草大| 乱岳熟女50岁| 另类激情网| 日亚二欧美| 另类小说五月天| 婷婷五月天成人影片| 永久热91| 91精品久久久久| 伊人久久婷婷五月天激情四射| 91在线视频观看午夜福利| 综合久久99| 91中文在线| 大战熟女丰满人妻AV| 狠狠色丁香99| 激情图片99| 五月天色图| 99热在线观看亚洲区| 奇米网大香蕉| 99热这里只有精品中文字幕| 日日夜夜天天综合| 婷婷丁香午夜综合影视| 大天天伊人| 91操人视频| 操一操| 九九综合| 色哟哟www| 六月丁香激情最新更新| 9999综合99综合人| 九九AV| 免费在线观看欧美激情xx小视频| 人人舔人人色人人高潮| 婷婷色情网| 99se丁香| 日本九九九九| 在线色色| 色婷视频| 黄涩毛片| 超碰9799| 爱操天堂| 天天肏视频| 蜜臀A∨在线水帘洞| 丁香六月av| 天天爽夜夜爽夜爽精品| 天天日本夜夜谢| 91丁香五月| 久久99网站| 国产成人综合电影| 久久色五月| 婷婷激情五月天综合| 欧美内射AA| 99热都是精品| 91干| 99啪| 丁香六月色婷婷| 丁香五月日本| 五月丁香日本片| 2017人人操| 9999综合99综合人| 婷婷9月天| 亚洲丁香五月| 九九热在线观看视频网站| 婷婷亚洲日本| 五月婷精品| 婷婷玖玖五月天| 一区二区乱视频码| 97操在线视频| 五月激情婷婷播播网| 色欲五月婷婷| 九色成人AV在线| 久9精品视频| 乱轮A片| 99热欧美| 久久久99视频| 丁香五月成人av| 久热九九| 婷婷精品免费久久| 97天堂| 婷婷色中文字幕| 婷婷欧美综合| 26UUU欧美激情一区二区| 久久精品五月| 亚洲无码www| 亚洲成人无码免费| 在线99精品| 97大香蕉五月天| 亚洲狠狠色丁香婷婷综合久久| 久久久99精品免费观看| 99久久精品免费精品国产_国产精品久久久久久_国产在线|日韩_久久国产精品电影 | 99热这里只有免费精品| 99热亚洲精品| 色五月天婷婷| 五月丁香花婷婷玉莉AV| 99亚洲精品视频| 久久人妻人人槡| 五月婷婷丁香综合| 激情av在线| 亚洲在线操| 久久婷婷精品| 婷婷基地爱| 色婷婷亚洲婷婷| 色网五月婷婷| 亚洲AV无码一区二| 热的国产99热| 色宗合久久五月婷婷| WWW.色婷婷.COM| 激情图片婷婷| WWW.久久久久久久久久久久久| 香蕉久久国产AV一区二区| 五月天色婷婷综合| 久久婷婷五月综合色奶水99啪| 五月婷婷色五月| 丁香五月婷婷国产在线| 深爱激情五月婷婷| 久久婷婷五月综合成人d啪| 天天做天天爱天天要| 色色丁香五月天| 激情综合网丁香| 天天日天天干天天插天天射| 九九干视频| 亚洲色网络| 开心五月婷婷伊人| 婷婷99视频精品| 丁香香五月激情免费视频| 伊人狠狠干| 五月色婷婷综合色| 五月色色激情网| 激情五月丁香婷婷| 色八戒操婷婷| 人人爱操| 五月天网站免费欧美| 婷婷综合五月| 天天操综合网站| 秋霞少妇AV网站| 深爱激情六月| 人人综合久| 天天日天天插| 黄色AAAAA| 婷婷九月狠狠色| 99精品在线观看| 热99视频精品| 久久AAAA片一区二区| 综合色图婷婷| 99思思在线视频| http://www.sd-xiangsu.com/| 99热主页日本| 色五月婷婷天堂| anquye伊人| 久久怕怕视频| 五月激情影院| 99热亚洲| 色五月激情婷婷| 91狠狠综合久久久久久| 亚洲综合婷婷| 亚洲五月天婷婷| 一本大道嫩草AV无码专区| 久久精品五月天| 六月丁香激情综合| 日本一级一级一级一级| 五月天综合色| 狠狠干综合| www.狠狠艹| 亚洲熟妇AV乱码在线观看| 丁香五月婷婷日本| 夜夜涩涩涩| 婷婷中文网站| 丰滿爆乳一区二区三区| 中文AV网| AA片在线观看视频在线播放| 97碰在线视频| 激情综合无码| 99九九视频精彩在线| 五月丁香婷婷伊人| 在线看片h站| 777.色色| 色婷婷www| 亚洲天堂爱爱| 五月丁香六月婷婷久久肏| 欧美A片在线视频免费观看| 超碰renrenai| 在线观看国产高清视频免费网站| www.五月丁香| 久久hd| 91刘玥视频在线观看| 国产热精品| 激情久久久久久久久| 激情五月天婷婷五月天| ww久久| 直接看的AV| 99高级会所久久| 九九久久精品| 欧美日韩成人免费在线| 99热高清在线| 9|在线观看视频| 无码AV免费精品一区二区三区| 99九九精品| 五月丁香欧美在线| 在线成人网站| www.夜夜操.com| 九九大香蕉黄色影院| 99色热视频在线| www.激情com| 丁香五月综合| 婷婷色婷婷| 国产精品色色666| 国产成人精品亚洲线观看| 日本的α片xxxwww| 乱岳熟女50岁| 六月久久狠狠| 婷婷丁香先锋资源网站| 色丁香五月| 精品久热| 国产乱妇无乱码大黄AA片| 天天摸,天天爽| 99婷五月| XX色综合| 98色花堂98t.R| 夜丁香五月婷婷| www.minyis.com【JT】国内CDN落地页保证转化QQ2101460746 | g00d人体西西| 99热99美国在线观看| 色五月婷婷自拍| 色99在线看| 天天天天干| 久久网日本| 天天影院色| 狠狠操天天日| 性爱网六月丁香| 久久最新色| 成人色站,在线视频,看片-SS1AV| 成人美女网| 99久久久| 久热9| 性无码专区无码| 婷婷涩五月天综合| 99久久久久久| 粉嫩AV久久一区二区三区 | 色就色94欧美setu| 欧美色色色色色色| 五月深爱婷婷| 六月丁香啪| 99热6这里只有精品| 五月丁香久久久日婷婷久久婷婷日| 九久久婷婷| 99免费热视频在线| 婷婷在线五月天观看| 人妻在线观看视频| 99热这里只有精品免费| 婷婷综合网站| 欧美情月伍月天| 国语对白性爱视频播放| se色99| 亚洲婷婷性爱| 欧美日韩国产伦精品日韩人妻一| 91久久久久久久久久久| 婷婷伊人久久综合| 久久 婷婷 五月天| 搡BBBB搡BBB搡18| 六月丁香激情| 天天弄天天爽| 精品人妻在线| 午夜不卡成人一区二区| 婷婷五月丁香综合桃花色网| 色色婷婷五月天| 婷婷综合伊人丁香| 五月丁香啪啪网| av在线观看网址| 婷婷99狠狠| 九九久久五月天综合伊人| 久草五月| 亚洲欧洲一二| 黑人巨粗进入警花疼哭A片| 99亚洲视频| 99热99这里免费的精品| 婷婷和五月天| 99热在线爱| 亚洲黄网AV| 色欲av伊人久久大香线蕉影院| 新99思思视频| 热久国产| 亚洲综合另类| 激情综合文学| 五月丁香久久| 一本色道久久综合狠狠躁小说| 欧美五月丁香| 亚洲十月婷婷综合| 9999热精品在线免费播放| www热久久yy9| 中国女人做爰A片| 五月婷婷婷| 色五月婷婷网| 亚洲成人婷婷| 婷婷,五月天,丁香,第一| 小色小蛇伊人婷婷色香五月| 亚洲区在线| 色欲一区二区三区精品A片| 激情综合色网| 激情亭亭五月| 女高怪谈在线观看| 丁香六月伊人| 开心色播色五月婷婷| 激情黄色小说色五月| 男女免费视频999| 日韩啪啪自拍| 91精品91久久久久77777| 久热免费视频| 国产做爰视频免费播放| 婷婷六月激情| 日本99热| 五月婷婷激情| 色99网| 99精品综合| 国产一级片| 九九Av| 免费黄色片子| 人妻内射视频| 激情五月丁香婷婷| 欧美婷婷成人| 亚洲婷婷基地| 另类激情五月天。| 日韩色色视频| 久久婷婷国产| 91婷婷丁香| 久久99网站| 五月丁香网av| 天天天天操| 另类激情五月| 久久9情免费| 久久免片| 91九色中文| 爆乳熟妇一区二区三区爆乳照片| 五月人妻婷婷视频| 五月色丁香| 婷婷五月天小说| 91超碰在线观看| 99热老网站| 日韩一级片| 欧美成人精品A片免费一区99| 亚洲三A| AV片在线观看| 激情五月婷婷她| 色综合天堂| 成人丁香五月| 色情五月天se| 亭亭五月天成人| 久久久久久人妻久久久久久久久久人妻久久久 | 亚洲激情网站无码| 无码中文一区二区三区| 激情五月丁香在线观看直播| 五月色婷婷激情| 操人妻视频91| 精品少妇人妻AV无码专区偷人| 色青青电影色五月| 日韩啪啪自拍| 日日噜狠狠| 丁香五月图片| 色五月天视频| 五月婷婷深深爱| 激情五月天婷婷丁香| 97在线观看| 伊人激情网| 玖玖婷婷五月| 婷婷五月丁香高清无码| 色偷偷狠狠| 9色在线视频| 五月天色色色| 久草婷妨| 亚洲成人在线免费| 桃色伊人在线| 天天色粽合合合合合合合| 午夜天堂啪啪| 无码 av电影| 九色 在线| 99在线免费视| 欧美婷婷成人| 五月婷婷六月丁香在线| 久久色大香蕉| 激情黄色小说色五月| 五月丁香六月婷婷在线小说视频| 99色色网| 九九这里只有精品| 丁香狠狠操| 天天色一道本综合婷婷| 999影院成人在线影院| 九九热99热| 超碰免费人人肏| 超碰免费人妻| 五月婷六月婷婷| 色99网站| 超碰9在| 色色色视频| 综合视频久久| 不卡的AV网站| yellow视频在线观看91| 五月激情婷婷开心| 欧美婷婷五月丁香| 综合亚洲AV| 开心深爱五月天| 色停停五月,在线观看| 成人无码精品1区2区3区免费看| 海外网站专业操老外| 97超碰99热99| 天天色天天搡| 激情综合色播| 婷婷97狠狠成人网站| 日亚二欧美| 凹凸操Av| 五月天啪啪| 91综合国免费久入| 婷婷六月情| 丁香婷婷色五月| 奇米影视777在线_在线观看午夜_h小视频在线观看_岛国大片 | 天综合日日夜综合7799| a69在线视频| 激情综合网丁香| 色五月婷婷丁香凹凸| 香蕉AV777XXX色综合一区 | 五月天色五月| 五月婷婷综合网| 深爱五月亚洲| 9久热| 另类亚洲视频| 色婷婷视频综合| 俺也去五月婷婷丁| WWW,激情五月天,COM| 棕合影院色色| 五月天激情网址| 婷婷色狠狠| 99热手机在线精品| 99热最新| 四色永久成人网站| 色色色97| 日本婷婷| 七七久久综合| 亚洲 在线 性爱| 欧美性猛交XXXX乱大交极品| 玖玖国产视频一区| 99热6这里只有精品| 婷婷五月丁香91| 亚洲激情综合| 久久99免费视频| 色五月天在线| 婷婷99狠| 五月天色婷婷基地| 婷婷在线五月综合| 亚洲春色奇米影视| 婷婷97狠狠成人网站| 欧美日韩欧美| 熟女人妻一区二区三区免费看| 天天做天天爱| 成人无码精品1区2区3区免费看 | 激情五月丁香社区| 天天情天天狠天天透| 欧美激情五月天婷婷| w婷婷五月婷婷w| 亚洲另类在线观看| 色综合天堂| 久久久性爱网| 国産精品| 高清无码.com| 天天拍天天操| 五月综合婷婷开心网| 五月婷婷六月激情| 激情五月六月丁香| 丁香六月婷婷基地| 日韩爱操视频| 婷婷伊人五月丁香天堂网| 五月狠狠| 91综合国免费久入| 久草婷婷| 婷婷综合五月天激情| av亚洲国产小电影| 26uuu亚洲精品国产| 另类图片五月天婷婷| 99riAv1国产在线观看| 97香蕉久久超级碰碰高清版| 99爱视频在线| 丁香九月综合| 国产乱妇无乱码大黄AA片| 久久久久人无码人妻| 国洲夜色亚热在线久久| 亚洲成人在线综合| 99视频91| 色噜噜狠狠一区二区三区| 综合亚洲五月天| 九月丁香久久网| 婷婷玉月丁香五月在线视频| 色色五月天激情| 婷婷六月激情啪啪| 日本A片一区| 久久综合首页| 亚洲avjiujiur91| 婷婷色色欧美综合网| 五月天婷婷影院| 大香蕉综合| 亚洲狠狠色丁香婷婷综合久久| 婷婷干五月综合在线播放| 欧美精品狠狠色丁香婷婷| 91九色视频在线观看| 玖热精品综合视频| 婷婷狠狠综合网入口| 爽天天天天天天天| 全网最新网黄大秀直播高清,主播国产录屏在线 | 五月天激情国产综合婷婷| 99热最新精品| 大香蕉色婷婷伊人在线| 综合五月天| WWW夜夜| 沈娜娜av| 色婷婷狠狠| 九九热短视频在线观看| 国产欧美大香蕉一区| 色中色综合| 五月丁香六月情亚洲| 五月丁香色色| 日本不卡高字幕在线2019| 丁香狠狠色婷婷| 玖月婷婷爱丁香| 色婷婷色| 色九月婷婷| 六月丁香激情| 五月天免费色| 狠狠五月激情丁香六月| 婷婷五月天av| 91丁香五月| 99在线视频精品| 婷婷黄色| 丁香五月-激情综合| 狠狠香蕉| 五月之婷婷| sS丁香五月婷婷| 亚洲黄色av网站| 丁香五月激情网| 五月婷婷丁香六月| 蜜桃婷婷丁香| 97色婷| 成人资源在线| 最近中文字幕大全免费版在线 | 思思热久热| 婷婷丁香六月五月天| 久久久天堂国产精品女人| 精品婷婷| 欧美va在线| 欧美性丁香色色五月天| 91在线视频综合| 中文字幕操比影片| www.婷婷六月天| 久久狠狠干| 巴基斯坦粉嫩无码视频| 免费精品66| 日本久久视频| 欧美精品久| 亚洲12p| 国产精品色色| 97色欧美| 99亚洲视频| 婷婷六月天激情影院| 亚洲五月婷婷在线| 亚洲成Av人片乱码色第1集| 9|人妻人人操| 伊人久久婷婷| 五月婷婷六月天| 欧美久久网| 91精品久久久久久综合五月天| 丁香五月亚洲综合| 婷婷五月天小说网| 激情图片亚洲| 天天久综合| 久久丁香综合香蕉| 五月婷婷官网色| 中文字幕操比影片| 另类小说色婷婷| www.黄色片-久久成人国产精品在线播放-999AV | 五月丁香欧美综合免费视频| 婷婷丁香六月天| 日日操,夜夜撸| 开心婷婷五月| www色中色综合| 91主播在线| 婷婷五月色激情欧美激情| 超碰成人电影| 99久久综合网| 开心五月深爱五月丁香五月激情五月 | 日本99婷婷| www.日韩国产| 激情美女五月天| 91919191919久久成人视频| 五月丁查人人| 久久伦乱| 欧美丰满熟妇BBB久久久| 丁香六月五月天| 色狠狠色综合久久久绯色AⅤ影视| 囯产精品久久欠久久久久久九大| 5月丁香六月婷婷| 亚州欧美黄色电影| 激情六月天婷婷| 精品无码色欲AV| 久久免费干| 久久怕怕视频| 丁香婷婷色五月合集| 99亚洲视频| 婷婷五月天色色| 婷婷射丁香| 伊人五月天日日夜夜久久久天天| 天堂二区| 五月天成人综合| 激情五月天综合| 91蜜桃婷婷狠狠久久综合9色| 伊人五月婷| 色六月婷婷| 五月婷婷激情综合拍| 欧美久久婷婷| 大伊香蕉精品视频在线| 美女网黄| 久久96热| 精品视频这里只有精品| 丁香婷婷五月综合欧美另类| 九九热视频这里只有精品| 五月激情综合深爱| 精品无码av丁香五月激情| 伊人九九九久| 天天爽天天爽| 久久思思热| 五月婷婷开心六月激情小说| 丁香综合婷婷开心激情网| ai97re99一本| 午夜少妇在线观看视频| 天天日天天操心| 婷婷激情丁五月| 天天色播| 91久久免费| 婷婷丁香六月天| 99久精品视频| 婷婷五月天激情免费在线观看| 99热这里只有精品268| 99热热这里只精品996小说| 思思久久99热只有频精品66| 五月婷婷深深爱| 六月丁香六月婷婷欧美| 99爱视频在线免费观看| 99re热精品在线视频| 一本色道久久88加勒比—| 欧美综合激情| 国产精品18久久久| 大香蕉久| 狠狠久久婷五月| 天天高潮夜夜爽| 丁香六月亚洲综合| 99热精品综合| 中海油常州环保涂料有限公司| 99九九玖玖| 热久久这里只有三级视频| 51精品国自产在线| 五月激情六月丁香| 九九99久久| 久久激情网| 婷婷五月在线观看| 5月丁香婷婷激情网| 99热精品9| 欧美成人网婷婷综合在线| 天天插天天插天天操| 97婷婷色| 丁香五月大香蕉| 性欧美日本| www99精品| 97干在线看| 骚五月婷婷| 激情五月婷黄版| 五月婷婷久久久久| 91在线观看www| 久久丁香综合精品综合| 亚洲av综合在线| 成人超碰网| 91狼友视频网页更新| 五月开心播播网| 青青久久五月| 91黄色五月天视频| 1024操逼| 影音先锋男人站,影音先锋男人色资源网,影音先锋AV最新资源站,影音先锋AV资源 | 丁香婷婷免费| 成人免费120分钟啪啪| 激情婷婷六月天| 婷婷丁香六月天| 五月综合激情婷婷六月色窝| 丰满少妇猛烈A片免费看观看| 丰满人妻妇伦又伦精品国产| 日本欧美成人片AAAA| 久久九九激情五月天| 8050一级网| 亚洲天堂九九九| 中文字幕丰满人妻无码专区| 欧美性爱中文字幕| 丁香六月啪啪| 婷婷激情五月吧| 精品色色网| 激情五月天啪啪| 日本操逼九九九九58日本操逼| 另类激情综合| 影视av久久久噜噜噜噜噜三级| 97人人草| 五月激情综合网| 超碰免费成人网站| 亚洲自拍天堂| 99在线精品观看99| 五月开心婷婷中文字幕| 五月天激情无码高清| 手机免费福利视频| 九九精品自拍| 日韩精品AV一区二区三区| 丁香综合日产精品久久| 99碰| 五月久久婷婷| 夜夜操少妇| 人妻久久久| 九九Av| 99热超碰人| 色色色色色色色色色色色色色97| 丁香五月婷婷狠狠色| 狠狠狠狠狠草| 九九热精品视频在线观看| 噜噜噜久久| 五月婷婷香蕉| 欧美影院婷婷| 严洲天天插| 99九九在线视频| 中文幕无线码中文字蜜桃| 九九99偷拍视频| 亚洲Va成人| 狠狠狠夜夜夜| 色色五月婷| 五月丁香 狠狠爱| 91色在线/日韩| 99热99热不卡| 五月综合视频| 激情网色五月| 99热在线99| 久99久精品视频| 91凹凸在线| 在线不卡AC| 人人人va亚洲视频在线| 伊人大香蕉毛片| 这里只有精品在线视频在线观看| 九月丁香婷婷网| 激情五月天小说|五月天开心激情网|亚洲精品国产自在现线|黄色五月天 | 无码99| 激情五月,激情综合网| Av九九| 九九九日本熟女| 色五月AV| ji'qing'luan'ren'lun| 国产露脸150部国语对白| 五月天婷婷丁香蜜桃91| 久久综合久色欧美综合狠狠| 五月综合777| 婷婷九九色| 久久99热精品a片在线观看| 丁香伍月婷电影全集| 亚洲精品大片| 丁香五月激情网| 青青草成人网| 婷婷丁香人妻| 欧美综合激情| 草五月| 丁香五月天激情| 激情五月综合网| 色五月成人网| 99热欧美精品| 五月婷中文字幕| 国产夫妻操逼内射视频| 久久a热| 99热日| 人人妻人人澡人人爽| 99热碰碰热| 五月激情久久综合| 免费啪啪啪网站| 久操福利| 狠狠色性| 午夜免费高清AV片| 色综合久久天天综合网| 天天色天天爱天天舔| www,五月天激情| 91久热| 五月婷婷激情四季| 99操视频| 丁香六月综合激情| 91啪啪视频| 日本WWW九九九| 五月天 无码| 色婷亚洲五月丁香| 久色中文| 五月丁香花成人社区| 欧美色小说婷婷| 欧美成人精品三区综合A片| site:esunnet.com| 亚洲精品又粗又大又爽A片| 亚洲色婷婷色| 日本精品久久久久中文字幕| 在线五月色播| 99爱精品| 激情五月色综合国产精品| 高清免费在线视频|