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

可緩解Internet Explorer 6/7攻擊的cpp代碼

安全 應用安全
遠程執行##遠程攻擊##立即處理[msg]Dirty mitigation for the Internet Explorer 6/7 - getElementsByTagName Body Style

Dirty mitigation for the Internet Explorer 6/7 - getElementsByTagName Body Style

Code:

/* 

This code is for a DLL that loads into Internet Explorer as a BHO and 
modifies MSHTML.DLL in memory to render attempts to exploit this new 
IE vulnerability inert. It does that by forcing a "controlled crash" 
at a high address, instead of letting EIP reach an MSHTML-dependent 
address that could fall within the heap-sprayable zone. It's not a 
patch, or a "fix" in any pure sense -- it's just a mitigation. 

The vulnerability details I've figured out are that 
MSHTML!CDispNode::SetExpandedClipRect ORs a CDispScroller instance's 
vtable pointer by 2, then MSHTML!CLayout::GetFirstContentDispNode 
tries to call a function (at +2Ch on IE 6, +30h on IE 7) from the 
vtable. This makes exploitability completely dependent on the 
system's version of MSHTML.DLL, and all but rules out successful 
exploitation in 64-bit Internet Explorer. 

The mitigation works by replacing one function pointer in the vtable 
with a pointer for which the low 2 bytes are 0xCCCC, but at which the 
code is functionally equivalent. Legitimate virtual function calls 
work will as usual, while exploitation attempts will arrive at EIP = 
0xCCCCxxxx (not exploitable) rather than 0xyyyyxxxx (exploitable for 
some yyyy). 

The following snippet is a pared-down, harmless proof-of-concept to 
illustrate the fundamental elements of the vulnerability. < and > 
have been replaced by # to avoid setting off alarms. 

#!DOCTYPE# 
#STYLE#* { margin: 0; overflow: scroll }#/STYLE# 
#BODY ONLOAD="document.getElementsByTagName('STYLE')[0].outerHTML++"# 

The !DOCTYPE tag is necessary to cause 
MSHTML!CFlowLayout::CalcSizeCore to call 
CFlowLayout::CalcSizeCoreCSS1Strict (the vulnerable code path) instead 
of CFlowLayout::CalcSizeCoreCompat. The STYLE needs to apply to the 
BODY, but the * illustrates that "body" appearing there shouldn't be 
relied upon when constructing any detection signatures. The ++ works 
as well as anything to modify 'outerHTML'. 

This code has received minimal testing and is not guaranteed to stop 
all attacks. Use it at your own risk. 

Thanks to MMM for the sacrificial system. Greets to the November birthday 
crew. 

-- Derek 

*/ 

