《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 設計應用 > 基于靜態二進制分析的工控協議逆向解析
基于靜態二進制分析的工控協議逆向解析
2018年電子技術應用第3期
魏 驍,劉仁輝,許鳳凱
華北計算機系統工程研究所,北京100083
摘要: 針對傳統的協議解析方法在工業控制系統中的局限性,提出了一種適用于工業控制系統通信協議的協議逆向分析方法。該方法的算法思想來源于動態污點算法,算法實現基于靜態二進制分析平臺IDA Pro及其提供的軟件開發接口,解析結果可直接為模糊測試提供語義參考。該算法包括預處理、交叉引用分析、協議幀重構和語義提取等步驟,具有針對性強、通用性好的特點。將算法實現后應用于某組態軟件,能夠得到正確的分析結果,證明了該方法的正確性與有效性。
中圖分類號: TP309
文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.171175
中文引用格式: 魏驍,劉仁輝,許鳳凱. 基于靜態二進制分析的工控協議逆向解析[J].電子技術應用,2018,44(3):126-130.
英文引用格式: Wei Xiao,Liu Renhui,Xu Fengkai. Reverse analysis of industrial control protocol based on static binary analysis[J]. Application of Electronic Technique,2018,44(3):126-130.

Reverse analysis of industrial control protocol based on static binary analysis
Wei Xiao,Liu Renhui,Xu Fengkai
National Computer System Engineering Research Institute of China,Beijing 100083,China
Abstract: In view of the limitation of traditional protocol analysis method in industrial control system, this paper proposes a new protocol reverse analysis method suitable for industrial control system communication protocol. The idea of this algorithm is derived from the dynamic taint algorithm, the algorithm is based on the static binary analysis platform IDA Pro and its software development interface. The algorithm includes preprocessing, cross reference analysis, protocol frame reconstruction and semantic extraction and so on. When the algorithm is applied to a configuration software, the correct analysis results can be obtained, and this proved the correctness and the effectiveness of the method.
Key words : industrial control system;protocol reverse;static analysis;cross reference;blot algorithm

0 引言

    工業控制系統(Industrial Control Systems,ICS)是工業生產的基礎,ICS的安全直接關系到經濟、社會發展的穩定和國家安全。與其他計算機系統不同,工業控制系統中存在著大量的私有非標準非公開協議[1],而通信協議作為工控設備間信息交互的基礎,其安全性是工控系統安全的重要組成部分,研究工控協議解析技術對提高工業控制系統安全性具有重要意義。

    傳統的協議逆向分析方法需要耗費大量的時間和人力。目前,協議自動化逆向解析領域主要有兩種方法:一種是基于網絡報文序列分析的方法,另一種是基于程序執行軌跡的方法?;诰W絡報文序列分析的方法對于文本協議處理效果比較好,但是缺乏針對性對協議的語義分析[2],尤其在面對工業控制環境中普遍存在的多層封裝的應用層協議時有些力不從心;而基于執行軌跡方法以動態二進制程序分析為基礎,包括Polyglot、AutoFormat、Tupni、Prospex等方法,這些方法要求樣本的覆蓋率,需要對程序反復地運行調試[3],但調試過程中對代碼的直接修改嚴重破壞了工控系統的穩定性,雖然這種方法解析結果更為準確,但并不適合工業控制系統要求高穩定、高實時的實際情況。

    針對以上問題,本文提出了一種基于靜態二進制分析的工控協議解析方法,此方法以只讀的方式訪問二進制文件,既能獲取協議語義,又能保證不破壞工控系統的穩定性。分析的結果除提供協議信息以外,還可以在通信協議健壯性測試平臺中作為fuzzing測試模塊的輸入,解決普通的fuzzing系統在面對私有協議時無法有針對性地構造測試樣本的問題。

1 總體設計

    本文將此工控協議解析方法作為工業控制系統健壯性測試平臺的一個子系統來加以介紹,協議健壯性測試平臺結構如圖1所示。

