精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

對抗拖庫 —— Web 前端慢加密

開發 前端
密碼破解,就是把加密后的密碼還原成明文密碼。似乎有不少方法,但最終都得走一條路:暴力窮舉。也許你會說還可以查表,瞬間就出結果。雖然查表不用窮舉,但表的制造過程仍然需要。查表只是將窮舉提前了而已。

0×00 前言

天下武功,唯快不破。但密碼加密不同。算法越快,越容易破。

0×01 暴力破解

密碼破解,就是把加密后的密碼還原成明文密碼。似乎有不少方法,但最終都得走一條路:暴力窮舉。也許你會說還可以查表,瞬間就出結果。雖然查表不用窮舉,但表的制造過程仍然需要。查表只是將窮舉提前了而已。

密碼加密,用的都是單向散列計算。既然單向,那就是不可逆,那只能窮舉。窮舉的原理很簡單。只要知道密文是用什么算法加密的,我們也用相同的算法,把常用的詞組跑一遍。若有結果和密文一樣,那就猜中了。

窮舉的速度有多快?這和加密算法有關。加密一次有多快,猜一次也這么快。例如 MD5 加密是非常快的。加密一次耗費 1 微秒,那破解時隨便猜一個詞組,也只需 1 微秒(假設機器性能一樣,詞組長度也差不多)。攻擊者一秒鐘就可以猜 100 萬個,而且這還只是單線程的速度。

所以,加密算法越快,破解起來就越容易。

[[157644]]

(題圖來自: netdna-ssl.com)

0×02 慢加密

如果能提高加密時間,顯然也能增加破解時間。如果加密一次提高到 10 毫秒,那么攻擊者每秒只能猜 100 個,破解速度就慢了一萬倍。怎樣才能讓加密變慢?最簡單的,就是對加密后的結果再加密,重復多次。

例如,原本 1 微秒的加密,重復一萬次,就慢一萬倍了:

  1. for i = 0 ~ 10000 
  2.     x = md5(x) 
  3. end 

加密時多花一點時間,就可以換取攻擊者大量的破解時間。

事實上,這樣的「慢加密」算法早已存在,例如 bcrypt、PBKDF2 等等。它們都有一個難度系數因子,可以控制加密時間,想多慢就多慢。

加密越慢,破解時間越長。

0×03 慢加密應用

最需要慢加密的場合,就是網站數據庫里的密碼。

近幾年,經常能聽到網站被「拖庫」的新聞。用戶資料都是明文存儲,泄露了也無法挽回。唯獨密碼,還可以和攻擊者對抗一下。然而不少網站,使用的都是 快速加密算法,因此輕易就能破解出一堆弱口令賬號。當然,有時只想破解某個特定人物的賬號。只要不是特別復雜的詞匯,跑上幾天,很可能就破出來。

但網站用了慢加密,結果可能就不一樣了。如果把加密時間提高 100 倍,破解時間就得長達數月,變得難以接受。即使數據泄露,也能保障「密碼」這最后一道隱私。

0×04 慢加密缺點

不過,慢加密也有明顯的缺點:消耗大量計算資源。使用慢加密的網站,如果同時來了多個用戶,服務器 CPU 可能就不夠用了。要是遇到惡意用戶,發起大量的登錄請求,甚至造成資源被耗盡。性能和安全總是難以兼得。所以,一般也不會使用太高的強度。

一些大型網站,甚至為此投入集群,用來處理大量的加密計算。但這需要不少的成本。

有沒有什么方法,可以讓我們使用算力強勁、同時又免費的計算資源?

0×05 前端加密

在過去,個人電腦和服務器的速度,還是有較大差距的。但如今,隨著硬件發展進入瓶頸,這個差距正縮小。在單線任務處理上,甚至不相上下。客戶端擁有強大的算力,能不能分擔一些服務器的工作?尤其像「慢加密」這種算法開源、但計算沉重的任務,為何不交給客戶端來完成?

對抗拖庫 —— Web 前端慢加密

過去,提交的是明文密碼;現在,提交的則是明文密碼的「慢加密結果」。無論是注冊,還是登錄。而服務端,無需任何改動。將收到的「慢加密結果」,當做原來的明文密碼 就行。以前是怎么保存的,現在還是怎么保存。這樣就算被拖庫,攻擊者破解出來的也只是「慢加密結果」,還需再破解一次,才能還原出「明文密碼」。

