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

網絡安全編程:創建進程

安全
當運行一個程序的時候,操作系統就會將這個程序從磁盤文件裝入內存,分配各種運行程序所需的資源,創建主線程等一系列的工作。進程是運行當中的程序,進程是向操作系統申請資源的基本單位。運行一個記事本程序時,操作系統就會創建一個記事本的進程。當關閉記事本時,記事本進程也隨即結束。

[[382723]]

微信公眾號:計算機與網絡安全

ID:Computer-network

當運行一個程序的時候,操作系統就會將這個程序從磁盤文件裝入內存,分配各種運行程序所需的資源,創建主線程等一系列的工作。進程是運行當中的程序,進程是向操作系統申請資源的基本單位。運行一個記事本程序時,操作系統就會創建一個記事本的進程。當關閉記事本時,記事本進程也隨即結束。對進程感性上的認識,這么多也就夠了。

如果要觀察系統中正在運行的進程,那么同時按下鍵盤上的Ctrl+Shift+Esc組合鍵就可以打開“任務管理器”,也就看到了系統中正常的進程列表,如圖1所示。對于任務管理器中的眾多列,主要關心的是“映像名稱”“PID”和“線程數”3項,這3項在編程中都會用到和涉及。

 

 

 

 

圖1 任務管理器

任何一個計算機文件都是一個二進制文件。對于可執行程序來說,它的二進制數據是可以被CPU執行的。程序是一個靜態的概念,本身只是存在于硬盤上的一個二進制文件。當用鼠標雙擊某個可執行程序以后,這個程序被加載入內存,這時就產生了一個進程。操作系統通過裝載器將程序裝入內存時,會為其分配各種進程所需的各種資源,并產生一個主線程,主線程會擁有CPU執行時間,占用進程申請的內存……在編程的時候也經常需要通過運行中的程序再去創建一個新的進程,本文介紹常見的用于創建進程的API函數。

1. 簡單下載者的演示

在Windows下創建進程的方法有多種,這里通過一個例子先介紹最簡單的一種方法。該方法用到的API函數為WinExec(),其定義如下:

  1. UINT WinExec( 
  2.  LPCSTR lpCmdLine, // command line 
  3.  UINT uCmdShow // window style 
  4. ); 

參數說明如下。

lpCmdLine:指向一個要執行的可執行文件的字符串。

uCmdShow:程序運行后的窗口狀態。

第1個參數比較好理解,比如要執行“記事本”程序,那么這個參數就可以是“C:\Windows\ System32\Notepad.exe”。第2個參數是指明程序運行后窗口的狀態,常用的參數有兩個,一個是SW_SHOW,另一個是SW_HIDE。SW_SHOW表示程序運行后窗口狀態為顯示狀態,SW_HIDE表示程序運行后窗口狀態為隱藏狀態。可以試著創建一個隱藏顯示狀態的“記事本”程序,方法如下:

  1. WinExec("c:\\windows\\system32\\notepad.exe", SW_HIDE); 

這樣創建的“記事本”進程在“任務管理器”中可以看到“notepad.exe”這個進程,但是無法看到其窗口界面。

WinExec()函數在很多“下載者”中使用,“下載者”的英文名字為“Downloader”,也就是下載器的意思。它是一種惡意程序,其功能較為單一(相對木馬、后門來說,功能單一)。下載者程序的功能是讓受害者計算機到黑客指定的URL地址去下載更多的病毒文件或木馬文件并運行。下載者的體積較小,容易傳播。當下載者下載到病毒或木馬后,通常都會使用WinExec()來運行下載到本地的惡意程序,調用它的原因是只有兩個參數且參數非常簡單。

下面簡單來做一個下載者進行演示,這僅僅只是一個演示。如果心懷歹意的話,不要企圖拿它來做任何壞事,因為演示代碼會很輕易地被殺毒軟件干掉。記住,目的是學習編程知識。