//////////////////////////////////////////////////////////////// 
// iebsfix1.cpp 
//============================================================== 
// Dirty mitigation for the Internet Explorer 6/7 
// getElementsByTagName Body Style zero-day. Downgrades an 
// exploitation attempt to a harmless crash. 
// 
// This mitigation is for 32-bit (x86) Windows only -- it does 
// not work on 64-bit Windows, even though 64-bit Internet 
// Explorer is technically affected. 
// 
// To build: 
// 
// 1. Start Visual Studio 2008 (2005 should also work) 
// 2. File -> New -> Project 
// 3. Choose Visual C++: Win32: Win32 Project 
// 4. Enter "iebsfix1" for the name 
// 5. In the Win32 Application Wizard, choose an 
// "Application type" of "DLL", and under "Additional 
// options", check "Empty project" 
// 6. In the Solution Explorer, right-click on "Source Files", 
// Add -> New Item 
// 7. Choose "C++ File (.cpp)" and enter "iebsfix1.cpp" for 
// the name 
// 8. Paste all of this source code into the new .cpp file 
// 9. In the Solution Explorer, right-click again on "Source 
// Files", Add -> New Item 
// 10. Choose "Module-Definition File (.def)" and enter 
// "iebsfix1.def" for the name 
// 11. Paste everything in the block comment below (between the 
// rows of ****'s) into the new .def file 
// 12. Build -> Configuration Manager; for "Active solution 
// configuration", choose "Release" 
// 13. For maximum portability, Project -> Properties, 
// Configuration Properties: C/C++: Code Generation: set 
// "Runtime Library" to "Multi-threaded (/MT)"; this will 
// keep iebsfix1.dll from requiring MSVCR*.DLL 
// 14. (While you're in there, Project -> Properties, 
// Configuration Properties: Linker: Input, and make sure 
// that "Module Definition File" contains "iebsfix1.def") 
// 15. Build -> Build Solution 
// 
// To use, copy "iebsfix1.dll" to the Windows SYSTEM32 
// directory and run "regsvr32 iebsfix1.dll" as an 
// administrator. 
// 
// To uninstall, run "regsvr32 /u iebsfix1.dll". 
// 
// The DLL self-registers as a Browser Helper Object, but it 
// doesn't actually do anything BHO-like -- it just hooks 
// MSHTML.DLL during DllGetClassObject, then "fails." Being a 
// BHO is a convenient way to get loaded into Internet Explorer. 
// (Note that it may also load into Explorer.) If it can't 
// hook the system's MSHTML.DLL, it will display a message box 
// informing the user of the failure. 
// 
// NO WARRANTIES. Use at your own risk. Redistribution of this 
// source code in its original, unmodified form is permitted. 
// 
// Derek Soeder - 11/22/2009 
//////////////////////////////////////////////////////////////// 

/**** Paste the following into a new .def file: ************* 

LIBRARY "iebsfix1.dll" 

EXPORTS 
DllCanUnloadNow PRIVATE 
DllGetClassObject PRIVATE 
DllRegisterServer PRIVATE 
DllUnregisterServer PRIVATE 

***************************************************************/ 

#define IEBSFIX1_CLSID_W L"{802af903-a984-4481-8376-c103ade582e6}" 

#define WIN32_LEAN_AND_MEAN 
#define _CRT_NON_CONFORMING_SWPRINTFS 
#define _CRT_SECURE_NO_WARNINGS 

#include  
#include  
#include  

//////////////////////////////////////////////////////////////// 
// MSHTML!CDispScroller vtable hooking 
//////////////////////////////////////////////////////////////// 