jsj4-t1.gif

    當今的ICS中越來越廣泛地使用了基于x86平臺的Windows操作系統,故本文中的方法在實現時主要針對Windows操作系統,反匯編引擎使用Hex-Rays公司的IDA Pro。IDA Pro是一款強大的靜態二進制分析工具,能夠提供功能豐富的IDC函數庫(IDA Pro的一種原生腳本語言)和軟件開發包(Software Development Kit,SDK)[4]。

    協議解析子系統主要包括以下子模塊:文件掃描子模塊、協議提取子模塊和格式化處理子模塊。其中,協議解析模塊包括數據預處理階段、交叉引用分析階段、協議幀重構階段、語義提取階段;格式化處理模塊的輸出既可以作為測試平臺模糊測試模塊的輸入,為模糊測試樣本數據的構造提供參考,又可以作為測試平臺交互模塊的輸入,為用戶提供圖形化的結果展現。協議解析模塊的子模塊結構如圖2所示。

jsj4-t2.gif

2 文件掃描模塊

    掃描模塊的掃描目標是組態軟件等運行于通用計算機的工控軟件。通常,工控軟件體積較為龐大,由眾多功能模塊構成,但協議分析只需要其中的通信模塊,對ICS軟件的所有功能模塊執行協議解析算法不但會增加時間開銷,也會降低分析的準確度。掃描模塊的主要作用就是定位協議分析的對象,為協議分析模塊過濾掉與通信無關的操作。

    文件掃描子模塊有兩種實現方式,一種是遠程掃描,掃描進程運行于測試平臺,通過遠程讀取工程師站或操作員站上的ICS軟件可執行文件并進行分析來實現過濾操作;另一種是以硬件插卡的方式通過USB接口在工控機本地執行掃描進程,并收集掃描結果反饋給測試平臺。這兩種實現方式的區別在于掃描進程的運行位置不同,遠程掃描對工控機沒有性能影響,但需要工控機打開文件訪問權限;本地掃描在掃描過程中可能會占用一定的CPU時間,但不需要額外的權限,其具體差異如表1所示。

jsj4-b1.gif

    以上兩種實現方法在算法本質上是沒有區別的,都是通過讀取動態鏈接庫(Dynami Link Library,DLL)文件的導入表和導入函數表來查找和預測DLL涉及到的操作。一般來講,涉及到TCP協議通信則需要導入WS2_32.dll中的send和recv函數,UDP協議則需要導入WS2_32.dll中的sendto和recvfrom函數[5],通過掃描模塊搜索到的某協議通信模塊的導入表以及導入函數如圖3所示。另外,通過掃描并過濾WriteFile等系統調用還可以找到ICS軟件自己封裝的一些發包和封包函數,通過這些函數還可以解析那些不基于TCP/IP的工控協議,如基于COM串口的工控協議,這是基于網絡流量的協議分析方法無法做到的。

jsj4-t3.gif

3 協議提取模塊

    協議解析模塊基于IDA Pro的IDC腳本和SDK來實現,以IDA腳本或IDA插件的形式提供協議解析服務。

3.1 數據預處理

    ICS使用的軟件種類繁雜,在實現結構上也是千差萬別,有些廠商在設計軟件時并沒有嚴格地遵循模塊化設計的原則,軟件通信模塊沒有獨立地封裝在DLL中,而是與其他的功能代碼混雜在一起放入DLL,甚至分散在多個DLL中。數據預處理針對這種情況,通過讀取IDA Pro反匯編后的匯編代碼,對DLL中的函數進行標記處理,剔除與通信過程無關的函數。對于無法確定的函數,則選擇保留處理。

    篩選算法同時使用兩種標準,第一種標準的依據是向上的代碼交叉引用,利用了函數調用的層次結構;第二種標準的思想源自于動態二進制逆向分析中常用的污點算法,經過修改后基于數據交叉引用實現,用于此處的靜態二進制分析場景[6]。

    定義 二元組f(N,F)表示DLL中的一個函數,其中,N為函數名,F為標記,取值從UNKNOW、STAY、DELETE中枚舉。

    篩選算法的基本流程如下:

    (1)將目標DLL中的函數(包括DllMain、導出函數和內部函數)f加入到函數集合S中初始的標記F均為DELETE。

    (2)使用第一種標準,以發送、接收數據包的函數地址為底層起點,使用IDC函數Rfirst和Rnext訪問其所有的引用函數fn(N,F),并將fn(N,F)的標記F置為STAY。

    (3)迭代執行步驟(2),直至所有引用了起點函數的函數標記均被置為STAY。

    (4)使用第二種標準,以步驟(2)中底層函數的參數中使用的內存緩沖區為污點源,逆序搜索被標記為污點的內存區域的訪問位置,如果有fn(N,F)中引用了污點內存區域,則將fn(N,F)的標記F置為STAY;如果代碼中存在以污點內存為左值的賦值操作,則將作為右值的內存區域也標記為污點內存,并記錄污點傳播的關系,系統為S中的每個fn(N,F)維護一個污點關系數據結構func_pollut,數據結構內容如表2所示;如果函數fn(N,F)沒有顯示地引用污點內存區域且其引用的其他內存位置無法直接判斷是否與污點內存有關,則將fn(N,F)的標記F置為UNKNOW。