要完成一個模擬的下載者,就要讓程序可以從網絡上某個地址下載程序。文件下載的方式比較多,相對簡單而又比較常用的函數是URLDownloadToFile()。這個函數也是被下載者進程使用的函數,其定義如下:

  1. HRESULT URLDownloadToFile( 
  2.  LPUNKNOWN pCaller, 
  3.  LPCTSTR szURL, 
  4.  LPCTSTR szFileName, 
  5.  DWORD dwReserved, 
  6.  LPBINDSTATUSCALLBACK lpfnCB 
  7. ); 

在這個函數中,只會用到兩個參數,分別是szURL和szFileName。這兩個參數的說明如下。

szURL:指向下載地址的 URL 的字符串。

szFileName:指向要保存到本地位置的字符串。

其余的參數賦值為0或NULL即可。

使用URLDownloadToFile()函數,需要包含Urlmon.h頭文件和Urlmon.lib導入庫文件,否則在編譯和連接時會無法通過。

已經了解了需要用到的API函數,那么完成代碼也就非常簡單了。具體代碼不過幾行而已,具體如下:

  1. #include <windows.h> 
  2. #include <urlmon.h> 
  3. #pragma comment (lib, "urlmon"
  4. int main() 
  5.   char szUrl[MAX_PATH] = "c:\\windows\\system32\\notepad.exe"
  6.   char szVirus[MAX_PATH] = "d:\\virus.exe"
  7.   URLDownloadToFile(NULL, szUrl, szVirus, 0, NULL); 
  8.   // 為了模擬方便看到效果,這里使用參數 SW_SHOW 
  9.   // 一般可以傳遞 SW_HIDE 參數 
  10.   WinExec(szVirus, SW_SHOW); 
  11.   return 0; 

這里的模擬是把C盤系統目錄下的記事本程序下載到D盤并保存成名為virus.exe,然后運行它。如果是從網絡上某個地址處進行下載,那么只要修改szUrl變量保存的字符串即可。我們的代碼是一個簡單的模擬代碼,如果真正完成一個“下載者”的話,要比這個代碼復雜很多,如果要在源代碼上進行“免殺”,那么要考慮到問題也會很多。我們還是以學習編程知識為目的,不要進行破壞,否則隨時可能會被“查水表”。

2. CreateProcess()函數介紹與程序的啟動

通常情況下,創建一個進程會選擇使用CreateProcess()函數,該函數的參數非常多,功能強大,使用也更為靈活。對于WinExec()函數來說,其使用簡單,也只能完成簡單的進程創建工作。如果要對被創建的進程具有一定的控制能力,那么必須使用功能更為強大的CreateProcess()函數。

在介紹CreateProcess()函數之前,先來介紹一個內容。通常,在編寫C語言的程序時,如果是控制臺下的程序,那么編寫程序的入口函數是main()函數,也就是通常所說的主函數。如果編寫一個Windows下程序,那么入口函數是WinMain()。即使是使用MFC進行開發,其實也是有WinMain()函數的,只不過是被龐大的MFC框架封裝了。那么程序真的是從main()函數或者是WinMain()函數開始執行的嗎?在寫控制臺程序時,如果需要給程序提供參數,那么這個參數是從哪里來的,主函數為什么會有返回值,它會返回哪里去呢?

使用VC6來寫一個簡單的程序。通過調試這個簡單的程序,看看C語言程序是否真的由main()函數開始執行。寫一個簡單的輸出“Hello World”的程序來進行調試。程序代碼如下:

  1. #include <stdio.h> 
  2. int main() 
  3.   printf("Hello World!!! \r\n"); 
  4.   return 0; 

這是非常簡單的一個程序,按下F7鍵進行編譯和連接,然后按下F10鍵開始進行單步調試狀態,打開VC6的CallStack窗口(調用棧窗口),觀察其內容,如圖2所示。

 

 

 

 

圖2 CallStack窗口內容

在調用棧中有3行記錄,雙擊第2行“mainCRT Startup() line 206 + 25 bytes”,查看代碼編輯窗口的內容,此時的代碼為調用主函數main()的C運行時啟動函數(簡稱啟動函數)。代碼編輯窗口內容如圖3所示。

 

 

 

 