PVOID * find_vtable_slot( 
HMODULE hmMSHTML ) 
{ 
PIMAGE_DOS_HEADER pmz; 
PIMAGE_NT_HEADERS32 ppe; 
UINT_PTR codestart; 
PBYTE pbcode; 
SIZE_T cbremain; 
UINT_PTR ptr; 
size_t i; 
PVOID * ppfn; 

pmz = (PIMAGE_DOS_HEADER) 
((UINT_PTR)hmMSHTML & ~(UINT_PTR)0xFFFFU); 
if (pmz->e_magic != IMAGE_DOS_SIGNATURE || pmz->e_lfanew <= 0) 
return NULL; 

ppe = (PIMAGE_NT_HEADERS32) 
((LONG_PTR)pmz + pmz->e_lfanew); 
if ( ppe->Signature != IMAGE_NT_SIGNATURE || 
ppe->FileHeader.Machine != IMAGE_FILE_MACHINE_I386 || 
ppe->OptionalHeader.Magic != 
IMAGE_NT_OPTIONAL_HDR32_MAGIC ) 
{ 
return NULL; 
} 

codestart = (UINT_PTR)pmz + ppe->OptionalHeader.BaseOfCode; 
pbcode = (PBYTE)codestart; 

// find instructions that assign to memory at [reg] a pointer 
// to constant data stored in the code section; vtable 
// pointer initialization instructions are a subset of these 

for ( cbremain = ppe->OptionalHeader.SizeOfCode; 
cbremain >= 7; pbcode++, cbremain-- ) 
{ // C7/0x/vtableptr -- MOV [reg], vtableptr 
if (pbcode[0] != 0xC7U) continue; 
if ( pbcode[1] <= 0x03 || // [EAX/ECX/EDX/EBX] 
pbcode[1] == 0x06 || // [ESI] 
pbcode[1] == 0x07 ) // [EDI] 
{ 
ptr = *(DWORD *)(pbcode + 2); 
} 
// C7/45/00/vtableptr -- MOV [EBP+0], vtableptr 
else if (pbcode[1] == 0x45 && pbcode[2] == 0x00) 
ptr = *(DWORD *)(pbcode + 3); 
else continue; 

// pointer to pointers, must be machine word aligned 

if ((ptr & 3) != 0) continue; 

// if it doesn't point to at least 25 code-section 
// pointers, we're not interested 

for (i = 0; i < 25; i++) 
{ 
if ( ptr < codestart || (ptr - codestart) >= 
ppe->OptionalHeader.SizeOfCode ) 
{ 
break; 
} 
} 

if (i < 25) continue; 

ppfn = (PVOID *)ptr; 

// IE 6: [11], [12], and [14] return 1; [13] returns 0 
// IE 7: [12], [13], and [15] return 1; [14] returns 0 
// (CalcDispInfoForViewport was inserted at [11]) 

if ( ppfn[11] == ppfn[12] && ppfn[11] != ppfn[13] && 
ppfn[11] == ppfn[14] ) 
{ 
ppfn += 11; 
} 
else if ( ppfn[12] == ppfn[13] && 
ppfn[12] != ppfn[14] && ppfn[12] == ppfn[15] ) 
{ 
ppfn += 12; 
} 
else continue; 

// 33/C0/40/C3 -- XOR EAX, EAX / INC EAX / RET 
// 6A/01/58/C3 -- PUSH 1 / POP EAX / RET 
if ( *(DWORD *)*ppfn == 0xC340C033U || 
*(DWORD *)*ppfn == 0xC358016AU ) 
{ 
return ppfn; 
} 
} //for(cbremain>=7) 

return NULL; 
} //find_vtable_slot 

BOOL apply_mitigation( 
PVOID * ppfnVTableSlot ) 
{ 
PBYTE pbhook; 
DWORD dwprot; 

// we "hook" the next vtable slot and make sure the two low 
// bytes of the function pointer are unusably high, so the 
// call to [ppfnVTableSlot | 2] will always crash 

pbhook = (PBYTE) VirtualAlloc( NULL, 0x10000, 
MEM_COMMIT|MEM_RESERVE, PAGE_EXECUTE_READWRITE ); 

if (pbhook == NULL) return FALSE; 

memset( pbhook, 0xF4U, 0x10000 ); // F4 -- HLT 

// 33/C0/40/C3 -- XOR EAX, EAX / INC EAX / RET 
*(DWORD *)(pbhook + 0xCCCCU) = 0xC340C033U; 

// see? now the virtual method does its "return 1" at address 
// xxxxCCCC instead of at whatever address inside MSHTML.DLL; 
// it'll still work fine, but those two low bytes of CCCC will 
// "poison" the exploit 

VirtualProtect( pbhook, 0x10000, PAGE_EXECUTE_READ, &dwprot ); 

FlushInstructionCache( GetCurrentProcess(), pbhook, 0x10000 ); 

// set the hook 

if ( !VirtualProtect( ppfnVTableSlot + 1, 
sizeof(ppfnVTableSlot[1]), PAGE_EXECUTE_READWRITE, 
&dwprot ) ) 
{ 
VirtualFree( pbhook, 0, MEM_RELEASE ); 
return FALSE; 
} 

ppfnVTableSlot[1] = (pbhook + 0xCCCCU); 

VirtualProtect( ppfnVTableSlot + 1, sizeof(ppfnVTableSlot[1]), 
dwprot, &dwprot ); 

FlushInstructionCache( GetCurrentProcess(), 
ppfnVTableSlot + 1, sizeof(ppfnVTableSlot[1]) ); 

return TRUE; 
} //apply_mitigation 