jsj4-b2.gif

    (5)迭代執行步驟(4)。枚舉集合S中的函數,刪除所有標記F為DELETE的函數元素,此時的集合S則為待處理的目標集合。

3.2 交叉引用分析

    從軟件逆向工程的角度來看,被不同的上層函數引用次數越多的底層函數通用性越好,封裝程度越高,在設計協議封裝和解析的軟件模塊中,則往往表現為在函數中處理了某一類通用性較強的幀結構,比如攜帶數據載荷的幀和心跳幀;而被不同的上層函數引用次數較少,甚至僅在某一處有過引用的函數,在協議封裝和解析的軟件模塊中往往完成一些連接建立、通信對端認證等控制類的操作,這一類幀屬于控制幀。

    協議解析系統在交叉引用分析階段的主要工作是調用IDC函數獲取交叉引用信息并將信息歸類存儲在數據結構func_info中,某協議的函數依賴關系如圖4所示。通過對獲得的引用數據進行統計來推斷函數類型,并將推斷結果作為協議幀分類階段的輸入。結構func_info的內容如表2所示。

jsj4-t4.gif

    函數類型推斷使用的分界值與協議的復雜度有關,一般來說,與控制幀相關的函數與底層函數間的距離短,被調用的次數少,調用底層函數的次數多。經過實驗對比,具體的分界點取值為距底層函數的距離為2、被調用次數為1、調用底層函數次數為3~5時,系統具有較高準確度,系統在此處預留配置接口,用戶可以根據協議復雜度指定分界點取值。另外,通過IDA Pro自帶的WinGraph32應用程序系統可以獲得較為直觀的函數依賴圖形,依賴圖直接作為模塊的一項輸出結果呈現給用戶,用戶可以根據自己的判斷為系統指定重點分析的模塊或校正系統的推測結果,提高解析精準度。

3.3 協議幀重構

    協議幀重構階段以前兩個階段中獲得的函數依賴關系和對函數類型的推定為參考,判斷函數代碼特征,對目標協議中存在的幀進行重構與分類。算法中涉及到的函數代碼特征主要包括距底層函數的距離是否為1、是否存在較多的幻數賦值操作、是否定長等。一個典型的控制幀組幀操作如圖5所示,可以看到明顯存在較多的幻數賦值操作。

jsj4-t5.gif

    幀重構的算法流程如下:

    (1)將幀集合A初始化為空集,將函數集合S中標記F為STAY和UNKNOW的函數按照上一階段獲取的func_info結構的route_len域值升序排列,存儲到順序表D中。

    (2)從順序表D中取出一個函數fn(N,F),如果fn(N,F)的函數距為1,檢查底層函數調用參數,并在本函數的代碼中檢索緩沖區長度參數的數據引用,如果緩沖區長度為定值,且該值與集合A中所有定長幀的幀長都不相同,則創建一個定長幀,幀長度為緩沖區長度,并將該幀加入到集合A中。

    (3)如果步驟(2)中無法確定緩沖區長度為定值,則創建一個不定長幀,將該幀加入到集合A中。

    (4)針對步驟(2)或步驟(3)中新加的幀,從底層函數調用地址處向上檢索代碼,直至函數頭或另一次底層函數調用,對所有的幻數賦值操作,直接將字段長度和幻數值記錄到新加的幀的對應結構中;對于變量賦值操作,記錄字段長度后字段值暫時以符號代替。統計幻數賦值數量H和變量賦值數量B,如果H>2B,則將此幀標記為控制幀,否則標記為數據幀。

    (5)如果fn(N,F)的函數距不為1,檢索函數代碼,記錄所有的對污點內存區塊的幻數賦值操作,檢索完畢后訪問其func_pollut結構,通過污染源所在的函數編號在集合A中檢索對應的幀結構,并以幻數值替代幀結構中相應位置的符號。

    (6)重復執行步驟(2),直到順序表D中的所有函數均被訪問。

    算法執行完畢后,集合A中的幀即是經過初步構造后的協議幀,此時的幀結構記錄了初步字段結構和常量字段值。