圖3 啟動函數

可以看到,在代碼編輯窗口的左側有一個綠色的三角,表示這行代碼調用了主函數main()。并且通過該行代碼可以發現,main()函數的返回值賦值給了mainret變量。將代碼上移,找到定義mainret變量的代碼處。mainret的定義如下:

int mainret;

該變量的類型為int型。通常在定義main()函數時,main()函數的返回值是int型。從上面的調用過程可以看出,main()函數只是程序員編程時的入口函數,程序的啟動并不是從main()函數開始。在執行main()函數前,操作系統及C語言的啟動代碼已經為程序做了很多工作。

上面的內容只是一個簡單的小插曲。回歸正題,開始介紹CreateProcess()函數的使用。CreateProcess()函數的定義如下:

  1. BOOL CreateProcess( 
  2.  LPCTSTR lpApplicationName, // name of executable module 
  3.  LPTSTR lpCommandLine, // command line string 
  4.  LPSECURITY_ATTRIBUTES lpProcessAttributes, // SD 
  5.  LPSECURITY_ATTRIBUTES lpThreadAttributes, // SD 
  6.  BOOL bInheritHandles, // handle inheritance option 
  7.  DWORD dwCreationFlags, // creation flags 
  8.  LPVOID lpEnvironment, // new environment block 
  9.  LPCTSTR lpCurrentDirectory, // current directory name 
  10.  LPSTARTUPINFO lpStartupInfo, // startup information 
  11.  LPPROCESS_INFORMATION lpProcessInformation // process information 
  12. ); 

參數說明如下。

lpApplicationName:指定可執行文件的文件名。

lpCommandLine:指定欲傳給新進程的命令行的參數。

lpProcessAttributes:進程安全屬性,該值通常為 NULL,表示為默認安全屬性。

lpThreadAttributes:線程安全屬性,該值通常為 NULL,表示為默認安全屬性。

bInheritHandlers:指定當前進程中的可繼承句柄是否被新進程繼承。

dwCreationFlags:指定新進程的優先級以及其他創建標志。

該參數一般情況下可以為0。

如果要創建一個被調試進程的話,需要把該參數設置為DEBUG_PROCESS。創建進程的進程稱為父進程,被創建的進程稱為子進程。也就是說,父進程要對子進程進行調試的話,需要在調用CreateProcess()函數時傳遞DEBUG_PROCESS參數。在傳遞DEBUG_PROCESS參數后,子進程創建的“孫”進程同樣也處在被調試狀態中。如果不希望子進程創建的“孫”進程也處在被調試狀態,那么在父進程創建子進程時傳遞DEBUG_ONLY_THIS_PROCESS和DEBUG_PROCESS。

在有些情況下,希望被創建子進程的主線程暫時不要運行,那么可以指定CREATE _SUSPENDED參數。事后希望該子進程的主線程運行的話,可以使用ResumeThread()函數使子進程的主線程恢復運行。

lpEnvironment:指定新進程的環境變量,通常這里指定為 NULL 值。

lpCurrentDirectory:指定新進程使用的當前目錄。

lpStartupInfo:指向 STARTUPINFO 結構體的指針,該結構體指定新進程的啟動信息。

該參數是一個結構體,該結構體決定進程啟動的狀態。該結構體的定義如下:

  1. typedef struct _STARTUPINFO { 
  2.  DWORD cb; 
  3.  LPTSTR lpReserved; 
  4.  LPTSTR lpDesktop; 
  5.  LPTSTR lpTitle; 
  6.  DWORD dwX; 
  7.  DWORD dwY; 
  8.  DWORD dwXSize; 
  9.  DWORD dwYSize; 
  10.  DWORD dwXCountChars; 
  11.  DWORD dwYCountChars; 
  12.  DWORD dwFillAttribute; 
  13.  DWORD dwFlags; 
  14.  WORD wShowWindow; 
  15.  WORD cbReserved2; 
  16.  LPBYTE lpReserved2; 
  17.  HANDLE hStdInput; 
  18.  HANDLE hStdOutput; 
  19.  HANDLE hStdError; 
  20. } STARTUPINFO, *LPSTARTUPINFO; 

