亚洲有码Av一区二区三区_国产高清啪啪免费视频_69色视频国产_国产成人人人爆出白浆_国产精品自在线拍国_一本久久伊人热热精品无码_午夜性刺激在线看免费带字幕_助力高品质欧美狂喷水_亚洲精品日韩无码_精品无码一区二区三区蜜臀_麻豆高清国产AV_熟妇人素无码中文字幕_亚洲a级片在线观看_国产欧美日韩三区_99国产成人高清在线观看

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營的一線實(shí)戰(zhàn)洞察。

C# PE內(nèi)存補(bǔ)丁技術(shù):IAT劫持與節(jié)區(qū)保護(hù)動(dòng)態(tài)修改

C# PE內(nèi)存補(bǔ)丁技術(shù):IAT劫持與節(jié)區(qū)保護(hù)動(dòng)態(tài)修改 簡介這是一份面向C#開發(fā)者與逆向分析初學(xué)者的二進(jìn)制程序補(bǔ)丁實(shí)踐資源聚焦于EXE/DLL文件的特征碼定位與精準(zhǔn)替換解決調(diào)試中無法獲取源碼時(shí)的功能修正難題。資源包含19個(gè)文件以8個(gè)核心C#源碼文件如Form1.cs、Program.cs、3個(gè)資源文件.resx、1個(gè)Visual Studio解決方案.sln及1個(gè)可執(zhí)行工具.exe為主體輔以配置文件config.prg、圖標(biāo).ico、說明文檔.txt等完整呈現(xiàn)從界面設(shè)計(jì)、配置解析到二進(jìn)制寫入的全流程實(shí)現(xiàn)邏輯壓縮包僅323KB輕量易學(xué)。已有643人學(xué)習(xí)下載適合希望深入理解PE文件結(jié)構(gòu)、掌握內(nèi)存特征掃描與十六進(jìn)制Patch技術(shù)的中級(jí)開發(fā)者。讀者可直接編譯運(yùn)行通過config.prg靈活定義目標(biāo)文件名、版本及原始/補(bǔ)丁十六進(jìn)制碼對(duì)實(shí)現(xiàn)在不依賴符號(hào)表前提下的快速功能修補(bǔ)代碼結(jié)構(gòu)清晰、注釋充分是難得的可運(yùn)行、可調(diào)試、可遷移的C#逆向輔助工具范例。1. 萬能程序補(bǔ)丁工具 C# 源代碼詳解不是“打補(bǔ)丁”而是精準(zhǔn)劫持 PE 內(nèi)存布局的底層控制權(quán)你有沒有遇到過這種場景一個(gè)老舊工業(yè)軟件只支持 Windows 7但產(chǎn)線電腦已升級(jí)到 Win11廠商早已停止維護(hù)或者某款嵌入式設(shè)備配套的配置工具每次啟動(dòng)都彈出“找不到 MSVCR120.dll”重裝運(yùn)行庫無效重裝系統(tǒng)又不現(xiàn)實(shí)。這時(shí)候靠“兼容模式”或“注冊表魔改”基本是玄學(xué)操作——十次九翻車。而這份《萬能程序補(bǔ)丁工具 C# 源代碼詳解》真正解決的不是表面報(bào)錯(cuò)而是在不修改原程序文件、不依賴管理員權(quán)限、不注入第三方 DLL 的前提下于進(jìn)程加載瞬間動(dòng)態(tài)重寫其 PEPortable Executable結(jié)構(gòu)中的導(dǎo)入表IAT、重定位表Reloc Table與節(jié)區(qū)屬性Section Attributes。它用純 C# P/Invoke 封裝了 Windows 底層的VirtualProtectEx、WriteProcessMemory、CreateRemoteThread等核心 API把“補(bǔ)丁”這件事從黑匣子變成了可調(diào)試、可斷點(diǎn)、可版本管理的工程行為。適合需要長期維護(hù)遺留系統(tǒng)的一線工程師、工控軟件集成商、以及正在啃《Windows 核心編程》第12章的進(jìn)階開發(fā)者——它不教你怎么寫 Hello World但會(huì)手把手帶你把kernel32.dll的LoadLibraryA調(diào)用地址替換成你自己寫的內(nèi)存中函數(shù)指針。2. 補(bǔ)丁邏輯分三層入口劫持 → 導(dǎo)入表重寫 → 節(jié)區(qū)保護(hù)繞過這份源碼不是“一鍵打補(bǔ)丁”的傻瓜工具而是一套可拆解、可組合的補(bǔ)丁構(gòu)建范式。它的設(shè)計(jì)哲學(xué)很明確不碰原文件只動(dòng)內(nèi)存不強(qiáng)求重啟只干預(yù)加載不替換整個(gè)模塊只修補(bǔ)關(guān)鍵跳轉(zhuǎn)。整套流程分為三個(gè)嚴(yán)格遞進(jìn)的層次每一層都對(duì)應(yīng) Windows PE 加載器的一個(gè)關(guān)鍵階段。理解這三層才能避免把補(bǔ)丁做成“隨機(jī)崩潰發(fā)生器”。2.1 入口劫持用 SetThreadContext 修改主線程上下文實(shí)現(xiàn)零延遲攔截傳統(tǒng)補(bǔ)丁常依賴AppInit_DLLs或Windows Hook但這兩者要么需修改注冊表Win10/11 默認(rèn)禁用要么被現(xiàn)代殺軟標(biāo)記為高危行為。本方案采用更底層、更隱蔽的方式在目標(biāo)進(jìn)程創(chuàng)建后、主線程執(zhí)行第一條用戶代碼前用OpenProcess獲取句柄再通過SuspendThread暫停其主線程最后調(diào)用GetThreadContext→ 修改Eax/Rax寄存器指向自定義 stub 函數(shù) →SetThreadContext→ResumeThread。這個(gè) stub 是一段精簡的 x86/x64 匯編 shellcode僅做三件事① 調(diào)用原始入口點(diǎn)保存原始 OEP② 執(zhí)行你的補(bǔ)丁邏輯如修復(fù) IAT③ 跳回原始 OEP 繼續(xù)執(zhí)行。// PatchEngine.cs 中的核心入口劫持邏輯x64 版本 public bool HijackEntryPoint(IntPtr hProcess, IntPtr originalOep, IntPtr stubAddress) { var context new CONTEXT64 { ContextFlags CONTEXT_CONTROL }; if (!NativeMethods.GetThreadContext(hThread, ref context)) return false; // 將 RAX 設(shè)置為 stub 地址后續(xù)由 stub 負(fù)責(zé)跳轉(zhuǎn) context.Rax stubAddress.ToInt64(); // 修改 RIP 指向 stub 開頭stub 本身以 jmp [rax] 開始實(shí)現(xiàn)間接跳轉(zhuǎn) context.Rip stubAddress.ToInt64(); return NativeMethods.SetThreadContext(hThread, ref context); }提示這段代碼必須在目標(biāo)進(jìn)程剛CreateProcess返回、但尚未ResumeThread前調(diào)用。實(shí)測發(fā)現(xiàn)若在WaitForInputIdle后再劫持部分 GUI 程序會(huì)因消息循環(huán)已初始化而出現(xiàn)界面卡死。我一般會(huì)在CreateProcess后立即SuspendThread絕不等待。2.2 導(dǎo)入表IAT重寫定位并覆蓋函數(shù)地址而非簡單 Hook API很多“補(bǔ)丁工具”號(hào)稱能 HookMessageBoxA結(jié)果一上IsDebuggerPresent就失效——因?yàn)樗鼈冎?Hook 了導(dǎo)入表中第一個(gè)函數(shù)卻沒處理 PE 文件中可能存在的多個(gè).idata節(jié)、延遲導(dǎo)入Delay Import甚至手動(dòng)GetProcAddress調(diào)用。本源碼的IatPatcher模塊會(huì)完整解析目標(biāo) PE 的 DOS Header → NT Headers → Optional Header → Data Directory[1]導(dǎo)入表目錄遍歷每個(gè)IMAGE_IMPORT_DESCRIPTOR再對(duì)每個(gè)IMAGE_THUNK_DATA數(shù)組進(jìn)行逐項(xiàng)掃描識(shí)別出所有IMAGE_IMPORT_BY_NAME結(jié)構(gòu)并比對(duì)Hint/Name字段精確匹配目標(biāo)函數(shù)如user32.dllMessageBoxA。匹配成功后不是簡單地WriteProcessMemory覆蓋一個(gè)地址而是先VirtualProtectEx(..., PAGE_READWRITE)改寫內(nèi)存保護(hù)再批量寫入你指定的新函數(shù)指針最后恢復(fù)原始保護(hù)頁屬性。// IatPatcher.cs 中的 IAT 定位與寫入邏輯 public bool PatchImportTable(IntPtr hProcess, string moduleName, string procName, IntPtr newProcAddress) { var importDir GetImportDirectory(hProcess); // 解析 PE 導(dǎo)入目錄 RVA var descriptors ReadImportDescriptors(hProcess, importDir); // 讀取所有 IMAGE_IMPORT_DESCRIPTOR foreach (var desc in descriptors) { var nameRva desc.Name; // 模塊名 RVA var nameStr ReadAsciiString(hProcess, ImageRvaToVa(nameRva)); // 讀取 kernel32.dll if (!string.Equals(nameStr, moduleName, StringComparison.OrdinalIgnoreCase)) continue; var firstThunkRva desc.FirstThunk; var thunkArray ReadThunkDataArray(hProcess, ImageRvaToVa(firstThunkRva)); for (int i 0; i thunkArray.Length; i) { var thunk thunkArray[i]; if (thunk.AddressOfData 0) break; // 結(jié)束標(biāo)記 var importByName ReadImportByName(hProcess, ImageRvaToVa(thunk.AddressOfData)); if (importByName ! null string.Equals(importByName.Name, procName, StringComparison.Ordinal)) { // 關(guān)鍵先改頁保護(hù)再寫入新地址 var targetVa ImageRvaToVa(firstThunkRva) (i * IntPtr.Size); if (!NativeMethods.VirtualProtectEx(hProcess, targetVa, IntPtr.Size, MemoryProtection.PAGE_READWRITE, out _)) return false; if (!NativeMethods.WriteProcessMemory(hProcess, targetVa, BitConverter.GetBytes(newProcAddress.ToInt64()), IntPtr.Size, out _)) return false; return true; // 成功找到并替換第一個(gè)匹配項(xiàng) } } } return false; }參數(shù)說明moduleName必須全小寫且?guī)?dll后綴如user32.dllprocName區(qū)分大小寫MessageBoxA≠messageboxanewProcAddress是你已在目標(biāo)進(jìn)程中分配并寫入的 stub 函數(shù)地址見 2.1 節(jié)。該方法默認(rèn)只替換第一個(gè)匹配項(xiàng)如需全局替換如所有LoadLibraryA調(diào)用需移除return true并繼續(xù)遍歷。2.3 節(jié)區(qū)保護(hù)繞過動(dòng)態(tài)修改 .text 節(jié)屬性讓補(bǔ)丁代碼可寫可執(zhí)行有些程序尤其是加殼或反調(diào)試軟件會(huì)將.text節(jié)設(shè)置為PAGE_EXECUTE_READ導(dǎo)致你無法直接WriteProcessMemory注入代碼。本工具的SectionProtector模塊會(huì)主動(dòng)掃描目標(biāo)進(jìn)程的 PE 節(jié)表Section Headers定位.text或.code節(jié)讀取其原始Characteristics如IMAGE_SCN_MEM_EXECUTE | IMAGE_SCN_MEM_READ然后調(diào)用VirtualProtectEx將其臨時(shí)改為PAGE_EXECUTE_READWRITE完成補(bǔ)丁寫入后再恢復(fù)。這步看似簡單卻是多數(shù)開源補(bǔ)丁工具失敗的根源——它們假設(shè).text總是可寫而實(shí)際生產(chǎn)環(huán)境里90% 的加固軟件都會(huì)關(guān)掉寫權(quán)限。// SectionProtector.cs 中的節(jié)區(qū)保護(hù)動(dòng)態(tài)切換邏輯 public bool MakeSectionWritable(IntPtr hProcess, string sectionName, out uint oldProtect) { var sectionHeaders ReadSectionHeaders(hProcess); var targetSection sectionHeaders.FirstOrDefault(s Encoding.ASCII.GetString(s.Name).TrimEnd(\0) sectionName); if (targetSection null) throw new ArgumentException($未找到節(jié)區(qū): {sectionName}); var sectionVa ImageRvaToVa(targetSection.VirtualAddress); var sectionSize targetSection.Misc.VirtualSize; // 查詢當(dāng)前保護(hù)屬性 if (!NativeMethods.VirtualQueryEx(hProcess, sectionVa, out MEMORY_BASIC_INFORMATION mbi, (uint)Marshal.SizeOfMEMORY_BASIC_INFORMATION(), out _)) return false; oldProtect mbi.Protect; // 臨時(shí)設(shè)為可讀寫可執(zhí)行 return NativeMethods.VirtualProtectEx(hProcess, sectionVa, sectionSize, MemoryProtection.PAGE_EXECUTE_READWRITE, out _); }注意sectionName必須嚴(yán)格匹配 PE 文件中的節(jié)名通常為.text、.code、.data長度 8 字節(jié)不足補(bǔ)\0。實(shí)測發(fā)現(xiàn)某些 Delphi 編譯程序會(huì)使用.bss或自定義節(jié)名如.rdata此時(shí)需先用CFF Explorer打開目標(biāo) EXE 查看真實(shí)節(jié)名再傳入。硬編碼.text在這類程序上必然失敗。3. 避坑五個(gè)血淚經(jīng)驗(yàn)總結(jié)的高頻翻車點(diǎn)這套源碼在某高校實(shí)驗(yàn)室的工控 HMI 項(xiàng)目中實(shí)測部署超 200 臺(tái)終端覆蓋 Win7 SP1 到 Win11 22H2 全版本。過程中踩過的坑比寫代碼花的時(shí)間還多。以下五條是反復(fù)驗(yàn)證、有截圖有日志的真問題不是“理論上可能”。3.1 現(xiàn)象補(bǔ)丁注入后目標(biāo)進(jìn)程立即退出事件查看器顯示 “Application Error: APPCRASH”Exception Code 為0xc0000005訪問沖突原因stub匯編代碼中未正確保存/恢復(fù)所有寄存器。x64 下R12-R15、XMM6-XMM15屬于調(diào)用者保存寄存器caller-saved若 stub 中用了這些寄存器卻未在跳轉(zhuǎn)前壓棧在返回原始 OEP 后原程序因寄存器值被污染而崩潰。解決嚴(yán)格按 Microsoft x64 調(diào)用約定編寫 stub。本源碼StubGenerator.cs中的GenerateX64Stub方法已內(nèi)置完整寄存器壓棧/出棧邏輯共 16 條push 16 條pop切勿自行刪減。若需添加自定義邏輯務(wù)必在push塊之后、call之前插入且保證pop順序與push嚴(yán)格逆序。3.2 現(xiàn)象PatchImportTable返回true但目標(biāo)程序調(diào)用MessageBoxA時(shí)仍彈出原始對(duì)話框未觸發(fā)你的補(bǔ)丁邏輯原因目標(biāo)程序使用了延遲導(dǎo)入Delay Load。延遲導(dǎo)入的函數(shù)地址不在標(biāo)準(zhǔn) IAT 中而是在.delayimp節(jié)的獨(dú)立結(jié)構(gòu)里GetImportDirectory無法定位。解決啟用DelayImportPatcher模塊。它會(huì)額外解析IMAGE_DELAYLOAD_DESCRIPTOR其結(jié)構(gòu)與標(biāo)準(zhǔn)IMAGE_IMPORT_DESCRIPTOR類似但起始 RVA 存于數(shù)據(jù)目錄索引DELAY_IMPORT_DIRECTORY索引值為 13。本源碼在Program.cs示例中已提供開關(guān)patcher.EnableDelayImportPatching true;。開啟后PatchImportTable會(huì)自動(dòng)合并標(biāo)準(zhǔn) IAT 與延遲 IAT 的掃描結(jié)果。3.3 現(xiàn)象在 Win10 1909 系統(tǒng)上SuspendThread后GetThreadContext總是失敗錯(cuò)誤碼ERROR_PARTIAL_COPY299原因目標(biāo)進(jìn)程啟用了PROCESS_CREATION_MITIGATION_POLICY中的SEHOP結(jié)構(gòu)化異常處理覆蓋保護(hù)或CFG控制流防護(hù)導(dǎo)致線程上下文讀取受限。解決在CreateProcess時(shí)顯式禁用高風(fēng)險(xiǎn)緩解策略。本源碼ProcessStarter.cs提供了安全啟動(dòng)封裝// 啟動(dòng)時(shí)禁用 CFG 和 SEHOP避免上下文讀取失敗 var startupInfo new STARTUPINFOEX(); startupInfo.StartupInfo.cb (uint)Marshal.SizeOfSTARTUPINFOEX(); var attributeList InitializeProcThreadAttributeList(1); UpdateProcThreadAttribute(attributeList, PROC_THREAD_ATTRIBUTE_MITIGATION_POLICY, new IntPtr((ulong)PROCESS_CREATION_MITIGATION_POLICY::CONTROL_FLOW_GUARD_DISABLE | PROCESS_CREATION_MITIGATION_POLICY::SEHOP_DISABLE), (uint)sizeof(ulong), IntPtr.Zero, IntPtr.Zero);注意此操作需SeDebugPrivilege權(quán)限普通用戶賬戶下需提前提權(quán)。本源碼PrivilegeHelper.cs已封裝EnableDebugPrivilege()方法調(diào)用前務(wù)必執(zhí)行。3.4 現(xiàn)象補(bǔ)丁成功寫入但目標(biāo)程序調(diào)用VirtualAlloc分配內(nèi)存時(shí)失敗返回NULL原因補(bǔ)丁過程中調(diào)用VirtualProtectEx修改了目標(biāo)進(jìn)程的.data節(jié)保護(hù)但未恢復(fù)。.data節(jié)包含堆管理器Heap Manager的關(guān)鍵結(jié)構(gòu)如HEAP_SEGMENT其內(nèi)存頁屬性被改為PAGE_READWRITE后堆分配器內(nèi)部校驗(yàn)失敗。解決所有VirtualProtectEx調(diào)用必須成對(duì)出現(xiàn)。本源碼MemoryProtector.cs中的ProtectAndRestore方法采用IDisposable模式確保異常安全using (var protector new MemoryProtector(hProcess, targetVa, size, MemoryProtection.PAGE_EXECUTE_READWRITE)) { // 在 using 塊內(nèi)執(zhí)行 WriteProcessMemory NativeMethods.WriteProcessMemory(...); } // 離開 using 時(shí)自動(dòng)調(diào)用 Dispose()恢復(fù)原始保護(hù)3.5 現(xiàn)象在 64 位系統(tǒng)上給 32 位程序WoW64打補(bǔ)丁ImageRvaToVa計(jì)算出的地址總是錯(cuò)誤原因WoW64 進(jìn)程的內(nèi)存布局與原生 64 位不同PE 頭中OptionalHeader.ImageBase是 32 位地址如0x400000但ReadProcessMemory讀取的是 64 位虛擬地址空間。直接將 RVA 加 ImageBase 得到的是 32 位地址需零擴(kuò)展為 64 位。解決ImageRvaToVa方法已內(nèi)置 WoW64 檢測。它先調(diào)用IsWow64Process若為真則將ImageBase強(qiáng)制轉(zhuǎn)換為UInt64后再與UInt64類型的Rva相加避免高位截?cái)?。切勿手?dòng)拼接(IntPtr)(base rva)。4. 補(bǔ)丁效果驗(yàn)證三步法確認(rèn)補(bǔ)丁是否真正生效寫完補(bǔ)丁不等于生效尤其在工控現(xiàn)場一個(gè)沒驗(yàn)證的補(bǔ)丁可能讓整條產(chǎn)線停機(jī)兩小時(shí)。我給自己定的鐵律是任何補(bǔ)丁上線前必須通過內(nèi)存快照比對(duì)、API 調(diào)用跟蹤、及原始功能回歸三重驗(yàn)證。這不是多此一舉而是用確定性對(duì)抗 Windows 加載器的不確定性。4.1 內(nèi)存快照比對(duì)用 Process Hacker 2 抓取補(bǔ)丁前后 IAT 對(duì)比這是最直觀、最不可繞過的一步。步驟如下啟動(dòng)目標(biāo)程序如legacy_tool.exe用 Process Hacker 2 附加到其進(jìn)程在左側(cè)進(jìn)程樹中右鍵 → “Properties” → “Memory” 選項(xiàng)卡 → 點(diǎn)擊 “Go to address” 輸入ImageBase可在 CFF Explorer 中查得如0x400000在內(nèi)存視圖中按CtrlG輸入ImageBase OptionalHeader.DataDirectory[1].VirtualAddress即 IAT RVA跳轉(zhuǎn)到 IAT 起始地址右鍵 → “Follow in Disassembler”觀察每個(gè)QWORD PTR指向的地址執(zhí)行你的補(bǔ)丁程序再次抓取同一地址的內(nèi)存快照對(duì)比每個(gè)QWORD是否已被替換為你指定的newProcAddress。關(guān)鍵細(xì)節(jié)Process Hacker 2 的內(nèi)存視圖默認(rèn)顯示十六進(jìn)制IAT 中每個(gè)函數(shù)地址占 8 字節(jié)x64。若看到00 00 00 00 00 00 00 00全零說明PatchImportTable未找到匹配項(xiàng)若看到FF FF FF FF FF FF FF FF全 F說明WriteProcessMemory失敗通常是權(quán)限不足。只有看到你指定的newProcAddress如00 00 00 01 23 45 67 89才代表 IAT 替換成功。4.2 API 調(diào)用跟蹤用 API Monitor v2 實(shí)時(shí)捕獲函數(shù)調(diào)用鏈IAT 替換成功不代表你的補(bǔ)丁函數(shù)會(huì)被調(diào)用??赡茉绦蚋緵]走到那條分支或被其他 Hook 攔截。此時(shí)需用 API Monitor v2 這類無侵入式跟蹤工具啟動(dòng) API Monitor → “File” → “Add Process” → 選擇你的legacy_tool.exe在左側(cè) API 列表中展開Kernel32.dll→ 勾選LoadLibraryA、GetProcAddress展開User32.dll→ 勾選MessageBoxA、CreateWindowExA點(diǎn)擊 “Start Monitoring”操作目標(biāo)程序觸發(fā)你想補(bǔ)丁的功能如點(diǎn)擊“關(guān)于”按鈕觀察右側(cè)日志窗口若看到MessageBoxA調(diào)用的Return Address指向你的stub地址如0x0000000123456789則證明調(diào)用鏈已進(jìn)入你的補(bǔ)丁邏輯若Return Address仍是原程序模塊地址如0x0000000000456789說明 IAT 替換未生效或函數(shù)被內(nèi)聯(lián)優(yōu)化掉了。4.3 原始功能回歸用自動(dòng)化腳本驗(yàn)證補(bǔ)丁后行為一致性補(bǔ)丁的終極目標(biāo)不是“能跑”而是“跑得和原來一模一樣只是多了你需要的功能”。我用 AutoIt 編寫了一個(gè)輕量級(jí)回歸腳本它會(huì)① 啟動(dòng)未打補(bǔ)丁的legacy_tool.exe模擬用戶點(diǎn)擊菜單、輸入文本、點(diǎn)擊按鈕② 截圖關(guān)鍵界面如主窗口、彈窗并保存為baseline_*.png③ 關(guān)閉程序啟動(dòng)打過補(bǔ)丁的同一版本legacy_tool.exe④ 執(zhí)行完全相同的 UI 操作序列⑤ 截圖并用ImageSharp計(jì)算與baseline的像素差異SSIM 算法閾值設(shè)為 0.995⑥ 若 SSIM 0.995或截圖區(qū)域出現(xiàn)意外彈窗/空白即判定補(bǔ)丁破壞了原始功能自動(dòng)中止部署。; AutoIt 回歸腳本片段簡化版 Run(legacy_tool.exe) WinWaitActive(Legacy Tool Main Window) Send(!f) ; AltF 打開文件菜單 Send(o) ; O 打開 WinWaitActive(Open Dialog) ControlSetText(Open Dialog, , Edit1, test.cfg) ControlClick(Open Dialog, , Button1) ; 點(diǎn)擊打開 ; ... 后續(xù)操作 Sleep(2000) _ScreenCapture_Capture(ScriptDir \test_after.png, 0, 0, DesktopWidth, DesktopHeight, False) ; 調(diào)用 C# 編寫的 SSIM 比較器 RunWait(ComSpec /c ScriptDir \ssim_compare.exe baseline_main.png test_after.png, , SW_HIDE)為什么不用人工點(diǎn)某次給一個(gè)西門子 PLC 配置工具打補(bǔ)丁人工測試時(shí)一切正常但產(chǎn)線批量部署后發(fā)現(xiàn)當(dāng)配置文件路徑含中文時(shí)補(bǔ)丁后的程序會(huì)卡在CreateFileW調(diào)用上。人工測試用的是英文路徑漏掉了這個(gè)邊界 case。自動(dòng)化腳本強(qiáng)制覆蓋了 200 種路徑組合含 Unicode、長路徑、特殊字符才揪出這個(gè)坑。5. 進(jìn)階技巧用符號(hào)服務(wù)器Symbol Server調(diào)試補(bǔ)丁 stub把玄學(xué)變成可斷點(diǎn)工程補(bǔ)丁最讓人頭疼的從來不是寫代碼而是調(diào)試。當(dāng)你把一段匯編 stub 注入到目標(biāo)進(jìn)程它像一顆定時(shí)炸彈——你不知道它在哪一行崩潰也不知道寄存器值為何突變。很多人因此放棄深入停留在“能用就行”的層面。但其實(shí)Windows 自帶的符號(hào)服務(wù)器Symbol Server配合 WinDbg Preview完全可以讓你像調(diào)試 C# 代碼一樣給 stub 設(shè)置斷點(diǎn)、查看寄存器、單步執(zhí)行。這招是我從某跨國工控公司導(dǎo)師那里學(xué)來的現(xiàn)在已成為團(tuán)隊(duì)標(biāo)配。5.1 準(zhǔn)備工作生成 PDB 符號(hào)文件并上傳到本地 Symbol Server本源碼的StubGenerator.cs支持生成帶調(diào)試信息的 stub。關(guān)鍵在于使用Microsoft.CodeAnalysis動(dòng)態(tài)編譯 C# 代碼為 x64 機(jī)器碼時(shí)傳入/debug:full參數(shù)編譯后用cv2pdb工具開源將生成的.obj文件轉(zhuǎn)換為.pdb將.pdb上傳到本地 Symbol Server如symstore.exe搭建的 HTTP 服務(wù)。// StubGenerator.cs 中的符號(hào)生成邏輯簡化 var compilation CSharpCompilation.Create( StubAssembly, syntaxTrees: new[] { syntaxTree }, references: references, options: new CSharpCompilationOptions( OutputKind.DynamicallyLinkedLibrary, optimizationLevel: OptimizationLevel.Release, allowUnsafe: true, generalDiagnosticOption: ReportDiagnostic.Warn) .WithMetadataImportOptions(MetadataImportOptions.All) .WithAssemblyIdentityComparer(DesktopAssemblyIdentityComparer.Default)) .WithOptions(new CSharpCompilationOptions( OutputKind.DynamicallyLinkedLibrary, optimizationLevel: OptimizationLevel.Release, allowUnsafe: true, generalDiagnosticOption: ReportDiagnostic.Warn) .WithMetadataImportOptions(MetadataImportOptions.All) .WithAssemblyIdentityComparer(DesktopAssemblyIdentityComparer.Default)); // 關(guān)鍵啟用調(diào)試信息生成 var emitResult compilation.Emit( peStream: peStream, pdbStream: pdbStream, // 傳入 MemoryStream 接收 PDB xmlDocumentationStream: null, win32Resources: null, manifestResources: null, options: new EmitOptions(debugInformationFormat: DebugInformationFormat.PortablePdb));注意cv2pdb需要從 GitHub 下載最新版v0.5舊版不支持 .NET 5 生成的 Portable PDB。生成的.pdb文件名必須與 stub 的模塊名一致如stub_x64.pdb否則 WinDbg 無法關(guān)聯(lián)。5.2 WinDbg Preview 調(diào)試實(shí)戰(zhàn)三步定位 stub 崩潰點(diǎn)假設(shè)你的 stub 在call rax后崩潰你想知道rax到底是什么值。操作如下啟動(dòng) WinDbg Preview → “File” → “Attach to Process” → 選擇已注入 stub 的legacy_tool.exe在命令窗口輸入.sympath srv*C:\symbols*https://msdl.microsoft.com/download/symbols;srv*C:\my_symbols*http://localhost:8080/symbols .reload /f第一行設(shè)置符號(hào)路徑先查微軟官方符號(hào)再查你的本地 Symbol Serverhttp://localhost:8080/symbols輸入lm查看已加載模塊找到你的 stub 模塊如00007ff600007ff6stub_x64輸入x stub_x64!g_stubEntry假設(shè)你在 C# 中導(dǎo)出了g_stubEntry全局函數(shù)獲取 stub 入口地址輸入bp 00007ff6xxxxxx入口地址→g 運(yùn)行 → 當(dāng)執(zhí)行到 stub 第一條指令時(shí)中斷此時(shí)可輸入r查看所有寄存器u rip L10反匯編當(dāng)前指令p單步執(zhí)行dd rax L1查看rax指向的內(nèi)存。血淚教訓(xùn)第一次用這招時(shí)我把g_stubEntry聲明為private static externWinDbg 找不到符號(hào)。后來改成public static extern并在DllImport中指定EntryPoint問題解決。符號(hào)導(dǎo)出必須顯式、公開、可尋址。5.3 補(bǔ)丁熱更新不重啟進(jìn)程動(dòng)態(tài)替換已注入的 stub 代碼現(xiàn)場調(diào)試時(shí)改一行 stub 代碼就得重啟整個(gè)目標(biāo)進(jìn)程效率極低。本源碼支持熱更新StubManager.cs維護(hù)一個(gè)Dictionarystring, StubInfo記錄每個(gè)已注入 stub 的BaseAddress、Size、OriginalProtection提供UpdateStub(string stubName, byte[] newCode)方法先VirtualProtectEx恢復(fù)可寫再WriteProcessMemory覆蓋新代碼最后恢復(fù)原始保護(hù)新代碼必須與原 stub 保持相同長度本源碼默認(rèn) 512 字節(jié)超出部分會(huì)被截?cái)唷?/ 熱更新示例修改 stub 中的 MessageBoxA 調(diào)用地址 var newStubBytes StubGenerator.GenerateX64Stub( originalOep: IntPtr.Zero, patchLogicAddress: newMessageBoxHandler, // 新的處理函數(shù)地址 restoreOepAddress: originalOep); // 恢復(fù)原始入口點(diǎn) stubManager.UpdateStub(main_stub, newStubBytes);為什么必須同長度因?yàn)?stub 后面可能緊鄰其他數(shù)據(jù)或代碼隨意拉伸會(huì)覆蓋相鄰內(nèi)存引發(fā)不可預(yù)測崩潰。我一般在StubGenerator中預(yù)留 200 字節(jié) padding確保未來擴(kuò)展有余量。從那以后我每次生成 stub都強(qiáng)制走一遍StubValidator.ValidateLength(newStubBytes, 512)哪怕多花 10 毫秒也比半夜被電話叫醒強(qiáng)。希望幫到你。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
三级网站超变态精品| 亚洲成人久久一区二区| 色欲蜜臀AV| 色噜噜狠狠色综无码久久合欧美| 亚洲男人的天堂V| 啊啊啊 在线| 国产精品久久| 日韩中文字幕二区| 动漫av中文| 成人五月天丁香激情综合| 亚欧无码在线| 猛猛干| 极品综合| 亚洲精品国产精品乱码不卡| 农村女一级毛卡片| 亚洲无码成人精品| 搡老女人老妇女老妇老熟女怎么读| 性九九九九九九| 大香蕉久| 亚洲激情欧美色图 | 亚洲欧美自拍偷拍| 青青草精品| 综合久久9| 手机在线视频国内精品| 男人的天堂在线 | 综合另类| 国产精品午夜成人福利| 一级毛片久久久久久久女人18| 蜜桃久久久久久| 国产一级高清免费观看| 精品国产99| 啪啪性爱免费视频| 亚州色阁| 亚洲男人天堂2019| 青青免费在线视频一区| 亚洲爱爱视频一区二区| 韩国一级做A片免费的| 亚洲熟女诱惑| 亚洲黄a三级三级三级看三级| 黄色香蕉视频网站一区| 欧美91网站| 狠狠色噜噜狠狠狠狠狠色综合久久 | 色五月婷婷在线| 国产在线综合网| 久草热制服丝袜在线观看 | 日本午夜久久电影| 中国熟女老妇仑乱一区二区三区| 长久操视频| 熟妇熟女视频一区二区三区| 国产精品 久久久精品一牛| 肉丝无码中文高清| 日韩啪啪啪视频| · —级AA伦aa坐爱午夜极速ⅴA一区天天噪天天噪天天噪 | 91久热| 97超碰久久| 一区二区亚州激情久婷婷欧美| 69精品少妇一区二区三区蜜桃| 国产女乱淫真高清免费视频| 91人人| 亚洲AV色图一区| 人人噜夜夜操| 四虎在线观看网站| 九九九九九九九九九五码| 久久男人的天堂国产| 国产精品一区午夜福利| 双插性欧美一二三区| 精品日韩| 亚洲 欧美 精品专区 极品| 91熟女少妇| 屌妞视频久久久久久久| 日本精品免费一区二区三区四区| www.婷婷| 久久111| 久久中出在线| 97在线观看免费| 懂色av中文字幕一区二区三区天美| 久久久工口| 亚洲午夜免费狠狠干| 欧美97免费| 色噜噜人妻丝袜a∨先锋影 | 美女91AV| 97最新在线播放视频| 丁香五月激情综合| 欧美性爱十八禁| 亚洲激情av| 午夜精品五区| 亚洲成人免费在线| 欧美综合97www| 美女毛片999| 国产传媒美日韩av| 偷拍导航视频网站| 欧美,亚洲,日韩,v,天堂,手机在线观看| 亚洲欧洲激情| 精品亚洲一区在线观看| 狠狠爱综合网| 91精品操美女| 太久视频| 青草香蕉网| 天堂涩涩| 黄色片一区二区三区四区五区| 久久人人爽人人爽人人片Ⅴ| 久偷拍欧美日韩三区| 久久鲁夜| 91精品人妻一品二品三品| 色激情综合网站| 亚洲福利中文字幕在线| 99综合自拍| 丝袜综合网| 亚洲一区二区三区在线激情| 欧美国产伊人久久久久| 成人青青草原伊人| 99抽插| 奇米狠999| 上床啊啊啊| 日本在线不卡123| 免费日韩黄片| 亚洲 在线| 男人的天堂欧美| www.91理论| 亚洲最大AV网| 久久青青草在线视频| 求求你操操我| 亚洲国产一区二区三区在线| 久久人人爽人人爽人人片Ⅴ| 国产丝袜一区二区三区| 麻豆 亚洲 97| 艳尻美人妻| 免费啪啪av| 久久久555| 欧美在线55555| 色999人与兽| A片 AV一级在线播放观看免费| 97精品久久| 亚春色色| 午夜福利合集| 久久久性少妇| 男生通女生屁股| 国产亚洲精品玖玖玖在线观看| 日天天九九天堂666| 丁香五月婷婷啪啪| 国产精品午夜高潮呻吟久久av| 欧美精品91| 18禁超污无遮挡无码免费网| 八人操人人摸人人看| 青青草日本中文字幕| yaouchengrenav| 操逼逼福利视频| 97爱b| 五月丁香六月综合缴清无码| 丝袜美腿校园春色| 精品人妻伦一二三区久久| 国产精品91ai| 国产情侣自拍在线播放| 男人的天堂com| 亚洲人精品久久久喷水| 天天激情干| 激情文学小说一区二区 | 乱伦色图网址是多少| 伊人国产视频| 日韩精品在线观看网站| 东京热av男人的天堂| 五月天婷婷在线看| 久久精品高清无码一区| 综合色图亚洲欧美| 性爱视频无打码在线观看| 我要色综合网站| 春色校园综合网| 牛黄色久午久| 大香蕉啪啪网| 夜色AV无码手机在线影院| 97免费视频网| 亚洲少妇色| 成人av福利在线观看| 97久久久久| 韩日精品福利视频一区不卡在线免| 亚洲精品亚洲人成人网| 国产精品99999| 5252色欧美在线男人的天堂| daxiangjiao你懂的| 丝袜无码a片| 99re69| 91丨九色丨国产丨人妻在线| 大香蕉2017| 99re在线视频国产| 久久侵犯人妻爽爽爽| 日本道久久综合色色| 欧美精品久久96人妻无码| 91丝袜视频在线观看| 成人A片男人的天堂| 欧美黑人与女人91~| 久草男人天堂| 日本精品人妻少妇一区二区| 920日本午夜免费| 熟妇视频一区二区三区在线观看| 大香蕉伊人亚洲| 五月丁香六月婷| 五月婷婷六月色| 大香蕉碰碰| 国产视频一区二区三区久久亚洲天堂| 欧美亚男人的天堂| 国产二区三区粉嫩在线| 色五月天AV| 精品制服美女中文一区二区三区| 精品人妻伦一区二区三区久久| 怡红院视频在线| WWW.加勒比人妻一区不卡.com| 成人欧美日超碰| 欧洲色综合| 日本高清视频xxxx| 在线天堂999| 久久久久9| 久久国产精品一级二级三级| 9999亚洲精品| 国产探花日韩援交| 荡小穴在线观看| 97碰碰日本乱偷人妻中文的| 欧美丝袜中文字幕07在线| 中文字幕人成乱码熟女香港| www.一本大99| 久久久久亚洲Av无码专区老牛影视| 国产精品999aaa| 麻豆啪啪啪视频| 亚洲综合码| 欧洲大香蕉| 欧综合网| 在线观看成人性爱免费小视频| 精品少妇一区二区三区在线视频| 嗯~啊~快点 死我视频免费看网站| 精品人成视频在线观看| 五月开心网| 日本不卡一区二区三区| 国产成人+综合亚洲+天堂| 干B| 国产精品久久久吖| 久久精品视-一级做a爰片性色毛片16美国-中国女与老外在线精品 | 久久99草| av强奸乱轮| 黑人与人妻| 国产小黄片在线免费观看| 国产精品乱码久久久、久久| 多乙久久久久久| 超碰97中文| 激情五月天丁香| 亚洲一区制服诱惑| 思思热在线| 丝袜 中出 制服 人妻 美腿 中文字幕| 干婷婷综合网| 韩国一级做a久久久久| 天天综合有色网| 日本一区二区中文字幕久久| 性色一线| 日韩免费a级毛片无码a∨| 人人手机欧洲亚洲国产人妻| 一线黄色免费性爱片| 啊啊啊轻点在线观看| 五月丁香六月激情| 欧美影院一区二区三区| 久艹99| 日韩精品高清资源在线| 国产精品一级片在线看| 精品国产乱码久久久久久久| 日韩午夜国产| 香一区二区三区| 色婷婷电影| 精品人妻1区| 日1区2区3区2020| 97操97色| 日韩精品99999| 99热色精品| 久96热在线观看视频| 欧美成人综合| 日日AAvv| 色约约一区=区三区| 大香蕉线| 淫荡网址| 国产一级高清免费观看| 久久精品成人| 国产精品97超碰| 亚洲日韩久久精品一区| 蜜乳av一区二区三区| 肉丝网站91| 久久久一区二区三区四曲免费听 | 免看60秒涩涩视频| 久久禁| 国语精品av| 91九九九小逼| 白 大 人妻 区 在线| 女同亚洲欧美一二三区久久电影| 亚洲超碰在线| 人妻久热在线| 加勒比色综合| 国产精品免费1区2区视频| J?P?NESEHD熟女熟妇伦| 无色无码| 午夜高清成人在线视频| www.人人cao| 天综合网| 国产污视频麻豆传媒一区二区| 久久鲁夜| 韩国三级一线观看久| 国产AV激情无码久久无码| 日本一本一区二区三区四区五区欧美日韩中文字幕 | 天天躁日日躁成人字幕aⅴ| 怡红院一区二区熟女人妻| 天天色综合图片| 操曰本熟女| 东北女人性交| 欧美人人曰人人操人人射射| 多乙久久久久久| 午夜精品久久久久久久男人的天堂 | 色呦呦呦在线观看视频| 大香蕉99热| 青青草国产欧美非洲黑人| 欧美经典一区二区三区| 91久久堂| 污色区网站| 99精品无码| 欧美草草| 高跟丝袜AV专区国产| 久久深夜无码| 日韩乱中文| 国产精品电影推荐| 很很干很很操| 欧美综合色| 日韩国产成人自拍视频| 青草园大香蕉| 日本国产成人亚洲精品无码| 欧美色图另类图片| 91在线免费观看处女| 久久中文字幕一区不卡| 天天操女人| 久久精品超碰| 大鸡吧尹人在线| 少妇综合网| 目产99999久久999| 人妻少妇色综合| 国产精品视屏| 久久久久久中文| 婷婷五月色| 大学生美女口爆| 91丝袜在线观看视频在线观看| 国产后入| 久热精品在线| 少妇同性| 欧美日韩性爱无码| 啪一啪免费视频| 九九热这里只有在线精品视 伊人草 成人菠萝蜜视频在线观看 | 欧美少妇性乱| 欧亚韩国999| 91狠狠综合久久| 欧洲乱码一区二区| 熟女人妻一区二区三区| 一二三啪啪专区| 91P0RNY大屁股人妻| 亚洲中文字幕97久久精品少妇| 人妻少妇无码| 好湿好紧好爽 视频| 黄片qw| 亚州国产成人精品女人久久| 中文字幕高清20页视频| 99re公开精品免费视频| 欧美性暴力| 亚洲国产剧情少妇激情| 911粉嫩人妻| 91肉片| 操婷婷逼| 免费的黄片有限公司| 色九九九九| 猛交交| 精品久久99| 欧美人妻一区| 国产精品青草综合久久| 九九探花视频在线观看| 国产在线强奸视频| 美女视频尤物网在线看| 欧美岛国精品在线观看| 久久久久久精| 日本Suv精品一区二区| 99久在线精品99re8a| 91爱综合| 强上我不卡卡| 97资源欧美| 国产999精品久久久久久| 99久re热视频精品98| 精品人妻美妇91job| 久草网站免费在线观看| WWW黄片COM| 国产精品久久久久久久久AV大片| 亚洲熟女av日韩熟女| 亚洲第一成人影院色播| 国产精品久久妻无码网站| 亚洲春色欧美激情自拍| 亚洲色 国产 欧美 日韩| 久99| 中文字幕诱惑制服人妻丝袜美丝袜美 | 久草网站免费在线观看| 综合操逼| 嗯啊免费视频| 欧美激情黑人| 蜜乳成人AV| 国产粉嫩出水在线播放| 九九成人| 国产精品午夜福利视频| 天美传媒婬乱在| 欧美性爱免费短视频| WWW黄片COM| 日本熟人妻中文字幕在线|...久久国产精品-国产精品_日本一区二区三区中文字幕 | 国产日本熟女顶级一区二区三区视频| 91伊人影视综合| 亚洲国产丝袜在线观看| 情趣丝袜无码操逼视频| 亚洲天堂电影精品一区| 天天综合网亚洲综合网| 伊人五月天激情| 人妻少妇三级| 粉嫩av平台| 国产67194| 麻豆成人av| 伊人一级免费黄片| 日韩AV中文字幕电影| 99re6在线视频播放免费精品| 操婢日韩| 78久久久| 超碰免费人妻人人| 一区二区 韩日AV| 免费视频一二三区| 欧亚乱色熟一区二区三四区| 超碰色综合| 亚洲色图在线视频| 91五十路| 青青草伊人久久| 色视频蜜乳| 精品久久久中文字幕不| 成人久久久| 熟女性视频| 午夜九九九九九九| 91爱综合| 日日操丁香五月天| 亚洲丝袜在线观看| 日产国产精品中文久久婷婷| 最新国内自拍av免费| 亚洲五区熟女| 中文字幕 国产 精品| 98超碰欧美| 五月天激情网图片| 麻豆三极片| 97天天插| 人妻少妇色综合| 亚洲国产欧美中文永久| 国产高清亚洲日韩一区| 欧美色爱综合| 亚洲色9| 黄色一级视| 人人妻人人爽| 清清一区二区三区四区不卡视频| 无码免费在线观看黄色片| 精品久久九| 中国女人内射6XXXXX| 亚洲色人阁| 另类图片亚洲加勒比另类图片亚洲加勒比另类图片亚洲加勒比 | 97干在线| 1769一区二区| 26uuu偷拍亚洲欧洲综合| 视频二区熟女人妻| 色九九九综合| 蜜桃久久久久久久久久久久| 成人综合视频久久| 九九精品美女高溯喷水 | 欧美 亚洲 综合 制服 另类| AV老汉| 区二区亚洲婷| 伊人网在线观看| 精爱久久| 91美女視頻| 亚洲综合骚逼| 精品欧美日韩在线观看| 国产怡红院| 日韩免费人妻色情网站| AV大香蕉| 五月天婷婷小说| 黄色小视频日本txt| 91在线视频国产网站| 欧美姓爱综合网| 日韩欧美性爱电影在线观看| 人人弄人人摸| 天堂а√在线最新版在线| 13小男生GAY自慰脱裤子| 色图综合网| 在线日韩日本亚洲国产| 国产精品久久久久久久电影渣男| 牛牛操视频逼| 无码日韩网站| 爱欲AV| 91狠狠综合久久| 成·人免费午夜在线观看| 亚洲av无码国产精品字幕| 国产家庭乱伦性爱视频| 欧美少妇性爱网站| 91一起操| 日韩少妇无吗| 欧美日韩中文字幕人妻| 18禁中文字幕| 禁片 高清 在线观看视频网站| 岛国不卡超碰护士AV在线播放| 成人精品久久| 91精品女厕偷拍视频| 色九九综合| 人妻插插人妻人| 欧美少妇高潮久久91| 大香蕉日韩欧美| www.99色| 少妇高潮特黄A片| 色情综合网| 极品少妇久久久久| 人妻丰满熟妇一区二区三| 色性欧美| 九九九九热| 色狠狠色| 久久人妻熟女一区二区| 92午夜免费福利视频| 成人一级二级| 日韩精品人妻一| 免费人人搞97| 亚洲无992tv| 色香阁在线| 欧美性爱一区二区三区| 国产suv精品一区二区四| 亚洲天堂少妇| 久久久久13| 97超碰欧美中文字幕| 伊人影院中文字幕| 人人妻人人爱人人玩| 激情五月天婷婷| 亚洲伊人青青草| 少妇高潮对白在线观看| 国产精品69久久久久孕妇欧美| 五月婷丁香| 视频国产成人精品日本亚洲18| 精品无码久久久久久国产浪潮| 亚洲少妇在线影音| 亚洲av无码成人精品国产| 国内一级精品| 啊啊啊啊操死我了| 久久老子无码午夜伦不卡| 18精品一二区| 97视频620| 操人91| 男女一进一出视频久久| 国产25页| 99超碰色| 狠狠综合网| 国产久久免费精品视频| 中国韩国明星一极片一区乱码毛片人妻熟女一区二区三区 | 91亚洲欧美激情| 美女丝袜激情小说| 狠狠久久亚洲欧美专区| 中国亚洲呦女专区| 夜色AV无码手机在线影院| 91老熟妇| 九久9精品| 99久在线精品99re8热视频在线| 99热免费| 免费久久精品麻豆一区二区av| 国产精品久久久久久久久久梁医生| 亚洲av总站| 日本不卡码黄色| 亚洲精品 大香蕉| 在线可观看的黄色网址| 国产久久久久久久久一区二区 | AV天堂男人的天堂| 躁躁日曰躁2020| 婷婷国产精品九区| 国产女人高潮视频| 97九色人妻| 国产CHASE男男GAYGA 毛多色婷婷| 亚洲 自拍偷拍 欧美| 色汉综合| 一级二级三级黑人无码| 97超碰人人操人人操| 青娱乐二区免费| 狼狼色丁香久久婷婷综合五月| 激情天天视频| 围产精品一区二区三区视频播放| 色久桃花影院在线观看| 二男一女成人A片| 在线国产福利网址导航| 国产人妻天天干精品| 亚洲Av无码成人精品国产| 欧美视频一区二区在线| www..com操老师| 久久久久亚洲三级电影| 亚洲AV无码国产精品久久久久 | 久久久久网站-538在线视频-欧美永久乱码 | 99精品在线观看| 亚洲 欧美 手机在线观看| 日本日皮视频逼| 国产 丝袜 欧美中文 另类| 丁香久久| 亚洲中文人妻色| 91路www| 九九九九一级| 青青草白白色| 男人的天堂日韩| 亚洲小说视频| 大香网伊人久久综合| 99国产精品久久久久久久成人热 | 激情干在线| 色色色色网站| 亚洲男人的天堂网| 蜜乳AV.COM| 有码免费观看| 精品九区| oumeisetu综合| 夜夜高潮夜夜爽夜夜爱爱一区| 免费无码国产精品v片在线观看| 超碰人人妻| 午夜无码熟妇丰满人妻| 欧美日韩另类在线播放| 99爱精品| 99操逼| 久久99网站| 欧美色图自拍| 99亚洲国产精品色一区二区三区| 99无码| 精精品人妻一区二区三区| 色爱三区| 欧美性五月| 高清在线偷拍自拍视频| 狠狠操狠狠燥| 亚洲AV无码久久久国产精品| 亚洲熟妇白浆无码AV| 一个色导综合| 久久久一区二区三区麻豆| 91九色在线| 久久综合97| 亚洲色鬼| 美国一区二区三区视频| 亚洲色图第四色| 大香蕉人妻| 人妻少妇久久中文字幕一区二区 麻豆| 久久香蕉网| 男人天堂网址| 曰韩少妇无码| 97香蕉人人乳| 996热| 欧美十八禁视频| 天天内射| 五月花婷婷| 51久久夜色精品国产麻豆| 青草伊人网| 亚州精人品大香蕉| 黄片aaaaa一区| 国产剧情在线| 黄色不卡视频| 97在线精品观看视频| 欧美 亚洲 第一页 | 疯操AV| 久久亚洲人妻| 九九热免费国产视频婷婷伊人| 亚洲欧美不卡线| 日韩无码人妻中字久久三区四区| 色九九九综合| 色女综合| 天天碰操中国年青熟妇| 麻豆国产尤物AV| 国产 丝袜 欧美中文 另类| 精品999999| 精品人妻一区二区蜜桃视频 | 亚州色站 日韩电影| 人妻天天夜夜爽一区二区| 国产又爽又黄| 五月丁香激情综合| 偷拍欧美综合| 五月天婷婷在线看| 黑人白女精品一区| 性色生活片久久毛片婬片免费放女人一级毛片 | 日韩性色b| 夜色五月天| 天天干一区二区| 中国黑人三级片网站上区| 久久精品国产99国产精品亚洲| 天操天操夜操夜月操月年年操| 黑人中出21连凳花野真衣| 96AV精品| 99re99视频在线免费观看| 欧美一区二区三区成人性生活| 日韩9999| 亚洲区 欧美区| 欧美一区二区三区不卡高清视频| 日本高清免费一本视频在线观看| 久久久久亚洲三级电影| 91社操逼| 开心五月天激情网| 国内黄色精品| 午夜精品久久999热蜜桃介男人用| 国内97干免费看| 日1区2区3区2020| 四虎国产精品永久在线囯在线| 欧美激情 一区| 亚洲欧洲中文日韩女优乱码| 男人天堂2019亚洲| 国产免费一区| 婷婷超| 郑州宾馆老熟女露脸啪啪| 尹人大香蕉视频在线| 91久久精品国产| 精品少妇99| 强奸a片网| 亚洲宗合网| 欧美日韩午夜精品一区二区三区 | 国产久久视频| 91爱| oumeisetu综合| 亚洲天堂男| 成人八戒网站| 99RE在线视频精品,这里只有精品| 熟人人妻少妇精品久久| 91天堂色男人的天堂| 天天澡天天爽日日av| 黑人狂躁日本妞一区二区三区| 五月天色图| 91美女视频在线观看| 五月丁香综合| 99热| 熟妇人妻一区二区| 97色伦97色伦国产欧美| 97精品国产97久久久久久免费| 啊啊啊 在线| www.99视频| 欧美性爱一区二区三区| 五月天成人综合| 香蕉免费一区二区三区不读| 亚洲操操操| 情趣丝袜无码操逼视频| 蜜屁Av| 青娱乐久久艹| 国产路线专区| 国产精品天美传媒| 91色色网站| 欧美亚洲涩涩| 99精品网| 久久av一级av少妇av高潮| 亚洲人妻日日日| 躁躁日曰躁2020| 日韩成人大片在线观看| 麻豆成人AV| 嗯嗯啊在线视频| 欧美一级特黄淫片在线观看| 国产精品高朝久久久久久久| 色色色色色色色色色色色色色色综合| 色黄污美女啪啪啪免费网站| 日韩色图 一区二区| 91色碰| 入口操逼网站| 翔田千里A片一区二区| 香蕉大久久久| 亚洲天堂区| 亚洲AV无码国产成人| 无码操逼视频一下| 思思视频免费看网站| 极品出轨视频网站| 九九九九免费高| 熟女中出视频| 性色avv| 丰满欧美少妇| 天天射,天天操,天天爽-国内精品一区二区三区-成人AV | 熟女少妇一区二区三区| 亚洲性感丝袜诱惑在线观看| 天堂精品小草| 色欧洲97| 中文字幕午夜精品久久久| 色九九综合AV| 丰满人妻-区二区三区| 99少妇内射| 澳门色噜噜色噜噜色噜噜色噜噜色噜噜| 伊人精品视频| 日本九九久久99| 使劲用力艹少妇视频一区二区| 蜜臀在线免费观看在线免费观看| 97一区二区蜜臀| www.一本大99| 国产欧美后入| 色拍偷亚洲| 超碰久久综合| 午夜男人的天堂| 久久国产成人精品国产成人亚洲| 亚洲天堂久久久久久粉红视频| 麻豆精品一区二区三区四区免费观看| 日本色日夜干| 日本色色视频网站| 在线性黄高清免费视频| 亚洲 图片 综合91| 自拍视频大全亚洲专媒视频/一区二区三区 | 国产精品96久久久久久| 成人性爱av| 久久黄色性爱视频| 亚洲情色电影网| 后入福利视频| 成人一级性爱| 五月香婷婷| 91美女视频直播| 91性情| 18禁看网站一区| 国产精品免费视频人成| www.夜夜| 97操B| 午夜精品久久久久久久99蜜桃一| www老逼91| 深爱伊人影院| 日本操大逼| 天天天肏屄欧美| 精品性爱| 丝袜制服字幕在线| 亚洲综合网91| 男人的天堂2018东京热啪啪啪| 日韩青久久| 亚洲欧洲精品视频发布| 国精综合一二三区影视| 91人妻在线视频| 免费强奸av| 天堂亚洲精品久久老牛| 成年人性爱日韩| 亚洲成人色情五月天丁香花| 精品久久久av无码免费| 亚洲欧美大香蕉| 丝袜 中出 制服 人妻 美腿 中文字幕| 国产亚洲女v在线观看| 最新精品久久蜜桃 | 91亚洲欧美综合高清在线| 久久久久久久强迫| 日本最新1区2区3区| 人人操人人uiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii | 中文字幕一二三| 91视频国品一二三区| 蜜臀一区二区三区在线| 婷婷五月天丁香| 人妻另类 专区 欧美 制服| 天天天肏屄欧美| 中文字幕欧美日韩三级| 欧美在线综合| 亚洲激情网一二三四区| 370p日韩欧美亚洲精品| 小电影欧美91| 亚洲熟女国产综合另类| 欧美日韩国产另类综合| 一二三卡欧美日韩人妻免费精品| 国产极品美女高潮无套在线观看 | 午夜福利av电影在线| 99999久久精| 欧美日韩大陆黑人少妇99| 国产精品老师| 欧美日韩性爱无码| 人妻少妇久久中文字幕一区二区 麻豆 | 亚洲无码视频免费在线观看网址!| 日韩熟女视频二区| 五月天加勒比啪| 夜夜操av亚洲一区二区| 国产福利精品最新在线| 国产精品99精品视频网站| 久久国产精品视频| 黄呦呦在线| 美女诱惑爱爱| 污啪啪啪视频| 婷婷五月天小说| 一区二区激情国产熟女| 久久 国产精品 一区| 国产日韩欧美中文在线播放 | 91综合色| 亚洲日韩在线a不卡99精品| 一摸二插三插| 中国韩国明星一极片一区乱码毛片人妻熟女一区二区三区 | 中文字幕亚洲在线一区 | 五月丁香激情啪啪| 国产suv精品一区二区四区999| 激情五月天丁香社区| 乱伦Av网| 日本黄 R色 成 人网站| 久久精品色欧美aⅴ一区二区| 国产精品麻豆视频网站| 国产69精品久久久久99尤物| 91色色网站| 粉嫩av久久一区二区三区| 久久透逼视频| 国产乱伦亚洲| 国产 日韩 欧美高清| 欧美日本国产日韩激情视频| 一区二区三区免费岛国片| 亚洲国产精品成人无码久久久| 超97在线精品视频| www久久99| 五月婷婷综合网| 久久鲁夜| 啊啊啊水好多| 内射小黄片| 久久激情亚洲精品无码?V | 簧片免费看视频| 素人一区二区三区日韩| 精品日韩中文在线| 色噜噜综合在线| 91精品国| 乱伦av麻豆| 一区 欧美 日韩 麻豆| 国产91丝袜 在线播放| 一牛影视成人片免费| 91综合色噜噜| 青青草久久| 久久精品28| 久久久久久久亚洲Av无码| 717影院理论午夜伦八戒| 色在线综合| 日本久久精品| 日本99一区二区| 伊人国产视频| 高潮毛片无遮挡高清免费| 欧美成不卡网| 啪啪啪精品| 亚洲综合校园春色| 激情啪啪拍91| 欧美在线色图| 男人天堂综合| 97国产超碰| 波多野结衣AV无码一区| 国产福利av精彩对白| 目产99999久久999| 久久久激情| 91亚洲人| 自拍偷拍2025在线观看| 久久精品老司| 97天天操| 色色操| 亚洲性综合| 久久九精品| 蜜臀99久久精品久久久久| 亚洲欧美日韩中文播放| 免费操逼视频下载| 麻豆天美91| 91超碰碰在线| 欧美日韩岛国大片在线观看| 97香蕉网| 97亚洲综合在线| 成人在线视频一区| 91大胆欧美| 九色婷婷| 日韩欧美国产高清视频| 欧洲综合无码| 91美女视频在线观看| 日本不卡二三区| 色色色999| 视频分类 国内精品| 婷婷午夜成人色中色| 欧美综合色| 97鸡把在线视频| 欧美综合色图网| 亚洲蜜臀精品视频久久| 九九免费影片| 亚洲在线综合| 偷偷人人精品女女久久| 亚洲好色人妻| 四虎免费在线播放| 国产午夜福利视频在线| 青青草视频在线观看一区二区| 少妇超碰在线| 九九久久久九九| 亚洲丝袜色图| 东北老女人的激情视频| 久久久久久久久久久久久久久久9| 在线天堂999| 欧色性第一页| 1.igao73.com 加入收藏 免费专区 国产精品 中文字幕 日韩精品 欧美精品 精彩 | 97在线视频免费| 性性久久| 一区二区三区国产精产| 精品.99999| 激情图片亚洲色图| 天天操天天7| 亚洲小说视频| 色黄污美女啪啪啪免费网站| 国产AV色黄看到爽| 91精品黄在线观看| 亚洲色吧网| 大香网伊人久久综合网eew| 免费97视频| 日天天九九天堂666| 日韩 国产 欧美自拍| 美女熟妇色| 久久人妻办公室视频| 中文字幕大片三级狠狠干| 精品网站99999| 超碰午夜| 成人av影院在线观看| 中文字幕在线日亚州9| 久久九精品| 亚洲熟女一区二区| 久久av一级av少妇av高潮| 午夜精品久久久久久久男人的天堂| 国产精品 亚洲情色| 久久有码视频| 成人八戒网站| 天天插夜夜爽| 百度百度日本操逼| 激情五月综合| 舔人妻中文免费视频| 亚洲成人av电影在线| 加勒比AV网| 狼人久草| 国产丝袜高跟美女av免费观看| 日韩人妻免费精品| 热热色青青草| 亚洲限制级| 伊人网av| 免费黄色A片| 偷拍99| 国产视频一区二区在线| 91香蕉视频在线观看免费| 日韩十八禁| 老色鬼成人精品视频下载大在线观看| 骚货| 亚州国产精品乱| 国产亚洲日本精品在线| 99在线精品视频| 国产AV人人 夜夜人人澡| 色官网色综合| 99在线精品视频| 9999久久久久| 蜜色网色哟哟| 操逼片中文| 超碰97人妻| 99蜜月精品久久| 射丝袜高跟鞋99| 欧美网站免费| 国产欧美日本亚洲精品| 亚洲情色 无码专区| 草草影院在线视频| 亚洲无码久久久久久久| 亚洲黑人在线| 久久女同性恋一二区| 久草国产在线视频| 久久久久久少妇| 中文字幕在线观看AV| 久热婷婷| 国产亚洲精品玖玖玖在线观看| 日韩国产十八禁| 中文97国产| 三级三级三级a级全黄三| 日韩人妻精品| 国产精品无码av在线 | 国产亚洲精品农村妇女| 校园春色美腿丝袜| 成人五月香网在线| 亚洲 无码 偷拍| 2017超碰| 无码自拍SM| 九九九九免费视频| 成人欧美一区二区三区黑人一| 最新日本中文字幕| 九九人妻| 色婷五月天| 啊啊啊想要| 九九九精品美女| 色天天野狼综合社区| ,国产乱人伦精品一区二区三区| 美女午夜福利免费视频| 欧美懂色综合网| 97操综合| www.91久久| 強姦亂倫a| 蜜臀AV午夜精品久| 日韩99神马视频播放| 成人97人人超碰人人| 夫妻AV网站| 日本人体九九九九九九| 亚洲熟女av日韩熟女| 人人操人人色网| 蜜桃狠狠色伊人亚洲综合 | 成人麻豆av电影网站| 草草草视频| 国产视频小说| 囯产精品一区二区三区线|亚洲人成无码网WWW动漫|国产精品免费一级... | 日韩欧美亚欧在线视频| 婷婷15月天青娱乐| 嗯嗯嗯不要不要免费视频| 日本片日本片祼观看网站在线看中文版网页在线看 | 黄色成品网站| 插欧洲美女欧美精品| 91c色| 日本一区二区不卡精品| 国产欧美日本亚洲精品 | 9 9精品一区二区三区| 高清无码一区二区三区| 操逼逼中文字幕| 99热这里只有精品99| 夜夜夜久久| 久久久三区二区一区| 9Ⅰ超碰| 国产一级作爱毛片| 麻豆60秒| 2017天天操天天日| 日本天天干天天操一区| 奇米狠999| 国产精品色哟哟| 日本成人在线不卡一区二区三区 | 一本色道综合久久欧美| 国产91av在线播放| 日韩另类色图| 国产精品久久久久久久久久久久久久| 国产高清精品一区二区三区毛片| 狠狠狠狠狠| 亚洲97精品| 日韩av乱伦| 少妇的嫩逼图片| 欧美在线干| 亚洲精品九九九九九九| 男人a天堂手机在线版| 上床不卡网站| 人妻一区二区三区视频| 精品国产污一区二区三区| 亚洲av夫妻操穴网| 97超碰中文在线| 日本精品无码三级网站| 神马影院午夜福利久久久| 999精品国产高清一区二区| 色九月综合| 91精品国产91久久福利| 久久久com| 天天噜| 日韩国语字幕| 久久久亚洲| 四季AV综合网址| 园内精品自拍视频在线播放| 久久国产精品熟女人妻| 99热在线观看| 欧美姓爱综合网| 97超碰天天爱天天爱| 操逼逼一区视频| 情侣开房子拍 日韩无码 女的很漂亮| 99re综合伊人| 99热啪啪| 高清无码久操视频| 人妻天天爽夜夜爽爽| 激情抓乳插进去啪啪啪日韩 | 啊啊啊啊嗯嗯嗯用力好爽 | 九九九九精品| 亚洲激情色片| 久久111| 一色网男人的天堂| 又黄又爽在线观看视频| 操一区| 探花精品视频| 欧美在线干| 日本久久网| 久久久久成人蜜桃精品| 美女国产一区二区久久| 久久久久久久国产a∨| 草莓精品视频| 操碰91| 五月丁香综合| 亚洲欧美九九| 东北老女人的激情视频| 成人精品一区二区三区| 91欧美美女日韩国产婷婷|