• <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)解”
    www.999成人在线观看| 精品午夜福利视频在线观看一区 | 少妇 在线观看| 纯流量卡能插随身wifi吗| 啦啦啦免费观看视频1| 亚洲av日韩精品久久久久久密| 国产精品 国内视频| 久久精品国产99精品国产亚洲性色 | av又黄又爽大尺度在线免费看| 少妇猛男粗大的猛烈进出视频| 热re99久久精品国产66热6| 啦啦啦免费观看视频1| 国内毛片毛片毛片毛片毛片| 老司机午夜福利在线观看视频 | 新久久久久国产一级毛片| 亚洲av成人不卡在线观看播放网| 每晚都被弄得嗷嗷叫到高潮| 757午夜福利合集在线观看| 色视频在线一区二区三区| 9色porny在线观看| 中文字幕最新亚洲高清| 久久国产精品人妻蜜桃| 国精品久久久久久国模美| netflix在线观看网站| 美女福利国产在线| 欧美国产精品va在线观看不卡| 激情在线观看视频在线高清 | 午夜两性在线视频| 狠狠精品人妻久久久久久综合| 午夜视频精品福利| 999精品在线视频| 侵犯人妻中文字幕一二三四区| 精品国产超薄肉色丝袜足j| 悠悠久久av| 精品亚洲成a人片在线观看| 日韩视频在线欧美| 18禁国产床啪视频网站| a级片在线免费高清观看视频| 亚洲精品在线观看二区| 欧美日韩亚洲高清精品| 女人高潮潮喷娇喘18禁视频| 99re在线观看精品视频| 久久亚洲精品不卡| 中文字幕另类日韩欧美亚洲嫩草| 亚洲国产欧美在线一区| 女性被躁到高潮视频| 天堂俺去俺来也www色官网| 女人高潮潮喷娇喘18禁视频| 成人免费观看视频高清| 亚洲av第一区精品v没综合| 桃花免费在线播放| 超碰成人久久| 日韩欧美一区二区三区在线观看 | 亚洲av国产av综合av卡| 国产人伦9x9x在线观看| 黑人巨大精品欧美一区二区mp4| 在线观看一区二区三区激情| 国产成人精品久久二区二区91| 狂野欧美激情性xxxx| 高清欧美精品videossex| 免费看a级黄色片| 午夜福利免费观看在线| 久久久久国产一级毛片高清牌| 欧美日韩国产mv在线观看视频| 日韩制服丝袜自拍偷拍| 亚洲九九香蕉| 一本—道久久a久久精品蜜桃钙片| 王馨瑶露胸无遮挡在线观看| 91成人精品电影| 99国产综合亚洲精品| 成人国产av品久久久| 亚洲精品国产精品久久久不卡| 99精品久久久久人妻精品| 一级毛片精品| 国产亚洲精品第一综合不卡| 大型av网站在线播放| 国产精品免费大片| 在线观看www视频免费| 黄片小视频在线播放| 91国产中文字幕| 久久久久久久久免费视频了| 欧美+亚洲+日韩+国产| 两个人免费观看高清视频| 黄色视频不卡| 黄色视频,在线免费观看| 欧美精品一区二区大全| 桃红色精品国产亚洲av| 制服诱惑二区| 久久久久久亚洲精品国产蜜桃av| 成人三级做爰电影| 老熟妇乱子伦视频在线观看| 精品少妇黑人巨大在线播放| 制服诱惑二区| 性少妇av在线| 国产高清videossex| 精品午夜福利视频在线观看一区 | 激情视频va一区二区三区| 国产精品免费一区二区三区在线 | 国产97色在线日韩免费| 侵犯人妻中文字幕一二三四区| 18禁国产床啪视频网站| 亚洲伊人久久精品综合| 国产精品一区二区精品视频观看| 1024香蕉在线观看| 免费观看a级毛片全部| 亚洲精品av麻豆狂野| www.自偷自拍.com| 欧美精品一区二区大全| 制服人妻中文乱码| 飞空精品影院首页| 香蕉丝袜av| 亚洲第一欧美日韩一区二区三区 | 黑丝袜美女国产一区| 可以免费在线观看a视频的电影网站| 一边摸一边抽搐一进一出视频| 国产高清激情床上av| 一边摸一边抽搐一进一小说 | 亚洲国产欧美日韩在线播放| 久久久国产精品麻豆| 99热网站在线观看| 少妇 在线观看| 亚洲成av片中文字幕在线观看| 免费在线观看黄色视频的| 黑人操中国人逼视频| 巨乳人妻的诱惑在线观看| 欧美精品人与动牲交sv欧美| 啦啦啦在线免费观看视频4| av线在线观看网站| 久久天躁狠狠躁夜夜2o2o| 亚洲情色 制服丝袜| 大型黄色视频在线免费观看| 免费观看人在逋| 欧美中文综合在线视频| 狠狠精品人妻久久久久久综合| 99精国产麻豆久久婷婷| 欧美精品av麻豆av| 99久久人妻综合| 久久精品国产亚洲av高清一级| 国产亚洲午夜精品一区二区久久| 妹子高潮喷水视频| 亚洲av第一区精品v没综合| 成人18禁在线播放| 久久精品国产a三级三级三级| 丝袜美腿诱惑在线| 91老司机精品| 国产在线观看jvid| 制服诱惑二区| 一本综合久久免费| 1024香蕉在线观看| aaaaa片日本免费| 久久久久网色| 女人久久www免费人成看片| 久久久久久亚洲精品国产蜜桃av| 国产亚洲av高清不卡| 捣出白浆h1v1| 一本色道久久久久久精品综合| 老熟妇乱子伦视频在线观看| 国产午夜精品久久久久久| 女人精品久久久久毛片| 国产一区二区三区视频了| 久久久国产精品麻豆| 别揉我奶头~嗯~啊~动态视频| 多毛熟女@视频| av不卡在线播放| 999久久久国产精品视频| 亚洲精品久久成人aⅴ小说| 久久中文看片网| 欧美日韩中文字幕国产精品一区二区三区 | 久久国产精品人妻蜜桃| 十八禁高潮呻吟视频| av网站免费在线观看视频| 久久久久久久久免费视频了| 国产又色又爽无遮挡免费看| 十八禁人妻一区二区| 成人精品一区二区免费| 巨乳人妻的诱惑在线观看| 久久精品亚洲av国产电影网| www日本在线高清视频| 欧美老熟妇乱子伦牲交| 国产单亲对白刺激| 老熟妇仑乱视频hdxx| 免费女性裸体啪啪无遮挡网站| 成人18禁在线播放| 波多野结衣av一区二区av| 1024视频免费在线观看| 日日夜夜操网爽| 丝袜在线中文字幕| 人人妻人人添人人爽欧美一区卜| 人人妻人人添人人爽欧美一区卜| 男男h啪啪无遮挡| 亚洲欧美日韩另类电影网站| 免费在线观看影片大全网站| 日韩欧美免费精品| 久久久久久久久免费视频了| 久久亚洲精品不卡| 99热网站在线观看| 每晚都被弄得嗷嗷叫到高潮| 久久精品成人免费网站| 欧美 亚洲 国产 日韩一| 一本一本久久a久久精品综合妖精| 免费不卡黄色视频| 在线观看66精品国产| 亚洲中文av在线| 亚洲精品国产一区二区精华液| 老汉色∧v一级毛片| 日本a在线网址| 91大片在线观看| 亚洲少妇的诱惑av| 亚洲精华国产精华精| 精品少妇内射三级| 久久天堂一区二区三区四区| 日韩中文字幕视频在线看片| 91字幕亚洲| 亚洲av欧美aⅴ国产| 亚洲 欧美一区二区三区| 国产又爽黄色视频| 99久久精品国产亚洲精品| 麻豆成人av在线观看| 久久国产精品大桥未久av| 国产高清videossex| 国产男靠女视频免费网站| 桃红色精品国产亚洲av| 水蜜桃什么品种好| videosex国产| 男女高潮啪啪啪动态图| 啦啦啦免费观看视频1| 99精品久久久久人妻精品| 老熟妇乱子伦视频在线观看| 日韩欧美免费精品| 丝袜美足系列| 国产91精品成人一区二区三区 | 一本大道久久a久久精品| 久久人人97超碰香蕉20202| 精品人妻熟女毛片av久久网站| 国产精品 国内视频| 国产亚洲欧美精品永久| 99九九在线精品视频| 美女视频免费永久观看网站| 捣出白浆h1v1| 久久午夜亚洲精品久久| 青青草视频在线视频观看| 国产日韩欧美视频二区| 国产免费av片在线观看野外av| 免费女性裸体啪啪无遮挡网站| 国产亚洲欧美精品永久| 免费在线观看视频国产中文字幕亚洲| 日本欧美视频一区| 性色av乱码一区二区三区2| 国产单亲对白刺激| 亚洲自偷自拍图片 自拍| 亚洲国产毛片av蜜桃av| 精品国产一区二区三区久久久樱花| 久久久精品国产亚洲av高清涩受| 国精品久久久久久国模美| 成人av一区二区三区在线看| 亚洲少妇的诱惑av| 亚洲人成77777在线视频| 黄色片一级片一级黄色片| 岛国在线观看网站| 叶爱在线成人免费视频播放| 亚洲精品久久午夜乱码| kizo精华| 高清在线国产一区| 国产xxxxx性猛交| 热99re8久久精品国产| 黄网站色视频无遮挡免费观看| 少妇裸体淫交视频免费看高清 | 久久性视频一级片| 亚洲欧美日韩另类电影网站| 久久亚洲真实| 国产亚洲精品一区二区www | 99久久精品国产亚洲精品| 欧美日韩黄片免| 亚洲国产欧美一区二区综合| 亚洲专区字幕在线| 大陆偷拍与自拍| 我的亚洲天堂| 亚洲视频免费观看视频| 国产成人啪精品午夜网站| 亚洲少妇的诱惑av| 菩萨蛮人人尽说江南好唐韦庄| 国产一区二区三区视频了| a级毛片在线看网站| 国产亚洲精品一区二区www | 久久久久久亚洲精品国产蜜桃av| 免费在线观看影片大全网站| 日韩大码丰满熟妇| 国产精品一区二区精品视频观看| 狠狠狠狠99中文字幕| 一区二区三区国产精品乱码| 久久久久精品人妻al黑| 亚洲情色 制服丝袜| 午夜福利乱码中文字幕| 美女扒开内裤让男人捅视频| 亚洲第一av免费看| 国产精品亚洲av一区麻豆| 老熟妇仑乱视频hdxx| 在线观看免费日韩欧美大片| 少妇 在线观看| 大型av网站在线播放| 精品久久久精品久久久| 国产精品九九99| 亚洲情色 制服丝袜| 久久精品aⅴ一区二区三区四区| 18禁裸乳无遮挡动漫免费视频| 国产欧美日韩一区二区三区在线| 久9热在线精品视频| 又紧又爽又黄一区二区| 久久精品成人免费网站| 国产亚洲av高清不卡| 亚洲黑人精品在线| 午夜激情av网站| 国产免费福利视频在线观看| 久久精品国产综合久久久| 岛国毛片在线播放| 亚洲精品久久午夜乱码| 国产一区二区三区综合在线观看| 一区二区三区乱码不卡18| 国产伦理片在线播放av一区| 国产高清国产精品国产三级| 欧美变态另类bdsm刘玥| 一本—道久久a久久精品蜜桃钙片| 黑人巨大精品欧美一区二区mp4| 99国产精品免费福利视频| 午夜精品久久久久久毛片777| 日日爽夜夜爽网站| 欧美在线黄色| av网站免费在线观看视频| 亚洲欧洲精品一区二区精品久久久| 免费在线观看视频国产中文字幕亚洲| 国产深夜福利视频在线观看| 黄片小视频在线播放| 人成视频在线观看免费观看| 成人18禁高潮啪啪吃奶动态图| 伊人久久大香线蕉亚洲五| 亚洲天堂av无毛| 精品国产超薄肉色丝袜足j| 日韩大码丰满熟妇| 欧美日韩精品网址| 久久精品91无色码中文字幕| 一级黄色大片毛片| 最新的欧美精品一区二区| 成年版毛片免费区| 男女边摸边吃奶| 国产精品98久久久久久宅男小说| 亚洲精华国产精华精| a级毛片黄视频| 天堂中文最新版在线下载| 91九色精品人成在线观看| 老司机影院毛片| 午夜日韩欧美国产| 国产有黄有色有爽视频| 欧美人与性动交α欧美软件| 满18在线观看网站| 欧美精品亚洲一区二区| 久久精品成人免费网站| 日本黄色视频三级网站网址 | 国产高清国产精品国产三级| 国产伦理片在线播放av一区| 色视频在线一区二区三区| 高清视频免费观看一区二区| 亚洲色图综合在线观看| 国产精品.久久久| 啦啦啦视频在线资源免费观看| 岛国毛片在线播放| 亚洲午夜理论影院| 中文字幕人妻丝袜制服| 国产精品国产高清国产av | 熟女少妇亚洲综合色aaa.| 国产不卡一卡二| 高清av免费在线| 精品国产一区二区三区四区第35| 法律面前人人平等表现在哪些方面| 精品一品国产午夜福利视频| 成人影院久久| 亚洲男人天堂网一区| 国产一区二区 视频在线| 午夜福利,免费看| 精品一区二区三区av网在线观看 | 午夜成年电影在线免费观看| 久久精品aⅴ一区二区三区四区| 夫妻午夜视频| 蜜桃在线观看..| 正在播放国产对白刺激| 91精品三级在线观看| 亚洲色图综合在线观看| 国产一区二区三区在线臀色熟女 | 一级毛片女人18水好多| 国产精品.久久久| 精品少妇内射三级| 免费观看av网站的网址| 国产精品99久久99久久久不卡| 老鸭窝网址在线观看| av免费在线观看网站| 一边摸一边抽搐一进一小说 | 亚洲久久久国产精品| 黄色a级毛片大全视频| 国产一区二区三区综合在线观看| 午夜日韩欧美国产| 亚洲欧美一区二区三区黑人| 老熟妇乱子伦视频在线观看| 超色免费av| 热re99久久精品国产66热6| 国产欧美日韩一区二区精品| 好男人电影高清在线观看| 人人妻人人添人人爽欧美一区卜| 岛国毛片在线播放| 女人爽到高潮嗷嗷叫在线视频| 美女高潮到喷水免费观看| 欧美中文综合在线视频| 欧美日韩亚洲高清精品| 国产有黄有色有爽视频| 99久久国产精品久久久| 色播在线永久视频| 亚洲精品在线美女| 热99久久久久精品小说推荐| 最新的欧美精品一区二区| 国产av国产精品国产| 91字幕亚洲| 一边摸一边抽搐一进一小说 | 一级片'在线观看视频| 亚洲精品中文字幕在线视频| 久久精品国产亚洲av高清一级| 9191精品国产免费久久| 丝袜美腿诱惑在线| 不卡av一区二区三区| 亚洲av第一区精品v没综合| 欧美 亚洲 国产 日韩一| 日韩欧美免费精品| www日本在线高清视频| 亚洲欧美一区二区三区黑人| 9热在线视频观看99| 亚洲一码二码三码区别大吗| a级片在线免费高清观看视频| 亚洲人成电影观看| 亚洲中文字幕日韩| 大香蕉久久成人网| 亚洲国产欧美日韩在线播放| 国产国语露脸激情在线看| 亚洲国产欧美日韩在线播放| 99久久国产精品久久久| 丝瓜视频免费看黄片| 国产成人av教育| 黑人巨大精品欧美一区二区蜜桃| 夜夜夜夜夜久久久久| 午夜福利视频在线观看免费| 婷婷丁香在线五月| 久久精品国产亚洲av香蕉五月 | 高潮久久久久久久久久久不卡| 久久天堂一区二区三区四区| 黄色a级毛片大全视频| 日本黄色日本黄色录像| 午夜福利视频精品| 亚洲人成77777在线视频| 欧美乱码精品一区二区三区| 亚洲欧美一区二区三区黑人| 午夜激情av网站| 亚洲av国产av综合av卡| 蜜桃国产av成人99| 欧美日韩视频精品一区| av线在线观看网站| 日韩中文字幕视频在线看片| 精品国产一区二区三区四区第35| 色尼玛亚洲综合影院| 亚洲视频免费观看视频| 亚洲精品av麻豆狂野| 国产成人精品在线电影| 国产老妇伦熟女老妇高清| 精品免费久久久久久久清纯 | 国产精品熟女久久久久浪| av超薄肉色丝袜交足视频| www日本在线高清视频| 夜夜爽天天搞| 精品少妇一区二区三区视频日本电影| 最新的欧美精品一区二区| 麻豆乱淫一区二区| 午夜精品久久久久久毛片777| 伊人久久大香线蕉亚洲五| e午夜精品久久久久久久| 国产又色又爽无遮挡免费看| 精品少妇久久久久久888优播| 国产精品自产拍在线观看55亚洲 | 亚洲中文日韩欧美视频| 亚洲一码二码三码区别大吗| 国产一区二区三区视频了| 日本撒尿小便嘘嘘汇集6| 久久狼人影院| 久久99热这里只频精品6学生| 久久中文字幕人妻熟女| 精品少妇一区二区三区视频日本电影| 99久久国产精品久久久| 在线观看免费视频网站a站| 亚洲情色 制服丝袜| 亚洲性夜色夜夜综合| 国产精品一区二区精品视频观看| 日韩有码中文字幕| 丝袜喷水一区| 国产精品一区二区在线不卡| 亚洲av日韩精品久久久久久密| 久久久久网色| 国产熟女午夜一区二区三区| 国产精品麻豆人妻色哟哟久久| 亚洲欧洲精品一区二区精品久久久| 女人久久www免费人成看片| 五月天丁香电影| 在线观看免费日韩欧美大片| 91成人精品电影| 欧美大码av| 国产免费现黄频在线看| 下体分泌物呈黄色| 国产欧美日韩综合在线一区二区| 日韩精品免费视频一区二区三区| 窝窝影院91人妻| 51午夜福利影视在线观看| 丰满饥渴人妻一区二区三| 99久久精品国产亚洲精品| 在线永久观看黄色视频| 午夜日韩欧美国产| 视频在线观看一区二区三区| 亚洲伊人色综图| www.熟女人妻精品国产| 日韩熟女老妇一区二区性免费视频| 亚洲午夜精品一区,二区,三区| 久久久国产成人免费| 国产又爽黄色视频| av国产精品久久久久影院| 日本a在线网址| 婷婷成人精品国产| 91麻豆av在线| 久久久久精品人妻al黑| 国产免费视频播放在线视频| 视频区欧美日本亚洲| 丁香六月欧美| 99在线人妻在线中文字幕 | 美国免费a级毛片| 精品免费久久久久久久清纯 | 久久久久久久久免费视频了| 亚洲,欧美精品.| 50天的宝宝边吃奶边哭怎么回事| 一本一本久久a久久精品综合妖精| 淫妇啪啪啪对白视频| 欧美日本中文国产一区发布| 国产成人免费无遮挡视频| 露出奶头的视频| 91九色精品人成在线观看| 精品免费久久久久久久清纯 | 999精品在线视频| 99热国产这里只有精品6| 99国产极品粉嫩在线观看| e午夜精品久久久久久久| 丁香欧美五月| 亚洲欧洲日产国产| 久久天堂一区二区三区四区| 青青草视频在线视频观看| 女性生殖器流出的白浆| 天天躁日日躁夜夜躁夜夜| 男女免费视频国产| 变态另类成人亚洲欧美熟女 | 天天躁狠狠躁夜夜躁狠狠躁| 黄色怎么调成土黄色| 国产成人精品久久二区二区91| 纯流量卡能插随身wifi吗| svipshipincom国产片| 一个人免费在线观看的高清视频| 日韩一区二区三区影片| 国产单亲对白刺激| 日韩三级视频一区二区三区| 水蜜桃什么品种好| 操美女的视频在线观看| 日韩欧美三级三区| 在线 av 中文字幕| 三级毛片av免费| 欧美老熟妇乱子伦牲交| av不卡在线播放| 亚洲人成电影免费在线| 另类亚洲欧美激情| 又黄又粗又硬又大视频| 后天国语完整版免费观看| avwww免费| 色综合婷婷激情| 国产成人影院久久av| 精品亚洲成a人片在线观看| 我的亚洲天堂| 交换朋友夫妻互换小说| 乱人伦中国视频| 亚洲情色 制服丝袜| 亚洲一码二码三码区别大吗| 日韩制服丝袜自拍偷拍| 精品第一国产精品| 在线看a的网站| 韩国精品一区二区三区| 欧美大码av| 亚洲av日韩在线播放| 大型黄色视频在线免费观看| 最新美女视频免费是黄的| 亚洲国产精品一区二区三区在线| 好男人电影高清在线观看| 91大片在线观看| 亚洲一码二码三码区别大吗| 99久久人妻综合| 我的亚洲天堂| 亚洲国产欧美一区二区综合| 精品亚洲成国产av| 国产av国产精品国产| 日韩大码丰满熟妇| 欧美在线黄色| 黑人操中国人逼视频| 亚洲天堂av无毛| 久久毛片免费看一区二区三区| 亚洲自偷自拍图片 自拍| 18禁黄网站禁片午夜丰满| 国产一卡二卡三卡精品| 在线 av 中文字幕| 老司机午夜十八禁免费视频| 日本黄色日本黄色录像|