對抗拖庫 —— Web 前端慢加密

事實上,「慢加密結果」這個中間值,是不可能破解出來的!因為它是一個散列值 —— 毫無規律的隨機串,例如 32 位十六進制字符串,而字典都是有意義的詞組,幾乎不可能跑到它!除非字節逐個窮舉。但這有 16^32 種組合,是個天文數字。所以「慢加密結果」是無法通過數據庫里泄露的密文「逆推」出來的。

或許你在想,即使不知道明文密碼,也可以直接用「慢加密結果」來登錄。事實上后端儲存時再次加密,就無法逆推出這個散列值了。

當然,不能逆推,但可以順推。把字典里的詞組,用前后端的算法依次執行一次:

  1. back_fast_hash( front_slow_hash(password) ) 

然后對比密文,即可判斷有沒有猜中。這樣就可以用跑字典來破解。但是有 front_slow_hash 這個障礙,破解速度就大幅降低了。

0×06 對抗預先計算

不過,前端的一切都是公開的。所以 front_slow_hash 的算法大家都知道。攻擊者可以用這套算法,把常用詞組的「慢加密結果」提前算出來,制作成一個「新字典」。將來拖庫后,就可以直接跑這個新字典了。

對抗這種方法,還得用經典的手段:加鹽。最簡單的,將用戶名作為鹽值:

  1. front_slow_hash(password + username) 

這樣,即使相同的密碼,對于不同的用戶,「慢加密結果」也不一樣了。也許你會說,這個鹽值不合理,因為用戶名是公開的。攻擊者可以對某個重要人物的賬號,單獨為他建立一個字典。

那么,是否可以提供一個隱蔽的鹽值?答案是:不可以。

因為這是在前端。用戶還沒登錄,那返回誰的鹽值?登錄前就能獲得賬號的鹽值,這不還是公開的嗎。所以,前端加密的鹽值無法隱藏,只能公開。當然,即使公開,單獨提供一個鹽值參數,也比用戶名要好。因為用戶名永遠不變,而獨立的鹽值可以定期更換。

鹽值可以由前端生成。例如注冊時:

# 前端生成鹽值
salt = rand()
password = front_slow_hash(password + salt)

# 提交時帶上鹽值
submit(..., password, salt)

后端將用戶的鹽值也儲存起來。登錄時,輸完用戶名,就可以開始查詢用戶對應的鹽值:

對抗拖庫 —— Web 前端慢加密

當然要注意的是,這個接口可以測試用戶是否存在,所以得有一定的控制。

鹽值的更換,也非常簡單,甚至可以自動完成:

對抗拖庫 —— Web 前端慢加密

前端在加密當前密碼時,同時開啟一個新線程,計算新鹽值和新密碼。提交時,將它們全都帶上。如果「當前密碼」驗證成功,則用「新密碼」和「新鹽值」覆蓋舊的。這樣更換鹽值,還是只用到前端的算力。

這一切都是自動的,相當于 在用戶無感知的情況下,定期幫他更換密碼!

密文變了,針對「特定鹽值」制作的字典,也就失效了。攻擊者得重新制作一次。

0×07 強度策略

密碼學上的問題到此結束,下面討論實現上的問題。

現實中,用戶的算力是不均衡的。有人用的是神級配置,也有的是古董機。這樣,加密強度就很難設定。如果古董機用戶登錄會卡上幾十秒,那肯定是不行的。對于這種情況,只有以下選擇:

  • 強度固定

  • 強度可變

1.強度固定

根據大眾的配置,制定一個適中的強度,絕大多數用戶都可接受。但如果超過規定時間還沒完成,就把算到一半的 Hash 和步數提交上來,剩余部分讓服務器來完成。

[前端] 完成 70% ----> [后端] 計算 30%

不過,這需要「可序列化」的算法,才能在服務端還原進度。如果計算中會有大量的臨時內存,這種方案就不可行了。相比過去 100% 后端慢加密,這種少量用戶「前后參半」的方式,可以節省不少服務器資源。

對于請求協助的用戶,也必須有一定的限制,防止惡意透支服務器資源。

2.強度可變

