日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

ELF加载器的原理与实现

發布時間:2023/12/14 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ELF加载器的原理与实现 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

ELF加載器

為什么需要ELF

隔離應用服務和內核服務
有了ELF,我們的應用程序都可以通過編譯成ELF的方式從外部加載,系統內核部分只提供關鍵的內核服務(內存管理/中斷/調度/IPC)和系統服務(文件/網絡),用戶服務程序都可以通過ELF的方式進行加載。同時庫的同步更新可以在不更新內核的情況進行同步更新。

提供統一編程接口
我們通過提供統一的POSIX標準庫,來為用戶提供標準的編程接口,方便了應用程序開發人員進行標準開發

應用程序可以動態加載和卸載
通過ELF,用戶可以動態的加載和卸載相關服務,增強了應用程序加載的靈活性

ELF加載方式

靜態庫-獨立exec

我們把所有相關源代碼進行編譯,鏈接,最后生成可執行文件,這個文件不依賴于其他模塊,是一個完整的可執行單元。
操作系統處理這類文件的流程是直接將elf的所有段拷貝到內存中,然后將PC指針指向entry就可以運行了,什么場景下會這樣使用呢?

  • 簡單的應用程序,不依賴于其他模塊
  • 依賴于其他模塊,其他模塊以靜態庫的方式鏈接到應用程序

優點:程序是一個完整的可執行單元,不需要操作系統去進行重定向操作
缺點:每一個依賴于某個靜態庫的應用程序都會包含完整的靜態庫,這樣每一個應用程序都會占用磁盤空間和內存空間,如果這樣的應用程序有成千上萬,那資源浪費很大

動態庫-非獨立exec

非獨立exec我們這里只講依賴于動態庫的應用程序,一般情況我們在編寫應用程序的時候,會用到很多庫,這些庫是其他工程師已經寫好了,我們直接用就可以了,最典型的就是C和C++庫,我們在寫應用程序的時候只需要關注我們自己的業務功能就可以了。
外部庫的存在方式以靜態和動態2種,靜態庫在上面已經分析了,接下來我們著重分析動態庫
如果我們的C庫已經編譯成了動態庫,那么我們把他鏈接到我們的應用程序的時候,編譯器只會對所需C庫的符號進行分析,并把他記錄到rel.dyn里,并不會真正的把動態庫中的具體內容進行拷貝,所以這樣編譯出的應用程序就不包括動態庫的內容,等到將應用程序真正加載到操作系統去運行的時候,我們操作系統中會有一個動態鏈接器dl去完成外部符號的鏈接與重定位
優點:
應用程序依賴的動態庫在內存中只存在一份,當然數據段是每個應用程序私有的,這樣會節約磁盤空間和內存空間
當我們要更新動態庫時,只需要更新動態庫文件即可,所依賴的應用程序不需要單獨更新

缺點:
應用程序的啟動會犧牲一部分啟動時間
動態庫更新需要考慮兼容性問題

靜態庫

編譯方式

靜態庫將庫源文件打包成.a,然后main鏈接到靜態庫,形成可執行文件exe,這里的鏈接實際上就是把.a的代碼和數據聯合main打包到exe里。

編譯流程

編譯腳本

$(CC) -MD -c $(CFLAGS) %.c -o %.c.o $(AR) cr libxxx.a %.c.o

動態庫

編譯方式

動態庫以.so的方式呈現,然后main鏈接到動態庫,形成可執行文件exe,注意這里的鏈接并非真正的鏈接,并沒有把.so的代碼和數據拷貝到exe里,只是標記了引用的外部符號表,所以exe的大小并沒有變大。

編譯流程

編譯腳本

$(CC) -MD -c $(CFLAGS) %.c -o %.c.o $(CC) -shared -fPIC -nostartfiles -o libxxx.so %.c.o

ELF格式分析

一個可執行文件我們可以從兩個視角去剖析:

  • 鏈接視圖:section - 節
  • 執行試圖:segment - 段

讀取elf信息

readelf -a xxx > xxx.dump

section

一個elf文件,由多個section組成,這個可以linker.lds里指定節的名稱和地址,一般來說一個elf是由多個section組成的,如下圖:

從上圖可以看出,此elf由11個段組成,其中最中要的段有:

  • text
  • rodata
  • data
  • bss

從section(節)的角度上,我們可以看出一個elf的基本組成,以及每個節的名稱,類型,運行地址,大小,屬性等。從上面的例子中我們可以得到:

  • text:代碼節大小為0x55e0,運行地址為0x41000000,在文件中的偏移為0x10000(64K對齊)。text包含elf的所有指令,有些鏈接腳本把rodata也合并到此節
  • data:數據節大小為0x470,運行地址為0x410055e8,在文件中的偏移為0x155e8。data包含已經初始化的數據,這些數據必須像指令一樣保存在文件中
  • bss:bss節大小為0x238,運行地址為0x41005a58,在文件中的偏移為0x15a58。因為bss是段是未初始化和初始化為0的節,所以在文件中實在是沒有必要存儲一堆0,只需要保存好bss大小,在elf加載的時候再手動清零即可,這樣可以減少elf文件的空間

解析header

上面的section是我們通過readelf命令讀取得到的,在elf里專門有區域來存儲所有section的分布信息,我們通過header信息就可以輕松得到:
首先來看一下header結構:

重要的數據成員:

  • e_entry:程序的入口地址,一般為main函數的地址
  • e_phoff:程序頭在文件中的偏移,用于解析segment信息
  • e_shoff:節頭在文件中的偏移,用于解析section信息
  • e_phnum:程序頭個數
  • e_shnum:節頭個數
  • e_phentsize:一個程序頭的大小,32位下默認固定為32字節
  • e_shentsize:一個節頭的大小,32位下默認固定位40字節

程序頭

節頭

剛剛上面的section信息,我們就可以讀取ELF文件的前128字節來解析ELF頭部,根據section的偏移,再解析就可以得到section信息了,同樣segment信息也是如此

segment

segment就是我們熟悉的段,我們一般在談論一個程序加載的過程,我們希望用segment來描述,一個segment可以包含多個section,還是之前的那個elf文件,我們來分析一下他在段的視角下是如何組成的。