該結構體在使用前,需要對cb成員變量進行賦值,該成員變量用于保存結構體的大小。一般創建一個進程,只需要初始化其中幾個參數即可,如果要對新進程的輸入輸出重定向的話,會用到該結構體的更多成員變量等。

lpProcessInformation:指向PROCESS_INFORMATION結構體的指針,該結構體用于返回新創建進程和主線程的相關信息。該結構體的定義如下:

  1. typedef struct _PROCESS_INFORMATION { 
  2.  HANDLE hProcess; 
  3.  HANDLE hThread; 
  4.  DWORD dwProcessId; 
  5.  DWORD dwThreadId; 
  6. } PROCESS_INFORMATION; 

該結構體用于返回新創建進程的句柄和進程ID,進程主線程的句柄和主線程ID。

下面通過一個實例來對CreateProcess()函數進行演示。

  1. #include <windows.h> 
  2. #include <stdio.h> 
  3. #define EXEC_FILE "c:\\windows\\system32\\notepad.exe" 
  4. int main() 
  5.  PROCESS_INFORMATION pi = { 0 }; 
  6.  STARTUPINFO si = { 0 }; 
  7.  si.cb = sizeof(STARTUPINFO); 
  8.  BOOL bRet = CreateProcess(EXEC_FILE, 
  9.  NULLNULLNULLFALSE
  10.  NULLNULLNULL, &si, &pi); 
  11.  if ( bRet == FALSE ) 
  12.  { 
  13.  printf("CreateProcess Error ! \r\n"); 
  14.  return -1; 
  15.  } 
  16.  CloseHandle(pi.hThread); 
  17.  CloseHandle(pi.hProcess); 
  18.  return 0; 

進程創建后,PROCESS_INFORMATION結構體變量的兩個句柄需要使用CloseHandle()函數進行關閉。

 

 

責任編輯:龐桂玉 來源: 計算機與網絡安全
相關推薦

2021-02-23 10:20:07

網絡安全進程代碼

2021-06-24 08:37:34

網絡安全內核代碼

2021-03-01 11:38:15

網絡安全進程代碼

2021-03-03 12:20:42

網絡安全DLL編程

2021-03-05 13:46:56

網絡安全遠程線程

2021-01-26 13:45:03

網絡安全Winsock編程

2021-01-22 10:58:16

網絡安全進程間碼如

2016-10-10 00:18:27

2021-06-18 09:55:09

網絡安全目錄監控

2011-03-17 13:32:45

2021-03-01 11:20:13

網絡安全多線程代碼

2021-01-18 10:35:18

網絡安全Windows代碼

2021-05-12 14:57:13

網絡安全密碼代碼

2021-02-04 10:50:11

網絡安全非阻塞模Winsock編程

2021-06-15 11:16:24

網絡安全U盤軟件

2021-04-19 10:26:41

網絡安全PE文件

2021-05-24 11:55:55

網絡安全Windows鉤子函數

2023-07-13 07:10:20

2021-12-28 00:11:40

網絡安全攻擊

2021-04-30 18:50:44

網絡安全PE編程添加節區
點贊
收藏

51CTO技術棧公眾號

