《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 可編程邏輯 > 業(yè)界動(dòng)態(tài) > 可編程邏輯控制器代碼安全缺陷分析綜述

可編程邏輯控制器代碼安全缺陷分析綜述

2018-08-16

  1 引言

  工業(yè)控制系統(tǒng)(Industrial control system,ICS)是國(guó)家基礎(chǔ)設(shè)施的核心并廣泛用于工業(yè)、交通、能源、水利、安防、食品以及大型制造等行業(yè),工業(yè)控制系統(tǒng)的網(wǎng)絡(luò)安全與國(guó)家安全息息相關(guān)[1]。2010年“震網(wǎng)”[2](stuxnet)病毒造成了伊朗布什爾核電站重大損失,大量離心機(jī)報(bào)廢,導(dǎo)致伊朗的核計(jì)劃推遲,也促使工業(yè)控制系統(tǒng)安全逐漸成為網(wǎng)絡(luò)安全領(lǐng)域的研究熱點(diǎn)。隨著工業(yè)控制系統(tǒng)由封閉走向互聯(lián)[3],大量的控制器配備了以太網(wǎng)通信組件,使得攻擊者可以直接訪問PLC硬件及其編程軟件。但PLC邏輯控制層缺少認(rèn)證和監(jiān)測(cè)等保護(hù)措施,PLC代碼的安全缺陷成為工業(yè)控制系統(tǒng)的重要安全威脅之一。

  2 工控代碼利用相關(guān)研究

  與傳統(tǒng)的編程語言一樣,PLC存在代碼安全缺陷,而這些代碼安全缺陷為攻擊者攻擊工業(yè)控制系統(tǒng)留下了后門。

  2013年South Carolina大學(xué)的Sidney對(duì)PLC代碼設(shè)計(jì)安全缺陷進(jìn)行了深入的研究[4],并把PLC代碼設(shè)計(jì)級(jí)缺陷主要分為基于硬件缺陷和基于軟件缺陷兩種。攻擊者可以利用PLC代碼缺陷破壞代碼邏輯,進(jìn)行中間代碼插樁,實(shí)現(xiàn)任意代碼執(zhí)行等。

  2014年北京科技大學(xué)李偉澤等[5]提出和分析了一種針對(duì)SCADA系統(tǒng)的新型的網(wǎng)絡(luò)物理攻擊——偽邏輯攻擊。

  2015年在blackhat-US會(huì)議上Klick等在西門子S7-300中注入了一種新型的后門[6],通過注入工具實(shí)現(xiàn)了在S7-300上進(jìn)行SNMP掃描及SOCK5代理功能。作者利用PLC程序中存在跳轉(zhuǎn)指令的安全缺陷,成功在主程序OB1前嵌入惡意指令從而可以控制PLC的啟停以及輸出寄存器。

  2016年11月在blackhat歐洲會(huì)議上Ali Abbasi等[7]實(shí)現(xiàn)了對(duì)PLC輸入/輸出接口的新攻擊,該攻擊通過篡改輸出輸入引腳改變系統(tǒng)的運(yùn)行邏輯。

  2017年3月,來自印度海德拉巴和新加坡的學(xué)者,演示了針對(duì)工業(yè)控制系統(tǒng)的PLC梯形圖邏輯炸彈(Ladder Logic Bombs,LLB)[8]。該邏輯炸彈是用梯形圖語言編寫的惡意軟件,這種惡意軟件可被攻擊者注入到PLC現(xiàn)有控制邏輯中,通過改變控制動(dòng)作或者等待特定的觸發(fā)信號(hào)來激活惡意行為,以實(shí)現(xiàn)傳感器數(shù)據(jù)篡改,系統(tǒng)敏感信息獲取以及PLC拒絕服務(wù)攻擊等。

  3 PLC代碼缺陷分類

  不同于傳統(tǒng)的IT系統(tǒng),工業(yè)控制系統(tǒng)有其特殊的編程語言,根據(jù)國(guó)際電工委員會(huì)制定的工業(yè)控制編程語言標(biāo)準(zhǔn)(IEC61131-3)[9],PLC的編程語言包括以下五種:梯形圖語言(LadderLogic Programming Language,LD)、指令表語言(Instruction List,IL)、功能模塊圖語言(Function Block Diagram,F(xiàn)BD)、順序功能流程圖語言(Sequential function chart,SFC)及結(jié)構(gòu)化文本語言(Structured text,ST)。本文中的代碼缺陷研究也是基于上述編程語言展開的。

  工業(yè)控制系統(tǒng)的入侵與傳統(tǒng)互聯(lián)網(wǎng)入侵雖然手段上大同小異,但工業(yè)控制系統(tǒng)的部署與其物理工藝流程緊耦合,因此利用工藝流程中的代碼邏輯缺陷成為針對(duì)工業(yè)控制系統(tǒng)的有效打擊手段之一,如陷阱門、邏輯炸彈、特洛伊木馬、蠕蟲、Zombie等,且這類新的惡意代碼具有更強(qiáng)的傳播能力和破壞性。本文主要研究基于軟件的PLC代碼缺陷,并從代碼邏輯缺陷和違反安全需求規(guī)約兩個(gè)方面對(duì)PLC代碼缺陷進(jìn)行分類研究。

  3.1 PLC代碼邏輯缺陷

  PLC代碼邏輯缺陷具有隱蔽性強(qiáng)的特性,難以發(fā)現(xiàn),可以潛伏多年,傳統(tǒng)的安全防御思路無法解決這方面問題。在工業(yè)控制系統(tǒng)中,一次開關(guān)動(dòng)作不執(zhí)行,工藝執(zhí)行流程的改變以及特定的輸出響應(yīng)故障都可能造成毀滅性的破壞。

  本文以梯形圖語言為例分析PLC代碼邏輯缺陷,梯形圖語言形象直觀,與繼電器的控制電路的表達(dá)方式極為相似[10]。梯形圖由觸點(diǎn)、線圈等圖形符號(hào)結(jié)合數(shù)字指令、算術(shù)運(yùn)算指令、控制指令等指令符號(hào)構(gòu)成,PLC代碼邏輯缺陷也是由這些元素和組件位置放置不恰當(dāng)、鏈接和范圍不正確引起的[4]。表1給出了PLC代碼邏輯缺陷分類及其相關(guān)描述。

  表1 PLC代碼邏輯缺陷分類表