這個elf由2個段組成,我們只關注LOAD段,LOAD段表示此段是需要加載到內存運行的,我們可以看到LOAD段的大小分為了兩部分,FileSiz和MemSiz,我們先放一下,我們先關注FileSiz,也就是LOAD段實際在文件中占用了多大空間,0x5a58,我們從section視圖可以看到0x5a58剛好就是data節的結束地址。由此我們可以得到FileSiz,是text+rodata+data,我們再看MemSiz,MemSiz表示此段在內存中所占用的空間,前面我們說到bss段是不需要占用文件空間的,但是他需要占用內存空間,而且需要手動進行清0操作,所以我們可以看到MemSiz的大小為FileSiz+bss_size。再看此段的屬性,為RWE說明此段可讀可寫可執行,包含了代碼數據加BSS。

如何加載ELF

靜態庫加載

這里說的靜態庫加載指的是程序鏈接到靜態庫生成的exe文件的加載,靜態庫的加載相對動態庫要簡單很多,因為全部工作已經由編譯器的連接器ld給我們完成了,我們要做的只是把ELF文件map到相應運行地址空間,然后把PC指向entry即可。

  • map我們可以理解為copy,因為每一個elf都具有相同運行的地址空間,這個可以通過鏈接腳本指定,上面的elf的運行地址空間從0x41000000開始,很明顯這個地址是個虛擬地址,也就是說,我們要把elf文件映射到這個地址空間上去。這里就需要解決一個問題,在多個ELF加載的過程中,需要把相同運行地址空間映射到不同的物理地址空間,這樣才能保證每個ELF的代碼和數據是相互獨立的。這個概念和多進程有點類似哦。此處不多講,這涉及到地址空間管理的問題,總之,需要內核提供這樣一個接口。
  • 究竟拷貝哪些內容呢?我們之前的segment現在可以出馬了,segment里記錄了我們需要拷貝的內容的全部信息,在靜態庫加載中,我們直接把屬性為RWE的LOAD段拷貝到0x41000000,即可,需要注意的是,需要手動把bss清0。
  • 將PC指向main
  • 靜態庫加載流程圖

    動態庫加載

    這里說的動態庫與加載指的是程序鏈接到動態庫生成的exe文件的加載,動態庫的加載比靜態庫要復雜很多,程序在鏈接階段,只是給我們初步進行了一個假鏈接,我們需要自己在程序加載的時候再去鏈接動態庫,簡單來說,我們需要自己實現一個鏈接器linker,把主模塊和動態庫鏈接起來。

    我們對比一下靜態庫和動態庫在進程地址空間中的分布:

    靜態庫很簡單,直接把數據映射到text開始的地方就可以了,動態庫的映射缺分成了2部分,動態庫除了節省磁盤空間之外還具有共享屬性,這個屬性可以節約內存空間,尤其是在多個ELF加載同一個共享可以的同時,我們只需要映射一次即可。動態庫的映射除了本身主模塊的映射之外,還需要把共享庫可以映射到進程的共享庫中去,如上圖,主模塊被映射到0x41000000開始,共享庫被映射到0x5D000000,我們要做的就是建立主模塊和共享庫之間的連接(主模塊需要引用動態庫中的函數和數據),也就是重定位工作,這也是我們實現鏈接器的關鍵。

    共享庫的關鍵:共享庫的代碼段是被所有ELF共享的,數據段對于每個ELF來說是相互獨立的,linux下通過cow(寫時拷貝)技術實現這一機制,從根本上來說,是通過缺頁異常來實現。

    實現自己的鏈接器

    鏈接器最重要的工作就是重定位,主要包含主模塊重定位和共享庫重定位兩項工作,后面我們都稱為main_relocate和libary_relocate。這兩者有何區別?

    main relocate

    main relocate主要完成的工作是把引用的外部函數和變量的地址更新到got.plt表中去,這樣才能完成函數跳轉工作

    library relocate

    library relocate主要處理的是共享庫內部的函數跳轉和變量引用,共享庫最后被編譯成位置無關,各個源文件之間的函數跳轉(非static函數)和變量引用(非static變量)都需要重定位后才能進行加載運行,重定位的類型和CPU相關,ARM下的重定位類型主要有如下:

    鏈接流程

    我們先來梳理一下鏈接器的流程:

    判斷ELF是否需要鏈接器

    我們讀取一個包含共享庫的elf文件:

    在程序頭中,我們發現了INTERP,證明這個elf是需要鏈接器去進行重新鏈接共享庫。同時,一般包含了INTERP,同時也會有DYNAMIC段,從INTERP可以看出,ELF需要執行/usr/lib/ld.so.1來進行鏈接,在我們的系統中,我們的鏈接器(解釋器)是被編譯到系統服務中去的,所以就不用執行鏈接器本身的自舉操作了,在Linux里,鏈接器本身還要完成自舉操作,要復雜一些。
    段類型:

    查看ELF依賴哪些動態庫

    經過上面的鏈接器檢查,如果檢查出ELF確實依賴了一些庫,那究竟依賴于哪些庫呢?這個信息從哪里可以解析出來呢?我們的dynamic段該上場了,dynamic段里存儲了相關信息,我們先截取看一下:

    首先我們可以看到,在程序頭中,我們可以看到新增加了DYNAMIC段,并標記了DYNAMIC的屬性,大小,偏移等。
    我們首先來看看dynamic段的數據結構:

    我們再看看有哪些類型的動態節:




    類型確實是有點太多了,先大概掃一眼

    我們要解析出ELF依賴于哪些庫,需要借助 NEEDED 和 STRTAB,STRSZ 來解析,下面流程圖表示了解析依賴庫的流程:

    之前的解析圖中我們可以看出此ELF依賴于libdl.so和libmath.so,這個依賴信息是如何生成的呢?回想一下我們在之前提到的主模塊在鏈接動態庫的時候,我們說是個假鏈接,意思就是說只是給生成的exe文件打包上了相關依賴庫和重定向信息,所以我稱為假鏈接,我們看一下ld信息:

    LINK: elf_test arm-none-eabi-ld --warn-common --gc-sections -e main -T./linker.lds -L./libs/libdl -L./libs/libmath -Map elf_test.map -o elf_test --start-group elf_loader_test.c.o -ldl -lmath --end-group

    其中的 -ldl -lmath,就會生成依賴信息

    主模塊調用共享庫里的函數接口

    主模塊程序如下:

    /******************elf_test.c****************/ #include <dl.h> int main() {int sum = dl_sum(1, 2);return 0; }

    共享庫程序如下:

    /******************dl.c****************/ #include <dl.h> int dl_sum(int a, int b) {return a+b; }

    把dl.c編譯成動態庫libdl.so:

    $(CC) -MD -c $(CFLAGS) dl.c -o dl.c.o $(CC) -shared -fPIC -nostartfiles -o libld.so dl.c.o

    在main中鏈接libdl.so:

    $(LD) $(LDLAGS) -e main -T./linker.lds -L./libs/libdl -o elf_test elf_loader_test.c.o -ldl

    linker.lds如下:

    ENTRY(main);SECTIONS{. = 0x41000000;.text :{*(.text .text.*)*(.rodata .rodata.*)}.data :{*(.data .data.*)}.bss :{*(.bss .bss.*)} }

    我們反匯編生成的exe文件:

    $(OBJDUMP) -x -D -S elf_test > elf_test.dump

    我們定位到我們調用dl_sum處:

    因為dl_sum是動態庫里的,代碼自然也在動態庫里,那么在exe里,他跳轉到了0x4100014c這個地址處:

    這個是plt表,最后他會跳轉到一個新的地址上,那這個新地址是多少呢?

    這些外部函數究竟該跳轉到哪里?

    main里調用的所有外部動態庫函數,都存放在rel.dyn節里,我們來看一下:

    我們來分析一下rel.dyn的數據結構:

    r_info里保存著外部變量和函數的信息:

    #define ELF32_R_SYM(i) ((i)>>8) #define ELF32_R_TYPE(i) ((unsigned char)(i)) #define ELF32_R_INFO(s,t) (((s)<<8)+(unsigned char)(t)) // index為外部符號在動態符號表中的索引 index = ELF32_R_SYM(rel->r_info); // type為外部符號表的類型:函數/變量/...... type = ELF32_R_TYPE(rel->r_info);

    找到所需外部符號表的信息流程如下:

    總結一下:根據rel.dyn節找到所有依賴外部動態庫的符號,根據符號名搜索外部庫找到符號真正的地址,然后進行重定向,重定向實際上就是,修改main中的.got.plt節把他的地址指向真正的地址就可以了。這樣函數在跳轉流程如下:
    main->plt->rel.dyn->got.plt

    從外部動態庫搜索符號

    main 中 用到了dl_sum符號,那么如何從外部動態庫中得到該符號的真正地址呢?
    搜索方式有2種:字符串匹配 和 hash匹配,在符號量大的情況下建議使用hash匹配,搜索效率會比較高,下面簡要介紹一下字符串匹配的流程:

    我們看一下dl_sum的在libdl.so的地址是多少:

    注意:這里的地址是0x790,只是一個相對偏移地址,重定向的時候需要加上一個共享庫的加載地址進行重定向。

    未完成的工作

    前面我們完成了main的重定向,我們還沒有對動態庫做任何處理,顯然還有一步沒有完成,就是把動態庫的內容映射到進程的地址空間里,不然我們重定向后,還是無法正常跳轉到dl_sum

    我們同樣readelf來看一下動態庫的基本信息:

    動態庫也是一種類型的elf,他的type為DYN,其他信息的含義和exe并無區別

    在這個動態庫里包含了很多動態段,我們先放一下,如果你的動態庫,沒有涉及到數據段和函數間的引用的話,你只需要把代碼段映射到進程的共享地址空間即可,如果你的動態庫里涉及到了數據段和函數調用就需要再次對庫進行重定位。

    如何對共享庫進行重定位

    static函數和變量

    靜態函數和變量不需要進行重定位

    非靜態全局變量

    全局變量在庫中的訪問,是通過間接訪問得到:
    源代碼:

    int dl_data1 = 0x3; int get_dl_data() {return dl_data1; }

    反匯編:

    000006e0 <get_dl_data>:6e0: e52db004 push {fp} ; (str fp, [sp, #-4]!)6e4: e28db000 add fp, sp, #06e8: e59f201c ldr r2, [pc, #28] ; 70c <get_dl_data+0x2c>6ec: e08f2002 add r2, pc, r26f0: e59f3018 ldr r3, [pc, #24] ; 710 <get_dl_data+0x30>6f4: e7923003 ldr r3, [r2, r3]6f8: e5933000 ldr r3, [r3]6fc: e1a00003 mov r0, r3700: e28bd000 add sp, fp, #0704: e49db004 pop {fp} ; (ldr fp, [sp], #4)708: e12fff1e bx lr70c: 0001029c muleq r1, ip, r2710: 00000014 andeq r0, r0, r4, lsl r0

    從反匯編中,我們可以看到最后從0x109a4的地址中取出全部變量的地址,然后再ldr r3, [r3],得到全局變量的值。我們找到0x109a4的地址,發現其值為0,說明此地址是需要我們進行重定位的,我們找到dl_data真正的地址為0x109c8:

    那么重定位就是把0x109a4地址處的值修改為0x109c8,這樣就能正確訪問全局變量了。
    我們發現0x109a4是位于got節中的,所以我們得到,got節中應該保存著所有需要進行重定位的全局變量的地址。
    在rel.dyn里記錄下了所有變量所需重定向的信息:

    非靜態bss

    非靜態bss段的重定位和非靜態的全部變量一樣

    全局函數

    全局函數在庫中的訪問是通過延遲綁定來實現的:

    // dl.c int dl_test() {return get_dl1_data(); } // dl1.c int dl1_data = 0x35; int get_dl1_data() {return dl1_data; }


    同樣,最終會跳轉到got表中去,我們需要對got表中的函數進行重定位:
    再rel.plt節里記錄了所有延遲綁定的函數:

    Offset表示重定向的源地址,Sym.Value表示真實的函數地址

    共享庫重定位


    R_ARM_ABS32,R_ARM_GLOB_DAT,R_ARM_JUMP_SLOT,都直接把offset修改為sym.value即可,R_ARM_RELATIVE比較特殊,需要把offset地址處的值修改為load_addr + [offset]

    共享庫重定位流程

    總結

    以上是生活随笔為你收集整理的ELF加载器的原理与实现的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    日韩二区三区在线观看 | 免费亚洲电影 | 一区二区影视 | 最新日韩中文字幕 | 色婷婷狠狠五月综合天色拍 | 色之综合网 | 久久电影网站中文字幕 | 国内精品久久久 | 91成人网页版 | 青青草国产免费 | 精品99久久 | 色视频在线观看 | 麻豆视频免费网站 | 日本免费久久高清视频 | 久久免费视频在线观看6 | 91精品成人| 黄色小网站在线 | 国产一级高清 | 免费毛片一区二区三区久久久 | 日本精a在线观看 | 国产剧情在线一区 | 天天干,天天操,天天射 | 成人影片在线免费观看 | 中文字幕在线观看亚洲 | 日韩午夜网站 | 亚洲91网站| 日韩免费高清在线 | 午夜精品久久久 | 国产在线精品一区二区三区 | 国产999精品久久久影片官网 | 欧美 亚洲 另类 激情 另类 | 成人久久综合 | 人人爽人人爽人人爽学生一级 | 欧美一区二区三区在线播放 | 精品久久久精品 | 国产高清在线免费观看 | 国产人免费人成免费视频 | 天天插日日插 | 欧美日韩国产一区二区三区 | 国产午夜麻豆影院在线观看 | 一区二区三区在线免费观看视频 | 成人午夜影院在线观看 | 狠狠操欧美 | 一级特黄av| 天天操天天添天天吹 | 国产二区av | 亚洲黄色小说网址 | 中文字幕乱码视频 | 午夜视频99 | 日本久久久影视 | 中文字幕九九 | 开心色激情网 | 久久av网| 亚洲高清视频在线观看 | 久久香蕉电影 | 91在线播| 国产精品区免费视频 | 91污污视频在线观看 | 国产精品久久在线观看 | 国产精品久久久久久久99 | 在线免费观看欧美日韩 | 久久综合九色九九 | 久久久久久97三级 | 狠狠干夜夜操天天爽 | 久久精品aaa | 成人h电影 | 91视频 - 88av | 又爽又黄又无遮挡网站动态图 | 九色精品| 久久99国产精品免费 | 97综合在线 | www.天天干.com | av黄色在线播放 | 久操视频在线 | 色先锋资源网 | 一区二区不卡高清 | 97操碰| 天天干夜夜想 | 欧洲精品视频一区 | 国产精品成人免费一区久久羞羞 | 一区二区三区在线免费观看 | 成人黄色短片 | 91精品蜜桃 | 国产一级做a爱片久久毛片a | 在线观看免费一级片 | 手机色在线| 天天操天天射天天添 | 欧美日韩不卡一区二区三区 | 日日干美女 | av综合在线观看 | 免费男女羞羞的视频网站中文字幕 | 色就是色综合 | 香蕉久久久久 | 亚洲另类视频在线观看 | 久久免费视频3 | 国产成人777777| 日日草夜夜操 | 久久97超碰 | 五月天欧美精品 | 青青色影院 | 六月激情| 欧美作爱视频 | 欧日韩在线 | 大胆欧美gogo免费视频一二区 | 狠狠躁夜夜躁人人爽超碰97香蕉 | 国产精品18久久久久久久久久久久 | 很黄很黄的网站免费的 | 国产黄色av | 麻豆国产精品一区二区三区 | 国产在线观看中文字幕 | 亚洲欧美日韩国产一区二区 | 欧美 日韩 性 | 日韩av免费在线看 | 国产亚洲高清视频 | 精品国产乱码久久久久 | 黄色aa久久| 欧美成人中文字幕 | 91精品久久久久久久久久久久久 | 91精品欧美一区二区三区 | 狠狠狠狠狠狠狠 | 高潮久久久久久久久 | 美女又爽又黄 | 888av| 亚洲精品国偷自产在线99热 | 久久久久麻豆v国产 | 日韩欧美网址 | 四虎欧美 | 香蕉视频亚洲 | 国产一区二区在线免费播放 | 亚洲国产高清在线 | 久久亚洲二区 | 在线免费观看黄 | 天天碰天天操视频 | 亚洲97在线 | 日韩在线一二三区 | 亚洲国产日韩在线 | 97在线资源 | 久久综合激情 | 黄色a在线 | 夜夜躁日日躁狠狠久久88av | 亚洲国产精品激情在线观看 | av成人免费网站 | 99在线高清视频在线播放 | 久久综合久色欧美综合狠狠 | 国产成人久久精品77777 | 国产欧美日韩视频 | 国产高清在线看 | 九色一区二区 | 亚洲国产资源 | 成人在线一区二区三区 | 国产免费av一区二区三区 | 国产二区视频在线 | 亚洲精品一区二区在线观看 | 一区二区三区视频在线 | 国产亚洲精品女人久久久久久 | 国产在线a免费观看 | 国产首页 | 久久精品国产一区二区 | 免费三级av | 狠狠干夜夜爽 | 四虎永久免费网站 | 91精品视频在线免费观看 | 91禁看片| 五月激情视频 | 在线91色| 国产不卡在线观看视频 | 91视频国产高清 | 首页av在线 | 天堂视频中文在线 | 久久一区二区三区国产精品 | 日韩精品你懂的 | 久久99精品久久久久久久久久久久 | 三级毛片视频 | 中文字幕免费在线看 | 国产一区在线视频观看 | 69av视频在线 | 在线影院中文字幕 | 九九热精品视频在线播放 | 在线观看国产区 | 久久久久久久久久久久国产精品 | 成人av免费电影 | 最近2019好看的中文字幕免费 | 男女激情免费网站 | 在线一区电影 | 国产美女视频一区 | 中文字幕亚洲欧美 | 91精品视频观看 | 天堂视频一区 | 久久久受www免费人成 | 91香蕉视频在线下载 | 久久精品视频国产 | 久久99热这里只有精品国产 | 天天看天天干天天操 | 久久国产女人 | 午夜三级大片 | 99视频在线免费播放 | 日精品 | 亚洲综合欧美日韩狠狠色 | av噜噜噜在线播放 | 天天综合久久综合 | 午夜国产影院 | 91精品免费在线观看 | 丰满少妇对白在线偷拍 | 91xav | 国产日韩视频在线观看 | 97福利视频 | 国产精品久久久久久久久久久久午夜 | www.天天综合 | 97综合视频 | 最近中文字幕久久 | 免费看国产精品 | 91久久丝袜国产露脸动漫 | 天天综合导航 | 一级国产视频 | 亚洲欧美经典 | 一区二区三区国 | 国产91精品高清一区二区三区 | 国产黄色在线看 | 成人av一区二区三区 | 欧美极品少妇xxxxⅹ欧美极品少妇xxxx亚洲精品 | 成人午夜影院 | 狠狠综合久久 | 美女视频黄频大全免费 | 男女精品久久 | 综合网伊人| 久久福利国产 | 久久久久久久久久久电影 | 91人人爱| 99爱精品在线| 色综合久久五月天 | 成人在线观看资源 | 亚洲视频免费 | av动图 | 二区三区在线视频 | 91香蕉视频色版 | 成人四虎| 国产中文在线视频 | 国产精品免费一区二区三区在线观看 | 国产精品免费在线播放 | 久久久久亚洲精品成人网小说 | 国产精品久久久久久久久久白浆 | 久久韩国免费视频 | 国产精品理论片 | 免费在线观看av电影 | 黄色aaa级片 | 欧美电影黄色 | 香蕉久久久久久av成人 | 国产小视频免费在线观看 | 99精品久久精品一区二区 | 日韩av免费观看网站 | 日韩成人精品一区二区三区 | 日韩免费播放 | 国产在线观看你懂的 | 国产一级精品视频 | 国内视频在线 | 日韩亚洲在线 | 午夜久久福利影院 | 国产亚洲在线 | 四虎影视精品 | 正在播放亚洲精品 | 精品国偷自产在线 | 中文字幕一区二区三 | 成人av高清在线观看 | 亚洲黄色小说网址 | 日韩二三区 | 久操中文字幕在线观看 | 免费在线色电影 | 久久综合成人 | 国产亚洲精品久久久久秋 | 亚洲欧美日韩一区二区三区在线观看 | 亚洲国产av精品毛片鲁大师 | 日韩在线视频在线观看 | 嫩草91影院| 成人在线播放免费观看 | 国产一区二区电影在线观看 | 黄色91在线| 久视频在线 | 探花国产在线 | 波多野结衣一区二区三区中文字幕 | 欧美日韩国产在线 | 91理论电影 | 嫩草av在线| 亚洲精品88欧美一区二区 | 亚洲午夜精品一区二区三区电影院 | 色综合欧洲 | 99久久精品免费看国产四区 | 成人久久久久久久久久 | 欧美乱码精品一区二区 | 国产精品一区二区在线观看免费 | 西西大胆免费视频 | 狠狠干夜夜爽 | 99在线热播精品免费 | 这里只有精品视频在线 | 国产丝袜制服在线 | 精品久久中文 | 亚洲 欧美 变态 国产 另类 | 国产精品va | 久久99精品国产一区二区三区 | 亚洲成人黄色在线 | 一区二区三区精品久久久 | 免费看的黄色的网站 | 欧美国产日韩一区二区三区 | 免费黄色在线播放 | 九九热在线观看视频 | 手机看片99 | 免费观看久久 | 免费久久99精品国产 | 国产一级免费播放 | 在线视频日韩一区 | 黄网av在线| 日本中文字幕免费观看 | 精品国产视频一区 | 日日夜夜av| 久久视屏网 | 国产中文字幕一区二区三区 | a黄色| 免费看片日韩 | 国产不卡免费 | av福利超碰网站 | 欧美另类v | 国产精品99久久久久久宅男 | 精品成人国产 | 四虎在线永久免费观看 | 精品国产一区二区三区男人吃奶 | 黄色三级视频片 | 青春草视频在线播放 | 欧美精品网站 | 四虎国产精品免费观看视频优播 | 久久免费看毛片 | 中文字幕在线观看网站 | 国模视频一区二区 | 五月婷色 | 欧美性生活小视频 | 国产中文字幕av | 国产 色| 不卡的av | 九九热在线观看 | 国产精品系列在线 | 天天做日日做天天爽视频免费 | 久久伊人爱 | 丁香视频全集免费观看 | 911久久香蕉国产线看观看 | 欧美激情第一区 | 日韩在线视频免费看 | 日本在线观看一区二区三区 | 91在线免费播放视频 | 色天天综合久久久久综合片 | 麻豆精品传媒视频 | 欧美日韩精品在线免费观看 | 91中文字幕一区 | 国产中文字幕亚洲 | 日本中文字幕在线看 | 国产剧情一区 | 99精品一区二区 | 亚洲成人免费 | 国产精品九九久久99视频 | 免费69视频| 99精品乱码国产在线观看 | 麻豆传媒视频在线播放 | 狠狠色噜噜狠狠狠狠2021天天 | 国产精品手机在线播放 | 综合网久久| 欧美日韩国产成人 | 91九色porny蝌蚪视频 | 久久一区二区三区超碰国产精品 | 色婷婷www | 日韩在线电影一区二区 | 99久久久国产精品免费99 | 国产一区二区三区午夜 | 免费精品在线视频 | 国语对白少妇爽91 | 伊人久久影视 | 亚洲精品在线二区 | 欧美一区二视频在线免费观看 | 伊人网站 | 日韩精品视频免费在线观看 | 91禁看片 | 特级西西www44高清大胆图片 | 在线观看av免费 | 欧美另类69 | 日本黄色免费在线 | 99婷婷狠狠成为人免费视频 | 欧美日韩精品免费观看 | 91成人免费| 成人午夜在线电影 | 亚洲精选久久 | 国产精品99久久久 | 精品久久久久亚洲 | 国产剧在线观看片 | 免费精品视频 | 97在线观看视频免费 | 婷婷伊人综合亚洲综合网 | 国产精品久久久久久久久久99 | 久久成年人视频 | 成人国产精品免费观看 | 亚洲国产激情 | 成人三级网址 | 中文字幕在线观看不卡 | 麻豆国产精品va在线观看不卡 | 超碰公开在线 | 国产精品女 | 天天艹天天 | 免费黄色特级片 | 久久久久精 | 超碰人在线 | 天天操夜夜操夜夜操 | 国产一级一级国产 | 天天干天天拍天天操 | 成 人 黄 色 视频免费播放 | 免费看一级一片 | 97视频在线播放 | 中文字幕av免费 | 久久精品综合 | 天天干,天天操,天天射 | 日本中文字幕在线一区 | 日韩视频免费观看高清 | 久久久久久伊人 | 国产一级在线播放 | 欧美一级日韩三级 | 91在线视频观看免费 | 国产精品视频在线观看 | 国产黄色片一级三级 | 亚洲国产精品久久久久 | 久久免费公开视频 | 国产精品久久久久久高潮 | 91麻豆精品国产91久久久无限制版 | 欧美日韩高清在线一区 | 狠狠狠狠狠狠狠狠干 | 免费成人在线观看视频 | 国产999视频在线观看 | 日韩欧美在线免费观看 | 亚洲国产大片 | 99精品在线播放 | 日韩精品一区二区三区免费观看视频 | 久久刺激视频 | 99re视频在线观看 | 中文字幕一区二区三区久久 | 日韩av视屏 | 欧美成人精品三级在线观看播放 | 中文字幕免费观看全部电影 | 亚洲天堂精品视频在线观看 | 五月天久久狠狠 | 在线成人中文字幕 | 中文字幕美女免费在线 | 五月天婷亚洲天综合网鲁鲁鲁 | 精品成人国产 | 久久电影网站中文字幕 | 国产专区在线 | 射九九 | 国产视频在 | 国产精品久久久久久模特 | 日韩精品中文字幕有码 | 在线观看中文 | 国产精品免费在线观看视频 | 天天色官网 | 国产传媒一区在线 | 免费中文字幕 | 日韩中字在线观看 | 日韩欧美精品一区二区三区经典 | 成人毛片一区 | 超碰电影在线观看 | 深夜国产福利 | 日日麻批40分钟视频免费观看 | 久久国产精品久久久久 | www.色综合.com | 91视频高清完整版 | 久久福利剧场 | 激情综合色播五月 | 国产精品视屏 | 国产又粗又猛又爽又黄的视频先 | 在线精品亚洲 | 国产精品门事件 | 久久黄色网址 | 91成人网在线 | 夜夜夜夜猛噜噜噜噜噜初音未来 | 丁香 婷婷 激情 | 美女很黄免费网站 | 久久久久久久久久国产精品 | 亚洲做受高潮欧美裸体 | 日韩综合一区二区 | 国产99视频在线观看 | 亚洲国产精品va在线看黑人 | 国产国语在线 | 国产第一页福利影院 | 亚洲aaa毛片 | 国产成人精品在线观看 | 久久国产午夜精品理论片最新版本 | 一区二区亚洲精品 | 精品久久久久久国产91 | 日韩,精品电影 | 成人综合免费 | 国产亚洲精品久久久网站好莱 | 九九欧美视频 | 欧日韩在线视频 | 婷婷六月天综合 | 久久丝袜视频 | 婷婷深爱五月 | 涩涩资源网| 日韩免费在线网站 | 色久网| 制服丝袜欧美 | 国产又粗又猛又色又黄网站 | 成人av av在线 | 五月天狠狠操 | 免费在线成人av | 91中文视频 | 在线播放亚洲激情 | 久久久午夜视频 | 激情五月婷婷网 | 中文字幕av在线不卡 | 久草在线播放视频 | 亚洲 av网站 | 欧美三级高清 | 国产护士av | 97电影网手机版 | 欧美一二三区在线观看 | 免费激情在线电影 | 啪啪资源 | 国产成人精品999 | 日本精品va在线观看 | 精品成人免费 | 狠狠狠狠干 | 日韩中文字幕一区 | 国产亚洲精品女人久久久久久 | 五月婷婷六月丁香在线观看 | 色婷婷久久一区二区 | 中文字幕在线播放一区 | 特级毛片在线免费观看 | 久草视频免费 | 美女福利视频一区二区 | 国产a级精品| 伊人超碰在线 | 一区二三国产 | 日韩在线看片 | 91爱爱网址 | 成人午夜电影网站 | 一区二区视频在线免费观看 | 亚洲一区日韩精品 | 亚洲成人精品在线观看 | 97成人精品视频在线观看 | 91免费版在线 | 亚洲精品综合欧美二区变态 | 日韩免费视频观看 | 四虎永久精品在线 | 韩国精品视频在线观看 | 中文字幕一区二区三区久久 | 国产一区二区综合 | 中国一级特黄毛片大片久久 | 国产精品男女视频 | 伊人久久精品久久亚洲一区 | 91在线观看视频网站 | www免费黄色 | 国产成人性色生活片 | 在线有码中文 | 久久国产精品免费一区二区三区 | 日韩久久久久久久久 | 日日夜夜狠狠操 | 久久婷婷网 | 九九亚洲精品 | 欧美久久久 | 超碰免费久久 | 国产精品理论片 | 在线看av的网址 | 国产成人一区二区三区在线观看 | 国产伦精品一区二区三区照片91 | 亚洲日本va在线观看 | 一级欧美一级日韩 | 久久综合免费视频影院 | 日韩av在线资源 | 成人蜜桃视频 | 国产一区二区精品久久91 | 最新国产精品久久精品 | 欧美在线你懂的 | 日日夜夜骑 | 日韩免费电影网 | 日韩欧美69 | 伊人成人久久 | 狠狠色噜噜狠狠狠狠 | 天天躁日日 | 在线观看的av网站 | 在线观看完整版免费 | 免费成人看片 | 久久高清毛片 | 丁香婷婷在线 | 91免费高清视频 | 久久久久99精品成人片三人毛片 | 欧美精品久久久久久久免费 | 欧美伦理一区二区 | 香蕉视频国产在线 | 免费观看日韩 | 国产在线观看h | 日韩欧美观看 | 婷婷亚洲五月色综合 | 欧美乱淫视频 | 精品一区二区三区在线播放 | 亚洲天天在线 | 成人a级免费视频 | 国产 日韩 欧美 自拍 | 五月婷婷在线观看视频 | 色综合天天狠天天透天天伊人 | 久久这里只有精品首页 | 91在线视频观看免费 | 在线观看播放av | 丁香色婷婷 | 国产综合91 | 一级电影免费在线观看 | 天天干天天干天天射 | 97超碰在线久草超碰在线观看 | 人人玩人人添人人澡97 | 精品欧美一区二区在线观看 | 九月婷婷综合网 | 国产97视频| 亚洲精品色视频 | 欧美精品久久久久久久久久久 | 久久久精选 | 亚洲免费在线观看视频 | 日韩av一区在线观看 | 六月丁香婷 | 国产精品一区二区三区久久久 | 久久这里只有精品23 | 国产999精品久久久久久麻豆 | 免费视频xnxx com | 一区免费观看 | 亚洲欧美日本A∨在线观看 青青河边草观看完整版高清 | 日韩av高清在线观看 | 亚洲国产福利视频 | 国产中文字幕免费 | 最近免费中文字幕大全高清10 | 久久情网| 日韩91av| 久久午夜精品影院一区 | 国产精品视频地址 | 一级黄色大片在线观看 | 国产午夜三级一区二区三桃花影视 | 操处女逼| 亚洲最新av网址 | 中文字幕亚洲欧美 | 99综合久久 | www.亚洲黄色| 在线国产能看的 | 午夜神马福利 | 韩国av不卡 | 国产精品久久久久久一区二区 | 午夜精品一区二区三区可下载 | 黄色一级大片在线免费看产 | www.五月激情.com | av免费网站观看 | 亚洲精品在线观 | 91精彩在线视频 | 国产精品 国产精品 | 婷婷丁香在线视频 | 免费黄色a网站 | 久久久久久久久久免费视频 | 美女网站视频免费黄 | 久久国产网站 | a黄色片| 黄色软件视频网站 | 美州a亚洲一视本频v色道 | 激情五月婷婷 | 国产小视频免费观看 | 四虎影视8848aamm | 狠狠干天天射 | 中文字幕一区二区三区在线观看 | 美女网站视频一区 | 成人黄色资源 | 成人va天堂 | 免费观看第二部31集 | 亚洲精品国产精品国自产 | 在线电影av | 天天做天天爱天天综合网 | 国产精品久久久久久久久久白浆 | 97成人在线免费视频 | 亚洲精品久久久久www | 久久久久久久99 | 国产精品日韩欧美一区二区 | 激情婷婷av | 激情一区二区三区欧美 | 国产精品99久久久久的智能播放 | 精品国产电影一区 | 日韩av在线免费看 | 国产精品18久久久久久久久久久久 | 中文字幕亚洲综合久久五月天色无吗'' | 特级西西444www大精品视频免费看 | 久久精品视频在线免费观看 | 91大神精品视频在线观看 | 亚洲婷婷网 | 精品二区视频 | 天天色天天射天天综合网 | 江苏妇搡bbbb搡bbbb | 99精品偷拍视频一区二区三区 | 美女禁18| 狠狠狠狠狠操 | 在线成人一区 | 国产色网 | 国产精品18久久久久vr手机版特色 | 日日爱网站 | 欧美a免费 | 一区二区三区免费 | 91在线视频在线 | 久久成人18免费网站 | 最近中文字幕在线 | 日韩精品观看 | 国产精国产精品 | av导航福利 | 欧美日韩在线播放 | 久久精品国产一区二区电影 | 国产福利免费看 | 国产成视频在线观看 | 久草在线视频精品 | 亚洲六月丁香色婷婷综合久久 | 亚洲精品欧美成人 | 一区 在线 影院 | 探花视频在线观看免费 | 国精产品满18岁在线 | 在线电影中文字幕 | 中文字幕中文字幕在线中文字幕三区 | 99热国内精品| 少妇bbb搡bbbb搡bbbb | 久久精品99国产精品亚洲最刺激 | 欧美色图另类 | 日韩欧美国产激情在线播放 | 国产一级免费观看 | 九九99视频 | 在线免费观看黄网站 | 日韩二区三区在线观看 | 久久全国免费视频 | 婷婷色在线 | 超碰人人做 | 午夜精品久久久久久久99无限制 | 日韩精品在线免费播放 | a色网站| 欧美一级片在线 | 国产黄色特级片 | 在线看片视频 | 黄色成人影视 | 99久久精品免费一区 | 国产女人免费看a级丨片 | 日韩18p| av经典在线| 欧美日韩一区二区免费在线观看 | 婷婷久久一区二区三区 | 欧美一级免费 | 91视频在线播放视频 | 久操97| 91久久一区二区 | 美女视频永久黄网站免费观看国产 | 三级视频片 | 丁香五香天综合情 | 精品国产免费人成在线观看 | 欧美国产日韩一区二区三区 | 久久国产精品免费观看 | 最新国产精品拍自在线播放 | 91黄色免费网站 | 91免费的视频在线播放 | 免费的黄色的网站 | 国产亚洲情侣一区二区无 | 国产精品女 | 亚洲精品动漫久久久久 | av激情五月| 婷婷色五 | 国产原创在线观看 | 久久国产精品系列 | 综合久久久久久 | 九九热re| 91视频免费播放 | av网站播放 | 久久新视频 | 成人99免费视频 | 麻豆观看 | 制服丝袜天堂 | 精品自拍sae8—视频 | 久久精品91视频 | 亚洲第一久久久 | 激情视频二区 | 久久免费视频在线 | 深爱激情五月综合 | 国产伦理久久精品久久久久_ | 日本久久久久久科技有限公司 | 久青草国产在线 | 99999精品| 深夜福利视频在线观看 | 四虎国产精品永久在线国在线 | 中文字幕在线观看三区 | 丁香综合 | 日韩欧美在线观看一区 | 欧美成人xxx| 久久久久久久久久久久亚洲 | 国产精品ssss在线亚洲 | 国产精品黄色在线观看 | 成人视屏免费看 | 国产一区二区在线观看视频 | 亚洲在线视频播放 | 日韩久久片 | 99精品在线播放 | 日韩欧美一区二区三区在线观看 | 日韩在线视频免费看 | 91片网 | 久久爽久久爽久久av东京爽 | 成年人天堂com | 天天超碰| 久久夜夜爽 | 精品视频在线免费观看 | 国产91影视 | 亚洲a免费| 成人四虎影院 | 亚洲午夜剧场 | 午夜精品久久久久久久久久久 | 亚洲a在线观看 | 日韩欧美在线第一页 | 女人高潮一级片 | 欧美精品午夜 | 国产精品自产拍在线观看桃花 | 亚洲精品自拍视频在线观看 | 欧美精品一区二区蜜臀亚洲 | 亚洲欧美日韩在线看 | 欧美乱熟臀69xxxxxx | 亚洲天堂网在线视频观看 | 色999五月色 | 超碰97中文 | 九九国产精品视频 | 成人av在线直播 | 欧美一级片在线免费观看 | 毛片在线播放网址 | 国产成人av电影 | 欧美另类激情 | 伊人天天综合 | 日本性生活一级片 | 欧美老人xxxx18 | 精品影院一区二区久久久 | 亚洲精品视频国产 | 人人澡人 | 香蕉视频国产在线观看 | av在线进入 | 婷婷播播网 | 天天综合网久久综合网 | 免费看日韩片 | 日韩黄色一级电影 | 天天在线视频色 | 久草视频在线观 | 狠狠狠的干 | 久久不射影院 | 黄网站色欧美视频 | 久久手机精品视频 | av超碰在线| 特级毛片在线 | 精品视频免费在线 | 亚洲在线看| 在线免费观看黄色小说 | 成人久久电影 | 欧美一二三视频 | 国产尤物视频在线 | av+在线播放在线播放 | 麻豆精品视频在线 | 久久免费a | 欧美了一区在线观看 | 97色狠狠 | 国产精品一区二区久久 | 91成人精品在线 | 久久精品免费电影 | 免费久久99精品国产婷婷六月 | 国产黄色精品在线 | 国产精品大全 | 日本成人a| 欧美成人h版在线观看 | 欧美色图狠狠干 | 免费在线观看成人小视频 | 一级特黄av | 国产日韩在线播放 | 成人在线一区二区三区 | 97超级碰碰碰碰久久久久 | 综合精品久久久 | 男女啪啪视屏 | 91爱爱视频| 在线观看黄色国产 | 91丨九色丨勾搭 | 国产最新在线观看 | 91九色精品女同系列 | 黄色av免费看| 国产一级一片免费播放放a 一区二区三区国产欧美 | 久久av网址| 四虎国产精品免费观看视频优播 | 超碰97av在线 | 日韩av电影网站在线观看 | 五月婷婷丁香网 | 99这里只有 | 不卡的av在线播放 | 国产中文字幕视频在线观看 | 亚洲黄色一级视频 | 天天狠狠干 | 操夜夜操 | 久久精品国产99国产 | 久久精品99久久 | 天天亚洲综合 | 亚洲一区二区三区在线看 | 一区二区三区 亚洲 | 免费观看完整版无人区 | 国产在线高清 | 99日韩精品 | 懂色av懂色av粉嫩av分享吧 | 青青草国产免费 | 久久国语露脸国产精品电影 | 精品亚洲一区二区三区 | 亚洲成人精品久久 | 日韩视频在线不卡 | 91av在线免费看 | 在线视频 成人 | 日韩区欧美久久久无人区 | 特级黄色片免费看 | 国产精品免费不卡 | 三级av网站 | 亚洲精品在线观看网站 | 操操操操网 | 国产美女精品人人做人人爽 | 三级av免费 | 日韩在线观看小视频 | 97视频免费在线 | 五月丁色 | 免费看在线看www777 | 亚洲区另类春色综合小说 | 91九色蝌蚪视频网站 | 美女网站视频免费黄 | 99视频一区二区 | 在线精品亚洲 | 欧美福利在线播放 | 九九综合久久 | 91精品小视频 | 日韩av成人在线 | 精品国产一二三 | 在线观看中文字幕亚洲 | 午夜国产一区二区 | 日本婷婷色 | 激情综合久久 | 啪啪精品| 国内外成人在线 | 日韩黄色大片在线观看 | 免费精品国产 | www.国产视频| 国产精品毛片一区二区在线看 | 中文字幕在线视频精品 | 日本高清免费中文字幕 | 日韩精品一区在线观看 | 久久久久久国产精品久久 | 日韩毛片在线免费观看 | 91成人免费在线 | 成人在线一区二区 | 久久婷婷精品视频 | 免费中文字幕 | 亚洲 欧美 国产 va在线影院 | 国产精品久久久久久久毛片 | 91成人免费看 | 国产一区视频在线观看免费 | a天堂最新版中文在线地址 久久99久久精品国产 | www.夜夜| 在线观看黄色的网站 | 一本色道久久综合亚洲二区三区 | 成年人在线看视频 | 九九在线免费视频 | 日韩在线视频观看免费 | 色999视频 | 国产亚洲资源 | 国产精品福利在线 | 91日本在线播放 | 亚洲精品在线免费观看视频 | 国产精品露脸在线 | 久久综合之合合综合久久 | 欧美一级在线观看视频 | 麻豆94tv免费版 | 天堂av观看 | 欧美特一级 | av一区二区三区在线播放 | 欧美二区在线播放 | 免费精品在线观看 | 国产xxxx做受性欧美88 | 亚洲免费色 | 久久久久国产精品午夜一区 | 国产亚洲婷婷免费 | 在线国产黄色 | 人人网av | 91看片一区二区三区 | 米奇四色影视 | 西西4444www大胆视频 | 97福利| 国产一级特黄毛片在线毛片 | 欧美性色综合 | 日韩v在线 | 午夜影院一区 | 精品国产欧美一区二区 | 欧美一级免费黄色片 | 国产福利在线免费 | 91伊人久久大香线蕉蜜芽人口 | 岛国av在线免费 | 国产精品2019 | 天天色天天操综合网 | 免费a视频在线观看 | 玖玖玖在线 | 亚洲一区二区高潮无套美女 | 久久综合九色综合网站 | 婷婷在线五月 |