//////////////////////////////////////////////////////////////// 
// Browser Helper Object DLL 
//////////////////////////////////////////////////////////////// 

HINSTANCE g_hinstMyself; 
BOOL g_fInitialized; 
CRITICAL_SECTION g_csInit; 

HMODULE g_hmMSHTML; 

STDAPI DllUnregisterServer() 
{ 
HKEY hkey, hkey2, hkey3; 

if ( RegOpenKeyW( HKEY_LOCAL_MACHINE, L"SOFTWARE\\" 
L"Classes\\CLSID", &hkey ) == ERROR_SUCCESS ) 
{ 
if ( RegOpenKeyW( hkey, IEBSFIX1_CLSID_W, 
&hkey2 ) == ERROR_SUCCESS ) 
{ 
if ( RegOpenKeyW( hkey2, L"InprocServer32", 
&hkey3 ) == ERROR_SUCCESS ) 
{ 
RegDeleteValueW( hkey3, NULL ); 
RegCloseKey( hkey3 ); 
RegDeleteKeyW( hkey2, 
L"InprocServer32" ); 
} 

RegCloseKey( hkey2 ); 
RegDeleteKeyW( hkey, IEBSFIX1_CLSID_W ); 
} 

RegCloseKey( hkey ); 
} 

if ( RegOpenKeyW( HKEY_LOCAL_MACHINE, L"SOFTWARE\\Microsoft\\" 
L"Windows\\CurrentVersion\\Explorer", 
&hkey ) == ERROR_SUCCESS ) 
{ 
if ( RegOpenKeyW( hkey, L"Browser Helper Objects", 
&hkey2 ) == ERROR_SUCCESS ) 
{ 
RegDeleteKeyW( hkey2, IEBSFIX1_CLSID_W ); 
RegCloseKey( hkey2 ); 
RegDeleteKeyW( hkey, 
L"Browser Helper Objects" ); 
} 

RegCloseKey( hkey ); 
} 

return S_OK; 
} //DllUnregisterServer 

STDAPI DllRegisterServer() 
{ 
HKEY hkey, hkey2; 
WCHAR wszmod[1024]; 
LSTATUS lret; 

if ( RegCreateKeyW( HKEY_LOCAL_MACHINE, 
L"SOFTWARE\\Classes\\CLSID\\" IEBSFIX1_CLSID_W 
L"\\InprocServer32", &hkey ) != ERROR_SUCCESS ) 
{ 
_fail: 
DllUnregisterServer(); 
return SELFREG_E_CLASS; 
} 

GetModuleFileNameW( g_hinstMyself, wszmod, 
(sizeof(wszmod) / sizeof(wszmod[0])) ); 

lret = RegSetValueW( hkey, NULL, REG_SZ, wszmod, 
(wcslen( wszmod ) + 1) * sizeof(wszmod[0]) ); 

RegCloseKey( hkey ); 

if (lret != ERROR_SUCCESS) goto _fail; 

if ( RegCreateKeyW( HKEY_LOCAL_MACHINE, L"SOFTWARE\\" 
L"Microsoft\\Windows\\CurrentVersion\\Explorer\\" 
L"Browser Helper Objects", &hkey ) != ERROR_SUCCESS ) 
{ 
goto _fail; 
} 

lret = RegCreateKeyW( hkey, IEBSFIX1_CLSID_W, &hkey2 ); 

RegCloseKey( hkey ); 

if (lret != ERROR_SUCCESS ) goto _fail; 

RegCloseKey( hkey2 ); 

return S_OK; 
} //DllRegisterServer 

STDAPI DllCanUnloadNow() 
{ 
return S_OK; 
} 