√8天堂资源地址中文在线| 黄色在线免费观看| 嫩呦国产一区二区三区av| 一区二区在线电影| 久久五月天婷婷| 中文字幕第315页| 欧美a级片一区| 国产偷亚洲偷欧美偷精品| 色婷婷成人在线| 高h视频在线播放| 国产午夜精品一区二区三区嫩草| 91免费福利视频| www日韩精品| 99久久婷婷| 亚洲精品天天看| 一区二区在线免费观看视频| 伊人久久av| 亚洲精品大片www| 日韩精品久久久毛片一区二区| 成人在线视频网| 一道本在线免费视频| 欧美日韩在线视频免费观看| 国产清纯白嫩初高生在线观看91| 91在线观看网站| 国产精品成人久久久| 亚洲成人在线| 久久伊人精品视频| 天天躁日日躁aaaa视频| 成人爽a毛片| 91精品久久久久久久99蜜桃| 免费观看精品视频| 国产盗摄在线视频网站| 亚洲男人天堂av网| 性欧美.com| 青青草视频在线免费观看| 粉嫩aⅴ一区二区三区四区| 国产综合色香蕉精品| 啦啦啦免费高清视频在线观看| 欧美精品不卡| 久久亚洲精品网站| 亚洲欧美精品aaaaaa片| 欧美一级精品| 亚洲日本aⅴ片在线观看香蕉| 欧美大喷水吹潮合集在线观看| 日本一区二区乱| 在线不卡中文字幕| 久久久精品高清| 国产一区精品福利| 欧美在线免费视屏| 88av.com| 成人精品高清在线视频| 欧美综合视频在线观看| 成年人黄色片视频| 在线日韩影院| 日韩欧美国产视频| 国产淫片免费看| 男女羞羞在线观看| 欧美性xxxxx极品| 黑人糟蹋人妻hd中文字幕| 极品视频在线| 欧美日韩亚洲一区二| 男人添女人下面高潮视频| 国产网址在线观看| 日本一区高清| 精品一区二区三区视频| 国产精品中文久久久久久久| 夜夜嗨av禁果av粉嫩avhd| 久久99久久精品| 亚洲xxxxx性| 亚洲成人黄色片| 成人av电影在线网| 国产一区免费在线| 加勒比一区二区三区在线| 久久久久国产精品厨房| 神马影院一区二区| 国产在线69| 亚洲综合在线视频| 少妇人妻无码专区视频| 麻豆国产在线| 色999日韩国产欧美一区二区| 色诱视频在线观看| 农村妇女一区二区| 精品卡一卡二卡三卡四在线| 日韩www视频| 欧美日韩中字| 三级精品视频久久久久| 青娱乐av在线| 久久av在线| 国产日韩av在线播放| jizz中国少妇| 2020国产精品| 一级全黄肉体裸体全过程| 黄色大片在线| 在线观看91视频| 91香蕉视频免费看| 亚洲伊人春色| 久久视频国产精品免费视频在线| 久久免费视频精品| 久久久久国产精品一区三寸| 91欧美精品成人综合在线观看| 亚洲国产中文字幕在线| 欧美激情一区二区在线| av影院在线播放| 日韩电影免费观| 日韩一区二区三区视频| 亚洲成人网在线播放| 天天操综合网| 日本成人在线视频网址| 欧美精品第三页| 亚洲欧美一区二区三区在线观看| 久久久人人人| 亚洲xxxxx电影| 九色视频成人自拍| 一区二区三区四区中文字幕| 欧美私人情侣网站| 一区二区三区四区高清视频| 中文字幕久热精品在线视频| 日本一二三区不卡| 国产一区在线视频| 午夜精品区一区二区三| 91资源在线观看| 91精品欧美综合在线观看最新| 好吊视频在线观看| 影音先锋一区| 亚洲精品欧美日韩专区| 国产日本在线观看| 偷拍一区二区三区四区| 亚洲天堂一区二区在线观看| 国产99久久久国产精品成人免费 | 视频二区在线| 亚洲免费观看高清| 欧美成年人视频在线观看| 日韩精品社区| 91精品国产高清久久久久久久久| www.蜜臀av| 1024成人网| 三上悠亚在线一区二区| 国产一区二区三区四区五区| 777午夜精品福利在线观看| 亚洲黄色在线观看视频| 亚洲三级在线观看| 亚洲另类第一页| 日韩精品欧美| 国产精品美女在线观看| 福利视频在线导航| 91国产免费观看| 国产伦理片在线观看| 母乳一区在线观看| 欧美成熟毛茸茸复古| 日本不卡网站| 亚洲欧美一区二区三区久久| 国产又黄又猛又粗又爽| 久久亚洲一区二区三区四区| 日韩精品视频一区二区在线观看| 国产精品45p| 国精一区二区| 神马久久桃色视频| 一级片在线观看视频| 国产精品入口麻豆九色| 69久久久久久| 婷婷成人基地| 99r国产精品视频| 天堂8中文在线| 精品久久久久一区二区国产| 精品午夜福利视频| 成人国产在线观看| www一区二区www免费| 蜜桃tv一区二区三区| 国产精品99久久久久久www| 在线免费观看的av网站| 欧美精品久久久久久久多人混战| 爱爱视频免费在线观看| 成人手机在线视频| 777久久久精品一区二区三区| 国产精品一区二区99| 国产欧美日韩精品在线观看| 二区三区在线观看| 精品欧美乱码久久久久久1区2区| 日韩精品一卡二卡| 久久久高清一区二区三区| 91看片在线免费观看| 天天做天天爱天天综合网| 国产精品视频免费观看| 在线能看的av网址| 日韩在线小视频| www视频在线| 色综合久久综合网欧美综合网| 大胸美女被爆操| 国产成人在线电影| 日韩在线综合网| 国产高清久久| 久久久久久a亚洲欧洲aⅴ| 精品免费av一区二区三区| 久久久国产精品亚洲一区| 欧美一级特黄aaaaaa大片在线观看| 色综合网色综合| 欧美特级一级片| 久久久精品免费网站| 一道本视频在线观看| 欧美涩涩网站| 午夜精品电影在线观看| 成人精品毛片| 成人福利视频在线观看| 依依综合在线| 欧美大片在线看| jizz日韩| 亚洲精品国产精品国自产观看浪潮| 欧美性潮喷xxxxx免费视频看| 免费黄网站在线观看| 欧美日韩高清一区二区不卡| 国产亚洲精品码| 国产精品毛片高清在线完整版| 国产精品欧美性爱| 日本欧美久久久久免费播放网| 大胆欧美熟妇xx| 久久中文视频| 欧美日韩三区四区| 亚洲视频三区| 91色精品视频在线| 国产 日韩 欧美一区| 高清一区二区三区日本久| 五月婷婷在线观看| 国产亚洲欧洲高清一区| 粉嫩av一区二区夜夜嗨| 欧美精品欧美精品系列| 国产精品久久久久久人| 亚洲香肠在线观看| 精品国产乱码久久久久久鸭王1 | 羞羞网站在线看| 自拍偷拍免费精品| 国产视频网站在线| 亚洲精品一区中文| 色综合视频在线| 精品美女在线播放| 亚洲第九十九页| 日韩一级黄色片| 国产免费一区二区三区最新不卡| 欧美午夜电影网| www.久久视频| 色婷婷国产精品综合在线观看| 久久夜靖品2区| 亚欧色一区w666天堂| 久青草视频在线观看| 亚洲黄色免费电影| 亚洲欧美一区二区三区四区五区| 亚洲日本成人在线观看| 国产精品1区2区3区4区| 国产精品福利一区二区三区| 亚洲AV成人无码网站天堂久久| 欧美激情一区三区| 战狼4完整免费观看在线播放版| 国产欧美一区二区在线| 免费黄在线观看| 国产婷婷色一区二区三区在线| a天堂中文字幕| 国产视频一区二区在线| 免费看的黄色录像| 亚洲欧洲精品一区二区三区不卡| 国产精品视频一区二区在线观看| 中文字幕在线不卡视频| 国产稀缺精品盗摄盗拍| 亚洲视频在线一区观看| 久久久久久久久艹| 精品久久中文字幕| 无码无套少妇毛多18pxxxx| 欧美在线一区二区| 国产精品爽爽久久| 日韩视频永久免费| 无码国产精品96久久久久| 精品一区二区三区四区在线| 国产特黄在线| 久久影院免费观看| av老司机免费在线| 国产91色在线| 亚洲精品一区av| 国产富婆一区二区三区 | 亚洲午夜久久久影院伊人| 国产精品99一区二区三区| 男人天堂网站在线| 亚洲伊人观看| 亚洲精品性视频| 国产成人免费视频精品含羞草妖精| 中文字幕一区二区人妻电影丶| 久久精品视频一区二区三区| 午夜国产福利视频| 午夜av一区二区三区| 中文字幕精品一区二| 精品久久久久久亚洲综合网| 日本一区高清| 久久视频免费在线播放| 色老头在线一区二区三区| 国产精品久久久久久久美男| 日本精品在线观看| 欧美视频观看一区| 欧美在线91| 国产福利一区视频| 成人午夜视频福利| 中文字幕av久久爽一区| 一区二区三区免费在线观看| 亚洲自拍一区在线观看| 日韩女优毛片在线| 国产美女性感在线观看懂色av| 美乳少妇欧美精品| 制服诱惑亚洲| 国产精品三区在线| 亚洲澳门在线| www.超碰com| 成人免费视频视频在线观看免费| 日韩黄色中文字幕| 黑人极品videos精品欧美裸| 国产欧美熟妇另类久久久| 亚洲欧洲日产国产网站| 国模私拍视频在线播放| 国产在线视频2019最新视频| 亚洲传媒在线| 亚洲色欲久久久综合网东京热| 美女视频一区二区三区| 国产ts丝袜人妖系列视频| 亚洲综合激情网| 91精品国自产| 一区二区成人精品| 周于希免费高清在线观看 | 欧美一级片中文字幕| 丁香天五香天堂综合| 国产高清视频免费在线观看| 欧洲人成人精品| 深夜福利视频一区| 久久久亚洲国产天美传媒修理工| 国产电影一区| 在线免费观看一区二区三区| 人人超碰91尤物精品国产| 老司机免费视频| 亚洲国产精品久久久久婷婷884| 国产普通话bbwbbwbbw| 色偷偷88888欧美精品久久久 | 欧美网站在线| 欧美专区第二页| 亚洲天堂中文字幕| 一区二区的视频| 色婷婷综合成人| 四虎国产精品成人免费影视| 亚洲7777| 美国一区二区三区在线播放| 奇米网一区二区| 欧美性大战久久久| www.亚洲资源| 国产欧美日韩中文| 91亚洲一区| 手机在线国产视频| 亚洲欧美日韩国产综合| 国产免费的av| 欧美日本精品在线| 天堂av一区| 成品人视频ww入口| 99精品国产热久久91蜜凸| 成人免费区一区二区三区| 日韩精品免费在线视频观看| 欧美极度另类| 亚洲成人网上| 国产一区二区三区香蕉| 久久久久性色av无码一区二区| 精品成人免费观看| 国产激情视频在线看| 蜜桃视频在线观看91| 日韩av中文字幕一区二区三区| 国产在线综合视频| 在线播放中文字幕一区| 成人毛片av在线| 国产一区再线| 首页国产欧美久久| 手机看片国产日韩| 91精品国产高清一区二区三区| 男女视频在线| 欧美日韩国产精品一卡| 麻豆国产精品一区二区三区| 午夜国产福利一区二区| 亚洲国产精品成人精品| 小黄鸭精品aⅴ导航网站入口| 亚洲砖区区免费| 成人精品免费看| 成人h动漫精品一区二区下载| 日韩在线观看成人| 国产三级精品三级在线观看国产| 虎白女粉嫩尤物福利视频| 亚洲天堂免费看| 日本韩国免费观看| 国产精品久久久久久久久粉嫩av| 一区二区蜜桃| 国产免费看av| 日韩欧美国产一二三区| videos性欧美另类高清| 一级特黄录像免费播放全99| 不卡视频在线看| 亚洲一区二区影视| 高清视频欧美一级| 久久一区二区中文字幕| 无码国产69精品久久久久网站| 欧美日韩卡一卡二| jizzjizz中国精品麻豆| 性欧美精品一区二区三区在线播放|