3.4 語義提取

    協議的語義信息主要包括分隔符、關鍵字、校驗域、長度域、指示域等,通過檢索處理協議幀的字段的二進制代碼是否存在相關的特征,可以提取到協議幀的語義信息[7]。例如:校驗域通常伴隨著大量的移位運算;關鍵字和分隔符會涉及到常量賦值操作,它們的主要區別在于關鍵字通常為一般數據,分隔符的值通??梢杂成涑葾SCII表中的的特定字符;長度域也會涉及到常量賦值操作,但對于同一類幀結構來說,不同的調用點常量值一般不同。

    對于一些無法提取比較顯著的特征的代碼段,系統選擇的策略是直接提取相關的二進制代碼,轉儲到文件后在數據結構中記錄該二進制代碼段與對應的協議字段的關聯關系。

3.5 格式化處理

    以上過程處理得到的協議格式有可能存在冗余,同一種變長幀由于個別字段值不同而被記錄為兩種或多種幀,另外,幀之間的邏輯關系信息也不完整。在格式化處理模塊,系統通過比對集合中幀的已知語義來實現去冗余,不定長幀之間雖然長度和某些字段值不完全相同,但只要通過語義對比發現已知語義重復率超過閥值,就判定兩種幀應是同一種幀,對二者執行合并操作。

    最后,系統通過對集合中的幀進行格式化處理,將協議信息以一種標準的格式輸出到結果文件。模糊測試模塊通過讀取文件獲取協議的幀結構和語義等信息,并針對協議結構構造測試用例。

4 實驗與分析

    協議解析系統的主體部分、語義提取和格式化處理通過C語言實現,數據預處理和交叉引用分析通過IDC腳本實現,協議幀重構通過C語言調用IDA Pro SDK實現。

    在實驗中,將獨立實現的系統應用于分析組態王軟件提供的某私有協議的驅動程序,成功獲取了部分協議格式,利用得到的協議格式可以實現與設備的簡單互通,證明了方法的正確性和有效性。經解析,該協議在連接建立時考慮了協議版本的識別,實驗分析得到的協議幀如圖6所示。

jsj4-t6.gif

    另外,在對某DCS系統進行滲透測試的項目中,本協議解析系統作為協議健壯性測試平臺的一個模塊,為模糊測試模塊提供了參考。模糊測試模塊以協議解析系統的輸出作為輸入,根據解析結果,針對此DCS系統的應用層協議生成了80組測試用例,在測試過程中多次造成了目標系統的通信異常,證明了該方法的實用性。模糊測試結果示例如圖7所示,圖中的曲線為系統心跳幀攜帶的正弦數據流,測試開始后可明顯觀測到心跳幀發生中斷和錯序。

jsj4-t7.gif

5 結束語

    本文介紹了一種通信協議逆向解析方法,該方法結合靜態二進制代碼分析工具,將動態污點算法思想應用于靜態二進制分析過程,實現了對工控協議的逆向解析并為模糊測試提供了參考,實驗結果證明了方法的有效性。該方法具有對被測系統影響小、針對性較強的特點,適用于工業控制環境,具有較強的實用價值。

參考文獻

[1] 吳禮發,洪征,潘璠.網絡協議逆向分析及應用[M].北京:國防工業出版社,2016.

[2] 羅杰.基于動態二進制分析的網絡協議逆向方法研究[D].武漢:華中科技大學,2014.