STDAPI DllGetClassObject( 
REFCLSID rclsid, 
REFIID riid, 
LPVOID * ppv ) 
{ 
PVOID * ppfn; 
WCHAR wszbuf[256]; 

EnterCriticalSection( &g_csInit ); 

__try 
{ 
if (!g_fInitialized) 
{ 
// MSHTML should already be loaded; this extra 
// reference will keep it from ever unloading 
g_hmMSHTML = LoadLibraryW( L"mshtml.dll" ); 

ppfn = find_vtable_slot( g_hmMSHTML ); 

if (ppfn != NULL) 
{ 
swprintf( wszbuf, 
L"IEBSFix1: Found vtable slot at %p in MSHTML_%p\r\n", 
ppfn, g_hmMSHTML ); 
OutputDebugStringW( wszbuf ); 

apply_mitigation( ppfn ); 
} 
else 
{ 
swprintf( wszbuf, 
L"IEBSFix1: FAILED to find vtable slot in MSHTML_%p\r\n", 
g_hmMSHTML ); 
OutputDebugStringW( wszbuf ); 

MessageBoxW( NULL, 
L"The Internet Explorer 6/7 getElementsByTagName Body Style zero-day " 
L"mitigation, also known as IEBSFix1, is not protecting your system " 
L"because it is incompatible with this version of Internet Explorer." 
L"\n\nTo remove IEBSFix1, run \"regsvr32 /u iebsfix1.dll\" as an " 
L"administrator.", 
L"IEBSFix1", MB_ICONWARNING|MB_OK ); 
} 

g_fInitialized = TRUE; 
} 
} 
__finally 
{ 
LeaveCriticalSection( &g_csInit ); 
} 

return CLASS_E_CLASSNOTAVAILABLE; 
} //DllGetClassObject 

BOOL WINAPI DllMain( 
HINSTANCE hinstDLL, 
DWORD fdwReason, 
LPVOID lpvReserved ) 
{ 
if (fdwReason == DLL_PROCESS_ATTACH) 
{ 
g_hinstMyself = hinstDLL; 
g_fInitialized = FALSE; 
InitializeCriticalSection( &g_csInit ); 
} 

return TRUE; 
} //DllMain

【編輯推薦】

  1. 系統安全基礎之對IE瀏覽器優化設置
  2. 微軟IE7瀏覽器十大安全要點
  3. 安全專家稱火狐IE瀏覽器同時使用存在安全危險
責任編輯:安泉 來源: 黑客防線
相關推薦

2012-08-24 13:37:59

Internet Ex瀏覽器

2011-09-06 10:02:06

IE9Windows 7Forresten

2009-02-24 08:22:53

Internet ExIE8RTM

2010-09-16 08:59:41

2010-12-29 14:32:38

2011-08-18 09:26:45

IE

2010-12-28 15:15:32

2012-12-12 16:16:19

微軟IE10Windows 8

2019-02-26 15:05:54

Windows 10Internet Ex

2010-10-09 11:20:13

2013-11-08 09:48:50

IEIE11

2011-03-16 11:27:31

微軟IE9

2010-12-20 15:04:57

加載項管理

2012-03-20 13:27:31

Internet Ex

2011-03-22 18:52:56

IE9微軟中國

2009-03-15 10:09:56

IE8瀏覽器進程模型

2020-08-28 10:09:20

微軟Internet ExWindows 10

2010-04-23 14:52:17

Internet Ex

2021-05-25 14:06:35

MicrosoftIE瀏覽器

2019-02-13 14:33:13

點贊
收藏

51CTO技術棧公眾號