如果后端不提供任何協助,那只能根據自身條件做取舍了。配置差的用戶,就少加密一點。用戶注冊時,加密算法不限步數放開跑,看看特定時間里能算到多少步:

  1. # [注冊階段] 算力評估(線程 1 秒后中止) 
  2. while 
  3.     x = hash(x) 
  4.     step = step + 1 
  5. end 

這個步數,就是加密強度,會保存到他的賬號信息里。和鹽值一樣,強度也是公開的。因為在登錄時,前端加密需要知道這個強度值。

  1. # [登錄階段] 先獲得 step 
  2. for i = 0 ~ step 
  3.     x = hash(x) 
  4. end 

這個方案,可以讓高配置的用戶享受更高的安全性;低配置的用戶,也不會影響基本使用。(用上好電腦還能提升安全性,很有優越感吧~)

但這有個重要的前提:注冊和登錄,必須在性能相近的設備上。如果是在高配置電腦上注冊的賬號,某天去古董機登錄,那就悲劇了,可能半天都算不出來。。。

3.動態調整方案

上述情況,現實中是普遍存在的。比如 PC 端注冊的賬號,在移動端登錄,算力可能就不夠用。如果沒有后端協助,那只能等。要是經常在低端設備上登錄,那每次都得干等嗎?等一兩次就算了,如果每次都 等,不如重新估量下自己的能力吧。把加密強度動態調低,更好的適應當前環境。將來如果不用低端設備了,再自動的調整回來。讓加密強度,能動態適應常用的設 備的算力。

實現原理,和上一節的自動更換鹽值類似。

4.異想天開方案

下面 YY 一個腦洞大開的方案,前提是網站有足夠大的訪問量。如果當前有很多在線用戶,它們不就是一堆免費的計算節點嗎?計算量大的問題,扔給他們來解決。

對抗拖庫 —— Web 前端慢加密

不過這樣做也有一些疑慮,萬一正好推送給了壞人怎么辦?顯然,不能把太多的敏感數據放出去。節點只管計算,完全不用知道、也不能知道這個任務的最終目的。

但是,如果遇到惡作劇節點,故意把數據算錯怎么辦?所以不能只推送給一個節點。多選幾個,最終結果一致才算正確。這樣風險概率就降低了。

相比 P2P 計算,網站是有中心、實名的,管理起來會容易一些。對于惡作劇用戶,可以進行懲罰;參與過幫助的用戶,也給予一定獎勵。

想象就到此,繼續討論實際的。

0×08 性能優化

1.為什么要優化

或許你會問,「慢加密」不就是希望計算更慢嗎,為什么還要去優化?

假如這是一個自創的隱蔽式算法,并且混淆到外人根本無法讀懂,那不優化也沒事。甚至可以在里面放一些空循環,故意消耗時間。但事實上,我們選擇的肯 定是「密碼學家推薦」的公開算法。它們每一個操作,都是有數學上的意義的。原本一個操作只需一條 CPU 指令,因為不夠優化,用了兩條指令,那么額外的時間就是內耗。導致加密用時更久,強度卻未提升。

2.前端計算軟肋

如果是本地程序,根本不用考慮這個問題,交給編譯器就行。但在 Web 環境里,我們只能用瀏覽器計算!相比本地程序,腳本要慢的多,因此內耗會很大。

腳本為什么慢?主要還是這幾點:

  • 弱類型

  • 解釋型

  • 沙箱

3.弱類型

腳本,是用來處理簡單邏輯的,并不是用來密集計算的,所以沒必要強類型。不過如今有了一個黑科技:asm.js。它能通過語法糖,為 JS 提供真正的強類型。這樣計算速度就大幅提升了,可以接近本地程序的性能!

但是不支持 asm.js 的瀏覽器怎么辦?例如,國內還有大量的 IE 用戶,他們的算力是非常低的。好在還有個后補方案 —— Flash,它有各種高性能語言的特征。類型,自然不在話下。

相比 asm.js,Flash 還是要慢一些,但比 IE 還是快多了。

4.解釋型

解釋型語言,不僅需要語法分析,更是失去了「編譯時深度優化」帶來的性能提升。好在 Mozilla 提供了一個可以從 C/C++ 編譯成 asm.js 的工具:emscripten。有了它,就不用裸寫了。而且編譯時經過 LLVM 的優化,生成的代碼質量會更高。