[3] 何永君.基于動態二進制分析平臺的協議逆向解析技術研究[D].鄭州:解放軍信息工程大學,2010.

[4] EAGLE C.The IDA Pro book: The unofficial guide to the world’s most popular disassembler second edition[M].No Starch Press,2010.

[5] CUI W,PEINADO M,CHEN K,et al.Tupni:automatic reverse engineering of input formats[C].ACM Conference on Computer and Communications Security.ACM,2008:391-402.

[6] 劉豫,聶眉寧,蘇璞睿,等.基于可回溯動態污點分析的攻擊特征生成方法[J].通信學報,2012,33(5):21-28.

[7] 潘璠.基于高階屬性文法的協議逆向關鍵技術研究[D].南京:解放軍理工大學,2013.



作者信息:

魏  驍,劉仁輝,許鳳凱 

(華北計算機系統工程研究所,北京100083)

此內容為AET網站原創,未經授權禁止轉載。
热re99久久精品国产66热_欧美小视频在线观看_日韩成人激情影院_庆余年2免费日韩剧观看大牛_91久久久久久国产精品_国产原创欧美精品_美女999久久久精品视频_欧美大成色www永久网站婷_国产色婷婷国产综合在线理论片a_国产精品电影在线观看_日韩精品视频在线观看网址_97在线观看免费_性欧美亚洲xxxx乳在线观看_久久精品美女视频网站_777国产偷窥盗摄精品视频_在线日韩第一页
  • <strike id="ygamy"></strike>
  • 
    
      • <del id="ygamy"></del>
        <tfoot id="ygamy"></tfoot>
          <strike id="ygamy"></strike>
          亚洲国产精品传媒在线观看| 国产精品自拍三区| 在线成人www免费观看视频| 欧美一区二区三区在线看| 亚洲大胆美女视频| 亚洲国产精品久久久久久女王| 在线观看视频一区二区欧美日韩| 久久国产综合精品| 激情久久五月天| 一区二区三区视频观看| 欧美在线播放视频| 欧美午夜剧场| 久久影院亚洲| 久久成人一区二区| 欧美三级视频| 99精品久久免费看蜜臀剧情介绍| 中日韩美女免费视频网址在线观看| 亚洲国语精品自产拍在线观看| 欧美日韩高清在线一区| 午夜视频久久久| 欧美日本精品在线| 亚洲高清一区二区三区| 久久综合精品国产一区二区三区| 欧美午夜美女看片| 在线观看国产成人av片| 亚洲欧洲在线播放| 欧美少妇一区二区| 国产一区二区三区在线观看免费视频| 国产亚洲欧美另类一区二区三区| 夜夜爽www精品| 国产麻豆一精品一av一免费| 国产专区欧美专区| 国产日产亚洲精品| 欧美电影资源| 国产精品一区二区a| 欧美日韩国产区| 国产精品实拍| 久久久www成人免费毛片麻豆| 欧美综合激情网| 亚洲精品日产精品乱码不卡| 欧美理论大片| 韩国女主播一区| 国产精品久久中文| 另类尿喷潮videofree| 亚洲天堂偷拍| 亚洲高清精品中出| 欧美刺激午夜性久久久久久久| 国内精品久久久久影院色| 国内久久婷婷综合| 国产精品日韩一区二区| 一区二区三区日韩精品视频| 国产精品狼人久久影院观看方式| 国产一区久久久| 亚洲精品乱码久久久久久| 午夜电影亚洲| 亚洲国产精品视频一区| 性欧美大战久久久久久久久| 久久女同精品一区二区| 亚洲图片欧美午夜| 国产精自产拍久久久久久| 国产精品成人一区二区三区夜夜夜| 亚洲在线一区| 国产精品亚洲片夜色在线| 国产在线国偷精品产拍免费yy| 亚洲欧美成人综合| 国产日韩1区| 久久综合国产精品| 欧美日韩和欧美的一区二区| 久久www免费人成看片高清| 欧美日韩国产色站一区二区三区| 国产精品自拍视频| 欧美伦理在线观看| 国产一区二区在线免费观看| 亚洲视频1区2区| 欧美精品123区| 亚洲精选在线观看| 国产精品久久久久免费a∨大胸| 羞羞色国产精品| 久久爱www.| 亚洲在线一区二区三区| 久久一区二区三区四区五区| 亚洲人成在线播放网站岛国| 国产精品vvv| 一区三区视频| 美女啪啪无遮挡免费久久网站| 欧美成人三级在线| 国产一区二区三区在线观看网站| 亚洲国产另类久久久精品极度| 午夜一区二区三区不卡视频| 一区二区在线视频观看| 极品少妇一区二区三区精品视频| 欧美日韩视频在线一区二区| 国产视频一区在线观看| 欧美午夜理伦三级在线观看| 欧美成人免费va影院高清| 欧美在线观看视频| 久久精品91久久香蕉加勒比| 国产主播喷水一区二区| 亚洲一级免费视频| 亚洲欧美美女| 在线成人www免费观看视频| 欧美日韩福利视频| 欧美成人亚洲| 日韩视频在线观看国产| 欧美乱人伦中文字幕在线| 欧美日本中文| 欧美国产成人在线| 欧美精品导航| 亚洲国产天堂久久综合网| 国产一区二区看久久| 欧美日韩国产色视频| 一区二区三区日韩欧美| 欧美一区二区免费| 欧美激情一区二区三区在线视频| 国产精品免费久久久久久| 欧美系列精品| 一区二区免费在线视频| 欧美劲爆第一页| 欧美电影打屁股sp| 国产自产在线视频一区| 欧美国产日韩亚洲一区| 欧美a级片网站| 狠狠色狠狠色综合日日小说| 欧美激情一区二区三级高清视频| 亚洲福利在线视频| 一区二区三区在线免费播放| 久久偷窥视频| 国产色爱av资源综合区| 欧美国产视频在线| 一区二区电影免费在线观看| 久久视频在线视频| 99国产精品久久久| 激情五月***国产精品| 久久午夜av| 亚洲大胆美女视频| 欧美日韩性视频在线| 蜜桃av噜噜一区| 欧美国产日韩一区二区在线观看| 亚洲美女黄色片| 国产一区二区欧美| 欧美性天天影院| 欧美/亚洲一区| 国产精品chinese| 欧美日韩国产免费| 午夜欧美电影在线观看| 永久免费毛片在线播放不卡| 国产精品久久久久国产a级| 欧美激情综合色| 免费成人黄色av| 国产精品久久国产精麻豆99网站| 亚洲精品国产精品久久清纯直播| 久久精品动漫| 一区二区三区国产在线观看| 国产中文一区二区三区| 亚洲国产成人精品久久久国产成人一区| 亚洲一区精品电影| 久久视频这里只有精品| 国产老女人精品毛片久久| 欧美午夜不卡影院在线观看完整版免费| 国产亚洲欧洲| 一区二区三区国产在线观看| 欧美中文字幕视频在线观看| 久久蜜桃av一区精品变态类天堂| 欧美一区二区在线视频| 国产日韩亚洲| 欧美福利视频| 欧美亚洲网站| 欧美精品一区三区在线观看| 欧美电影在线| 日韩写真在线| 国产视频久久久久久久| 国产亚洲网站| 亚洲国产精品福利| 亚洲一区影音先锋| 欧美亚洲视频一区二区| 亚洲国产精品成人一区二区| 欧美精品成人| 亚洲欧美成aⅴ人在线观看| 国产欧美精品一区二区色综合| 亚洲一二三区在线| 欧美bbbxxxxx| 亚洲视频一区二区| 亚洲第一天堂无码专区| 午夜精品一区二区三区在线播放| 99精品视频免费观看| 欧美在线视频免费播放| 国内成人在线| 国产视频丨精品|在线观看| 伊甸园精品99久久久久久| 亚洲欧洲视频| 一区二区三区高清视频在线观看| 亚洲免费观看在线视频| 亚洲一区3d动漫同人无遮挡| 亚洲一区二区成人| 久久久久久久欧美精品| 亚洲人成在线观看网站高清| 久久嫩草精品久久久精品| 久久一区二区三区国产精品| 国产真实乱偷精品视频免| 久久久久免费观看| 亚洲福利视频专区| 91久久午夜| 亚洲精品国产精品国自产在线| 久久夜色精品国产欧美乱极品| 国产精品久久久久77777| 国产主播一区二区| 国产伦精品一区二区三| 狠狠色噜噜狠狠色综合久| 久久激情视频久久| 韩日欧美一区| 亚洲精品综合久久中文字幕| 欧美黄色aaaa| 欧美精品一区二区久久婷婷| 欧美日韩一区自拍| 在线观看精品| 欧美激情一区二区三区成人| 欧美一区二区三区视频在线观看| 亚洲国产美女精品久久久久∴| 一区二区三区欧美视频| 久久精品国产99精品国产亚洲性色| 亚洲午夜精品久久| 欧美午夜在线视频| 欧美日韩国产丝袜另类| 亚洲精品免费网站| 日韩天堂av| 欧美精品九九99久久| 久久亚洲国产精品一区二区| 欧美日产在线观看| 在线亚洲高清视频| 在线观看91精品国产入口| 一区二区三区我不卡| 欧美成人第一页| 久久手机精品视频| 亚洲精品欧洲精品| 欧美91大片| 久久久国产91| 国产精品美女xx| 欧美亚洲自偷自偷| 国产精品中文字幕在线观看| 欧美激情一区| 国产综合网站| 欧美激情视频给我| 亚洲一区高清| 国产毛片精品国产一区二区三区| 亚洲欧美在线一区二区| 亚洲黑丝一区二区| 黄网站免费久久| 在线观看日韩欧美| 激情欧美一区二区三区在线观看| 亚洲另类在线视频| 国产精品一区二区久激情瑜伽| 欧美视频免费| 国产婷婷精品| 一区二区三区在线免费播放| 国产日韩欧美精品综合| 久久不射电影网| 欧美成年人视频网站欧美| 国产色综合天天综合网| 亚洲精品综合| 欧美日韩国产123| 欧美精品三级日韩久久| 欧美人体xx| 亚洲欧美日韩另类精品一区二区三区| 欧美福利一区二区三区| 亚洲一区精品在线| 在线一区二区三区四区五区| 久久精品国产精品| 久久综合伊人77777| 亚洲大片精品永久免费| 欧美激情成人在线| 国产一区二区三区日韩欧美| 国产精品一区一区三区| 欧美成年人视频网站欧美| 国产在线精品自拍| 欧美专区日韩专区| 韩国自拍一区| 亚洲日本成人在线观看| 韩国精品久久久999| 快she精品国产999| 欧美视频在线视频| 久久久久看片| 久久福利精品| 久久激情视频免费观看| 欧美午夜不卡| 亚洲中字在线| 国产精品九九久久久久久久| 亚洲二区视频| 国产欧美日韩中文字幕在线| 欧美日韩p片| 亚洲视频二区| 在线欧美小视频| 黑人巨大精品欧美一区二区| 日韩视频在线免费| 欧美伊久线香蕉线新在线| 欧美激情欧美狂野欧美精品| 樱桃成人精品视频在线播放| 蜜桃久久av| 欧美日韩精品一区视频| 亚洲欧洲偷拍精品| 欧美视频三区在线播放| 欧美成人一区二区三区在线观看| 欧美在线视频全部完| 欧美在线视频播放| 国产伦精品一区二区三区视频孕妇| 亚洲欧洲久久| 亚洲欧美国产视频| 亚洲激情社区| 久热精品视频| 亚洲一区二区三区久久| 亚洲一区在线免费| 女人香蕉久久**毛片精品| 老司机免费视频一区二区三区| 国产农村妇女毛片精品久久麻豆| 亚洲免费婷婷| 国产精品久久久久影院色老大| 国产亚洲制服色| 久久国产精品99国产| 欧美va天堂在线| 欧美精品二区三区四区免费看视频| 欧美国产第二页| 一区二区不卡在线视频 午夜欧美不卡在| 久久久青草婷婷精品综合日韩| 国产精品久久91| 亚洲一区二区三区久久| 日韩视频二区| 国产精品亚洲一区二区三区在线| 欧美一级理论性理论a| 国产日本欧美视频|