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

    面向大規(guī)模源代碼的內(nèi)存安全性動態(tài)分析技術

    2021-08-02 03:35:28沖,孫毅,仵
    計算機技術與發(fā)展 2021年7期
    關鍵詞:插樁指針語句

    王 沖,孫 毅,仵 俊

    (南京航空航天大學 計算機科學與技術學院,江蘇 南京 211100)

    0 引 言

    C語言常用于諸如操作系統(tǒng)、嵌入式軟件系統(tǒng)等對性能要求較高的系統(tǒng)的編寫。然而C語言本身缺乏對內(nèi)存安全性檢測的相關功能,因此使用其編寫的程序可能存在較為嚴重的內(nèi)存安全性漏洞[1-5]。動態(tài)分析[6-8]是目前常用的對程序進行內(nèi)存安全檢測的方法,目前常用的實現(xiàn)方法有二進制代碼插樁、中間代碼插樁、源代碼插樁[9-10]等。

    二進制代碼插樁是對可執(zhí)行程序進行插樁,優(yōu)點是不需要源代碼就可以對程序進行動態(tài)分析;中間代碼插樁是對編譯后的代碼插樁,可以利用優(yōu)化,減少不必要的插樁;源代碼插樁是指對源碼上進行修改,添加行為監(jiān)代碼,對程序進行檢測,優(yōu)點是可以獲取源代碼中的位置,準確地報告錯誤信息。

    為了能更準確有效地檢測程序的錯誤并能將錯誤的變量信息準確地反饋給用戶,該文采用了源代碼插樁技術進行插樁,并在基于指針技術[11-13]的基礎上,借助開源編譯器Clang和C++語言實現(xiàn)了內(nèi)存安全分析工具Movec,完成其對大規(guī)模C程序的內(nèi)存安全性檢測,并通過實驗進行了驗證,表明該內(nèi)存分析工具對大規(guī)模程序的內(nèi)存檢測是有效且高效的。

    1 基礎知識

    基于指針的內(nèi)存安全性檢測技術的主要思想是對程序中的所有指針變量構造一個指針元數(shù)據(jù),用來記錄該指針的內(nèi)存狀態(tài)、上下界以及指向當前內(nèi)存的指針的個數(shù)。然后,當指針賦值或者以函數(shù)參數(shù)傳遞的時候,更新這個指針的元數(shù)據(jù),用來保持數(shù)據(jù)的一致性。最后,在對指針進行解引用或者通過指針對內(nèi)存進行讀寫時,根據(jù)指針元數(shù)據(jù)中記錄的內(nèi)存狀態(tài)信息,來判斷該次內(nèi)存訪問是否是合法的,從而檢測出內(nèi)存的安全性。

    采用源代碼插樁實現(xiàn)基于指針內(nèi)存安全性檢測的過程分為三個部分:一是對指針變量定義進行插樁以初始化元數(shù)據(jù),對指針變量賦值進行插樁來更新元數(shù)據(jù)的信息;二是在指針解引用的時候來檢查該指針所引用的對象的元數(shù)據(jù);三是對函數(shù)定義進行插樁以初始化函數(shù)參數(shù)的元數(shù)據(jù)、計算存儲返回值的元數(shù)據(jù)。然后,對函數(shù)定義生成一個包裝函數(shù),該包裝函數(shù)用來對程序檢測并傳遞指針元數(shù)據(jù)。接著,對原函數(shù)調用重命名,并插入元數(shù)據(jù),然后將原函數(shù)調用重定向到其包裝函數(shù)來完成檢測。

    2 大規(guī)模C程序的內(nèi)存安全性檢測的研究與實現(xiàn)

    2.1 項目插樁的改進

    目前的源代碼插樁工具對程序的插樁一般有兩種模式,一種是單文件插樁模式,一種是項目插樁模式。單文件插樁模式適用于一些文件數(shù)量比較少的情況。對于項目插樁模式,目前常采用的方法是使用搜索后綴的方法將文件中所有的.c和.h文件進行搜索,然后將所有的文件添加到插樁列表中,把每個.c和.h文件都當成一個翻譯單元進行解析插樁,插樁完成后將新的文件生成到目標文件夾中。這種方法在對大規(guī)模的程序進行插樁時過于簡單,會導致如下問題:一對每個.c和.h文件進行搜索,會將一些不必要的文件進行搜索并插樁,增加了項目插樁時間;二是當文件編譯命令中使用了-D定義了宏或者使用-I頭文件目錄時,這種項目插樁的方式獲取到的語法樹會和原語法樹完全不同,導致插樁錯誤;三是當項目中的頭文件出現(xiàn)一個不完整文件時,將該文件當作一個完整的翻譯單元處理時,無法獲取其完整的語法樹,導致程序插樁失敗。

    對于問題一和問題二,該文利用編譯數(shù)據(jù)庫的概念,對源代碼插樁工具的項目插樁模式進行改進。編譯數(shù)據(jù)庫是在項目實際編譯過程中對編譯器調用的監(jiān)控記錄,其中包含了每個文件在編譯時的編譯選項。利用編譯數(shù)據(jù)庫獲取待插樁文件的存儲路徑和該文件對應的編譯指令,構造出每個文件的原始編譯命令,從而在對文件進行解析時獲取到的語法樹和原始語法樹是一致的。同時,通過編譯數(shù)據(jù)庫,可以獲取一個可執(zhí)行文件的所有的依賴文件,不需要進行.c和.h的搜索,降低了程序插樁的時間。

    對于問題三,該文提供的解決方法是將不完整頭文件擴展到源文件中,不再對該頭文件進行單獨插樁。因此,該文提供了一個頭文件擴展算法,該算法可以將指定的文件進行擴展,當遇到該文件時,不對其插樁,同時將其內(nèi)容擴展到所有引入該頭文件的文件中。當對程序進行內(nèi)存安全性檢測時,由于系統(tǒng)庫文件中的接口是編譯器提供的標準接口,不需要對其進行插樁檢測,所以該文提供的頭文件擴展算法對所有的系統(tǒng)庫文件不進行擴展,這不僅減少了對程序的插樁時間,也減少了代碼的膨脹率。同時,該文提供的算法還支持不擴展用戶指定的頭文件。

    該算法的主要思想是:首先,創(chuàng)建一個文件輸出流,然后利用Clang前端接口創(chuàng)建一個原始詞法解析器,該解析器只解析當前主文件中的內(nèi)容,然后當解析到#include指令時,在頭文件列表中查找該include的文件標識,然后判斷該文件是否是系統(tǒng)庫文件,若不是,則將其內(nèi)容寫入到輸出流,同時遞歸地調用本方法去繼續(xù)擴展頭文件中引入的頭文件。若是系統(tǒng)庫文件則保持不變,繼續(xù)解析下一個#include命令。其中,頭文件列表是當讀取的文件發(fā)生切換時記錄的,它通過Clang提供的PPCallbacks中的FileChanged()回調函數(shù)記錄,每當文件發(fā)生切換,記錄該文件的ID、類型等信息。當一個文件中所有的#include指令的內(nèi)容擴展完成后,再將#include指令后的內(nèi)容寫入到輸出流,最后寫回到原文件中,從而實現(xiàn)對頭文件的擴展。具體實現(xiàn)如圖1所示。

    圖1 頭文件擴展算法

    2.2 包裝函數(shù)插樁改進算法

    基于指針的內(nèi)存安全性動態(tài)分析技術對包含指針參數(shù)或返回值為指針類型的函數(shù),需要對其插樁包裝函數(shù),用來初始化函數(shù)參數(shù)和返回值變量的指針元數(shù)據(jù)。對函數(shù)定義生成其包裝函數(shù)定義,然后在其函數(shù)調用中重命名該方法,將其定位到包裝函數(shù)以完成內(nèi)存檢測。但是由于庫函數(shù)的定義在系統(tǒng)頭文件中,無法根據(jù)其定義生成包裝函數(shù)。通常,內(nèi)存分析工具會提供常用庫函數(shù)的包裝函數(shù),但是當程序調用的庫函數(shù)較多或者使用了第三方庫時,內(nèi)存分析工具無法提供所有的庫函數(shù)的包裝函數(shù)。若沒有提供包裝函數(shù)的庫函數(shù),則會對其進行插樁,此時會因為找不到包裝函數(shù)定義而導致編譯失敗。針對這類問題,該文提供的解決方法是:首先,對于一個函數(shù),判斷其是否是庫函數(shù),然后判斷該函數(shù)的包裝函數(shù)工具是否提供,若提供了其包裝函數(shù),則對該庫函數(shù)進行插樁,若不提供,則不對該庫函數(shù)進行插樁。

    因此該文給出一個庫函數(shù)判斷算法,該算法的思想根據(jù)是庫文件是存儲在系統(tǒng)特定位置下,通過判斷一個函數(shù)所引用的聲明的文件是否在當前工作目錄中,來判斷該函數(shù)是否為庫函數(shù)。具體的實現(xiàn)如圖2所示。

    圖2 庫函數(shù)判斷算法

    當判斷一個函數(shù)是庫函數(shù)后,此時需要判斷函數(shù)是否需要插樁,該文利用Clang獲取用戶文件語法樹,然后通過函數(shù)聲明與定義訪問函數(shù)VisitFunctionDecl記錄下每一個函數(shù)名,將其傳遞給插樁模塊,配合系統(tǒng)提供的包裝函數(shù)列表,完成函數(shù)是否需要插樁的判定。

    2.3 匿名結構體插樁改進

    對于結構體指針解引用,需要獲取該指針指向區(qū)域的上界和下界。對于指向命名結構體的指針變量如struct st *ptr,它指向區(qū)域的上界和下界分別為ptr和ptr+sizeof(struct st)。但是對于匿名結構體,無法獲取它的名字,所以sizeof的括號中缺少結構體名字,導致插樁后的程序出現(xiàn)編譯錯誤,如:struct {int a; int b;} *ptr;對*ptr插樁后獲取的下界ptr+sizeof(struct(anonymous struct at /home/a.c:3:1)。

    對于該問題,該文提供的解決方法是:對匿名結構體添加一個唯一的ID,在使用sizeof獲取匿名結構體變量類型的時候,使用該ID構造函數(shù)的名字,通過該名字確定結構體類型的大小。使用AST上該結構體定義節(jié)點的地址作為ID。在結構體定義時添加有該ID構造的名字,然后在訪問該結構體變量時獲取該變量的結構體定義節(jié)點,并獲取其地址,從而保證了構造的ID是唯一的并且是一致的。具體的實現(xiàn)算法如圖3所示。

    圖3 匿名結構體插樁算法

    2.4 循環(huán)結構和switch分支結構的改進

    當一個指針無效時,需要對該指針的元數(shù)據(jù)進行清除,以節(jié)省空間和時間。在循環(huán)結構中包含break語句和continue語句,switch分支結構中包含break語句,這些語句會改變程序的執(zhí)行流程,所以需要對break語句和continue語句進行重寫,來實現(xiàn)對程序的指針元數(shù)據(jù)的清除,具體重寫的規(guī)則如下:

    循環(huán)中的break替換為:{bc_flag_LOOP_BLOCK_ID=1;goto PRFlbl_THIS_BLOCK_ID;}。

    continue語句替換為:{bc_flag_LOOP_BLOCK_ID=2;goto PRFlbl_THIS_BLOCK_ID;}。

    switch中的break替換為:{bc_flag_SWIT_BLOCK_ID=1;goto PRFlbl_THIS_BLOCK_ID;}。

    其中bc_flag_LOOP_BLOCK_ID值為1時表示循環(huán)中的break語句,值為2時表示continue語句,bc_flag_SWIT_BLOCK_ID表示switch語句中的break語句。LOOP_BLOCK_ID表示該循環(huán)語句塊的ID,SWIT_BLOCK_ID表示語句switch語句塊的ID,lbl_THIS_BLOCK_ID插入在該語句塊最后用來清除在該語句塊內(nèi)定義的元數(shù)據(jù),然后再根據(jù)bc_flag判斷執(zhí)行流程。

    在對break的替換的時候,需要考慮一些復雜結構,如循環(huán)中嵌套switch結構或switch語句中嵌套循環(huán)結構,此時插樁時需要對該break語句進行判斷來實現(xiàn)不同的替換。針對該問題,該文提出的解決方法是:對于一個break語句,在插樁前需要記錄它的父語句塊PBS,在進行函數(shù)插樁時記錄循環(huán)結構語句塊LBS和switch語句塊SBS,如果不存在循環(huán)結構或switch結構體,則LBS和SBS為空。然后通過比較break語句父語句塊PBS和LBS、SBS的關系,判斷出break語句是屬于循環(huán)結構還是屬于switch分支結構,從而根據(jù)對應的方法對break語句替換,以保證程序在清除完元數(shù)據(jù)之后能正常運行。具體的算法如圖4所示。

    圖4 break語句插樁算法

    3 工具實現(xiàn)

    該文所述的對大規(guī)模C程序的應用理論在內(nèi)存動態(tài)分析Movec上進行了實現(xiàn)。該工具實現(xiàn)采用的是基于Clang編譯器來對源代碼進行檢測邏輯的插樁,插樁過后的代碼仍然是標準C程序。同時,保證了改進過的Movec能正常地插樁和檢測大規(guī)模C程序。其架構如圖5所示。

    圖5 Movec架構

    在對大規(guī)模程序內(nèi)存安全性進行分析時,Movec的輸入是待檢測項目和一個編譯數(shù)據(jù)庫文件,即JSON文件,輸出是插樁完整的項目Movec對該JSON進行解析,并構造出完整的文件編譯規(guī)則,將其傳遞給C解析器,構造每個文件的抽象語法樹。最后通過AST visitor對語法樹進行訪問,在語法樹上獲取需要插樁的節(jié)點位置,通過Clang提供的SourceManager接口和Rewriter接口實現(xiàn)內(nèi)容的獲取和重寫,完成對包裝函數(shù)的插樁改進實現(xiàn),對匿名結構體的插樁實現(xiàn)以及對break語句改進的實現(xiàn),完成對項目的源代碼插樁。將該文提出的插樁改進規(guī)則應用到Movec工具上,使其能有效地對大規(guī)模C程序進行插樁,并對其進行動態(tài)內(nèi)存分析。

    4 實驗與分析

    基于上面介紹的算法,將其在Movec上進行了實現(xiàn)。本節(jié)將介紹優(yōu)化后的Movec對大規(guī)模程序分析的有效性和高效性。

    4.1 有效性實驗

    為了驗證改進部分插樁規(guī)則后工具的有效性,將Movec應用到Mibench標準測試集上。實驗平臺為64位的Ubuntu16.04操作系統(tǒng),處理器為Intel(R) Core(TM) i5-7200U CPU 2.70 GHz,內(nèi)存是8.00 GB,編譯器為gcc4.8.2。

    選取了其中8個大規(guī)模的測試集進行實驗,并與SoftBoundCets[14]、ASan[15]、Valgrind[16]進行了對比。通過實驗表明,Movec可以正確地對這8個大規(guī)模的測試集進行安全檢測。Movec和ASan在blowfish、jpeg、rijndael和rsynth中檢測出了錯誤,但是Movec還檢測出了ASan未檢測出的錯誤,如在blowfish中的數(shù)組訪問越界錯誤:

    void BF_set_key(key, int len, unsigned char* data){

    unsigned char * end=&(data[len]);}

    unsigned char ukey[8];

    BF_set_key(&key,8,ukey);

    而SoftBoundCets則對5個測試集無法正常插樁,并且其余三個沒有檢測出錯誤。Valgrind正常對程序檢測,但未發(fā)現(xiàn)任何錯誤。

    通過結果表明,Movec對大規(guī)模程序的檢測是有效的,且沒有發(fā)生漏報和誤報。

    4.2 性能實驗

    本節(jié)將Movec與內(nèi)存檢測工具SoftBoundCets、ASan、Valgrind進行性能對比。從Mibench中選取了規(guī)模較大的8個測試集進行對比驗證,考慮到誤差,選用了三次實驗結果去平均值的方式。實驗結果如表1所示。

    表1 運行時間對比結果

    綜合表中數(shù)據(jù)可以看出,SoftBoundCet由于使用了靜態(tài)分析,其在gsm和blowfish(l)優(yōu)于Movec,但它僅僅只能在其中三個測試集中運行成功;Valgrind采用的二進制代碼插樁,雖然可以成功運行在大規(guī)模C程序上,但運行時間遠遠超過Movec;ASan在gsm和lame上的性能優(yōu)于Movec,但是當在檢測出錯誤的測試集中(如blowfish、jpeg、rijndael、rsynth),Movec的性能是好于ASan的。Movec還可以設置在發(fā)現(xiàn)錯誤后繼續(xù)運行,可以檢測出整個程序中可能存在的內(nèi)存錯誤,而ASan和SoftBoundCets在發(fā)生錯誤后立即終止,導致后面的錯誤無法正常檢測。

    由以上分析結果可以看出,改進后的Movec不僅能夠正確地在所有Mibench上運行,而且在有效性和高效性上都是優(yōu)于其他工具的,是一個可靠的大規(guī)模C程序內(nèi)存安全分析工具。

    5 結束語

    對大規(guī)模C程序進行動態(tài)內(nèi)存分析時可能出現(xiàn)的問題進行了描述,并給出了相應的解決方法,然后將其在內(nèi)存動態(tài)分析工具Movec上進行了實現(xiàn),使其能對大規(guī)模C程序進行內(nèi)存安全性檢測。通過實驗,表明Movec不僅能有效地對大規(guī)模C程序進行檢測,同時在綜合性能上是更優(yōu)的。在接下來的工作中,將繼續(xù)優(yōu)化其對大規(guī)模程序檢測的運行時間,例如結合靜態(tài)分析,以減少對程序不必要的插樁和檢測。

    猜你喜歡
    插樁指針語句
    基于TXL的源代碼插樁技術研究
    重點:語句銜接
    偷指針的人
    娃娃畫報(2019年5期)2019-06-17 16:58:10
    基于性能分析的自適應插樁框架
    基于記錄重播的嵌入式系統(tǒng)死鎖檢測方法
    軟件導刊(2017年12期)2018-01-09 13:01:23
    精彩語句
    為什么表的指針都按照順時針方向轉動
    基于改進Hough變換和BP網(wǎng)絡的指針儀表識別
    電測與儀表(2015年5期)2015-04-09 11:30:42
    基于順序塊的嵌入式白盒測試插樁技術研究
    ARM Cortex—MO/MO+單片機的指針變量替換方法
    国产国拍精品亚洲av在线观看| 成熟少妇高潮喷水视频| 好男人在线观看高清免费视频| 天天躁日日操中文字幕| av在线播放精品| 天美传媒精品一区二区| 最近视频中文字幕2019在线8| 国产精品爽爽va在线观看网站| 男女边吃奶边做爰视频| 青春草亚洲视频在线观看| 一级毛片久久久久久久久女| 97热精品久久久久久| 男女视频在线观看网站免费| 亚洲精品影视一区二区三区av| 禁无遮挡网站| 最近手机中文字幕大全| 麻豆成人午夜福利视频| 中文字幕精品亚洲无线码一区| 日本黄色片子视频| 成人亚洲精品av一区二区| 级片在线观看| 免费人成在线观看视频色| 欧美最黄视频在线播放免费| 中文资源天堂在线| 特级一级黄色大片| 亚洲成人av在线免费| 三级经典国产精品| 老熟妇乱子伦视频在线观看| av.在线天堂| 久久久久久九九精品二区国产| 神马国产精品三级电影在线观看| av免费观看日本| avwww免费| 久久久久久久久大av| 久久精品影院6| 美女xxoo啪啪120秒动态图| 一区二区三区四区激情视频 | 国产黄色视频一区二区在线观看 | 欧洲精品卡2卡3卡4卡5卡区| 又黄又爽又刺激的免费视频.| 成人一区二区视频在线观看| 麻豆成人av视频| h日本视频在线播放| 亚洲欧美精品自产自拍| 久久久午夜欧美精品| 婷婷色综合大香蕉| 国产私拍福利视频在线观看| 久久精品综合一区二区三区| 日韩强制内射视频| 欧美激情在线99| 免费观看的影片在线观看| 中文字幕精品亚洲无线码一区| 精品99又大又爽又粗少妇毛片| 最近最新中文字幕大全电影3| 赤兔流量卡办理| 午夜免费男女啪啪视频观看| 日日摸夜夜添夜夜添av毛片| 婷婷精品国产亚洲av| 国产高潮美女av| 国产一区二区三区av在线 | 亚洲美女搞黄在线观看| 精品久久久噜噜| 亚洲性久久影院| 国产高清不卡午夜福利| 天天躁夜夜躁狠狠久久av| 搡女人真爽免费视频火全软件| 五月玫瑰六月丁香| 欧美性感艳星| 日韩高清综合在线| 99热全是精品| 别揉我奶头 嗯啊视频| 天堂av国产一区二区熟女人妻| 亚洲经典国产精华液单| 成人毛片a级毛片在线播放| 国产真实伦视频高清在线观看| 亚洲综合色惰| 欧美性猛交黑人性爽| 两个人视频免费观看高清| 麻豆国产av国片精品| 亚洲精品456在线播放app| 久久久久久久久久久丰满| 啦啦啦啦在线视频资源| 嘟嘟电影网在线观看| 一本精品99久久精品77| 在线播放无遮挡| 三级男女做爰猛烈吃奶摸视频| 91午夜精品亚洲一区二区三区| 国产av在哪里看| 国产伦精品一区二区三区视频9| 亚洲18禁久久av| 久久综合国产亚洲精品| 高清毛片免费观看视频网站| 又爽又黄无遮挡网站| 级片在线观看| 久久久久免费精品人妻一区二区| 免费无遮挡裸体视频| 国内少妇人妻偷人精品xxx网站| 精品国产三级普通话版| 亚洲av免费在线观看| 欧美日韩乱码在线| 亚洲欧美日韩高清专用| 欧美另类亚洲清纯唯美| 免费观看精品视频网站| 黄色配什么色好看| 国产高潮美女av| 久久精品国产亚洲av香蕉五月| 九九在线视频观看精品| 国产欧美日韩精品一区二区| 九草在线视频观看| 国产高潮美女av| 久久婷婷人人爽人人干人人爱| 色哟哟·www| 18禁在线无遮挡免费观看视频| 非洲黑人性xxxx精品又粗又长| 日本三级黄在线观看| 国产在线男女| 99视频精品全部免费 在线| av在线观看视频网站免费| 国产私拍福利视频在线观看| 国产黄色小视频在线观看| 日韩亚洲欧美综合| 午夜精品国产一区二区电影 | 亚洲成av人片在线播放无| 亚洲中文字幕日韩| 日本色播在线视频| 国产成人精品婷婷| 69av精品久久久久久| 可以在线观看的亚洲视频| 久久精品国产鲁丝片午夜精品| 中国美白少妇内射xxxbb| 亚洲中文字幕一区二区三区有码在线看| 亚洲国产精品sss在线观看| 亚洲av成人av| 毛片一级片免费看久久久久| 夜夜夜夜夜久久久久| 日韩视频在线欧美| 亚洲经典国产精华液单| 中文欧美无线码| 一边亲一边摸免费视频| 嫩草影院入口| 中出人妻视频一区二区| 天堂av国产一区二区熟女人妻| 中文亚洲av片在线观看爽| 3wmmmm亚洲av在线观看| 久久久久久久午夜电影| 最近手机中文字幕大全| 成年av动漫网址| 国产成人午夜福利电影在线观看| 99视频精品全部免费 在线| 日韩中字成人| 99九九线精品视频在线观看视频| 国产老妇伦熟女老妇高清| 亚洲久久久久久中文字幕| 亚洲欧美成人精品一区二区| 国内精品美女久久久久久| 久久精品国产亚洲av香蕉五月| 综合色丁香网| 午夜激情福利司机影院| 国产成人a区在线观看| h日本视频在线播放| 亚洲精品自拍成人| 国产精品人妻久久久影院| av卡一久久| 99热6这里只有精品| 中文在线观看免费www的网站| 国产精品一区二区三区四区免费观看| 日日啪夜夜撸| 精品久久久久久久久av| 久久九九热精品免费| 国产久久久一区二区三区| 欧美人与善性xxx| 亚洲精品乱码久久久久久按摩| 亚洲美女视频黄频| av视频在线观看入口| 国产美女午夜福利| 欧美一级a爱片免费观看看| 白带黄色成豆腐渣| 亚洲成人精品中文字幕电影| 成年女人永久免费观看视频| 禁无遮挡网站| 高清在线视频一区二区三区 | 国产精品永久免费网站| 国产成人午夜福利电影在线观看| 悠悠久久av| 国产成年人精品一区二区| 午夜福利在线观看吧| 人妻久久中文字幕网| 在线播放无遮挡| 国产三级中文精品| 长腿黑丝高跟| 亚洲四区av| 国产综合懂色| 免费av不卡在线播放| 看非洲黑人一级黄片| 听说在线观看完整版免费高清| 国产淫片久久久久久久久| 亚洲人成网站高清观看| 欧美人与善性xxx| 亚洲一区二区三区色噜噜| av免费在线看不卡| 国模一区二区三区四区视频| 欧美另类亚洲清纯唯美| 特级一级黄色大片| 欧美日韩在线观看h| 免费大片18禁| 麻豆av噜噜一区二区三区| 国产精品不卡视频一区二区| 此物有八面人人有两片| 久久久精品94久久精品| 久久精品夜色国产| 久久这里有精品视频免费| 12—13女人毛片做爰片一| 国产成年人精品一区二区| 性色avwww在线观看| 在线播放国产精品三级| 国产精品1区2区在线观看.| 亚洲欧洲国产日韩| 女人十人毛片免费观看3o分钟| 亚洲av不卡在线观看| www.av在线官网国产| 精品久久久久久久久亚洲| 亚洲七黄色美女视频| 一级av片app| 国产精品乱码一区二三区的特点| 日韩欧美精品v在线| а√天堂www在线а√下载| 成人美女网站在线观看视频| 久久精品国产亚洲av涩爱 | 女的被弄到高潮叫床怎么办| 欧美日本视频| 亚洲av中文av极速乱| 成年女人永久免费观看视频| 国产美女午夜福利| a级一级毛片免费在线观看| 99久久久亚洲精品蜜臀av| 长腿黑丝高跟| 人妻少妇偷人精品九色| 少妇的逼水好多| 国内少妇人妻偷人精品xxx网站| 国产黄a三级三级三级人| 国产片特级美女逼逼视频| 日韩大尺度精品在线看网址| 麻豆久久精品国产亚洲av| 欧美精品国产亚洲| 久99久视频精品免费| 97超碰精品成人国产| 日产精品乱码卡一卡2卡三| 青春草亚洲视频在线观看| 免费看av在线观看网站| 看免费成人av毛片| 3wmmmm亚洲av在线观看| 卡戴珊不雅视频在线播放| 蜜桃久久精品国产亚洲av| 黄色日韩在线| 免费电影在线观看免费观看| 卡戴珊不雅视频在线播放| 免费黄网站久久成人精品| 婷婷精品国产亚洲av| 国产精品,欧美在线| 午夜精品在线福利| 成人欧美大片| 亚洲精品亚洲一区二区| 免费看美女性在线毛片视频| 精品99又大又爽又粗少妇毛片| av在线亚洲专区| 成人毛片a级毛片在线播放| 亚洲综合色惰| 99久久精品国产国产毛片| 亚洲欧美日韩高清在线视频| 边亲边吃奶的免费视频| 亚洲欧洲日产国产| 亚洲va在线va天堂va国产| 欧美人与善性xxx| 国产一区二区在线av高清观看| 久久精品国产鲁丝片午夜精品| 91aial.com中文字幕在线观看| 亚洲国产色片| 久久精品91蜜桃| av视频在线观看入口| 精品久久久久久久人妻蜜臀av| 久久久成人免费电影| 美女高潮的动态| 午夜福利高清视频| 免费观看的影片在线观看| 老熟妇乱子伦视频在线观看| а√天堂www在线а√下载| 午夜免费男女啪啪视频观看| 国产一区二区激情短视频| 国产综合懂色| 99久久中文字幕三级久久日本| 欧美成人免费av一区二区三区| 日日啪夜夜撸| 中文字幕精品亚洲无线码一区| 寂寞人妻少妇视频99o| 欧美成人a在线观看| av在线亚洲专区| 国产一区二区激情短视频| av在线老鸭窝| 丰满人妻一区二区三区视频av| 欧美极品一区二区三区四区| 综合色av麻豆| 欧美潮喷喷水| 国产亚洲91精品色在线| 99久久人妻综合| 亚洲精品日韩av片在线观看| 国产视频内射| 日日啪夜夜撸| 久久精品国产亚洲网站| 蜜臀久久99精品久久宅男| 国产片特级美女逼逼视频| 亚洲av二区三区四区| 亚州av有码| 亚洲精品国产av成人精品| 日本黄色片子视频| 黄色一级大片看看| 爱豆传媒免费全集在线观看| 最近2019中文字幕mv第一页| 久久久久久久久久成人| 99久久精品热视频| 国产片特级美女逼逼视频| 国产伦一二天堂av在线观看| 久久精品久久久久久噜噜老黄 | 熟女人妻精品中文字幕| 内射极品少妇av片p| 精品一区二区免费观看| 狂野欧美白嫩少妇大欣赏| 国产精品99久久久久久久久| 久久这里只有精品中国| 久久6这里有精品| 老女人水多毛片| 2021天堂中文幕一二区在线观| 亚洲五月天丁香| 青春草视频在线免费观看| 亚洲国产精品sss在线观看| 亚洲av第一区精品v没综合| 国产91av在线免费观看| 国产高清不卡午夜福利| 精品午夜福利在线看| 干丝袜人妻中文字幕| 欧美日韩综合久久久久久| 亚洲国产欧洲综合997久久,| 国产成人a区在线观看| 色吧在线观看| 亚洲在线自拍视频| 国产三级在线视频| 男插女下体视频免费在线播放| 久久人妻av系列| 九九在线视频观看精品| 97超视频在线观看视频| 久久人人爽人人片av| 国产精品一区二区三区四区免费观看| 99热只有精品国产| 欧美xxxx性猛交bbbb| 亚洲国产精品合色在线| 中文精品一卡2卡3卡4更新| 女人被狂操c到高潮| 亚洲成人av在线免费| 色综合站精品国产| 成熟少妇高潮喷水视频| 99视频精品全部免费 在线| 色综合站精品国产| 亚洲人成网站在线播| 插逼视频在线观看| 男女边吃奶边做爰视频| 欧美另类亚洲清纯唯美| 一进一出抽搐gif免费好疼| 女人十人毛片免费观看3o分钟| 联通29元200g的流量卡| 亚洲美女视频黄频| 最近2019中文字幕mv第一页| 婷婷精品国产亚洲av| 亚洲精品国产成人久久av| 色尼玛亚洲综合影院| 波多野结衣高清无吗| 国产精品久久视频播放| 免费观看精品视频网站| 国产爱豆传媒在线观看| 毛片一级片免费看久久久久| 波多野结衣巨乳人妻| 草草在线视频免费看| 国产麻豆成人av免费视频| 网址你懂的国产日韩在线| 国产黄a三级三级三级人| 国产精品久久电影中文字幕| 男的添女的下面高潮视频| 男女视频在线观看网站免费| 久久久欧美国产精品| 久久精品国产清高在天天线| 桃色一区二区三区在线观看| 国产午夜福利久久久久久| 最近视频中文字幕2019在线8| 老师上课跳d突然被开到最大视频| 最好的美女福利视频网| 最后的刺客免费高清国语| 久久精品国产亚洲av涩爱 | 国产精品麻豆人妻色哟哟久久 | 久久久久久久久中文| 亚洲av男天堂| 亚洲一区高清亚洲精品| 亚洲一区二区三区色噜噜| 日日摸夜夜添夜夜爱| 国产午夜精品一二区理论片| 日韩三级伦理在线观看| 极品教师在线视频| 国产爱豆传媒在线观看| 国模一区二区三区四区视频| 欧美激情国产日韩精品一区| 亚洲精品粉嫩美女一区| 国产在视频线在精品| 国产一区二区三区av在线 | 人妻夜夜爽99麻豆av| 久久韩国三级中文字幕| 在线播放无遮挡| 国产精品免费一区二区三区在线| 成年免费大片在线观看| 1000部很黄的大片| 一区二区三区免费毛片| 久久久久久久久久成人| 亚洲精品粉嫩美女一区| 亚洲天堂国产精品一区在线| 97人妻精品一区二区三区麻豆| 久99久视频精品免费| 亚洲人成网站在线播放欧美日韩| 最近视频中文字幕2019在线8| 黄色欧美视频在线观看| 日韩制服骚丝袜av| 女人被狂操c到高潮| 中文字幕av成人在线电影| 亚洲精品国产av成人精品| 黄色一级大片看看| 舔av片在线| 啦啦啦韩国在线观看视频| 久久99热这里只有精品18| 一级av片app| 波多野结衣高清无吗| 午夜精品在线福利| 变态另类成人亚洲欧美熟女| 少妇裸体淫交视频免费看高清| 免费一级毛片在线播放高清视频| 最新中文字幕久久久久| 人妻少妇偷人精品九色| 三级男女做爰猛烈吃奶摸视频| av在线播放精品| kizo精华| 国产精品三级大全| 丝袜喷水一区| 热99在线观看视频| 国产一级毛片在线| 亚洲精品久久久久久婷婷小说 | 久久6这里有精品| 国产伦理片在线播放av一区 | 欧美xxxx性猛交bbbb| 身体一侧抽搐| 一级毛片我不卡| 亚洲色图av天堂| 一级毛片久久久久久久久女| 精品熟女少妇av免费看| 午夜亚洲福利在线播放| 国产成人午夜福利电影在线观看| 国产av不卡久久| 亚洲天堂国产精品一区在线| 国内揄拍国产精品人妻在线| a级毛色黄片| 午夜福利高清视频| 老司机影院成人| 变态另类成人亚洲欧美熟女| 欧美激情在线99| 搞女人的毛片| 深爱激情五月婷婷| 精品久久久久久久人妻蜜臀av| 国产亚洲91精品色在线| 久久久a久久爽久久v久久| 精品国产三级普通话版| 极品教师在线视频| 亚洲成人精品中文字幕电影| 国产日本99.免费观看| 91午夜精品亚洲一区二区三区| 国产片特级美女逼逼视频| 免费观看在线日韩| 18禁裸乳无遮挡免费网站照片| 网址你懂的国产日韩在线| 卡戴珊不雅视频在线播放| 天天一区二区日本电影三级| 青青草视频在线视频观看| 看片在线看免费视频| 久久人人爽人人爽人人片va| 久久久a久久爽久久v久久| 美女国产视频在线观看| 精品久久久久久久久久久久久| 3wmmmm亚洲av在线观看| 亚洲精品456在线播放app| 亚洲乱码一区二区免费版| 热99re8久久精品国产| 一进一出抽搐gif免费好疼| 国产人妻一区二区三区在| 边亲边吃奶的免费视频| 国产亚洲精品久久久com| 成年版毛片免费区| 69人妻影院| 熟妇人妻久久中文字幕3abv| 听说在线观看完整版免费高清| 18+在线观看网站| 亚洲国产欧美人成| 国产精品野战在线观看| 有码 亚洲区| a级一级毛片免费在线观看| 国产一区二区激情短视频| av专区在线播放| 国产一区二区在线av高清观看| 亚洲丝袜综合中文字幕| 又粗又硬又长又爽又黄的视频 | 成人毛片a级毛片在线播放| 国产淫片久久久久久久久| 边亲边吃奶的免费视频| 精品人妻熟女av久视频| 22中文网久久字幕| 久久久国产成人免费| 人妻夜夜爽99麻豆av| 在线免费十八禁| 人妻夜夜爽99麻豆av| 亚洲国产精品成人久久小说 | 国产成人aa在线观看| 在线观看av片永久免费下载| 女人十人毛片免费观看3o分钟| 不卡视频在线观看欧美| 两个人视频免费观看高清| 久久鲁丝午夜福利片| 最近中文字幕高清免费大全6| 国产精品乱码一区二三区的特点| 69人妻影院| 欧美激情久久久久久爽电影| 色播亚洲综合网| .国产精品久久| 性色avwww在线观看| 日本黄色视频三级网站网址| 国内精品宾馆在线| 边亲边吃奶的免费视频| 最近的中文字幕免费完整| 国产精品久久久久久亚洲av鲁大| 国产视频内射| 亚洲成人中文字幕在线播放| 中文字幕制服av| 久久精品国产亚洲av香蕉五月| 一本精品99久久精品77| 在线免费观看的www视频| 啦啦啦韩国在线观看视频| av在线天堂中文字幕| 伦理电影大哥的女人| 天天躁日日操中文字幕| 国产老妇女一区| 男人的好看免费观看在线视频| 国内精品美女久久久久久| 国产淫片久久久久久久久| ponron亚洲| 麻豆乱淫一区二区| 国产一区二区三区av在线 | 精品久久久久久久久亚洲| 亚洲av电影不卡..在线观看| 婷婷六月久久综合丁香| 十八禁国产超污无遮挡网站| 亚洲熟妇中文字幕五十中出| 亚洲三级黄色毛片| 色综合站精品国产| 麻豆成人av视频| 99久久无色码亚洲精品果冻| 欧美日韩一区二区视频在线观看视频在线 | 亚洲成人久久性| 简卡轻食公司| 亚洲中文字幕日韩| 国产黄a三级三级三级人| 亚洲性久久影院| 亚洲av免费高清在线观看| 精华霜和精华液先用哪个| 美女被艹到高潮喷水动态| 欧美成人a在线观看| 亚洲真实伦在线观看| 国产大屁股一区二区在线视频| 黄色视频,在线免费观看| 亚洲第一区二区三区不卡| 如何舔出高潮| 国产精品三级大全| 小说图片视频综合网站| 久久精品国产99精品国产亚洲性色| 久久人人爽人人爽人人片va| 亚洲经典国产精华液单| 国产精品一二三区在线看| 亚州av有码| 岛国毛片在线播放| 99久久精品国产国产毛片| 亚洲精品自拍成人| 特大巨黑吊av在线直播| 有码 亚洲区| 日本成人三级电影网站| 成人av在线播放网站| 村上凉子中文字幕在线| 亚洲第一电影网av| 欧美日韩乱码在线| 国产爱豆传媒在线观看| 天堂影院成人在线观看| 国产精品日韩av在线免费观看| 搞女人的毛片| 中国美女看黄片| 亚洲中文字幕一区二区三区有码在线看| 国产美女午夜福利| 亚洲精品日韩av片在线观看| 日韩欧美国产在线观看| 欧美一区二区国产精品久久精品| 两性午夜刺激爽爽歪歪视频在线观看| 亚洲婷婷狠狠爱综合网| 日本黄大片高清| 麻豆乱淫一区二区| 久久精品夜夜夜夜夜久久蜜豆| 国产日韩欧美在线精品| 99九九线精品视频在线观看视频| 免费无遮挡裸体视频|