• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于硬件的動(dòng)態(tài)指令集隨機(jī)化框架的設(shè)計(jì)與實(shí)現(xiàn)

    2017-11-23 01:18:51杜三舒輝康緋
    關(guān)鍵詞:指令集內(nèi)核解密

    杜三,舒輝,康緋

    ?

    基于硬件的動(dòng)態(tài)指令集隨機(jī)化框架的設(shè)計(jì)與實(shí)現(xiàn)

    杜三,舒輝,康緋

    (信息工程大學(xué)數(shù)學(xué)工程與先進(jìn)計(jì)算國家重點(diǎn)實(shí)驗(yàn)室,河南鄭州 450001)

    針對(duì)現(xiàn)有的指令集隨機(jī)化方法存在從代碼段中剝離數(shù)據(jù)困難、靜態(tài)指令集隨機(jī)化密鑰固定和偽隨機(jī)數(shù)密鑰不安全等問題,設(shè)計(jì)并實(shí)現(xiàn)了基于硬件的動(dòng)態(tài)指令集隨機(jī)化框架(HDISR),通過在裝載程序時(shí)加密程序代碼,將指令集隨機(jī)化引入內(nèi)核層和應(yīng)用層的安全防護(hù),內(nèi)核使用單獨(dú)的內(nèi)核密鑰,不同的應(yīng)用程序使用不同的用戶密鑰。實(shí)驗(yàn)結(jié)果表明,HDISR能將代碼注入攻擊降級(jí)為拒絕服務(wù)攻擊,且額外硬件損耗少于2.57%,每兆字節(jié)代碼加密的啟動(dòng)延時(shí)0.31 s。

    代碼注入攻擊;指令集隨機(jī)化;動(dòng)態(tài)指令集隨機(jī)化;內(nèi)核

    1 引言

    常用的網(wǎng)絡(luò)應(yīng)用和操作系統(tǒng)不斷曝光內(nèi)存破壞類漏洞(如緩沖區(qū)溢出、懸空指針、格式字符串等),代碼注入攻擊能夠利用漏洞執(zhí)行惡意代碼,是網(wǎng)絡(luò)空間最常見的安全威脅之一[1]。作為移動(dòng)目標(biāo)防御(MTD,moving target defense)的重要組成部分,指令集隨機(jī)化(ISR,instruction set randomization)對(duì)程序使用的指令集進(jìn)行隨機(jī)化處理,而攻擊者無法得知當(dāng)前使用的指令集,構(gòu)造有效的漏洞利用程序,因此對(duì)代碼注入攻擊有很好的防御效果。

    指令集隨機(jī)化技術(shù)也可以保護(hù)腳本語言,通過隨機(jī)化標(biāo)準(zhǔn)的操作集,使注入的腳本無效,從而抵御SQL注入攻擊[2]和Javscript注入攻擊[3]等威脅。同時(shí),在程序混淆中使用指令集隨機(jī)化可以增加攻擊者逆向分析的難度[4,5],在硬件混淆中使用指令集隨機(jī)化能夠防止供應(yīng)鏈中注入的后門程序執(zhí)行[6]。與地址空間隨機(jī)化(ASLR,address space layout randomization)和數(shù)據(jù)執(zhí)行保護(hù)(DEP,data execution prevention)相比,指令集隨機(jī)化不僅能對(duì)抗代碼注入攻擊,還具有抗逆向能力,可以防止非授權(quán)代碼的執(zhí)行。

    2003年,Kc等[7]首次提出了對(duì)抗代碼注入攻擊的通用方法——指令集隨機(jī)化技術(shù),設(shè)計(jì)了基于Bochs仿真器的X86原型,驗(yàn)證了硬件實(shí)現(xiàn)指令集隨機(jī)化的可行性。Portokalidis等[8,9]提出了支持共享庫和全面防御未授權(quán)代碼執(zhí)行的指令集隨機(jī)化方法,使用不同的密鑰對(duì)不同的程序進(jìn)行隨機(jī)化處理。王奕森等[10]提出了基于編譯置換的指令集隨機(jī)化技術(shù),實(shí)現(xiàn)了操作碼層次的指令集隨機(jī)化,利用該技術(shù)實(shí)現(xiàn)了X86架構(gòu)下Windows系統(tǒng)程序的指令隨機(jī)化。上述基于軟件實(shí)現(xiàn)的指令集隨機(jī)化方法均采用靜態(tài)指令集隨機(jī)化,存在一系列問題,包括指令翻譯性能損耗大、攻擊翻譯軟件可以旁路繞過指令集隨機(jī)化防御、密鑰固定易遭到密鑰猜測(cè)攻擊[11]。

    針對(duì)上述問題,Papadogiannakis等[12]首次提出了動(dòng)態(tài)指令集隨機(jī)化方法,并設(shè)計(jì)了硬件支持的指令集隨機(jī)化系統(tǒng)ASIST,可以為內(nèi)核和用戶程序提供指令集隨機(jī)化支持。Sinha等[13]設(shè)計(jì)了Polyglot系統(tǒng),改進(jìn)了ASIST對(duì)頁共享技術(shù)支持的缺陷。上述基于硬件實(shí)現(xiàn)的指令集隨機(jī)化方法采用了動(dòng)態(tài)指令集隨機(jī)化,在程序崩潰之后使用新的隨機(jī)密鑰重新加密代碼,使已探測(cè)的密鑰值在程序重啟后無效,可以阻止密鑰猜測(cè)攻擊。但上述方法在實(shí)現(xiàn)時(shí)需要修改源碼和鏈接腳本來徹底分離代碼段與數(shù)據(jù)段,而從代碼段中分離數(shù)據(jù)困難;同時(shí)使用了軟件產(chǎn)生的偽隨機(jī)數(shù)密鑰,具有可重現(xiàn)性,如果攻擊者擁有足夠的計(jì)算能力, 可以破解偽隨機(jī)數(shù)加密,從而危及整個(gè)密碼應(yīng)用的安全[14,15]。

    針對(duì)現(xiàn)有方法的缺陷,本文提出了基于編譯結(jié)果比較的代碼區(qū)域信息生成方法,解決了從代碼段中分離數(shù)據(jù)困難的問題;提出了基于代碼區(qū)域信息的動(dòng)態(tài)指令集隨機(jī)化技術(shù),解決了靜態(tài)指令集隨機(jī)化密鑰固定的問題;在CPU中實(shí)現(xiàn)真隨機(jī)數(shù)密鑰生成,解決了軟件生成的偽隨機(jī)數(shù)密鑰安全性不高的問題;最后設(shè)計(jì)了基于硬件的動(dòng)態(tài)指令集隨機(jī)化框架(HDISR,hardware-based dynamic instruction set randomization),實(shí)現(xiàn)了內(nèi)核動(dòng)態(tài)指令集隨機(jī)化與多密鑰的應(yīng)用程序動(dòng)態(tài)指令集隨機(jī)化。

    2 HDISR總體框架

    HDISR總體框架如圖1所示,在CPU中增加了真隨機(jī)數(shù)密鑰生成模塊與指令翻譯模塊,前者產(chǎn)生內(nèi)核密鑰與用戶密鑰,后者選擇密鑰,解密讀入的指令;編譯器支持模塊通過基于編譯結(jié)果比較的代碼區(qū)域信息生成方法得到程序代碼段中指令的具體位置信息——代碼區(qū)域信息,與加密密鑰、選用的指令集隨機(jī)化方法(靜態(tài)指令集隨機(jī)化或者動(dòng)態(tài)指令集隨機(jī)化)組成特征信息,為內(nèi)核與應(yīng)用程序的指令集隨機(jī)化提供支持;在內(nèi)核啟動(dòng)與應(yīng)用程序裝載時(shí),根據(jù)編譯器提供的代碼區(qū)域信息,使用基于代碼區(qū)域信息的動(dòng)態(tài)指令集隨機(jī)化方法,加密內(nèi)核與應(yīng)用程序的代碼;引導(dǎo)程序在內(nèi)核加載到內(nèi)存后,根據(jù)內(nèi)核特征信息加密內(nèi)核代碼,同時(shí)切換CPU執(zhí)行模式為解密模式,實(shí)現(xiàn)內(nèi)核動(dòng)態(tài)指令隨機(jī)化;可執(zhí)行文件加載器裝載可執(zhí)行和可鏈接格式(ELF,executable and linkable format)文件時(shí),使用用戶密鑰加密ELF文件的代碼,在進(jìn)程上下文切換的同時(shí)更新用戶密鑰,實(shí)現(xiàn)多密鑰的應(yīng)用程序動(dòng)態(tài)指令集隨機(jī)化。

    HDISR的工作流程如下:CPU產(chǎn)生真隨機(jī)數(shù)密鑰,編譯器支持模塊生成代碼區(qū)域信息;根據(jù)代碼區(qū)域信息,引導(dǎo)程序使用內(nèi)核密鑰(KernelKey)加密內(nèi)核代碼,內(nèi)核使用用戶密鑰(UserKey)加密ELF文件的代碼;加密后的指令通過CPU中的指令翻譯模塊解密執(zhí)行。通過CPU、編譯器、引導(dǎo)程序、內(nèi)核和應(yīng)用程序的相互配合,HDISR將指令集隨機(jī)化引入內(nèi)核層與應(yīng)用層的安全防護(hù)。

    圖1 HDISR總體框架

    3 指令集隨機(jī)化支持

    3.1 CPU支持模塊

    為了解決軟件實(shí)現(xiàn)指令集隨機(jī)化存在的性能損耗大和軟件生成的偽隨機(jī)密鑰安全性不高等問題,HDISR在CPU上實(shí)現(xiàn)了真隨機(jī)數(shù)密鑰生成和指令翻譯,此外,設(shè)計(jì)了密鑰生成指令、CPU執(zhí)行模式切換指令、讀密鑰指令、寫密鑰指令,為內(nèi)核與應(yīng)用程序的動(dòng)態(tài)指令集隨機(jī)化提供支持。

    3.1.1 真隨機(jī)數(shù)密鑰生成

    指令集隨機(jī)化的安全性依賴于加密密鑰,而軟件生成的隨機(jī)密鑰依賴于初始化的種子,不能產(chǎn)生真隨機(jī)數(shù)。通過隨機(jī)物理現(xiàn)象中獲得隨機(jī)性,可以實(shí)現(xiàn)真隨機(jī)數(shù)發(fā)生器,產(chǎn)生具有不可預(yù)測(cè)性的隨機(jī)序列。本文采用基于振蕩器采樣的真隨機(jī)數(shù)生成方法,設(shè)計(jì)了真隨機(jī)數(shù)密鑰生成模塊,生成供指令集隨機(jī)化使用的密鑰。

    真隨機(jī)數(shù)發(fā)生器原理如圖2所示,利用D觸發(fā)器采樣一個(gè)周期固定的快振蕩器產(chǎn)生隨機(jī)序列。首先使用3個(gè)反相器組成的環(huán)形振蕩器作為噪聲源,產(chǎn)生自然抖動(dòng);然后以CPU的系統(tǒng)頻率作為采樣頻率s,使用D觸發(fā)器對(duì)環(huán)形振蕩器進(jìn)行采樣輸出;接著對(duì)3組環(huán)形振蕩器的采樣結(jié)果進(jìn)行異或,輸出真隨機(jī)數(shù)序列。此真隨機(jī)數(shù)發(fā)生器產(chǎn)生的隨機(jī)數(shù)序列通過了FIPS 140-1 Poker測(cè)試;最后使用有窮狀態(tài)機(jī),將產(chǎn)生的隨機(jī)數(shù)序列循環(huán)存入內(nèi)部寄存器。

    圖2 真隨機(jī)數(shù)發(fā)生器原理

    3.1.2 指令翻譯

    在HDISR框架中,內(nèi)核與應(yīng)用程序的加密指令需要解密后才能正確執(zhí)行。針對(duì)軟件實(shí)現(xiàn)指令翻譯存在性能損耗大和旁路繞過的問題,HDISR在CPU中實(shí)現(xiàn)指令翻譯。在取指令階段與譯碼階段之間加入指令翻譯模塊,對(duì)讀入的指令去隨機(jī)化,將翻譯后的指令送入譯碼階段,保證指令的正常執(zhí)行。

    指令翻譯原理如圖3所示,其中,KernelKey和UserKey由真隨機(jī)數(shù)密鑰生成模塊產(chǎn)生,存放在自定義的內(nèi)部寄存器、內(nèi)核密鑰寄存器與用戶密鑰寄存器。特權(quán)模式(Supervisor)位指示當(dāng)前執(zhí)行指令的特權(quán)模式,為L(zhǎng)inux系統(tǒng)的特權(quán)模式提供支持。根據(jù)Supervisor位判斷指令的特權(quán)模式,從而選擇用戶密鑰或內(nèi)核密鑰作為解密密鑰解密當(dāng)前執(zhí)行的指令。在OpenRisc處理器中,特殊寄存器SR中的SM位作為Supervisor位。當(dāng)SM為1時(shí),表示當(dāng)前執(zhí)行指令處于內(nèi)核模式;當(dāng)SM為0時(shí),表示當(dāng)前執(zhí)行指令處于用戶模式。在取值階段讀入指令后,指令翻譯的處理流程如下。

    圖3 指令翻譯原理

    1) 取出指令后,根據(jù)選擇信號(hào)判斷當(dāng)前指令是否需要解密。

    ①如果不需要,直接執(zhí)行步驟2)。

    ②否則,根據(jù)指令的Supervisor位,選擇解密密鑰。

    a) 如果Supervisor等于0,當(dāng)前指令處于用戶模式,選擇UserKey作為解密密鑰,解密指令。

    b) 否則,當(dāng)前指令處于內(nèi)核模式,選擇KernelKey作為解密密鑰,解密指令。

    2) 送入譯碼階段,保證指令的正常執(zhí)行。

    3.1.3 自定義指令

    在HDISR框架中,為了支持內(nèi)核與應(yīng)用程序的動(dòng)態(tài)指令集隨機(jī)化,CPU增加了4條指令:密鑰生成指令、CPU執(zhí)行模式切換指令、讀密鑰指令以及寫密鑰指令。

    1) 密鑰生成指令:cust8,真隨機(jī)數(shù)密鑰生成模塊產(chǎn)生32 bit真隨機(jī)數(shù),存入相應(yīng)的密鑰寄存器。=0時(shí),生成用戶密鑰,存到用戶密鑰寄存器;=1時(shí),生成內(nèi)核密鑰,存到內(nèi)核密鑰寄存器。

    2) CPU執(zhí)行模式切換指令:cust7,使能選擇信號(hào)從而啟動(dòng)指令翻譯功能,解密后的指令送入譯碼階段。

    3) 讀密鑰指令:cust6 rD,,讀取密鑰寄存器,存入通用寄存器rD。=0時(shí),讀取用戶密鑰寄存器;=1時(shí),讀取內(nèi)核密鑰寄存器。

    4) 寫密鑰指令:cust5 rD,,將rD寄存器中的值寫入密鑰寄存器。=0時(shí),寫入用戶密鑰寄存器;=1時(shí),寫入內(nèi)核密鑰寄存器。

    3.2 編譯器支持模塊

    現(xiàn)有的指令集隨機(jī)化方法假設(shè)代碼段與數(shù)據(jù)段是嚴(yán)格區(qū)分的,但是代碼段中可能夾雜數(shù)據(jù),限制了此類方法的通用性。通過分析編譯器的匯編過程,HDISR提出了通用的靜態(tài)指令集隨機(jī)化生成方法和基于編譯結(jié)果比較的代碼區(qū)域信息生成方法,為內(nèi)核與應(yīng)用程序的動(dòng)態(tài)指令集隨機(jī)化提供支持。

    3.2.1 靜態(tài)指令集隨機(jī)化生成

    雖然ELF文件默認(rèn)是將代碼與數(shù)據(jù)分離的,但還是存在代碼中混入數(shù)據(jù)的情況。例如,在內(nèi)嵌匯編代碼中定義數(shù)據(jù)會(huì)使編譯生成的程序代碼段夾雜著數(shù)據(jù)?,F(xiàn)有的靜態(tài)指令集隨機(jī)化方法使用objcopy直接加密可執(zhí)行文件的代碼段,不僅會(huì)加密其中的指令,還會(huì)加密其中夾雜的數(shù)據(jù)。但是代碼段中的數(shù)據(jù)不會(huì)被指令翻譯模塊解密,會(huì)導(dǎo)致程序執(zhí)行異常。

    在編譯過程中,匯編器將指令翻譯為對(duì)應(yīng)的機(jī)器碼。通過跟蹤機(jī)器碼生成過程,可以在產(chǎn)生指令機(jī)器碼的同時(shí)加密機(jī)器碼,生成靜態(tài)加密的可執(zhí)行文件。在gcc編譯器中,as程序作為匯編器將匯編文件翻譯成目標(biāo)文件。分析as的處理流程之后發(fā)現(xiàn),指令匯編處理函數(shù)md_assemble()實(shí)現(xiàn)了每條指令的匯編。HDISR通過劫持指令的匯編過程,在指令翻譯為機(jī)器碼后使用指定的密鑰對(duì)指令的機(jī)器碼加密,可以生成靜態(tài)指令集隨機(jī)化的ELF文件。因此,在匯編過程中只會(huì)對(duì)指令的機(jī)器碼加密,而不會(huì)對(duì)代碼段中的數(shù)據(jù)加密,避免了整個(gè)代碼段加密引起的數(shù)據(jù)加密問題。

    3.2.2 代碼區(qū)域信息生成

    為了解決從代碼段中剝離數(shù)據(jù)困難的問題,HDISR提出了基于編譯結(jié)果比較的代碼區(qū)域信息生成方法,為動(dòng)態(tài)指令集隨機(jī)化提供準(zhǔn)確的代碼位置信息,具有更好的通用性。本文定義了代碼區(qū)域信息來描述ELF文件中指令的具體位置,考慮到代碼段中夾雜著數(shù)據(jù),指令區(qū)域是不連續(xù)的,因此定義代碼區(qū)域信息數(shù)據(jù)結(jié)構(gòu)如下。

    typedef struct codelayout_info

    {

    uint32;

    vector < uint32, uint32>; //,

    }

    其中,為代碼段中指令區(qū)域塊的總數(shù),為指令區(qū)域塊的文件偏移,為指令區(qū)域塊的大小。指令區(qū)域塊集合以和為元組組成,元組的個(gè)數(shù)為。

    在靜態(tài)指令集隨機(jī)化生成的ELF文件中,代碼段中只有指令是加密的。通過比較原始的ELF文件和靜態(tài)指令集隨機(jī)化生成的ELF文件,根據(jù)代碼段中的內(nèi)容加密與否判斷是指令還是數(shù)據(jù),再聚合代碼段中的指令位置得到代碼區(qū)域信息。ELF文件的代碼區(qū)域信息生成算法描述如下。

    算法1 代碼區(qū)域信息生成算法

    輸入 原始的ELF文件、靜態(tài)指令集隨機(jī)化生成的ELF文件、加密密鑰

    輸出 ELF文件的代碼區(qū)域信息

    1) 解析靜態(tài)指令集隨機(jī)化生成ELF文件,得到可執(zhí)行屬性節(jié)的節(jié)偏移與大小。

    2) 根據(jù)節(jié)偏移與大小,遍歷代碼段中的指令。

    3) 利用加密密鑰,解密靜態(tài)指令集隨機(jī)化生成的ELF文件中指令的機(jī)器碼。

    4) 判斷解密后的機(jī)器碼與原始ELF文件對(duì)應(yīng)位置的指令機(jī)器碼是否相等;如果相等,遍歷ELF文件的代碼區(qū)域信息,判斷是否存在指令區(qū)域塊,使當(dāng)前指令位置在指令區(qū)域塊的尾部。

    ①如果存在,則將此指令區(qū)域塊的加上當(dāng)前指令的大小。

    ②否則,建立新的指令區(qū)域塊元組<,>,將指令偏移存入,指令大小存入。

    代碼區(qū)域信息生成算法同時(shí)也適用于內(nèi)核映像。內(nèi)核映像通過ELF文件vmlinux生成,使用算法1可以得到vmlinux的代碼區(qū)域信息,再根據(jù)vmlinux與內(nèi)核映像的對(duì)應(yīng)關(guān)系,得到內(nèi)核映像的代碼區(qū)域信息。

    3.2.3 特征信息描述

    為了對(duì)內(nèi)核與應(yīng)用程序的指令集隨機(jī)化提供支持,定義了特征信息數(shù)據(jù)結(jié)構(gòu),將代碼區(qū)域信息、密鑰與指令集隨機(jī)化的模式作為文件的特征。其中,字段標(biāo)識(shí)文件采用的指令集隨機(jī)化方法(靜態(tài)指令集隨機(jī)化或動(dòng)態(tài)指令集隨機(jī)化);字段存放文件使用的密鑰;和表示文件的代碼區(qū)域信息,其具體含義與codelayout_info中一致。特征信息數(shù)據(jù)結(jié)構(gòu)定義如下。

    typedef struct feature_info

    {

    uint32;

    uint32;

    uint32;

    vector < uint32, uint32 >; //,

    }

    4 內(nèi)核動(dòng)態(tài)指令集隨機(jī)化

    HDISR設(shè)計(jì)了基于代碼區(qū)域信息的內(nèi)核動(dòng)態(tài)指令集隨機(jī)化方法,使用內(nèi)核密鑰加密內(nèi)核代碼,將指令集隨機(jī)化引入內(nèi)核層的安全防護(hù)。本文通過修改引導(dǎo)程序加載內(nèi)核的過程與指令操作碼判斷的處理流程,實(shí)現(xiàn)了內(nèi)核指令集隨機(jī)化。

    4.1 引導(dǎo)程序

    引導(dǎo)程序在內(nèi)核代碼加載完成后,會(huì)將控制權(quán)轉(zhuǎn)交給內(nèi)核執(zhí)行。通過修改引導(dǎo)程序啟動(dòng)內(nèi)核的流程,在內(nèi)核映像加載到內(nèi)存之后,根據(jù)內(nèi)核代碼區(qū)域信息,使用內(nèi)核密鑰加密內(nèi)核代碼;在跳轉(zhuǎn)到內(nèi)核執(zhí)行前,切換CPU執(zhí)行模式為解密模式,保證加密的內(nèi)核指令能在CPU中解密執(zhí)行。嵌入式系統(tǒng)常使用Uboot作為引導(dǎo)程序,下面以Uboot引導(dǎo)加載uImage的過程介紹內(nèi)核指令集隨機(jī)化的啟動(dòng)過程。

    4.1.1 內(nèi)核代碼加密

    內(nèi)核映像的代碼段中夾雜著數(shù)據(jù),不能直接加密整個(gè)代碼段。在HDISR框架中,通過基于編譯結(jié)果比較代碼區(qū)域信息生成方法得到內(nèi)核的代碼區(qū)域信息,再使用硬件生成的內(nèi)核密鑰對(duì)內(nèi)核的代碼區(qū)域加密,解決了對(duì)整個(gè)代碼段加密引起的數(shù)據(jù)加密問題。引導(dǎo)程序加載內(nèi)核時(shí)通過隨機(jī)產(chǎn)生的內(nèi)核密鑰對(duì)內(nèi)核代碼重新加密,實(shí)現(xiàn)了動(dòng)態(tài)指令集隨機(jī)化。

    分析Uboot引導(dǎo)啟動(dòng)過程之后發(fā)現(xiàn),函數(shù)do_bootm()實(shí)現(xiàn)內(nèi)核映像的加載。通過劫持do_bootm()函數(shù),加密內(nèi)核的代碼區(qū)域。內(nèi)核指令集隨機(jī)化的啟動(dòng)過程如圖4所示,通過環(huán)境變量指向uImage末尾的內(nèi)核特征信息,在映像文件加載到內(nèi)存后解析內(nèi)核特征信息,根據(jù)選擇指令集隨機(jī)化方法。

    如果值為0,表示采用靜態(tài)指令集隨機(jī)化,內(nèi)核映像通過靜態(tài)指令集隨機(jī)化生成方法得到,內(nèi)核代碼已經(jīng)加密,此時(shí)需要通過cust5指令將加密密鑰存入內(nèi)核密鑰寄存器,保證加密代碼與解密執(zhí)行密鑰的一致性。

    圖4 內(nèi)核指令集隨機(jī)化啟動(dòng)過程

    如果值為1,表示采用動(dòng)態(tài)指令集隨機(jī)化,此時(shí)需要根據(jù)代碼區(qū)域信息對(duì)內(nèi)核代碼加密。首先cust8指令生成KernelKey,接著cust6指令取出內(nèi)核密鑰,最后在encrypt_code()函數(shù)中使用KernelKey對(duì)內(nèi)核代碼區(qū)域加密。如果內(nèi)核被壓縮過,則在內(nèi)核正確解壓后再加密內(nèi)核的代碼。

    4.1.2 CPU執(zhí)行模式切換

    內(nèi)核代碼加載完成后,引導(dǎo)程序會(huì)跳轉(zhuǎn)到內(nèi)核代碼執(zhí)行,將控制權(quán)轉(zhuǎn)交給內(nèi)核。在跳轉(zhuǎn)到內(nèi)核代碼執(zhí)行之前,需要切換CPU執(zhí)行模式為解密模式,保證加密的內(nèi)核代碼能在CPU中正常執(zhí)行。分析Uboot之后發(fā)現(xiàn),內(nèi)核啟動(dòng)函數(shù)do_bootm_linux()調(diào)用函數(shù)kernel(),實(shí)現(xiàn)向內(nèi)核跳轉(zhuǎn)執(zhí)行。HDISR需要先使能指令翻譯模塊,再跳轉(zhuǎn)轉(zhuǎn)到內(nèi)核執(zhí)行。cut7指令切換CPU執(zhí)行模式為解密模式,再通過kernel()跳轉(zhuǎn)到內(nèi)核執(zhí)行。

    4.2 指令操作碼

    在內(nèi)核代碼加密之后,不能直接使用原始的指令操作碼來判斷指令類型。此時(shí),HDISR需要先解密隨機(jī)化的指令,再判斷指令的類型,以保證系統(tǒng)的正常運(yùn)行。例如,entry.s中的異常處理_data_page_fault_handler需要取出引發(fā)數(shù)據(jù)缺頁的指令,根據(jù)指令的操作碼判斷是否為跳轉(zhuǎn)指令。此時(shí)不能直接根據(jù)操作碼判斷跳轉(zhuǎn)指令類型,如圖5所示,HDISR會(huì)根據(jù)引發(fā)缺頁的指令的特權(quán)模式,選擇指令的密鑰(內(nèi)核密鑰或用戶密鑰)解密指令,再通過原始指令集的操作碼判斷指令類型。

    圖5 指令操作碼判斷

    5 應(yīng)用程序動(dòng)態(tài)指令集隨機(jī)化

    HDISR設(shè)計(jì)了基于代碼區(qū)域信息的應(yīng)用程序動(dòng)態(tài)指令集隨機(jī)化方法,使用用戶密鑰加密ELF文件的代碼,將動(dòng)態(tài)指令集隨機(jī)化引入應(yīng)用層的安全防護(hù)。此外,在進(jìn)程上下文切換的同時(shí)切換進(jìn)程密鑰,實(shí)現(xiàn)了多密鑰的應(yīng)用程序動(dòng)態(tài)指令集隨機(jī)化。

    5.1 ELF文件格式

    為支持基于代碼區(qū)域信息的動(dòng)態(tài)指令集隨機(jī)化,HDISR修改了ELF文件的格式,如圖6所示,在ELF文件中新增一節(jié),存放ELF文件的特征信息,包括指令集隨機(jī)化模式、密鑰以及代碼區(qū)域信息。指令集隨機(jī)化模式()表示采用的指令集隨機(jī)化方法;密鑰()表示ELF文件使用的加密密鑰;代碼區(qū)域信息提供代碼段中指令的準(zhǔn)確位置信息。

    5.2 ELF文件代碼加密

    在Linux內(nèi)核中,裝載函數(shù)load_elf_binary()只是為可執(zhí)行文件和虛擬地址空間建立映射關(guān)系,并未真地將ELF文件的內(nèi)容讀入內(nèi)存,只有在真正用到時(shí)才會(huì)以頁故障方式讀入內(nèi)存。在HDISR框架中,通過基于編譯結(jié)果比較的代碼區(qū)域信息生成方法得到ELF文件的代碼區(qū)域信息,在裝載ELF文件前使用隨機(jī)生成的用戶密鑰對(duì)ELF文件的代碼區(qū)域加密,確保裝載完成后通過頁故障讀入的代碼是加密的,加密后的指令通過CPU解密執(zhí)行。

    圖6 ELF文件格式修改

    ELF文件的代碼加密流程如圖7所示,首先解析ELF文件,獲取mydata節(jié)的內(nèi)容,然后根據(jù)文件的特征信息數(shù)據(jù)結(jié)構(gòu)解析此節(jié)。如果值為0,表示ELF文件的代碼已經(jīng)加密,實(shí)現(xiàn)靜態(tài)指令集隨機(jī)化;如果值為1,表示需要隨機(jī)生成新的用戶密鑰,重新加密ELF文件的代碼區(qū)域,實(shí)現(xiàn)動(dòng)態(tài)指令集隨機(jī)化。在重新加密ELF文件的代碼時(shí),HDISR先使用ELF文件的解密代碼,再用新生成的用戶密鑰加密代碼,最后用新密鑰更新ELF文件特征信息的,保證ELF文件的加密代碼與密鑰的一致性。

    圖7 ELF文件代碼區(qū)域加密流程

    5.3 進(jìn)程密鑰切換

    為了支持不同的應(yīng)用程序使用不同的密鑰,在進(jìn)程控制塊(PCB,process control block)中增加了存放進(jìn)程密鑰的字段,HDISR在ELF文件裝載時(shí)將加密密鑰存入中。此外,進(jìn)程上下文切換的同時(shí)需要將新進(jìn)程的密鑰寫入用戶密鑰寄存器,保證執(zhí)行代碼與指令翻譯模塊中用戶密鑰的一致性。

    在HDISR框架中,ELF文件的裝載過程如圖8所示,其中已加密的ELF文件A實(shí)現(xiàn)靜態(tài)指令集隨機(jī)化,不需要加密文件A的代碼;未加密的ELF文件B實(shí)現(xiàn)動(dòng)態(tài)指令集隨機(jī)化,使用隨機(jī)生成的用戶密鑰重新加密文件B的代碼。最后在裝載函數(shù)load_elf_binary()中讀取文件特征信息中的加密密鑰,并將其存入PCB的中,保證進(jìn)程密鑰與進(jìn)程代碼的一致性。

    在上下文切換函數(shù)context_switch()調(diào)用switch_to()函數(shù)切換進(jìn)程的寄存器集合的同時(shí),HDISR會(huì)使用cust5指令將新進(jìn)程的存入用戶密鑰寄存器。因此,新進(jìn)程的代碼執(zhí)行時(shí),CPU使用相應(yīng)的用戶密鑰解密代碼。需要注意的是,ELF文件裝載完成后,如果首次調(diào)入執(zhí)行的是此次裝載的進(jìn)程,此時(shí)不會(huì)切換進(jìn)程的上下文和進(jìn)程密鑰,且HDISR會(huì)在load_elf_binary()函數(shù)中將進(jìn)程密鑰寫入用戶密鑰寄存器。

    圖8 ELF文件裝載過程

    6 測(cè)試

    本文選取OR1200處理器與Linux 3.4版本實(shí)現(xiàn)了HDISR框架,OR1200是基于OpenRisc 1000架構(gòu)的32位RISC處理器。加密算法采用32位的異或加密,將修改后的OR1200處理器下載到Xilinix atlys開發(fā)板中的FPGA芯片中,并在開發(fā)板上運(yùn)行支持指令集隨機(jī)化的Linux系統(tǒng)。通過公開的內(nèi)核漏洞與應(yīng)用程序漏洞的攻擊實(shí)驗(yàn),驗(yàn)證了HDISR對(duì)代碼注入攻擊的防御效果。最后選取SPEC測(cè)試集測(cè)試了HDISR的性能損耗,實(shí)驗(yàn)結(jié)果表明,HDISR能夠抵御代碼注入攻擊,而且性能損耗較低。

    6.1 防御效果測(cè)試

    為了驗(yàn)證HDISR對(duì)代碼注入攻擊防御的有效性,本文選擇了表1中的5個(gè)漏洞,其中包括2個(gè)內(nèi)核漏洞和3個(gè)用戶級(jí)緩沖區(qū)溢出漏洞。在原始Linux系統(tǒng)和應(yīng)用程序上測(cè)試,能成功執(zhí)行注入的漏洞利用代碼。在Linux系統(tǒng)和應(yīng)用程序經(jīng)過HDISR保護(hù)后,注入的代碼執(zhí)行失敗,程序異常崩潰。HDISR會(huì)對(duì)Linux系統(tǒng)和應(yīng)用程序使用的指令集進(jìn)行隨機(jī)化處理,而注入的漏洞利用代碼仍然依據(jù)原始指令集生成,執(zhí)行錯(cuò)誤指令集的代碼會(huì)引起非法指令異常,導(dǎo)致程序崩潰。實(shí)驗(yàn)結(jié)果表明,HDISR可以有效地阻止代碼注入攻擊,將代碼注入攻擊降級(jí)為拒絕服務(wù)攻擊,對(duì)現(xiàn)有的內(nèi)核級(jí)別和用戶級(jí)別的遠(yuǎn)程代碼執(zhí)行漏洞具有較好的防御效果。

    表1 HDISR防御代碼注入攻擊的測(cè)試集

    6.2 硬件資源損耗

    本文選取FPGA中的FF寄存器和查找表資源來度量硬件損耗,以原始OR1200處理器綜合后的資源損耗作為基準(zhǔn)計(jì)算HDISR的資源損耗增加的百分比。HDISR額外的硬件損耗如表2所示,額外硬件消耗均低于2.57%,其中FF寄存器資源損耗增加了2.57%,查找表資源損耗增加了1.71%。

    6.3 性能測(cè)試

    選用SPEC CPU2006測(cè)試集[16]來測(cè)試HDSIR的性能損耗,包括運(yùn)行時(shí)性能損耗和啟動(dòng)延時(shí)兩方面。運(yùn)行時(shí)性能損耗來源于指令翻譯和密鑰切換,通過靜態(tài)指令集隨機(jī)化運(yùn)行耗時(shí)來度量。運(yùn)行時(shí)性能損耗的定義如下。

    表2 HDISR額外的硬件損耗

    HDISR加密代碼會(huì)帶來程序的啟動(dòng)延時(shí),延時(shí)與程序的代碼大小有關(guān),通過啟動(dòng)延時(shí)與代碼大小的比值來度量代碼加密效率。加密效率的定義如下。

    HDISR的性能測(cè)試結(jié)果如表3所示,結(jié)果表明,平均運(yùn)行時(shí)性能損耗為0.566%,且所有測(cè)試程序的運(yùn)行時(shí)性能損耗都低于0.9%;程序的啟動(dòng)延時(shí)與二進(jìn)制文件中的可執(zhí)行代碼的大小相關(guān),每兆字節(jié)的代碼加密平均帶來0.31 s的延時(shí)。

    7 結(jié)束語

    本文設(shè)計(jì)并實(shí)現(xiàn)了基于硬件的動(dòng)態(tài)指令集隨機(jī)化框架HDISR,將指令集隨機(jī)化方法引入內(nèi)核層和應(yīng)用層的安全防護(hù),提高了系統(tǒng)安全性。內(nèi)核使用單獨(dú)的內(nèi)核密鑰,同時(shí)每個(gè)應(yīng)用程序都有各自的密鑰,防止單個(gè)密鑰丟失而導(dǎo)致整個(gè)系統(tǒng)的淪陷。HDISR面臨內(nèi)存代碼泄露的威脅,由此降低了加密機(jī)制分析和密鑰猜解難度,下一步將研究限制代碼可執(zhí)行但不可讀的方法以應(yīng)對(duì)內(nèi)存代碼泄露風(fēng)險(xiǎn)。

    表3 SPEC測(cè)試集測(cè)試結(jié)果

    [1] NIST. USA national vulnerability database[EB/OL]. http://web. nvd.nist.gov/view/vuln/statistics.

    [2] CHEN P, WANG J, PAN L, et al. Research and implementation of SQL injection prevention method based on ISR[C]//IEEE International Conference on Computer and Communications. 2017: 1153-1156.

    [3] BARUA A, ZULKERNINE M, WELDEMARIAM K. Protecting Web browser extensions from JavaScript injection attacks[C]//The International Conference on Engineering of Complex Computer Systems. 2013: 188-197.

    [4] 湯戰(zhàn)勇, 李光輝, 房鼎益, 等. 一種具有指令集隨機(jī)化的代碼虛擬化保護(hù)系統(tǒng)[J]. 華中科技大學(xué)學(xué)報(bào)(自然科學(xué)版), 2016, 44(3): 28-33.

    TANG Z Y, LI G H, FANG D Y, et al. Code virtualized protection system with instruction set randomization[J]. Journal of Huazhong University of Science and Technology (Natural Science Edition), 2016, 44(3): 28-33.

    [5] DANGER J L, GUILLEY S, PRADEN F. Hardware-enforced protection against Software reverse-engineering based on an instruction set encoding[C]//ACM Sigplan on Program Protection and Reverse Engineering Workshop. 2014: 5.

    [6] LIU B, WANG B. Embedded reconfigurable logic for ASIC design obfuscation against supply chain attacks[C]//Design, Automation and Test in Europe Conference and Exhibition. 2014:1-6.

    [7] KC G S, KEROMYTIS A D, PREVELAKIS V. Countering code-injection attacks with instruction-set randomization[C]// ACM Conference on Computer and Communications Security. 2003: 272-280.

    [8] PORTOKALIDIS G, KEROMYTIS A D. Fast and practical instruction-set randomization for commodity systems[C]//Computer Security Applications Conference. 2010:41-48.

    [9] PORTOKALIDIS G, KEROMYTIS A D. Global ISR: toward a comprehensive defense against unauthorized code execution[M]// Moving Target Defense. New York: Springer, 2011: 49-76.

    [10] 王奕森, 舒輝, 謝耀濱, 等. 基于指令集隨機(jī)化的代碼注入型攻擊防御技術(shù)[J]. 計(jì)算機(jī)應(yīng)用與軟件, 2016, 33(5): 312-316.

    WANG Y S, SHU H, XIE Y B, et al. Defense technology against code-injection attacks based on instruction set randomization[J]. Computer Applications and Software, 2016, 33(5): 312-316.

    [11] SOVAREL A N, EVANS D, PAUL N. Where's the FEEB? the effectiveness of instruction set randomization[C]//USENIX Security Symposium. 2005: 10.

    [12] PAPADOGIANNAKIS A, LOUTSIS L, PAPAEFSTATHIOU V, et al. ASIST: architectural support for instruction set randomization[C]//ACM Sigsac Conference on Computer & Communications Security. 2013: 981-992.

    [13] SINHA K, KEMERLIS V P, SETHUMADHAVAN S. Reviving instruction set randomization[C]//IEEE International Symposium on Hardware Oriented Security and Trust. 2017.

    [14] 歐海文, 趙靜, 于慧紅, 等. 基于振蕩器的真隨機(jī)數(shù)發(fā)生器的研究[J]. 通信技術(shù), 2011, 44(12):153-155. OU H W, ZHAO J, YU H H, et al. Study on oscillator-based truly random number generator[J]. Communications Technology, 2011, 44(12): 153-155.

    [15] 郭弘, 劉鈺, 黨安紅, 等. 物理真隨機(jī)數(shù)發(fā)生器[J]. 科學(xué)通報(bào), 2009(23):3651-3657.

    GUO H, LIU Y, DANG A H, et al. Physical true random number generator[J]. Chinese Science Bulletin, 2009(23): 3651-3657.

    [16] HENNING J L. SPEC CPU2006 benchmark descriptions[J]. ACM Sigarch Computer Architecture News, 2006, 34(4): 1-17.

    Design and implementation of hardware-based dynamic instruction set randomization framework

    DU San, SHU Hui, KANG Fei

    (State Key Laboratory of Mathematical Engineering and Advanced Computing, Information Engineering University, Zhengzhou 450001, China)

    All the existing ISR methods have some defects including stripping data from code segment is hard to accomplish, static ISR has fixed key and pseudo-random key is not secure. To introduce ISR technology into the security protection of kernel layer and application layer, hardware-based dynamic instruction set randomization framework (HDISR) was designed and implemented, in which program code was encrypted at loading time. Kernel encryption uses kernel key and applications encryption uses a different user key per process. The experimental results show that HDISR can degrade code injection attack to Denial of Service attack with less than 2.57% additional hardware and 0.31s startup delay of each megabyte code encryption.

    code injection attack, instruction set randomization, dynamic instruction set randomization, kernel

    TP309.1

    A

    10.11959/j.issn.2096-109x.2017.00216

    杜三(1993-),男,四川射洪人,信息工程大學(xué)碩士生,主要研究方向?yàn)榫W(wǎng)絡(luò)安全與嵌入式系統(tǒng)安全。

    舒輝(1974-),男,江蘇鹽城人,博士,信息工程大學(xué)教授,主要研究方向?yàn)榫W(wǎng)絡(luò)安全、嵌入式系統(tǒng)分析與信息安全。

    康緋(1972-),女,河南周口人,碩士,信息工程大學(xué)教授,主要研究方向?yàn)榫W(wǎng)絡(luò)信息安全。

    2017-09-27;

    2017-10-19。

    杜三,qq13882525704@sina.com

    國家重點(diǎn)研發(fā)計(jì)劃基金資助項(xiàng)目(No.2016YFB08011601)

    The National Key R&D Plan Program of China (No.2016YFB08011601)

    猜你喜歡
    指令集內(nèi)核解密
    解密“熱脹冷縮”
    萬物皆可IP的時(shí)代,我們當(dāng)夯實(shí)的IP內(nèi)核是什么?
    強(qiáng)化『高新』內(nèi)核 打造農(nóng)業(yè)『硅谷』
    3DNow指令集被Linux淘汰
    解密“一包三改”
    炫詞解密
    基于嵌入式Linux內(nèi)核的自恢復(fù)設(shè)計(jì)
    Linux內(nèi)核mmap保護(hù)機(jī)制研究
    實(shí)時(shí)微測(cè)量系統(tǒng)指令集及解析算法
    解密“大調(diào)解”
    午夜免费成人在线视频| 无遮挡黄片免费观看| 日韩欧美国产一区二区入口| 91麻豆精品激情在线观看国产| 国产一区二区在线av高清观看| 一边摸一边抽搐一进一小说| 中出人妻视频一区二区| 波多野结衣巨乳人妻| 动漫黄色视频在线观看| 亚洲片人在线观看| 精品免费久久久久久久清纯| aaaaa片日本免费| 国产人伦9x9x在线观看| 岛国在线观看网站| 日本五十路高清| 久久精品影院6| 午夜福利视频1000在线观看 | 黄色成人免费大全| 天天躁狠狠躁夜夜躁狠狠躁| 亚洲无线在线观看| 好男人在线观看高清免费视频 | 一级a爱视频在线免费观看| 无遮挡黄片免费观看| 亚洲狠狠婷婷综合久久图片| 女警被强在线播放| 午夜免费鲁丝| 亚洲电影在线观看av| 久久精品aⅴ一区二区三区四区| 欧美日韩亚洲综合一区二区三区_| 日韩有码中文字幕| 中文字幕久久专区| 亚洲中文字幕一区二区三区有码在线看 | 欧美在线黄色| 香蕉丝袜av| 亚洲欧美激情综合另类| 99国产精品99久久久久| 国产99白浆流出| 亚洲激情在线av| 久久久精品国产亚洲av高清涩受| 在线永久观看黄色视频| 国产99白浆流出| av福利片在线| 国产成人影院久久av| 青草久久国产| 国产极品粉嫩免费观看在线| 久久草成人影院| 色尼玛亚洲综合影院| 又黄又爽又免费观看的视频| 97碰自拍视频| 不卡一级毛片| 亚洲成av人片免费观看| av视频在线观看入口| 桃红色精品国产亚洲av| 香蕉国产在线看| bbb黄色大片| 可以免费在线观看a视频的电影网站| 人妻丰满熟妇av一区二区三区| 亚洲专区字幕在线| av电影中文网址| 女性被躁到高潮视频| 亚洲最大成人中文| 黄色a级毛片大全视频| 淫妇啪啪啪对白视频| 好看av亚洲va欧美ⅴa在| 在线十欧美十亚洲十日本专区| 少妇 在线观看| 18禁观看日本| 免费av毛片视频| 黑人巨大精品欧美一区二区mp4| 色哟哟哟哟哟哟| 在线视频色国产色| 亚洲av熟女| 色综合欧美亚洲国产小说| 熟妇人妻久久中文字幕3abv| 亚洲伊人色综图| 久久精品人人爽人人爽视色| 精品熟女少妇八av免费久了| xxx96com| 国产精品乱码一区二三区的特点 | 韩国精品一区二区三区| av中文乱码字幕在线| 精品国产一区二区三区四区第35| 1024香蕉在线观看| 99国产综合亚洲精品| 男人的好看免费观看在线视频 | 欧美精品亚洲一区二区| av免费在线观看网站| 一区二区三区高清视频在线| 波多野结衣av一区二区av| 亚洲男人天堂网一区| cao死你这个sao货| 多毛熟女@视频| 欧美日本视频| 色哟哟哟哟哟哟| 国产av又大| 欧美色视频一区免费| 国产亚洲欧美98| av电影中文网址| 亚洲国产毛片av蜜桃av| 亚洲av熟女| √禁漫天堂资源中文www| 亚洲精品一卡2卡三卡4卡5卡| 国产免费av片在线观看野外av| 一级,二级,三级黄色视频| 精品欧美一区二区三区在线| 亚洲 欧美一区二区三区| 搡老熟女国产l中国老女人| 777久久人妻少妇嫩草av网站| 免费看a级黄色片| 亚洲九九香蕉| 国产精品久久电影中文字幕| 曰老女人黄片| 日韩欧美三级三区| av福利片在线| 国产伦一二天堂av在线观看| 色在线成人网| 国产成人精品久久二区二区91| 欧美日韩亚洲国产一区二区在线观看| 欧美日韩精品网址| 一区福利在线观看| 给我免费播放毛片高清在线观看| 丁香六月欧美| 欧美日本亚洲视频在线播放| 欧美成人性av电影在线观看| 午夜成年电影在线免费观看| 久久精品91蜜桃| 亚洲成av片中文字幕在线观看| 如日韩欧美国产精品一区二区三区| 人妻久久中文字幕网| 日日爽夜夜爽网站| 99久久99久久久精品蜜桃| 日韩国内少妇激情av| 亚洲成人免费电影在线观看| 欧美黄色片欧美黄色片| 国产精品美女特级片免费视频播放器 | 久久精品91无色码中文字幕| www国产在线视频色| 熟女少妇亚洲综合色aaa.| 亚洲欧美日韩高清在线视频| 黄网站色视频无遮挡免费观看| 久久精品影院6| 亚洲欧美激情综合另类| 亚洲一区中文字幕在线| 久久中文看片网| 国产熟女午夜一区二区三区| 人妻久久中文字幕网| 亚洲国产欧美网| 色婷婷久久久亚洲欧美| 久久香蕉精品热| 亚洲精品一区av在线观看| 99热只有精品国产| 亚洲男人天堂网一区| 欧美黑人欧美精品刺激| 成人免费观看视频高清| 国产成人精品在线电影| 欧美激情高清一区二区三区| 午夜福利视频1000在线观看 | 亚洲国产欧美网| 国产精品99久久99久久久不卡| 亚洲 国产 在线| 亚洲精品一卡2卡三卡4卡5卡| 法律面前人人平等表现在哪些方面| 热re99久久国产66热| 手机成人av网站| 成人av一区二区三区在线看| 国产在线观看jvid| 久久天躁狠狠躁夜夜2o2o| 午夜免费鲁丝| 亚洲国产毛片av蜜桃av| 青草久久国产| 免费一级毛片在线播放高清视频 | 在线观看免费视频网站a站| 叶爱在线成人免费视频播放| 亚洲精华国产精华精| 免费在线观看亚洲国产| 久久国产精品人妻蜜桃| 丝袜美腿诱惑在线| 久久久久久久久久久久大奶| 国产精品亚洲av一区麻豆| 成人精品一区二区免费| 免费少妇av软件| 一边摸一边抽搐一进一小说| 国产成人精品久久二区二区免费| 国产精品久久久av美女十八| 91国产中文字幕| 精品高清国产在线一区| 亚洲成人精品中文字幕电影| 男女下面插进去视频免费观看| 99久久综合精品五月天人人| 一本综合久久免费| 午夜两性在线视频| 99国产精品免费福利视频| 日本vs欧美在线观看视频| 岛国在线观看网站| 欧美激情极品国产一区二区三区| 熟女少妇亚洲综合色aaa.| 精品国产超薄肉色丝袜足j| 露出奶头的视频| 校园春色视频在线观看| 亚洲精品中文字幕在线视频| 日本a在线网址| 女人爽到高潮嗷嗷叫在线视频| 国产99久久九九免费精品| 久久久国产欧美日韩av| 黄片大片在线免费观看| 国产伦一二天堂av在线观看| 国产91精品成人一区二区三区| 非洲黑人性xxxx精品又粗又长| 色老头精品视频在线观看| 在线免费观看的www视频| 日本撒尿小便嘘嘘汇集6| 国产精品99久久99久久久不卡| 国产一区二区在线av高清观看| 成熟少妇高潮喷水视频| 女人被躁到高潮嗷嗷叫费观| 国产成人精品无人区| 淫妇啪啪啪对白视频| 无遮挡黄片免费观看| 午夜福利视频1000在线观看 | 黄频高清免费视频| 精品国内亚洲2022精品成人| 99re在线观看精品视频| 99精品久久久久人妻精品| 成人国产综合亚洲| 久久香蕉国产精品| 久久久久精品国产欧美久久久| 妹子高潮喷水视频| а√天堂www在线а√下载| 国产成人av激情在线播放| 无遮挡黄片免费观看| 亚洲成av人片免费观看| 一边摸一边抽搐一进一出视频| 黄色女人牲交| a级毛片在线看网站| 免费不卡黄色视频| 黄色视频,在线免费观看| 十八禁人妻一区二区| 国产亚洲欧美精品永久| 国产在线精品亚洲第一网站| 一级a爱视频在线免费观看| 精品久久久久久,| 视频在线观看一区二区三区| 亚洲免费av在线视频| 国产亚洲av高清不卡| 免费高清视频大片| 亚洲一卡2卡3卡4卡5卡精品中文| 欧美精品亚洲一区二区| 中文字幕另类日韩欧美亚洲嫩草| 免费在线观看日本一区| 久热这里只有精品99| 99久久精品国产亚洲精品| 亚洲国产高清在线一区二区三 | 亚洲人成77777在线视频| 国产人伦9x9x在线观看| 啦啦啦免费观看视频1| 女警被强在线播放| 精品一区二区三区视频在线观看免费| 最近最新中文字幕大全免费视频| 亚洲av成人一区二区三| 亚洲成av片中文字幕在线观看| 亚洲av电影不卡..在线观看| 麻豆久久精品国产亚洲av| 亚洲国产欧美一区二区综合| av电影中文网址| 国产一区二区三区综合在线观看| 中文字幕最新亚洲高清| 美女午夜性视频免费| 一进一出抽搐动态| 夜夜看夜夜爽夜夜摸| 搡老妇女老女人老熟妇| 亚洲国产欧美网| 国产精品一区二区三区四区久久 | 亚洲在线自拍视频| 中文字幕人成人乱码亚洲影| 免费在线观看亚洲国产| 欧美亚洲日本最大视频资源| 18禁裸乳无遮挡免费网站照片 | 精品熟女少妇八av免费久了| 精品久久久久久久毛片微露脸| 国产极品粉嫩免费观看在线| 一区二区三区国产精品乱码| 国产亚洲精品第一综合不卡| 免费高清在线观看日韩| 欧美+亚洲+日韩+国产| 露出奶头的视频| 少妇的丰满在线观看| 亚洲av五月六月丁香网| 99re在线观看精品视频| 精品久久久久久久毛片微露脸| 成年女人毛片免费观看观看9| 午夜视频精品福利| 桃红色精品国产亚洲av| 老熟妇乱子伦视频在线观看| 少妇裸体淫交视频免费看高清 | 99国产极品粉嫩在线观看| 日韩欧美三级三区| 一级作爱视频免费观看| 窝窝影院91人妻| 999精品在线视频| 69av精品久久久久久| 色播在线永久视频| 国产欧美日韩精品亚洲av| www.精华液| 天天躁夜夜躁狠狠躁躁| 国产精品自产拍在线观看55亚洲| 很黄的视频免费| 精品国产国语对白av| 亚洲美女黄片视频| 精品国产美女av久久久久小说| 日韩精品青青久久久久久| 亚洲精华国产精华精| 国产激情久久老熟女| 999精品在线视频| 免费看十八禁软件| 手机成人av网站| 天天添夜夜摸| 窝窝影院91人妻| 国产成年人精品一区二区| 国产av一区在线观看免费| 亚洲国产看品久久| 精品久久蜜臀av无| 精品电影一区二区在线| 天堂√8在线中文| 999久久久国产精品视频| 99在线人妻在线中文字幕| 国内精品久久久久久久电影| 两性午夜刺激爽爽歪歪视频在线观看 | 亚洲国产毛片av蜜桃av| 最近最新免费中文字幕在线| 国产成人av激情在线播放| 男人舔女人的私密视频| 精品免费久久久久久久清纯| 九色国产91popny在线| 999久久久国产精品视频| 男女下面插进去视频免费观看| 国产aⅴ精品一区二区三区波| 国产高清激情床上av| 人妻久久中文字幕网| 丁香欧美五月| 久久草成人影院| 村上凉子中文字幕在线| 两人在一起打扑克的视频| 嫩草影视91久久| 在线观看免费日韩欧美大片| 欧美乱色亚洲激情| 国产91精品成人一区二区三区| 精品一区二区三区四区五区乱码| 不卡av一区二区三区| 欧美黑人欧美精品刺激| 免费不卡黄色视频| 久热爱精品视频在线9| 90打野战视频偷拍视频| 色综合欧美亚洲国产小说| 黄色 视频免费看| 一个人观看的视频www高清免费观看 | 色av中文字幕| 麻豆久久精品国产亚洲av| 成人18禁高潮啪啪吃奶动态图| 亚洲精品av麻豆狂野| 乱人伦中国视频| 国内毛片毛片毛片毛片毛片| 一区福利在线观看| 狂野欧美激情性xxxx| 日韩精品中文字幕看吧| 香蕉久久夜色| 亚洲av五月六月丁香网| 亚洲精品国产精品久久久不卡| 最近最新中文字幕大全电影3 | 亚洲精品国产区一区二| 国产精品av久久久久免费| 亚洲天堂国产精品一区在线| 午夜影院日韩av| 欧美成人一区二区免费高清观看 | 欧美+亚洲+日韩+国产| 色播亚洲综合网| 欧美久久黑人一区二区| 亚洲成人免费电影在线观看| 午夜福利一区二区在线看| 成熟少妇高潮喷水视频| 侵犯人妻中文字幕一二三四区| 搡老岳熟女国产| 中亚洲国语对白在线视频| 啦啦啦观看免费观看视频高清 | 91九色精品人成在线观看| or卡值多少钱| 美国免费a级毛片| 国产亚洲精品久久久久5区| 美国免费a级毛片| 欧美日韩乱码在线| 色婷婷久久久亚洲欧美| 啪啪无遮挡十八禁网站| 国产精品一区二区精品视频观看| 高清毛片免费观看视频网站| 美女国产高潮福利片在线看| 免费在线观看完整版高清| 黄片大片在线免费观看| a级毛片在线看网站| 一级毛片女人18水好多| 丁香欧美五月| 国产av又大| 中文字幕最新亚洲高清| 精品久久蜜臀av无| 夜夜看夜夜爽夜夜摸| 丰满的人妻完整版| 婷婷六月久久综合丁香| 两个人视频免费观看高清| 性色av乱码一区二区三区2| 日本在线视频免费播放| 美女大奶头视频| bbb黄色大片| 亚洲电影在线观看av| 最近最新中文字幕大全免费视频| 看黄色毛片网站| 午夜福利,免费看| 少妇的丰满在线观看| 悠悠久久av| 一边摸一边抽搐一进一小说| 久久精品亚洲精品国产色婷小说| 欧美日本中文国产一区发布| 久久久久精品国产欧美久久久| 国产精品久久久av美女十八| 一进一出抽搐动态| 午夜两性在线视频| 亚洲aⅴ乱码一区二区在线播放 | 午夜免费成人在线视频| 亚洲国产欧美一区二区综合| 国产伦一二天堂av在线观看| 天堂√8在线中文| 正在播放国产对白刺激| 美女免费视频网站| 人人妻人人澡人人看| 一区二区三区激情视频| 国产成人精品久久二区二区91| 亚洲午夜理论影院| 在线天堂中文资源库| 日韩欧美国产在线观看| 搡老岳熟女国产| 欧美色欧美亚洲另类二区 | 免费在线观看黄色视频的| 侵犯人妻中文字幕一二三四区| 日本a在线网址| 欧美乱码精品一区二区三区| 在线观看66精品国产| 精品国产乱码久久久久久男人| 精品一区二区三区av网在线观看| 欧美黑人精品巨大| 欧美丝袜亚洲另类 | 免费在线观看影片大全网站| 乱人伦中国视频| 两性夫妻黄色片| 黑人巨大精品欧美一区二区mp4| 亚洲一码二码三码区别大吗| av电影中文网址| 国产精品爽爽va在线观看网站 | 法律面前人人平等表现在哪些方面| 久久久国产欧美日韩av| 精品无人区乱码1区二区| 午夜视频精品福利| 亚洲成av人片免费观看| 欧美成人午夜精品| 国产精品久久久久久人妻精品电影| 又黄又粗又硬又大视频| av在线天堂中文字幕| 咕卡用的链子| 女性生殖器流出的白浆| 免费观看人在逋| 亚洲av电影不卡..在线观看| 午夜免费成人在线视频| 热99re8久久精品国产| 色哟哟哟哟哟哟| 久久九九热精品免费| 国产精品免费视频内射| 两个人视频免费观看高清| 99国产精品99久久久久| 欧美黄色片欧美黄色片| 成人18禁在线播放| 99国产极品粉嫩在线观看| 男人操女人黄网站| 黄色a级毛片大全视频| √禁漫天堂资源中文www| 久久国产乱子伦精品免费另类| 成年人黄色毛片网站| 亚洲人成网站在线播放欧美日韩| 精品一区二区三区视频在线观看免费| 少妇裸体淫交视频免费看高清 | 美女午夜性视频免费| 久久香蕉激情| 国产欧美日韩综合在线一区二区| 国产精品1区2区在线观看.| 国产av精品麻豆| 麻豆一二三区av精品| 一区二区三区高清视频在线| 久久久久久免费高清国产稀缺| 国产野战对白在线观看| 在线观看免费午夜福利视频| 日本黄色视频三级网站网址| 久久天躁狠狠躁夜夜2o2o| 国产精品一区二区免费欧美| 成熟少妇高潮喷水视频| 日本免费一区二区三区高清不卡 | 久久久久久免费高清国产稀缺| 免费看a级黄色片| 一进一出好大好爽视频| 性欧美人与动物交配| 精品国产超薄肉色丝袜足j| 18禁美女被吸乳视频| 欧美日本视频| 亚洲av日韩精品久久久久久密| 丁香六月欧美| 欧美日本中文国产一区发布| 女人爽到高潮嗷嗷叫在线视频| 久久精品91无色码中文字幕| 久久人人97超碰香蕉20202| 亚洲av电影不卡..在线观看| 国产一区二区三区综合在线观看| 国产精品乱码一区二三区的特点 | 免费无遮挡裸体视频| 欧美色视频一区免费| 成人三级黄色视频| 人人澡人人妻人| 日韩欧美免费精品| 亚洲五月色婷婷综合| 国产成人av教育| 一a级毛片在线观看| 免费观看精品视频网站| 男女之事视频高清在线观看| 国产亚洲精品久久久久久毛片| 久9热在线精品视频| 韩国精品一区二区三区| 最新在线观看一区二区三区| 午夜福利高清视频| 国产国语露脸激情在线看| www.自偷自拍.com| 国产成人一区二区三区免费视频网站| 免费少妇av软件| 精品国产乱子伦一区二区三区| 91成年电影在线观看| 亚洲av片天天在线观看| 麻豆av在线久日| 久久草成人影院| 国产91精品成人一区二区三区| 黑人操中国人逼视频| 99riav亚洲国产免费| 人人妻人人澡欧美一区二区 | 啦啦啦免费观看视频1| 免费观看精品视频网站| 国产成人精品无人区| 老熟妇仑乱视频hdxx| 欧美中文综合在线视频| 国产三级黄色录像| 国产精品免费视频内射| 欧美色欧美亚洲另类二区 | 可以在线观看毛片的网站| 免费高清在线观看日韩| av电影中文网址| 女性被躁到高潮视频| videosex国产| 在线国产一区二区在线| 大陆偷拍与自拍| 热re99久久国产66热| 亚洲狠狠婷婷综合久久图片| 一本综合久久免费| 最近最新中文字幕大全免费视频| 一边摸一边抽搐一进一出视频| 久久久国产成人免费| 日韩精品免费视频一区二区三区| 日日夜夜操网爽| av视频在线观看入口| 午夜精品国产一区二区电影| 日本在线视频免费播放| 黑丝袜美女国产一区| 女性被躁到高潮视频| 在线观看午夜福利视频| 两性午夜刺激爽爽歪歪视频在线观看 | 亚洲欧美精品综合一区二区三区| 久久久久久久精品吃奶| 精品久久久精品久久久| 男女之事视频高清在线观看| 757午夜福利合集在线观看| 久久精品成人免费网站| 国产三级在线视频| 高潮久久久久久久久久久不卡| 69av精品久久久久久| 亚洲精品国产区一区二| 久久久精品国产亚洲av高清涩受| 国产一区二区三区视频了| 母亲3免费完整高清在线观看| 国产精品99久久99久久久不卡| 97碰自拍视频| 一进一出抽搐动态| 亚洲美女黄片视频| 亚洲欧美精品综合久久99| 久久亚洲精品不卡| 怎么达到女性高潮| 一个人观看的视频www高清免费观看 | 一本大道久久a久久精品| 久久人妻熟女aⅴ| 国产精品99久久99久久久不卡| 后天国语完整版免费观看| 久久久久亚洲av毛片大全| 可以免费在线观看a视频的电影网站| 中文字幕人成人乱码亚洲影| 国产aⅴ精品一区二区三区波| 国产一区二区在线av高清观看| 咕卡用的链子| 夜夜爽天天搞| 国产亚洲精品久久久久久毛片| 日本一区二区免费在线视频| 日本欧美视频一区| 99精品在免费线老司机午夜| 一边摸一边抽搐一进一小说| 国产精品久久久av美女十八| 精品久久久久久久人妻蜜臀av | 久久久久国产精品人妻aⅴ院| 久久这里只有精品19|