11509898998780510.jpg

21509899025314820.jpg

  通過利用表1中列舉的PLC代碼邏輯缺陷,可實(shí)現(xiàn)拒絕服務(wù)攻擊,中間人攻擊、改變控制器正常的工作流程等,對(duì)工業(yè)控制系統(tǒng)造成難以估量的損失。下面給出幾個(gè)PLC代碼缺陷分析和利用。

  (1)計(jì)時(shí)器條件競(jìng)爭(zhēng)缺陷

  PLC編程中的計(jì)時(shí)器可通過設(shè)置預(yù)設(shè)時(shí)間觸發(fā)計(jì)時(shí)器。定時(shí)器完成位元件的不正確放置可能導(dǎo)致涉及定時(shí)器完成位的過程和定時(shí)器本身進(jìn)入競(jìng)爭(zhēng)條件。當(dāng)定時(shí)器完成位成為激活其自身觸發(fā)機(jī)制的必需元素時(shí),發(fā)生這種競(jìng)爭(zhēng)條件使得定時(shí)器陷入死循環(huán)并使定時(shí)器復(fù)位。

  如圖1所示,把計(jì)時(shí)器的預(yù)設(shè)值設(shè)為0,使得定時(shí)器觸發(fā)位和定時(shí)器同時(shí)打開,造成計(jì)時(shí)器持續(xù)振蕩,使得輸出O4.1無法被觸發(fā),致使程序流程順序錯(cuò)誤或進(jìn)程無法關(guān)閉等故障,實(shí)現(xiàn)拒絕服務(wù)攻擊。