动漫一区二区三区| 91社区在线观看播放| 亚洲调教视频在线观看| 精品一区二区三区四区在线| 婷婷激情四射五月天| 在线免费观看a视频| 99久久99久久免费精品蜜臀| 国产精品久久久久久久久免费看 | 国产精品国产对白熟妇| 亚洲欧美丝袜中文综合| 久久国产精品区| 韩国精品美女www爽爽爽视频| 级毛片内射视频| 亚洲1区在线| 日本道色综合久久| 亚洲精品天堂成人片av在线播放 | 91在线播放网址| 国产欧美精品日韩| 久久久国产高清| 伊人色**天天综合婷婷| 亚洲欧美日韩一区在线| 第一页在线视频| 国产精品诱惑| 日韩欧美亚洲国产一区| 欧美做暖暖视频| 91在线视频| 国产亚洲污的网站| 国产精品日韩二区| 国产精品女同一区二区| 日韩精品视频网| 91国产视频在线| 亚洲国产成人精品综合99| jizzjizz欧美69巨大| 欧美日韩伦理一区二区| 日韩理论片在线| 欧洲精品久久| 偷拍25位美女撒尿视频在线观看| 国产麻豆视频精品| 国产欧美最新羞羞视频在线观看| 无码人妻精品一区二区| 在线亚洲观看| 午夜欧美不卡精品aaaaa| 伊人久久久久久久久久久久久久| 欧美裸体在线版观看完整版| 亚洲精品美女免费| 日本一级大毛片a一| 国内不卡的一区二区三区中文字幕| 91久久精品一区二区| 欧美日韩性生活片| 丁香影院在线| 亚洲一区二区av在线| 欧美一区二区视频在线播放| 丝袜国产在线| 亚洲一区二区三区国产| 女人被男人躁得好爽免费视频| 好了av在线| 综合网在线视频| 黄瓜视频免费观看在线观看www| 在线观看二区| 国产精品家庭影院| 一个色的综合| 中文字幕资源网在线观看| 成人免费小视频| 中国一级大黄大黄大色毛片| 国产丝袜在线| 一区二区三区.www| 777av视频| 涩涩av在线| 欧美性xxxxx极品少妇| 九一精品在线观看| 久久久久伊人| 日韩欧美国产一区在线观看| 黄色国产在线视频| 日韩啪啪网站| 中日韩美女免费视频网址在线观看 | 99久久777色| 精品视频第一区| 深夜福利视频在线观看| 国产视频一区二区在线| 亚州欧美一区三区三区在线| 一本一道波多野毛片中文在线| 亚洲欧美综合色| 无码日本精品xxxxxxxxx| 爱情岛亚洲播放路线| 欧美视频国产精品| 婷婷六月天在线| www.久久久久爱免| 亚洲国产成人在线播放| 欧美 日韩 成人| 久久久久久久久久久妇女 | av成人影院在线| 91官网在线免费观看| 污视频网址在线观看| 亚洲3区在线| 国产亚洲福利一区| 91高清免费观看| 久久国产66| 成人在线播放av| 亚洲人成色777777老人头| 国产欧美va欧美不卡在线| 国产高清不卡无码视频| 欧美电影免费观看高清完整| 欧美一区二区三区免费大片| 四虎永久免费影院| 欧美一区影院| 国产98色在线| 成人乱码一区二区三区| 国产女主播一区| 自拍日韩亚洲一区在线| 日韩电影精品| 日韩精品视频在线播放| av成人免费网站| 美女被久久久| 国产精品福利视频| 亚洲视频tv| 欧美日韩中文字幕| 成人免费黄色av| jizzjizz欧美69巨大| 69av在线视频| 性生交生活影碟片| 国产精品家庭影院| 伊人伊成久久人综合网小说| 日本少妇高潮喷水xxxxxxx| 亚洲欧美一区在线| 国产精品欧美亚洲777777| 熟妇高潮一区二区三区| 亚洲日本在线a| 黄色免费网址大全| 日本亚洲不卡| 国语对白做受69| www.日本在线观看| 国产精品久久久久久亚洲毛片| 欧美极品欧美精品欧美图片| 成人爽a毛片| 大胆人体色综合| 一本大道伊人av久久综合| 久久久精品2019中文字幕之3| 自拍日韩亚洲一区在线| 成功精品影院| 欧美成人自拍视频| 国产理论视频在线观看| 国产精品美女久久久久av爽李琼| 97视频在线免费播放| 红杏视频成人| 久久久久久久国产精品视频| www.激情五月| 一区二区三区产品免费精品久久75| 欧美午夜精品理论片| 99精品视频在线观看免费播放| 国产精品69av| 91亚洲精选| 欧美丰满高潮xxxx喷水动漫| 波多野结衣家庭教师在线观看| 日韩电影在线免费| 亚洲欧美日韩另类精品一区二区三区| 激情开心成人网| 亚洲视频在线看| 中文字幕人妻丝袜乱一区三区| 亚洲国产高清不卡| 国内外成人免费在线视频| 日韩欧美在线中字| 91九色国产视频| av片在线观看网站| 精品动漫一区二区三区在线观看| 久久精品视频久久| 99麻豆久久久国产精品免费优播| 春日野结衣av| 欧美日韩精品在线一区| 国产免费一区二区三区在线观看| 国产精品一卡二卡三卡| 日韩一级成人av| 亚欧视频在线观看| 欧美一区二区性| 久久精品视频在线看| 成人在线视频一区二区三区| 国产成人福利av| 奇米成人av国产一区二区三区| 精品成人一区二区三区免费视频| 欧美性大战久久久久久久| 青青草原在线免费观看| 波多野结衣中文字幕一区二区三区| 黑人糟蹋人妻hd中文字幕 | 国产视频精品自拍| 国产精品乱码一区二区视频| 国产精品国产三级国产普通话99 | 日韩在线观看视频网站| 欧美三级免费观看| 91视频最新网址| 成人免费的视频| 五月天婷婷激情视频| 91精品精品| 久久综合伊人77777麻豆| 亚洲伦理久久| 91精品国产免费久久久久久| 日本综合在线| 日韩成人av网| 国产喷水福利在线视频| 欧美日韩在线另类| 亚洲天堂网av在线| 本田岬高潮一区二区三区| 亚洲一二三区av| 99在线|亚洲一区二区| 亚洲人体一区| 日韩深夜福利| 99国产盗摄| 国产精品4hu.www| 97久久伊人激情网| 国产原创精品视频| 亚洲人成在线播放| 懂色av一区二区三区四区| 欧美综合色免费| 国产污污视频在线观看| 亚洲精品久久久蜜桃| 自拍偷拍你懂的| 久久亚洲精品小早川怜子| 国模大尺度视频| 久久爱www久久做| www.四虎成人| 亚洲国产午夜| wwwwww欧美| 午夜精品一区二区三区国产 | 你懂的国产精品永久在线| 日韩福利二区| 色婷婷综合久久久久久| 翡翠波斯猫1977年美国| 先锋影音网一区二区| 欧美一级搡bbbb搡bbbb| 日本女优爱爱视频| 亚洲深深色噜噜狠狠爱网站| 深夜福利成人| 精品影片在线观看的网站| 国产一区二区三区高清视频| 日韩欧美另类中文字幕| 91精品综合久久久久久五月天| 欧美日韩在线精品一区二区三区激情综合 | 日本韩国精品在线| 日韩av黄色片| 亚洲一二三区视频在线观看| 亚洲最大的黄色网址| 亚洲欧美偷拍另类a∨色屁股| 国产欧美小视频| 国产欧美中文在线| 国产色视频一区二区三区qq号| 不卡av在线网| 丰满大乳奶做爰ⅹxx视频| www.66久久| 亚洲av成人片色在线观看高潮| 成人福利视频在线看| 91九色蝌蚪porny| 成人高清伦理免费影院在线观看| 亚洲av无码一区东京热久久| 成人精品在线视频观看| 国产日韩视频一区| 成人一区二区三区视频| 人妻激情偷乱频一区二区三区| 成人性生交大合| 一级欧美一级日韩片| 91蜜桃视频在线| 国产精品毛片一区二区| 久久久精品国产免大香伊| 91社区视频在线观看| 中文字幕在线免费不卡| 久草综合在线视频| 一区二区三区高清不卡| 国产香蕉在线视频| 欧美视频二区36p| 在线不卡免费视频| 欧美日本国产视频| 99久久亚洲精品日本无码| 欧美一卡二卡在线观看| 日韩一区二区三区不卡| 亚洲人a成www在线影院| 91在线不卡| 欧美贵妇videos办公室| 三级在线观看视频| 国产精品国产三级国产专播精品人| 久久99久久久精品欧美| 91九色在线免费视频| 欧美xxxx在线| 先锋影音日韩| 欧美日韩一区自拍| www.com毛片| 激情五月婷婷综合| 91九色蝌蚪porny| 国产精品无遮挡| 久久婷婷一区二区| 色综合中文字幕| 国产乱码精品一区二区| 亚洲国产精品久久久久| 亚州av在线播放| 久久综合电影一区| 亚洲美女尤物影院| 91在线观看免费网站| 亚洲色图美女| 日本天堂免费a| 日产国产欧美视频一区精品| 日韩av影视大全| 久久免费视频色| 久久久久久久久毛片| 欧美亚洲日本一区| 东京干手机福利视频| 中文字幕一区二区三区电影| 免费一二一二在线视频| 成人福利视频网| 久久av影视| 国产无限制自拍| 韩国三级电影一区二区| 欧美特黄一区二区三区| 亚洲午夜免费电影| 97超碰人人草| 亚洲丝袜av一区| 成人免费网站观看| 亚洲综合精品伊人久久| 精品欧美激情在线观看| 国产极品尤物在线| 国产成人av福利| 日韩在线一卡二卡| 91久久线看在观草草青青| 日韩一卡二卡在线| 欧美丰满少妇xxxx| 色综合一区二区日本韩国亚洲| 欧美精品久久久| 亚洲一区成人| 国产精品麻豆入口| 亚洲男同1069视频| 91久久国语露脸精品国产高跟| 亚洲欧美成人一区二区在线电影| 91jq激情在线观看| 91日韩久久| 一区二区三区在线| 99re精彩视频| 国产精品视频看| 欧美国产一级片| 亚洲男人的天堂在线| 美女高潮视频在线看| 国产日韩欧美综合精品| 国内综合精品午夜久久资源| 女教师高潮黄又色视频| 亚洲欧美另类图片小说| 91中文字幕在线视频| 日韩在线中文字| 国产精品亲子伦av一区二区三区| 偷拍视频一区二区| 青娱乐精品视频| 特级西西人体高清大胆| 欧美日韩成人综合在线一区二区| 97超碰国产一区二区三区| 国产精品久久久久久久久借妻| 国产欧美日韩精品一区二区免费 | 成人性色生活片| 国产大片aaa| 日韩精品福利在线| 天堂а√在线最新版中文在线| 久久资源亚洲| 日韩国产欧美在线观看| 四季av中文字幕| 欧美日韩国产一级| 成人毛片av在线| 国产精品12| 欧美一级视频| www.99热| 欧美一区二区精美| 超碰在线97国产| 免费在线国产精品| 免费成人在线观看视频| 神马久久精品综合| 日韩免费观看高清完整版 | 天天射成人网| 麻豆免费在线观看视频| 亚洲成a人v欧美综合天堂下载| 天天操天天干天天| 日韩暖暖在线视频| 欧美疯狂party性派对| 师生出轨h灌满了1v1| 欧美性感美女h网站在线观看免费| 国产乱子伦三级在线播放 | 久久中文字幕导航| 虎白女粉嫩尤物福利视频| 国产精品久久国产精麻豆99网站| 性猛交xxxx乱大交孕妇印度| 992tv在线成人免费观看| sdde在线播放一区二区| 中文字幕 欧美 日韩| 五月综合激情婷婷六月色窝| 成a人v在线播放| av一本久道久久波多野结衣| 国产欧美日韩综合一区在线播放 | 欧洲成人午夜精品无码区久久| 狠狠噜噜久久| 欧美一级高清大全免费观看| 久草视频在线看| 91欧美精品成人综合在线观看| 亚洲国产三级| 日韩av网站在线播放| 亚洲第一av网站| av久久网站| 男人添女荫道口图片| 亚洲国产高清aⅴ视频| 亚洲风情第一页| 国产精品老女人精品视频|