事實上,這個概念在 Flash 里早有了。曾經有個叫 Alchemy 的工具,能把 C/C++ 交叉編譯成 Flash 虛擬機指令,速度比 ActionScript 快不少。

Alchemy 現在改名 FlasCC,還有開源版的 crossbridge

5.沙箱

一些本地語言看似很簡單的操作,在沙箱里就未必如此。例如數組操作:

 

  1. vector[k] = v 

虛擬機首先得檢查索引是否越界,否則會有嚴重的問題。如果「前端慢加密」算法涉及到大量內存隨機訪問,那就會有很多無意義的內耗,因此得慎重考慮。不過有些特殊場合,腳本速度甚至能超過本地程序!例如開頭提到的 MD5 大量反復計算。

這其實不難解釋:

首先,MD5 算法很簡單。沒有查表這樣的內存操作,使用的都是局部變量。局部變量的位置都是固定的,避免了越界檢查開銷。其次,emscripten 的優化能力,并不比本地編譯器差。最后,本地程序編譯之后,機器指令就不會再變了;而如今腳本引擎,都有 JIT 這個利器。它會根據運行時的情況,實時生成更優化的機器指令。

所以選擇加密算法時,還得兼顧實際運行環境,揚長避短,發揮出最大功效。

0×09 對抗 GPU

眾所周知,跑密碼使用 GPU 可以快很多倍。GPU 可以想象成一個有幾百上千核的處理器,但只能執行一些簡單的指令。雖然單核速度不及 CPU,但可以通過數量取勝。暴力窮舉時,可以從字典里取出上千個詞匯同時跑,破解效率就提高了。

那能否在算法里添加一些特征,正好命中 GPU 的軟肋呢?

1.顯存瓶頸

大家聽過說「萊特幣」吧。不同于比特幣,萊特幣挖礦使用了 scrypt 算法。這種算法對內存依賴非常大,需要頻繁讀寫一個表。GPU 雖然每個線程都能獨立計算,但顯存只有一個,大家共享使用。這意味著,同時只有一個線程能操作顯存,其他有需要的只能等待了。這樣,就極大遏制了并發的優 勢。

2.移植難度

山寨幣遍地開花的時候,還出現了一個叫 X11Coin 的幣,據稱能對抗 ASIC。它的原理很簡單,里面摻雜了 11 種不同的加密算法。這樣,制造出相應的 ASIC 復雜度大幅增加了。盡管這不是一個長久的對抗方案,但思路還是可以借鑒的。如果一件事過于復雜,很多攻擊者就望而生畏了,不如去做更容易到手的事。

3.其他想法

之所以 GPU 能大行其道,是因為目前的加密算法,都是簡單的公式運算。這對 CPU 并沒太大的優勢。能否設計一個算法,充分依賴 CPU 的優勢?CPU 有很多隱藏的強項,例如流水線。如果算法中有大量的條件分支,也許 GPU 就不擅長了。

當然,這里只是設想。自己創造加密算法,是非常困難的,也不推薦這么做。

0x0A 額外意義

除了能降低密碼破解速度,前端慢加密還有一些其他意義:

1.減少泄露風險

用戶輸入的明文密碼,在前端內存里就已加密。離開瀏覽器,泄露風險就已結束。即使通信被竊聽,或是服務器上的惡意中間件,都無法拿到明文密碼。除非網頁本身有惡意代碼,或是用戶系統存在惡意軟件。

2.無法私藏明文

盡管大部分網站都聲稱,不會存儲用戶的明文密碼。但這并沒有證據,也許私下里仍在悄悄儲存。如果在前端加密,網站就無法拿到用戶的明文密碼了。也許正是這一點,很多網站不愿意使用前端加密。

事實上,其實網站不愿意也沒關系,我們可以自己做一個單機版的慢加密插件。當選中網頁密碼框時,彈出我們插件。在插件里輸入密碼后,開始慢加密計算。最后將結果填入頁面密碼框里。這樣,所有的網站都可以使用了。當然,已注冊的賬號是不行的,得手動調整一下。

3.增加撞庫成本

「前端慢加密」需要消耗用戶的計算力,這個缺點有時也是件好事。