31509899036109860.jpg

  圖1 計(jì)時(shí)器條件競(jìng)爭(zhēng)缺陷梯形圖

  (2)比較函數(shù)硬編碼缺陷

  PLC邏輯代碼中的數(shù)字指令包含比較指令,該比較指令如果編碼不正確可能會(huì)導(dǎo)致安全隱患,使得惡意用戶可以通過比較指令將不正確的數(shù)據(jù)插入到進(jìn)程中。這些數(shù)據(jù)可能會(huì)導(dǎo)致進(jìn)程序列發(fā)生變化,或者導(dǎo)致進(jìn)程完全中止。

  如圖2所示,假設(shè)常開觸點(diǎn)I0.1可以觸發(fā)高壓鍋爐的初始化,常開觸點(diǎn)后連接一個(gè)比較函數(shù),O4.1控制高壓鍋爐的關(guān)閉進(jìn)程。直到A的值大于等于B的值時(shí),O4.1被激活,鍋爐停止加熱。如果比較元素B不參考符號(hào)表中的數(shù)值而是使用定值進(jìn)行硬編碼,B中的數(shù)據(jù)是不受保護(hù)的,我們通過提高B的溫度值,使得高壓鍋爐不斷加熱直到設(shè)備損壞甚至發(fā)生爆炸。

41509899054543448.jpg

  圖2 比較函數(shù)缺陷梯形圖

  (3)跳轉(zhuǎn)和鏈接缺陷

  跳轉(zhuǎn)和鏈接缺陷是由一些可影響程序執(zhí)行順序的跳轉(zhuǎn)指令和邏輯塊指令的錯(cuò)誤的跳轉(zhuǎn)到某個(gè)程序段而引起。這種類型的代碼缺陷類似于中間人攻擊,攻擊者可以利用錯(cuò)誤的跳轉(zhuǎn)指令跳轉(zhuǎn)到一個(gè)非預(yù)期的位置,并且把在非預(yù)期的位置插入惡意的程序段,再返回到跳轉(zhuǎn)之前的位置。

  圖3給出了基于跳轉(zhuǎn)和鏈接缺陷的代碼利用方法,我們可以利用跳轉(zhuǎn)到子程序JSR函數(shù)從File1跳轉(zhuǎn)到惡意代碼文件File3中,引入惡意的子程序再返回到JSR跳轉(zhuǎn)之前位置,完成惡意代碼的插入,實(shí)現(xiàn)中間人攻擊。

51509899075218386.jpg

  圖3 跳轉(zhuǎn)和鏈接缺陷圖

  3.2 PLC代碼安全需求規(guī)約

  除了PLC代碼邏輯缺陷,PLC代碼在物理現(xiàn)場(chǎng)的安全需求屬性也將決定PLC缺陷利用的成功與否。安全需求屬性是由工業(yè)控制現(xiàn)場(chǎng)的安全要求決定,指的是為了保證工業(yè)控制系統(tǒng)的安全,對(duì)設(shè)備狀態(tài)、時(shí)序、時(shí)間、輸入輸出量等的約束。如一個(gè)電機(jī)的額定轉(zhuǎn)速不超過2000rpm以及交叉路口的綠燈不能同時(shí)點(diǎn)亮等約束條件。在代碼中可能由于程序員的疏忽導(dǎo)致違反安全需求屬性的情況,就需要對(duì)其進(jìn)行檢測(cè)。可見安全需求屬性不是常量,而需要實(shí)際用戶進(jìn)行描述并輸入到檢測(cè)器中。Pavlovic等[11]對(duì)PLC的設(shè)備狀態(tài)、時(shí)序、時(shí)間、輸入輸出量等安全需求進(jìn)行了約束。本文將安全需求總結(jié)為分為以下五類,如表2所示。

  表2 PLC代碼安全需求規(guī)約表