對于正常用戶來說,登錄時多等一秒影響并不大。但對于頻繁登錄的用戶來說,這就是一個障礙了。誰會頻繁登錄?也許就是撞庫攻擊者。他們無法拖下這個 網站的數據庫,于是就用在線登錄的方式,不斷的測試弱口令賬號。如果通過 IP 來控制頻率,攻擊者可以找大量的代理 —— 網速有多快,就能試多快。

但使用了前端慢加密,攻擊者每試一個密碼,就得消耗大量的計算,于是將瓶頸卡在硬件上 —— 能算多快,才能試多快。所以,這里有點類似 PoW(Proof-of-Work,工作量證明)的意義。關于 PoW,以后我們會詳細介紹。

0x0B 無法做到的

盡管「前端慢加密」有不少優勢,但也不是萬能的。上一節也提到,能減少風險,而不是消除風險。如果本地環境有問題,那任何密碼輸入都有風險。

下面我們來思考一個場景:某網站使用了「前端慢加密」,但沒有使用 HTTPS —— 這會導致鏈路被竊聽?;仡?0×05 小節,如果拿到「慢加密結果」,就可以直接登上賬號,即使不知道明文密碼。的確如此。但請仔細想一想,這不也降低損失了嗎?

本來不僅賬號被盜用,而且明文密碼也會泄露;而如今,只是賬號被盜用,明文密碼對方仍無法獲得。所以,前端慢加密的真正保護的是「密碼」而不是「賬號」。賬號被盜,密碼拿不到!

如果攻擊者不僅能竊聽,還能控制流量的話,就可以往頁面注入攻擊腳本,從而獲得明文密碼。當然,這和電腦中毒、鍵盤偷窺一樣,都屬于「環境有問題」,不在本文討論范圍內。本文討論的是數據庫泄露的場景。

0x0C 多線程慢加密

用戶的配置越來越好,不少都是四核、八核處理器。能否利用多線程的優勢,將慢加密計算進行分解?如果每一步計算都依賴之前的結果,是無法進行拆解的。例如:

  1. for i = 0 ~ 10000 
  2.     x = hash(x) 
  3. end 

這是一個串行的計算。然而只有并行的問題,才能分解成多個小任務。不過,換一種方式的多線程也是可以的。例如我們使用 4 個線程:

  1. # 線程 1 
  2. x1 = hash(password + "salt1"
  3. for i = 0 ~ 2500 
  4.     x1 = hash(x1) 
  5. end 
  6.  
  7. # 線程 2 
  8. x2 = hash(password + "salt2"
  9. for i = 0 ~ 2500 
  10.     x2 = hash(x2) 
  11. end 
  12. # ...

最終將 4 個結果合并起來,再做一次加密,作為慢加密結果。但這樣會導致更容易破解嗎?留著給大家思考。

0x0D 總結

前端慢加密,就是讓每個用戶貢獻少量的計算資源,使加密變得更強勁。即使數據泄露,其中也凝聚了全網站用戶的算力,從而大幅增加破解成本。

0xFF 后記

前些年比特幣流行時,突發奇想用瀏覽器來挖礦。雖然沒做成,不過獲得了一些密碼學姿勢。近期重新進行了整理,并添加了一些新想法,于是寫篇詳細的文章分享一下。因為密碼學屬于傳統領域,所以結合當下流行的 Web 技術,才能更有新意。

如果你對算法有疑惑,可以先仔細看 0×05 這節。

如果你是耐心看完本文的,希望能有收獲:  )

責任編輯:王雪燕 來源: EtherDream
相關推薦

2011-12-31 09:49:50

2019-01-24 10:23:58

Web前端密碼加密

2025-09-01 00:00:02

2013-12-18 14:30:29

瀏覽器插件

2018-06-26 15:06:37

2014-10-22 10:50:14

Web前端

2015-09-08 13:50:24

Web前端框架類庫

2018-11-29 16:26:25

挖礦病毒網絡安全亞信安全

2013-12-17 16:50:46

Windows更新XP

2024-01-09 15:51:56

Rust開發Trait

2013-12-18 13:17:44

Windows XP

2021-01-13 09:43:01

ChromeKeystoneMac

2017-01-23 19:28:16

2011-04-06 14:08:00

Firefox插件

2023-12-20 21:30:26

2010-06-17 14:17:52

軟件非正常啟動項亞健康

2009-10-30 08:42:04

Windows 7加快啟動速度

2013-09-04 14:49:10

移動Web前端開發設計理念

2011-04-06 09:25:20

MySQL數據庫

2013-06-05 13:56:11

點贊
收藏

51CTO技術棧公眾號

国产精品毛片va一区二区三区| 国产日韩欧美综合一区| 国产一区二区三区欧美| 女人色极品影院| 特黄视频在线观看| 影音先锋亚洲电影| 手机在线观看av| 99久久er热在这里只有精品15| 欧美精品18videos性欧美| 国产人妻精品午夜福利免费| 蜜桃传媒在线观看免费进入| gogogo免费视频观看亚洲一| 欧美日本国产视频| 精品人妻人人做人人爽| 国产中文字幕在线观看| 国产一区二区在线影院| 性欧美激情精品| 久久免费手机视频| 粉嫩一区二区三区在线观看| 亚洲人成精品久久久久| 久久婷婷人人澡人人喊人人爽| 性无码专区无码| 国产精品国内免费一区二区三区| 亚洲精品一区二区精华| 日本www在线播放| 亚洲乱亚洲乱妇| 99视频有精品| 91深夜福利视频| 亚洲AV无码国产精品| 欧美成人黑人| 亚洲免费观看高清完整版在线观看 | 亚洲毛片在线播放| 日本亚洲三级在线| 亚洲福利视频网站| 国产原创popny丨九色| 日本视频在线免费观看| 久久免费电影网| 5566中文字幕一区二区| 久久高清免费视频| 亚洲一区二区三区无吗| 中文字幕日韩欧美| 2018国产精品| 不卡的国产精品| 欧美性色黄大片| 成人国产精品一区二区| 亚洲色图欧美色| 免费在线成人激情电影| 夜夜夜精品看看| 伊人久久大香线蕉av一区| 你懂得在线网址| www.在线欧美| 国产传媒欧美日韩| 国产黄a三级三级三级| 蜜臀av性久久久久蜜臀av麻豆| 51久久精品夜色国产麻豆| 欧美精品入口蜜桃| 围产精品久久久久久久| 伊人伊成久久人综合网站| 可以看的av网址| 992tv国产精品成人影院| 亚洲成av人片一区二区梦乃| 日本一二三区视频在线| 成人在线免费看黄| 亚洲欧美日韩人成在线播放| 伊人av成人| 成人福利片网站| 亚洲另类春色国产| japanese在线播放| 色女人在线视频| 麻豆国产欧美日韩综合精品二区| 国产成人精品网站| 五月婷婷激情五月| 奇米精品一区二区三区在线观看| 国产精品成人在线| 伊人网站在线观看| 国模大尺度一区二区三区| 91九色精品视频| 成人免费视频国产| 成人黄色小视频在线观看| 国产视频精品网| 青青草在线播放| 亚洲国产精品成人综合 | 久久久久久91亚洲精品中文字幕| 一区精品久久| 日本国产一区二区三区| 中文天堂在线播放| 国产一区二区看久久| 99影视tv| 中文字幕第四页| 久久一区激情| 国产日本欧美视频| 国产夫妻性生活视频| 国产凹凸在线观看一区二区| 97超碰人人看人人| 天天射天天操天天干| 国产日韩欧美亚洲| 桥本有菜av在线| av毛片在线| 亚洲国产综合色| 国产精品日韩三级| 欧美四级在线| 色网综合在线观看| 国产美女视频免费| 欧美办公室脚交xxxx| 欧美综合色免费| 国产成人美女视频| 色爱av综合网| 久久天天躁狠狠躁夜夜躁2014| 久久久全国免费视频| 久久av电影| 色婷婷综合久久久| 亚洲制服中文字幕| 西野翔中文久久精品国产| 日韩小视频在线| 国产网站在线看| 久久黄色级2电影| 精品无人区一区二区三区竹菊| av天在线观看| 福利一区福利二区微拍刺激| 成年人三级黄色片| 欧美理论电影在线精品| 亚洲午夜未删减在线观看 | 天堂中文网在线| 国产精品成人一区二区艾草| 国产精品无码人妻一区二区在线| av成人在线观看| 亚洲国产精品成人精品| www.av免费| 亚洲精品欧洲| 91在线在线观看| 麻豆传媒在线免费| 色又黄又爽网站www久久| 尤物网站在线看| 成人毛片免费看| 久久久久中文字幕| 99国产精品久久久久99打野战| 国产亚洲成年网址在线观看| 日本五级黄色片| 电影中文字幕一区二区| 在线成人一区二区| 天天操夜夜操视频| av中文字幕不卡| 分分操这里只有精品| 精品国模一区二区三区欧美 | 国产精品入口免费视频一| 偷拍精品一区二区三区| 亚洲精品免费一二三区| 红桃视频 国产| 日韩成人a**站| 国产成人激情视频| 黄视频在线播放| 欧美日韩午夜剧场| 好男人香蕉影院| 亚洲欧洲一区| 亚洲伊人一本大道中文字幕| 久久精品视频观看| 91福利在线导航| 丁香婷婷激情网| 米奇777超碰欧美日韩亚洲| 777国产偷窥盗摄精品视频| 亚洲国产精品国自产拍久久| 成人免费观看视频| 亚洲看片网站| 综合久久av| 亚洲人成网站在线播| 国产黄网在线观看| 国产欧美日韩不卡| 国产树林野战在线播放| 国产精品高清一区二区| 久久精品国产成人精品| 亚洲一区 中文字幕| 国产精品第13页| 亚洲成人激情小说| 欧美日韩亚洲一区三区| 欧美中文字幕在线观看| 青青草在线免费视频| 在线免费观看成人短视频| 91无套直看片红桃在线观看| 精品亚洲porn| 少妇大叫太大太粗太爽了a片小说| 久久天堂影院| 久久不射热爱视频精品| 蜜桃av鲁一鲁一鲁一鲁俄罗斯的 | 国产不卡高清在线观看视频| 97视频在线免费| 精品在线手机视频| 国产噜噜噜噜噜久久久久久久久| v天堂福利视频在线观看| 欧美精品一区二区三区在线 | 欧美日韩视频不卡| 日本一卡二卡在线播放| 国产精品一二三在| 免费看日本毛片| sdde在线播放一区二区| 成人性生交大片免费看视频直播| 秋霞在线视频| 精品亚洲一区二区| 国产视频一区二区三| 欧美日韩精品在线观看| 欧美视频一区二区在线| eeuss影院一区二区三区| 国产一级做a爰片久久| 欧美日韩p片| 日日夜夜精品网站| 国产a亚洲精品| 97国产精品视频人人做人人爱| 国产午夜视频在线观看| 日韩一二三四区| 精品国产青草久久久久96| 成人国产精品免费观看动漫| 大香煮伊手机一区| 欧美在线精品一区| 国产日韩精品久久| 国产第一精品| 91国产精品电影| www国产在线观看| 一道本无吗dⅴd在线播放一区| 亚洲va欧美va| 日本电影亚洲天堂一区| 久久久久国产精品夜夜夜夜夜| 中文字幕免费不卡在线| 制服.丝袜.亚洲.中文.综合懂| 日日夜夜精品视频免费| 国产伦精品一区二区三区四区视频_| 第一会所sis001亚洲| 精品综合久久| 我要色综合中文字幕| 日本中文字幕成人| 欧美激情20| 久久久久国产精品www| 亚洲av毛片成人精品| 精品少妇一区二区三区日产乱码| 亚洲网站免费观看| 日韩欧美精品网址| 久草视频免费在线| 亚洲三级小视频| 色欲av无码一区二区三区| 美国av一区二区| 欧美啪啪免费视频| 亚洲免费成人| 大陆av在线播放| 欧美精品一级| 五月天激情图片| 色综合咪咪久久网| 亚洲成人一区二区三区| 狠狠综合久久av一区二区蜜桃| 日日狠狠久久偷偷四色综合免费| 狠狠v欧美ⅴ日韩v亚洲v大胸| 亚洲精品xxx| 亚洲国产成人精品激情在线| 亚洲综合视频网| 欧美日韩大片在线观看| 亚洲女同一区二区| 精品国产视频一区二区三区| 国产精品毛片a∨一区二区三区 | 精品美女久久久久久免费| 91美女片黄在线观| 色在线免费观看| 97国产在线观看| 99热精品免费| 亚洲另类色综合网站| 五月婷婷一区二区| 亚洲制服丝袜一区| 精品少妇theporn| 性久久久久久久久| 免费污污视频在线观看| 欧洲一区二区三区在线| 一区二区三区在线免费观看视频| 在线观看亚洲精品视频| 91激情在线观看| 91精品婷婷国产综合久久竹菊| 国产三级第一页| 69堂亚洲精品首页| 狠狠躁日日躁夜夜躁av| 亚洲成人av片| 国产三级在线观看| 国产亚洲欧洲高清一区| 可以免费看污视频的网站在线| 国产亚洲aⅴaaaaaa毛片| 婷婷五月综合激情| 亚洲色图第三页| 最新国产在线观看| 欧美多人乱p欧美4p久久| 日本乱码一区二区三区不卡| 国产精品久久久久久久久粉嫩av| 成人免费毛片嘿嘿连载视频…| 91免费看国产| 色综合久久中文| 日韩福利一区二区三区| 亚洲午夜精品一区二区国产| 国产女大学生av| 蜜乳av一区二区三区| 四川一级毛毛片| 91一区二区三区在线观看| jizzjizz日本少妇| 亚洲v中文字幕| 这里只有精品国产| 欧美精品一区二区三区四区| 国产综合在线观看| 欧美多人爱爱视频网站| 亚洲精品555| 国产精品乱码| 99国产**精品****| 大西瓜av在线| 麻豆国产一区二区| 国产亚洲无码精品| www国产精品av| caopor在线| 东方aⅴ免费观看久久av| 人妻无码中文久久久久专区| 国产一区二区影院| 久久久久99人妻一区二区三区| 乱h高h女3p含苞待放| 国产一区二区女| 女~淫辱の触手3d动漫| 粉嫩嫩av羞羞动漫久久久| 成人在线一级片| 亚洲一区国产视频| 中文字幕在线播放av| 日韩精品免费综合视频在线播放| 老司机精品影院| 国产精品第10页| 日本欧美三级| 亚洲一区 在线播放| 欧美aⅴ一区二区三区视频| 欧美一区二区免费在线观看| 亚洲免费观看高清完整版在线观看熊 | 成人av网址在线| 国产又粗又猛又爽又黄av| 亚洲综合色视频| 亚洲 国产 日韩 欧美| 亚洲成色777777女色窝| 手机av在线播放| 成人有码视频在线播放| 欧美日韩激情| 成人午夜视频免费在线观看| 成人亚洲一区二区一| 91视频综合网| 制服丝袜激情欧洲亚洲| 天堂中文а√在线| 国产精品91久久久| 在线日本制服中文欧美| 欧美性大战久久久久xxx| 国产a视频精品免费观看| 制服 丝袜 综合 日韩 欧美| 欧美色另类天堂2015| 亚洲aaaaaaa| 7777精品视频| 亚洲人成网亚洲欧洲无码| 国产aaa一级片| 91丨porny丨中文| 好看的av在线| 亚洲精品天天看| 欧美人动性xxxxz0oz| 99re国产| 国内自拍一区| 国产一伦一伦一伦| 日韩美女精品在线| 国产精品传媒在线观看| 中文字幕久久久| 四虎视频在线精品免费网址| 尤物国产精品| 国产精品一品二品| 国产在线观看99| 日韩黄色在线免费观看| 亚洲欧美小说色综合小说一区| 欧美xxxx黑人又粗又长精品| 亚洲综合99| 韩国女同性做爰三级| 欧美日韩一区二区在线观看视频| 18免费在线视频| 91成人理论电影| 波多野结衣绝顶大高潮| 欧美日韩国产三级| 最新黄网在线观看| 成人看片视频| 在线观看一区| a级片在线观看| 欧美日韩国产a| 四季久久免费一区二区三区四区| 国产精品二区三区| 亚洲一区日韩在线| 欧洲美熟女乱又伦| 这里只有精品电影| 高潮在线视频| 视频一区视频二区视频三区高| 国产又黄又大久久| 国产手机在线视频| 视频直播国产精品| 欧美系列精品| 国产视频在线观看网站| 岛国一区二区在线观看| 神马久久久久久久| 亚洲视频一区二区三区| 国产人与zoxxxx另类91| 漂亮人妻被中出中文字幕| 亚洲欧洲日韩综合一区二区| 色欲久久久天天天综合网 | 亚洲在线欧美| 菠萝蜜视频在线观看一区|