61509899102920019.jpg

  4 PLC代碼形式化分析與驗(yàn)證

  PLC代碼采用“順序掃描,不斷循環(huán)”的工作方式,典型的PLC的工作過程包括三個(gè)不同階段:把輸入數(shù)據(jù)讀入存儲(chǔ)器、處理存儲(chǔ)器中的數(shù)據(jù)和更新輸出數(shù)據(jù)。PLC程序僅包含有限的狀態(tài)集合和有限的變量,且程序內(nèi)部不包含循環(huán),安全需求依賴于輸出變量等,所以在一定程度上形式化驗(yàn)證技術(shù)適用于PLC程序安全分析和惡意代碼檢測(cè)。

  形式化分析分為定理證明和模型檢測(cè)兩種方法,定理證明過程過于復(fù)雜和冗繁,實(shí)際中利用定理證明來驗(yàn)證PLC程序正確性的研究并未得到認(rèn)可。模型檢測(cè)是一種廣泛使用的形式化方法,他更適合用于PLC代碼的驗(yàn)證,相比于傳統(tǒng)的計(jì)算機(jī)程序,對(duì)低級(jí)的PLC程序建模會(huì)更容易,因?yàn)樗臓顟B(tài)轉(zhuǎn)換系統(tǒng)相對(duì)簡(jiǎn)單。

  4.1 PLC形式化分析中面臨的困難

  (1)PLC缺乏高級(jí)編程語言

  PLC編程屬于低級(jí)編程語言且編程語言眾多,語法語義晦澀,采用分層尋址,地址尋址復(fù)雜,存在隱式的類型數(shù)據(jù),建模難度大,語言屬性易丟失。

  (2)時(shí)間建模缺失

  工業(yè)控制系統(tǒng)的實(shí)時(shí)性要求很高,因此對(duì)時(shí)間進(jìn)行建模極為重要,時(shí)間建模的對(duì)象應(yīng)包括定時(shí)器的累積時(shí)間、單條指令的運(yùn)行時(shí)間和執(zhí)行周期時(shí)間,由于定時(shí)器是跨循環(huán)周期的全局變量,建模時(shí)將時(shí)間考慮在內(nèi)會(huì)極大地提高建模的難度并增加檢測(cè)的時(shí)間,但不考慮時(shí)間就無法檢測(cè)出與時(shí)間相關(guān)的安全規(guī)約。

  (3)物理環(huán)境建模缺失

  工控系統(tǒng)與物理環(huán)境關(guān)系密切,工業(yè)控制器的輸入一般可以認(rèn)為是物理環(huán)境的輸出,輸出一般可以認(rèn)為是物理環(huán)境的輸入,構(gòu)成一個(gè)閉環(huán)回路,不考慮物理環(huán)境就無法精確地模擬出工業(yè)控制器的行為。

  (4)狀態(tài)空間爆炸

  PLC代碼包含的變量多,狀態(tài)空間大,對(duì)PLC代碼進(jìn)行建模分析是建立在狀態(tài)轉(zhuǎn)化基礎(chǔ)上的,如果直接進(jìn)行模型檢測(cè)會(huì)造成狀態(tài)空間爆炸的問題。

  4.2 PLC代碼形式化分析

  PLC代碼形式化驗(yàn)證旨在檢測(cè)出PLC代碼缺陷,防止惡意代碼的入侵。目前通過形式化驗(yàn)證方式發(fā)現(xiàn)PLC代碼缺陷的研究主要集中于對(duì)PLC代碼形式化模型構(gòu)建、PLC代碼缺陷及安全需求規(guī)約描述以及PLC代碼模型檢測(cè)技術(shù)的研究,如圖4所示。

71509899127146006.jpg

  圖4 PLC控制代碼檢測(cè)的技術(shù)路線

  4.2.1 中間語言翻譯

  由于工業(yè)控制器支持多種標(biāo)準(zhǔn)編程語言,且語法語義上都有較大差異,現(xiàn)有的模型檢測(cè)技術(shù)大都基于特定的編程語言,為了降低建模的復(fù)雜性,我們需要把PLC編程語言轉(zhuǎn)化成模型檢測(cè)器可以處理的中間語言。

  Darvas等[12~15]提出了將PLC程序的SCL語言轉(zhuǎn)化為基于NuSMV的中間模型方法,它是一種接近于自動(dòng)機(jī)模型的中間模型。McLaughlin等[16]給出了將PLC的指令表IL語言代碼翻譯為基于Vine的中間語言ILIL的方法。Zonouz等[17]通過反編譯的方法將MC7code轉(zhuǎn)化為中間語言ILIL,該中間語言ILIL同樣使用BitBlaze[18]二進(jìn)制分析工具Vine插件來描述。

  4.2.2 時(shí)間模型構(gòu)建

  工業(yè)控制系統(tǒng)的實(shí)時(shí)性要求很高,因此時(shí)間是很重要的建模對(duì)象。延時(shí)寄存器(On-Delay Timer,TON)用于確保PLC中實(shí)時(shí)性屬性,TON指令為PLC的輸入信號(hào)提供延遲機(jī)制。對(duì)TON計(jì)時(shí)器建模會(huì)極大地提高建模的難度并增加檢測(cè)的時(shí)間,但不考慮時(shí)間就無法檢測(cè)出與時(shí)間相關(guān)的安全規(guī)約。因此對(duì)TON計(jì)時(shí)器的形式化驗(yàn)證成為PLC代碼形式化驗(yàn)證的瓶頸之一。

  近年來也有一些對(duì)T ON 計(jì)時(shí)器的建模研究,Masder等[19~20]最早開始這方面的研究,他們將IL程序轉(zhuǎn)換為時(shí)間自動(dòng)機(jī)模型并使用自動(dòng)機(jī)和Prometa模型兩種方式對(duì)計(jì)時(shí)器建模。Willems[21]使用時(shí)間自動(dòng)機(jī)對(duì)TON模型建模計(jì)來解決關(guān)于TON的問題。Wan等[22~23]在定理證明器Coq中針對(duì)梯形圖語言對(duì)TON計(jì)時(shí)器進(jìn)行形式化驗(yàn)證,但沒有給出通用模塊的PLC程序形式化描述。Sidi[24]在定理證明器Coq中針對(duì)指令表語言對(duì)TON計(jì)時(shí)器進(jìn)行形式化驗(yàn)證。

  4.2.3 模型檢測(cè)技術(shù)

  模型檢測(cè)是一種廣泛使用的自動(dòng)化驗(yàn)證技術(shù),選擇合適的模型來驗(yàn)證系統(tǒng),并且通過系統(tǒng)地探測(cè)建模來檢查所要驗(yàn)證的所需屬性。由于模型檢測(cè)可以自動(dòng)執(zhí)行,并能在系統(tǒng)不滿足性質(zhì)時(shí)提供反例路徑,因此在工業(yè)界比演繹證明更受推崇。模型檢測(cè)在PLC系統(tǒng)安全的驗(yàn)證方面特別有用,因?yàn)榕c傳統(tǒng)的計(jì)算機(jī)編程相比,可以更容易地將低級(jí)PLC代碼建模為狀態(tài)轉(zhuǎn)換系統(tǒng)。

  目前研究中用到的模型檢測(cè)工具有很多, 如SMV、UPPAAL、SPIN等。Yoo等[25]使用Verilog模型和CadenceSMV模型對(duì)核電站控制系統(tǒng)的PLC代碼進(jìn)行模型檢查。McLaughlin等[16]開發(fā)了一個(gè)TSV(Trusted Safety Verifier)工具,該工具是利用TEG(Temporal Execution Graph)圖來進(jìn)行模型檢測(cè),在原始的IL代碼對(duì)輸出變量賦值再轉(zhuǎn)換到ILII中間語言,依據(jù)被給的安全需求,TSV使用生成的TEG圖來決定具體的原子命題值。Zonouz等[26]同樣利用TEG圖的方法進(jìn)行模型檢測(cè),先對(duì)線性時(shí)序邏輯規(guī)范公式進(jìn)行取反接著得到TEG-UR圖模型P,然后在模型M中搜尋滿足的路徑,最后,如果在第三步中不存在任何路徑,則可認(rèn)為原始代碼滿足安全需求,能夠安全地執(zhí)行。如果存在路徑,則可以通過違反約束的路徑條件得到相應(yīng)的反例。

  實(shí)際開發(fā)的PLC程序包含的多個(gè)變量和狀態(tài)空間,執(zhí)行路徑較復(fù)雜。會(huì)遇到狀態(tài)空間爆炸的問題。解決狀態(tài)空間爆炸問題最有效的方法是符號(hào)執(zhí)行,McLaughlin等[16]提出一種合并具有相同輸出的輸入來避免等價(jià)狀態(tài)生成的狀態(tài)聚合方法。Guo等[27]提出了一種用于自動(dòng)測(cè)試PLC編程語言符號(hào)執(zhí)行工具SymPLC。SymPLC將PLC源代碼作為輸入,并在應(yīng)用符號(hào)執(zhí)行之前將其轉(zhuǎn)換為C語言,以系統(tǒng)的生成測(cè)試輸入來覆蓋每個(gè)周期任務(wù)中的所有路徑。為此,他們提出了一些PLC特定縮減技術(shù),用于識(shí)別和消除冗余。

  5 結(jié)語

  在工業(yè)控制系統(tǒng)中,一個(gè)微小的代碼缺陷可能影響到整個(gè)工業(yè)流程遭受破壞甚至威脅到生命財(cái)產(chǎn)安全。本文圍繞著工業(yè)控制系統(tǒng)控制代碼安全展開研究,從PLC代碼邏輯缺陷、代碼安全需求規(guī)約兩個(gè)方面對(duì)工控代碼缺陷進(jìn)行分類,并結(jié)合了現(xiàn)實(shí)中常見的梯形圖邏輯缺陷構(gòu)造了代碼利用場(chǎng)景,基于這些代碼邏輯缺陷實(shí)現(xiàn)了對(duì)工業(yè)控制系統(tǒng)的拒絕服務(wù)攻擊,中間人攻擊等。PLC代碼形式化驗(yàn)證是發(fā)現(xiàn)PLC代碼缺陷的一種重要且有效的方法,文章最后圍繞著如何實(shí)現(xiàn),簡(jiǎn)要從中間語言翻譯,時(shí)間模型構(gòu)建和模型檢測(cè)技術(shù)三個(gè)方面闡述了PLC代碼形式化驗(yàn)證的技術(shù)路線及研究進(jìn)展。


本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請(qǐng)及時(shí)通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
久久不射网站| 午夜日韩激情| 亚洲一区二区三区午夜| 亚洲人成毛片在线播放女女| 狠久久av成人天堂| 国产亚洲精品一区二555| 国产精品区一区| 国产精品久久久久久久久久久久久 | 亚洲男人的天堂在线aⅴ视频| 99国产麻豆精品| 亚洲精品资源美女情侣酒店| 亚洲精品一区在线| av成人免费在线| 国产精品99久久久久久久vr| 亚洲午夜未删减在线观看| 在线视频日韩精品| 国产精品99久久久久久www| 亚洲天堂网在线观看| 亚洲午夜精品久久久久久app| 亚洲视频成人| 亚洲欧美日韩精品综合在线观看| 亚洲综合二区| 久久精品二区亚洲w码| 久久久999精品免费| 久久男人资源视频| 免费在线观看成人av| 欧美精品123区| 欧美日韩亚洲一区三区| 国产精品九九久久久久久久| 国产精品视频最多的网站| 国产伦理一区| 尤妮丝一区二区裸体视频| 亚洲电影免费| 一区二区欧美精品| 午夜精品亚洲一区二区三区嫩草| 久久国产精品一区二区三区四区| 亚洲人成毛片在线播放女女| 一区二区免费在线视频| 欧美一级淫片aaaaaaa视频| 久久激情五月激情| 美女网站久久| 欧美午夜在线视频| 国产亚洲人成网站在线观看| 尤物99国产成人精品视频| 亚洲精品国产日韩| 亚洲欧美日韩国产综合精品二区| 久久精品亚洲热| 在线综合亚洲| 久久久久久久网| 欧美麻豆久久久久久中文| 国产精品日韩精品| 一区二区亚洲| 中文欧美日韩| 亚洲成人自拍视频| 亚洲婷婷综合久久一本伊一区| 欧美一级免费视频| 欧美国产成人精品| 国产麻豆成人精品| 亚洲三级影院| 性欧美videos另类喷潮| 99精品视频免费观看| 欧美一级成年大片在线观看| 欧美成人网在线| 国产精品日韩精品欧美精品| 亚洲国产成人高清精品| 亚洲一区国产精品| 亚洲精品永久免费| 久久成人国产精品| 欧美日韩一区在线观看| 一区二区三区中文在线观看 | 亚洲性视频h| 亚洲国产精品久久精品怡红院| 中日韩美女免费视频网址在线观看 | 狠狠噜噜久久| 一区二区三区四区五区视频| 久久精品五月| 香蕉久久a毛片| 欧美区视频在线观看| 国产一区二区激情| 中文一区二区| 日韩视频一区二区| 久久综合电影| 国产欧美精品一区二区色综合 | 亚洲欧美精品suv| 欧美激情黄色片| 国产自产精品| 亚洲欧美激情四射在线日| 一区二区三区免费观看| 美女网站久久| 国语自产精品视频在线看抢先版结局 | 日韩写真视频在线观看| 久久人人九九| 国产欧美日韩激情| 亚洲午夜精品久久久久久浪潮| 亚洲美女电影在线| 毛片av中文字幕一区二区| 国产欧美一区二区精品秋霞影院| 夜夜嗨av一区二区三区中文字幕| 亚洲精品久久久久久一区二区| 久久女同精品一区二区| 国产视频一区在线观看一区免费| 亚洲午夜精品久久久久久浪潮 | 午夜精品婷婷| 欧美性感一类影片在线播放| 最近看过的日韩成人| 亚洲国产精品福利| 久久在线免费| 极品尤物av久久免费看| 久久福利毛片| 久久久久久久尹人综合网亚洲 | 在线亚洲美日韩| 欧美黑人国产人伦爽爽爽| 在线播放精品| 亚洲人成人一区二区在线观看| 麻豆精品视频在线| 在线日韩电影| 亚洲精品一二| 欧美精品久久久久久| 亚洲精品日韩综合观看成人91| 亚洲精品综合精品自拍| 欧美国产日韩精品免费观看| 亚洲高清久久网| 亚洲精品三级| 欧美激情一区在线观看| 亚洲欧洲视频| 中文一区二区在线观看| 欧美视频在线一区| 一区二区三区**美女毛片| 亚洲女ⅴideoshd黑人| 国产精品美女| 欧美亚洲日本国产| 久久国产精品久久久久久电车 | 99综合在线| 午夜精品福利视频| 国产欧美一区二区精品忘忧草 | 亚洲免费在线播放| 国产精品嫩草99av在线| 午夜久久99| 久久免费一区| 亚洲青涩在线| 亚洲一区二区三区乱码aⅴ蜜桃女| 国产精品国产三级国产专播精品人| 中文av一区特黄| 欧美在线视频在线播放完整版免费观看 | 亚洲国产成人久久| 夜夜嗨av一区二区三区中文字幕| 欧美日韩综合网| 亚洲免费视频观看| 六十路精品视频| 亚洲精品一区二区三| 亚洲男人第一网站| 国内自拍一区| 一本一本久久a久久精品牛牛影视| 欧美视频亚洲视频| 午夜视频久久久| 免费的成人av| 在线一区二区日韩| 久久精品视频免费观看| 亚洲激情婷婷| 欧美一级久久久久久久大片| 精久久久久久久久久久| 亚洲最新合集| 国产麻豆精品久久一二三| 亚洲高清123| 欧美三日本三级三级在线播放| 亚洲欧美日韩专区| 欧美第一黄网免费网站| 亚洲网站视频福利| 美女日韩欧美| 亚洲午夜视频| 米奇777超碰欧美日韩亚洲| 一本色道久久综合亚洲精品按摩| 久久精品一区| 一区二区国产精品| 久久一区精品| 一区二区三区www| 美女日韩欧美| 亚洲一区二区免费在线| 欧美sm重口味系列视频在线观看| 一区二区三区日韩欧美精品| 久久久精品五月天| 亚洲最黄网站| 两个人的视频www国产精品| 在线亚洲欧美视频| 欧美r片在线| 午夜亚洲福利| 欧美日韩中文字幕在线| 久久精品国产免费观看| 国产精品大片免费观看| 亚洲人成在线免费观看| 国产欧美日韩三级| 一区二区三区四区国产| 精品成人一区| 欧美亚洲综合在线| 夜夜嗨一区二区| 欧美精品videossex性护士| 欧美在线观看网站| 国产精品久久久久久久久果冻传媒| 亚洲精品乱码久久久久久黑人 | 欧美丝袜一区二区三区|