欧美成人午夜精品久久久,国产?V天堂一区二区三区,欧美精品va在线观看,亚洲一区二区三区免费在线观看,av无码精品一区二区久久,欧美性爱视频不卡一区三区,欧美乱人伦视频在线观看,国产一级牲交高潮

ARTICLE DETAIL

資訊詳情

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

計(jì)算機(jī)系統(tǒng)基礎(chǔ)實(shí)驗(yàn):位操作、Binary Bombs與緩沖區(qū)溢出

計(jì)算機(jī)系統(tǒng)基礎(chǔ)實(shí)驗(yàn):位操作、Binary Bombs與緩沖區(qū)溢出 簡(jiǎn)介這份華中科技大學(xué)計(jì)算機(jī)系統(tǒng)基礎(chǔ)實(shí)驗(yàn)報(bào)告面向?qū)W習(xí)計(jì)算機(jī)系統(tǒng)導(dǎo)論、數(shù)據(jù)表示與底層編程的高校學(xué)生及自學(xué)者圍繞整數(shù)與浮點(diǎn)數(shù)編碼、位操作、補(bǔ)碼運(yùn)算、Binary Bombs拆解和緩沖區(qū)溢出攻擊等實(shí)驗(yàn)展開(kāi)可用于課程實(shí)驗(yàn)復(fù)盤(pán)、期末復(fù)習(xí)與調(diào)試思路梳理。壓縮包共1個(gè)docx文檔約1.6MB按實(shí)驗(yàn)報(bào)告體例收錄實(shí)驗(yàn)概述、實(shí)驗(yàn)內(nèi)容、設(shè)計(jì)源碼與總結(jié)便于對(duì)照C語(yǔ)言函數(shù)實(shí)現(xiàn)和Linux環(huán)境下的操作要點(diǎn)。目前已有1388人學(xué)習(xí)下載在同類課程資料中具有一定參考價(jià)值。文檔具體呈現(xiàn)lsbZero、byteNot、byteXor、logicalAnd、rotateLeft等位運(yùn)算題目的實(shí)現(xiàn)思路也記錄Binary Bombs逐階段分析與緩沖區(qū)溢出檢測(cè)的實(shí)踐過(guò)程能幫助讀者理解計(jì)算機(jī)內(nèi)部如何存儲(chǔ)和處理信息并積累排錯(cuò)與問(wèn)題拆解經(jīng)驗(yàn)適合需要補(bǔ)齊底層實(shí)驗(yàn)短板、對(duì)照源碼查漏補(bǔ)缺的讀者。1. 從一份實(shí)驗(yàn)報(bào)告說(shuō)起三個(gè)實(shí)驗(yàn)正好卡在機(jī)器級(jí)表示的三道坎上翻這份計(jì)算機(jī)系統(tǒng)基礎(chǔ)實(shí)驗(yàn)報(bào)告最先吸引我的不是目錄而是它把最容易「原理看得懂、代碼寫(xiě)不出」的三塊內(nèi)容串成了一條線數(shù)據(jù)表示、Binary Bombs、緩沖區(qū)溢出。報(bào)告里既有bits.c里 13 個(gè)函數(shù)的完整源碼和算子預(yù)算也有炸彈六個(gè)階段的 gdb 跟蹤記錄還有棧幀偏移的實(shí)測(cè)過(guò)程。它適合兩類人正在做同類實(shí)驗(yàn)、被 Max ops 卡住的同學(xué)以及想重新過(guò)一遍機(jī)器級(jí)表示、又不想從教材第一章啃起的開(kāi)發(fā)者。下面按「怎么跑起來(lái)、參數(shù)怎么改、哪里會(huì)出問(wèn)題」的順序拆。2. bits.c 位操作13 個(gè)函數(shù)的算子預(yù)算怎么分配才不超標(biāo)數(shù)據(jù)表示這一實(shí)驗(yàn)的難點(diǎn)不在算法思想而在約束。13 個(gè)函數(shù)分成位操作、補(bǔ)碼運(yùn)算、浮點(diǎn)數(shù)三類每類都有Max ops上限和Rating難度分超過(guò)上限直接判錯(cuò)哪怕結(jié)果對(duì)。我在下面先把約束講清再逐個(gè)拆寫(xiě)法最后給出驗(yàn)證流程。2.1 三條硬約束合法算子、Max ops、常量范圍dlc是這套實(shí)驗(yàn)的規(guī)則檢查器它不運(yùn)行你的代碼只做靜態(tài)掃描。它檢查的東西比大多數(shù)人以為的多算子白名單。每個(gè)函數(shù)頭注釋里都寫(xiě)了Legal ops比如lsbZero只允許! ~ ^ | 寫(xiě)了-、*、/、%就報(bào)錯(cuò)。算子計(jì)數(shù)。Max ops統(tǒng)計(jì)的是所有出現(xiàn)的運(yùn)算符實(shí)例一個(gè)記 1 個(gè)移位記 1 個(gè)。注意是「實(shí)例」x y z算 2 個(gè)。常量范圍。整數(shù)常量一般限制在 0255所以0xff合法0xffffffff不合法得用~0或(131)31造全 1 掩碼??刂屏飨拗啤N徊僮骱脱a(bǔ)碼類函數(shù)禁止if、while、for浮點(diǎn)兩題反而允許因?yàn)樗鼈兪莡nsigned函數(shù)。下表把 13 個(gè)函數(shù)的預(yù)算和核心思路對(duì)齊寫(xiě)代碼前先看這張表比上來(lái)就寫(xiě)更省時(shí)間函數(shù)類別RatingMax ops核心思路lsbZero位操作15右移丟掉最低位再左移補(bǔ) 0byteNot位操作26造出第 n 字節(jié)為 0xff 的掩碼異或byteXor位操作220右移取出雙字第 n 字節(jié)異或后邏輯化logicalAnd位操作320!!兩次把任意非零壓成 1再相與logicalOr位操作320同上改成相或rotateLeft位操作325造低 n 位全 1 的掩碼接住右移搬過(guò)來(lái)的位parityCheck位操作420折疊異或把 32 位壓到 1 位mul2OK補(bǔ)碼220比較符號(hào)位與次高位是否一致mult3div2補(bǔ)碼212乘 3 后處理向零取整的舍入subOK補(bǔ)碼320同號(hào)相減不溢出異號(hào)看結(jié)果符號(hào)absVal補(bǔ)碼410用算術(shù)右移得到全 0 或全 1 掩碼float_abs浮點(diǎn)210清符號(hào)位NaN 例外返回原值float_f2i浮點(diǎn)430拆分階碼按 127/150 分界處理提示先跑./dlc -e bits.c看每個(gè)函數(shù)實(shí)際用了幾個(gè)算子比肉眼數(shù)準(zhǔn)。-e會(huì)打印每個(gè)函數(shù)的算子計(jì)數(shù)超標(biāo)的函數(shù)會(huì)單獨(dú)標(biāo)注。2.2 位操作與補(bǔ)碼從 lsbZero 到 absVal 的寫(xiě)法拆解先說(shuō)最簡(jiǎn)單的lsbZero。把最低有效位清 0直覺(jué)寫(xiě)法是x ~1但~1是0xfffffffe常量超標(biāo)于是改用移位右移一位再左移一位。這里有個(gè)容易忽略的細(xì)節(jié)int的右移是算術(shù)右移負(fù)數(shù)右移會(huì)補(bǔ)符號(hào)位但緊接著左移一位后最低位仍然是 0符號(hào)位也回來(lái)了所以正負(fù)都不受影響。byteNot是這套代碼里比較有代表性的寫(xiě)法用 0xff 左移 8n 位造掩碼/* * byteNot - 把雙字 x 的第 n 個(gè)字節(jié)按位取反 * n 取 0(最低字節(jié)) 到 3(最高字節(jié)) * 例: byteNot(0x12345678, 1) 0x1234A978 */ int byteNot(int x, int n) { int y 0xff; /* 單字節(jié)全 1 掩碼 */ n n 3; /* 字節(jié)序號(hào)轉(zhuǎn)位偏移1 字節(jié) 8 位 */ y y n; /* 掩碼平移到目標(biāo)字節(jié)位置 */ x x ^ y; /* 異或 1 即取反其它字節(jié)異或 0 不變 */ return x; }邏輯說(shuō)明異或的性質(zhì)是「與 1 異或取反與 0 異或保持」所以只要造出一個(gè)只有目標(biāo)字節(jié)為全 1 的掩碼一次異或就能完成局部取反。參數(shù)說(shuō)明n是字節(jié)序號(hào)必須先左移 3 位換算成位偏移這是所有字節(jié)級(jí)操作的固定套路0xff是老式 C 寫(xiě)法等價(jià)于255寫(xiě)成十進(jìn)制同樣合法只是可讀性差一點(diǎn)。byteXor是同一套路的反向用法先右移把目標(biāo)字節(jié)挪到最低位再和0xff相與切干凈最后異或取邏輯值。這里的關(guān)鍵點(diǎn)是 0xff必須在異或之前因?yàn)樗阈g(shù)右移會(huì)把符號(hào)位鋪滿高位不切干凈的話兩個(gè)數(shù)的高位污染會(huì)直接算進(jìn)結(jié)果里。最后用!!把任意非零值壓成 1這個(gè)技巧在整套代碼里反復(fù)出現(xiàn)是繞開(kāi)if的標(biāo)準(zhǔn)手段。rotateLeft是位操作里最容易寫(xiě)錯(cuò)的一題。循環(huán)左移的本質(zhì)是「左移 n 位丟掉的高位要補(bǔ)到低位去」所以右移32-n位把丟掉的位搬回來(lái)再用掩碼只保留低 n 位/* * rotateLeft - 把 x 循環(huán)左移 n 位, 0 n 31 * 例: rotateLeft(0x87654321, 4) 0x76543218 */ int rotateLeft(int x, int n) { int z; /* (131)31 得到全 1, 左移 n 位后低 n 位為 0, 取反得低 n 位全 1 */ z ~(((1 31) 31) n); /* 32 (~n 1) 即 32 - n, 用補(bǔ)碼加法避開(kāi)減法運(yùn)算符 */ x ((x (32 (~n 1))) z) (x n); return x; }邏輯說(shuō)明x n負(fù)責(zé)把主體左移空出來(lái)的低 n 位是 0x (32-n)把溢出的高 n 位搬到最低位但高位會(huì)帶上符號(hào)位的臟數(shù)據(jù)所以必須 z只留低 n 位兩段沒(méi)有重疊位用加法或按位或結(jié)果一樣。參數(shù)說(shuō)明32 (~n 1)就是32 - n因?yàn)閪n 1是n的相反數(shù)補(bǔ)碼這么寫(xiě)純粹是為了避開(kāi)減法運(yùn)算符算子數(shù)也只多花 2 個(gè)。掩碼z的構(gòu)造用了(131)31這是造全 1 常量的通用寫(xiě)法比硬寫(xiě)0xffffffff安全。parityCheck判斷 1 的個(gè)數(shù)奇偶思路是折疊把高 16 位和低 16 位異或問(wèn)題規(guī)模減半重復(fù) 5 次后所有位的奇偶性匯總到最低位附近。這套代碼取巧在最后一步用y 31直接取符號(hào)位而不是繼續(xù) 1省了一個(gè)算子。需要注意的是這個(gè)寫(xiě)法依賴算術(shù)右移對(duì)負(fù)數(shù)的行為在 x86-64 的 gcc 默認(rèn)設(shè)置下沒(méi)問(wèn)題換成-funsigned-char之類的極端配置要重新驗(yàn)證。補(bǔ)碼類里absVal是最能體現(xiàn)「掩碼思維」的一題/* * absVal - 求 x 的絕對(duì)值, -TMax x TMax * 例: absVal(-1) 1 */ int absVal(int x) { int y x 31; /* x 為負(fù)則 y 全 1, 否則全 0 */ x (y (~x 1)) ((~y) x); /* 負(fù)則取 ~x1, 否則保持 x */ return x; }邏輯說(shuō)明x 31是一個(gè)不花錢(qián)的分支負(fù)數(shù)得全 1、非負(fù)得全 0y (~x1)在負(fù)數(shù)時(shí)生效~y x在非負(fù)時(shí)生效兩段互斥所以相加就是選擇。參數(shù)說(shuō)明~x 1是求相反數(shù)的標(biāo)準(zhǔn)寫(xiě)法等價(jià)于-x省一個(gè)算子。mult3div2和subOK是同類思路前者要額外處理「負(fù)數(shù)右移向負(fù)無(wú)窮取整」和「C 語(yǔ)言除法向零取整」的差異后者靠「同號(hào)相減必不溢出」這條性質(zhì)判斷。2.3 浮點(diǎn)兩題float_abs 與 float_f2i 的 127/150 分界浮點(diǎn)題允許用if和while所以重點(diǎn)從「省算子」變成「把 IEEE 754 的位布局記準(zhǔn)」。單精度格式是 1 位符號(hào)、8 位階碼、23 位尾數(shù)階碼偏置值是 127尾數(shù)隱含一個(gè)前導(dǎo) 1這三點(diǎn)決定了float_f2i的全部邏輯。原文里float_f2i用 150 做分界這個(gè) 150 不是隨便來(lái)的真實(shí)數(shù)值等于尾數(shù)乘以2^(階碼-127-23)把隱含位移進(jìn)去之后指數(shù)就變成階碼 - 150所以 150 就是「小數(shù)點(diǎn)落在尾數(shù)最低位」的臨界階碼。/* * float_f2i - 把單精度浮點(diǎn)位模式轉(zhuǎn)成 int * 超出范圍(含 NaN/無(wú)窮)統(tǒng)一返回 0x80000000 */ int float_f2i(unsigned uf) { unsigned num 0x80000000; /* 補(bǔ)上隱含的前導(dǎo) 1, 得到 24 位有效數(shù)字 */ int x (uf 0x007fffff) ^ 0x00800000; int order (uf 0x7f800000) 23; /* 取 8 位階碼 */ if (order 158) return num; /* 指數(shù)過(guò)大, 必溢出 */ if (order 127) return 0; /* 絕對(duì)值小于 1, 截?cái)酁?0 */ else if (((uf 31) 1) 1) { /* 負(fù)數(shù)分支 */ if (order 150) return ~(x (order - 150)) 1; else return ~(x (150 - order)) 1; } else { /* 正數(shù)分支 */ if (order 150) return x (order - 150); else return x (150 - order); } }邏輯說(shuō)明(uf 0x007fffff) ^ 0x00800000是在尾數(shù)最高位補(bǔ)上隱含的 1異或和按位或結(jié)果相同寫(xiě)成異或只是沿用了原文風(fēng)格。階碼大于 150 說(shuō)明小數(shù)點(diǎn)要往右移尾數(shù)左移小于 150 說(shuō)明要往左移尾數(shù)右移右移本身實(shí)現(xiàn)的就是截?cái)嗾脤?duì)上 C 語(yǔ)言整數(shù)轉(zhuǎn)換向零取整的語(yǔ)義。負(fù)數(shù)分支多一步取相反數(shù)因?yàn)檠a(bǔ)碼負(fù)數(shù)右移是向下取整與向零取整差 1。參數(shù)說(shuō)明order 158是溢出上界order 127直接歸零這兩個(gè)邊界值對(duì)應(yīng)2^31和1.0改動(dòng)任何一個(gè)都會(huì)讓邊界用例掛掉。2.4 驗(yàn)證流程dlc 查規(guī)則、btest 查結(jié)果、driver 查邊界寫(xiě)完不是結(jié)束這套實(shí)驗(yàn)的驗(yàn)證鏈有三層缺一層就可能出現(xiàn)「自己測(cè)全對(duì)、交上去全錯(cuò)」# 1. 規(guī)則檢查, -e 順便打印每個(gè)函數(shù)的算子數(shù) ./dlc -e bits.c # 2. 全量測(cè)試, 逐函數(shù)跑標(biāo)準(zhǔn)用例 make btest ./btest # 3. 單函數(shù)調(diào)試, -f 指定函數(shù)名 ./btest -f float_f2i # 4. 指定輸入驗(yàn)證邊界值, 后面跟的是函數(shù)參數(shù) ./btest -f float_f2i -1 0x4b000000命令說(shuō)明./dlc -e bits.c只看靜態(tài)規(guī)則不保證邏輯對(duì)./btest才跑用例輸出里每個(gè)函數(shù)一行錯(cuò)的會(huì)打印期望值和實(shí)際值-1表示給函數(shù)傳一個(gè)參數(shù)十六進(jìn)制參數(shù)直接寫(xiě)0x前綴。我一般習(xí)慣先把dlc跑通再跑btest因?yàn)樗阕映瑯?biāo)時(shí)btest的輸出會(huì)混著規(guī)則錯(cuò)誤排查起來(lái)更亂。原文里實(shí)驗(yàn)結(jié)果是 13 個(gè)函數(shù)全部通過(guò)說(shuō)明這套寫(xiě)法在標(biāo)準(zhǔn)用例下是站得住的。3. Binary Bombs 拆彈用 gdb 斷點(diǎn)和 objdump 反匯編逐階段推進(jìn)第二個(gè)實(shí)驗(yàn)是拆二進(jìn)制炸彈一個(gè) Linux 可執(zhí)行程序六個(gè)階段各要一個(gè)正確輸入輸錯(cuò)就打印BOOM!!!并退出。這一實(shí)驗(yàn)真正考的是「讀匯編 用調(diào)試器驗(yàn)證假設(shè)」不是靠猜。下面按準(zhǔn)備、推進(jìn)、隱藏階段三塊講每個(gè)階段給出判斷依據(jù)而不是直接給答案因?yàn)椴煌◤椀拇鸢副緛?lái)就不一樣。3.1 拆彈前的三件準(zhǔn)備反匯編、斷點(diǎn)、輸入文件第一件事是把二進(jìn)制攤開(kāi)成可讀的匯編同時(shí)準(zhǔn)備好輸入文件避免每次運(yùn)行都手敲# 反匯編到文件, 后面全程以這個(gè)文件為主戰(zhàn)場(chǎng) objdump -d bomb asm.txt # 用文本工具定位各階段入口 grep -n phase_ asm.txt # 準(zhǔn)備輸入文件, 一行一個(gè)階段的答案 printf The future will be better tomorrow.\n0 1 1 2 3 5\n input.txt # gdb 加載, 先在所有爆炸點(diǎn)和各階段入口下斷點(diǎn) gdb -q bombgdb 里最值的幾條命令建議直接抄進(jìn)筆記命令用途使用時(shí)機(jī)break explode_bomb在爆炸函數(shù)下斷點(diǎn)每個(gè)階段都留著防止程序直接退出break phase_1在階段入口下斷點(diǎn)定位當(dāng)前階段的參數(shù)準(zhǔn)備run input.txt帶輸入文件運(yùn)行避免反復(fù)手輸x/s 0x804a204按字符串查看內(nèi)存階段 1 直接讀比較串x/6dw $esp按 6 個(gè)十進(jìn)制字查看棧階段 2 看讀入的數(shù)字info registers查寄存器快照判斷當(dāng)前走到哪個(gè)分支si/ni單步進(jìn)入 / 單步跳過(guò)跟 call 進(jìn)子函數(shù)時(shí)用si第二件事是理解斷點(diǎn)策略。原文的做法是在每個(gè)階段的開(kāi)始代碼前和explode_bomb前都下斷點(diǎn)這個(gè)習(xí)慣很值前者讓你在輸入被解析之前就停下能看清棧上原始數(shù)據(jù)后者保證炸彈不會(huì)真的炸掉進(jìn)程停在爆炸前你可以回頭檢查寄存器。少了后面這個(gè)斷點(diǎn)一次輸錯(cuò)就得重跑調(diào)試節(jié)奏全亂。第三件事是先把main讀完。main里能看出每個(gè)階段讀幾行、調(diào)用順序、以及隱藏階段的觸發(fā)條件。原文階段 1 的分析就是靠main里read_line的返回值落點(diǎn)反推出%eax里存的是用戶輸入再去和0x804a204比較。這個(gè)「從調(diào)用者看被調(diào)用者」的順序比一上來(lái)就硬讀phase_1快得多。3.2 六個(gè)階段的推進(jìn)順序與判斷依據(jù)六個(gè)階段的難度是遞增的但真正的分水嶺在階段 4前面三個(gè)階段靠靜態(tài)讀匯編就能拿下后面三個(gè)必須動(dòng)態(tài)跟。階段 1 是字符串比較匯編里是一個(gè)call strings_not_equal兩個(gè)參數(shù)分別來(lái)自%eax用戶輸入和一個(gè)立即數(shù)地址。判斷依據(jù)很直接看movl $0x804a204, 0x4(%esp)這類指令立即數(shù)就是被比較串的地址x/s一讀就出來(lái)。原文讀出的結(jié)果是The future will be better tomorrow.這是一個(gè)完整句子長(zhǎng)度超過(guò)一般猜測(cè)范圍說(shuō)明這題就是考「會(huì)不會(huì)用調(diào)試器讀內(nèi)存」。階段 2 是循環(huán)。先用read_six_numbers這個(gè)函數(shù)名判斷輸入是 6 個(gè)整數(shù)再看循環(huán)體里的比較邏輯。原文的分析路徑是先確認(rèn)前兩個(gè)數(shù)必須是 0 和 1再?gòu)难h(huán)體的加法推出「后一個(gè)數(shù)是前兩個(gè)數(shù)之和」得到0 1 1 2 3 5。這里的關(guān)鍵判斷是循環(huán)邊界cmp后面跟的立即數(shù)決定循環(huán)幾輪jle和jl的差別決定最后一輪算不算讀錯(cuò)一個(gè)跳轉(zhuǎn)就往錯(cuò)誤方向推。階段 3 是條件分支加跳轉(zhuǎn)表。這題最容易卡的地方是jmp *0x804a260(,%eax,4)這種間接跳轉(zhuǎn)它按第一個(gè)輸入的值去跳轉(zhuǎn)表里取地址。判斷依據(jù)是先用cmpl $0x7, 0x28(%esp)和ja explode_bomb確認(rèn)第一個(gè)輸入必須小于 7再假設(shè)它是 0順著跳轉(zhuǎn)表落到某個(gè)分支讀該分支里的mov $0x76, %eax和cmpl $0x104, 0x2c(%esp)得到字符v和數(shù)字 260。原文用 0 作為第一個(gè)輸入是合理的試探策略跳轉(zhuǎn)表里 0 號(hào)分支通常是第一條地址最好算。階段 4 開(kāi)始涉及遞歸調(diào)用和棧。這題的輸入是兩個(gè)整數(shù)其中一個(gè)會(huì)作為遞歸函數(shù)的參數(shù)。判斷依據(jù)分兩步先用x/s查格式串確認(rèn)輸入類型和個(gè)數(shù)再跟call進(jìn)遞歸函數(shù)看遞歸出口條件。遞歸題的坑在于出口條件往往依賴參數(shù)的取值范圍輸入稍大就會(huì)棧溢出或者走到爆炸分支所以要用 gdb 在遞歸函數(shù)入口反復(fù)continue看參數(shù)怎么收斂。階段 5 是指針和字符串。這題的輸入通常是一個(gè)字符串程序會(huì)拿它的每個(gè)字符去做下標(biāo)從一個(gè)字符表里取值。判斷依據(jù)是先找到字符表的基地址再看下標(biāo)運(yùn)算的掩碼常見(jiàn)是 0xf反推出每個(gè)位置需要什么字符。原文沒(méi)展開(kāi)但這類題的通用手法是在循環(huán)體里下斷點(diǎn)每次迭代打印當(dāng)前下標(biāo)和取到的值一輪下來(lái)就能把映射關(guān)系摸清。階段 6 是鏈表加結(jié)構(gòu)體。這題最麻煩因?yàn)橐瑫r(shí)滿足「鏈表按某個(gè)字段排序」和「節(jié)點(diǎn)順序符合輸入」兩個(gè)條件。判斷依據(jù)是先找到鏈表頭節(jié)點(diǎn)地址用x/3dw按三字一組把整條鏈打出來(lái)看清每個(gè)節(jié)點(diǎn)的值和序號(hào)再按排序要求反推輸入順序。原文目錄里把這一階段列為「鏈表/指針/結(jié)構(gòu)」說(shuō)明它同時(shí)考數(shù)據(jù)結(jié)構(gòu)和指針運(yùn)算。3.3 隱藏階段字符串拼接觸發(fā)與二次分析隱藏階段不是每個(gè)炸彈都有觸發(fā)條件寫(xiě)在第 4 階段的解之后在正確解后面再附加一段特定字符串程序檢測(cè)到就把隱藏階段拉起來(lái)。原文明確寫(xiě)了這個(gè)機(jī)制所以拆完階段 4 千萬(wàn)別急著往下走先看phase_4尾部有沒(méi)有strings_not_equal之類的比較有就說(shuō)明有隱藏入口。分析方法和前面一樣但要注意隱藏階段的入口函數(shù)不在main的調(diào)用序列里grep phase_未必能搜到。我的做法是先objdump全文搜explode_bomb的調(diào)用點(diǎn)把所有引用爆炸函數(shù)的位置列出來(lái)再逐個(gè)對(duì)照看哪個(gè)不在已拆階段里那個(gè)就是隱藏階段。這一步用grep -n explode_bomb asm.txt一行命令就能定位比到處翻匯編快。需要說(shuō)明的是拆彈的具體答案和二進(jìn)制密切相關(guān)不同環(huán)境編譯出來(lái)的炸彈地址和常量都不同所以這份報(bào)告的價(jià)值在分析路徑而不在答案本身。照抄答案最容易出問(wèn)題因?yàn)榈刂芬蛔內(nèi)P(pán)失效把「怎么找地址、怎么設(shè)斷點(diǎn)、怎么讀內(nèi)存」這套方法學(xué)會(huì)換一個(gè)炸彈照樣能拆。4. 棧幀與返回地址緩沖區(qū)溢出實(shí)驗(yàn)的偏移計(jì)算和邊界控制第三個(gè)實(shí)驗(yàn)是緩沖區(qū)溢出目錄里有但原文沒(méi)展開(kāi)內(nèi)容。這一實(shí)驗(yàn)的教學(xué)價(jià)值在于把「函數(shù)調(diào)用時(shí)棧上發(fā)生了什么」從概念變成可測(cè)量的數(shù)字buf的起始地址在哪、返回地址在哪個(gè)偏移、覆蓋多少字節(jié)才能改到它。下面的做法都在本地教學(xué)二進(jìn)制上完成編譯時(shí)關(guān)閉棧保護(hù)目的是觀察棧布局不是面向真實(shí)目標(biāo)的手法。4.1 棧幀布局從 buf 到返回地址差多少字節(jié)x86 下典型的函數(shù)棧幀布局可以用一張表描述清楚這張表是所有偏移計(jì)算的依據(jù)相對(duì)位置內(nèi)容與溢出的關(guān)系%ebp 8起第一個(gè)參數(shù)、第二個(gè)參數(shù)一般不動(dòng)%ebp 4返回地址覆蓋目標(biāo)決定 ret 跳去哪%ebp調(diào)用者保存的舊%ebp覆蓋它會(huì)污染上一層棧幀%ebp - 4起局部變量、保存的寄存器中間可能有 canary%ebp - Nbuf起始地址讀入的起點(diǎn)N 由sub指令決定判斷 N 的方法在反匯編里函數(shù)開(kāi)頭的sub $0xNN, %esp就是給局部變量騰的空間buf一般從%esp或者%ebp - 偏移開(kāi)始具體看lea指令把哪個(gè)地址傳給了讀入函數(shù)。原文里讀入函數(shù)的第一個(gè)參數(shù)就是buf地址所以只要在調(diào)用讀入函數(shù)之前停一下print $eax或者p/x $esp就能拿到實(shí)測(cè)值不用純靠讀匯編推。這里有個(gè)容易踩的坑編譯器可能插入 canary、可能對(duì)齊棧到 16 字節(jié)、可能把buf放在%ebp下方任意位置所以「緩沖區(qū)大小 32 字節(jié)返回地址就在偏移 324」這種算法經(jīng)常差幾個(gè)字節(jié)。血淚經(jīng)驗(yàn)是永遠(yuǎn)用實(shí)測(cè)偏移不要用結(jié)構(gòu)體大小加 4 硬算。4.2 用 gdb 量偏移三步定位 buf 起點(diǎn)和返回地址量偏移的流程固定三步每步都用一個(gè) gdb 命令落地# 1. 在讀入函數(shù)調(diào)用處下斷點(diǎn), 通常是 gets / read / fgets gdb -q ./vuln (gdb) break *0x080484a0 # 地址取自 objdump 里 call 讀入函數(shù)那條指令 (gdb) run payload.txt # 2. 斷下后拿 buf 起始地址, 兩種等價(jià)寫(xiě)法 (gdb) p/x $eax # 讀入函數(shù)第一個(gè)參數(shù)常放在 eax 或棧上 (gdb) p/x $esp # 或者直接看當(dāng)前棧頂 # 3. 拿返回地址位置, 用 info frame 一次看全 (gdb) info frame (gdb) p/x $ebp命令說(shuō)明break *地址是硬編碼地址下斷點(diǎn)比break 函數(shù)名更準(zhǔn)因?yàn)橥瘮?shù)可能有多個(gè)info frame會(huì)直接打印saved eip的地址這個(gè)值減去buf起始地址就是精確偏移比數(shù)匯編靠譜得多。p/x用十六進(jìn)制打印避免地址以十進(jìn)制顯示時(shí)看錯(cuò)位。我一般會(huì)把這三個(gè)值抄在紙上buf起始、%ebp、saved eip后面構(gòu)造 payload 全用這三個(gè)數(shù)。偏移拿到之后返回地址本身的值也要確認(rèn)因?yàn)樗鼪Q定了覆蓋后跳去哪。教學(xué)二進(jìn)制通常會(huì)提供一個(gè)touch之類的函數(shù)反匯編里搜一下就能拿到入口地址這個(gè)地址就是 payload 末尾要填的 4 字節(jié)。4.3 構(gòu)造 payload小端序、對(duì)齊與不可打印字節(jié)有了偏移和目標(biāo)地址payload 就是「填充字節(jié) 目標(biāo)地址」的拼接。用 Python 寫(xiě)比手搓十六進(jìn)制安全因?yàn)樾《诵蚝烷L(zhǎng)度對(duì)齊都交給庫(kù)處理import struct, sys offset 44 # 實(shí)測(cè)偏移: buf 起點(diǎn)到 saved eip 的字節(jié)數(shù) target 0x08048456 # 目標(biāo)函數(shù)入口, 取自 objdump # 小端序打包 4 字節(jié)地址, I 表示小端無(wú)符號(hào) 32 位 payload bA * offset struct.pack(I, target) # 寫(xiě)到文件, 注意用二進(jìn)制模式, 避免換行符被改寫(xiě) with open(payload.txt, wb) as f: f.write(payload b\n) sys.stdout.write(payload length %d\n % len(payload))邏輯說(shuō)明bA * offset先精確填滿buf到返回地址之間的所有字節(jié)多一個(gè)少一個(gè)都會(huì)讓返回地址錯(cuò)位struct.pack(I, target)把地址按小端序?qū)懗?4 字節(jié)x86 是小端機(jī)器寫(xiě)成大端就跳到錯(cuò)誤地址。參數(shù)說(shuō)明offset必須用上一步實(shí)測(cè)值target必須是目標(biāo)函數(shù)的第一條指令地址取函數(shù)中間某條指令也能跳但可能缺棧幀準(zhǔn)備導(dǎo)致崩潰。文件末尾補(bǔ)一個(gè)換行是有意的很多讀入函數(shù)靠換行結(jié)束輸入不補(bǔ)會(huì)一直等。注意如果目標(biāo)地址或偏移里含0x0a換行、0x20空格這類字節(jié)某些讀入函數(shù)會(huì)提前截?cái)?。遇到這種情況要么換目標(biāo)地址跳到目標(biāo)函數(shù)的下一條指令要么換用二進(jìn)制安全的讀入方式。實(shí)驗(yàn)做完之后值得順手看一眼防護(hù)機(jī)制的效果同樣的代碼加-fstack-protector-strong重新編譯再用同樣的 payload 跑一遍程序會(huì)在__stack_chk_fail處中止。這一步比單純「溢出成功」更有價(jià)值因?yàn)樗选笧槭裁船F(xiàn)代編譯器默認(rèn)開(kāi)棧保護(hù)」從一句話變成了一個(gè)可復(fù)現(xiàn)的現(xiàn)象。再開(kāi)-z noexecstack和系統(tǒng)級(jí)地址隨機(jī)化同一條 payload 會(huì)連續(xù)失敗這幾個(gè)開(kāi)關(guān)就是緩沖區(qū)溢出從「能打」變成「難打」的全部原因。5. 避坑記錄從 dlc 報(bào)錯(cuò)到炸彈爆炸的五個(gè)現(xiàn)場(chǎng)這三個(gè)實(shí)驗(yàn)的錯(cuò)誤信息都不算友好dlc只報(bào)行號(hào)和規(guī)則名炸彈只打印BOOM!!!溢出實(shí)驗(yàn)直接段錯(cuò)誤。下面五條是我和身邊人反復(fù)踩過(guò)的按「現(xiàn)象 → 原因 → 解決」寫(xiě)遇到了直接對(duì)號(hào)入座。5.1 dlc 報(bào)「bad expression」但代碼看著沒(méi)錯(cuò)現(xiàn)象./dlc bits.c報(bào)某行 bad expression人眼檢查那行只有一個(gè)x 0xff。原因常量超范圍0xff是 255 沒(méi)問(wèn)題但很多人順手寫(xiě)0xffffff00這種掩碼超過(guò) 255 就被判非法。解決用移位和取反造大常量~0xff或(131)31 8既合法又不增加太多算子。5.2 btest 全過(guò)但提交后算子超標(biāo)現(xiàn)象本地./btest13 個(gè)函數(shù)全綠助教腳本判 0 分。原因只跑了功能測(cè)試沒(méi)跑規(guī)則測(cè)試btest不檢查Max ops算子數(shù)和合法算子只有dlc管。解決把./dlc -e bits.c加進(jìn)提交前的固定流程輸出里每個(gè)函數(shù)的算子數(shù)都要低于上限留 12 個(gè)余量防止不同版本dlc計(jì)數(shù)差異。5.3 炸彈階段 2 輸入對(duì)了還是炸現(xiàn)象按斐波那契推出來(lái)的 6 個(gè)數(shù)字輸進(jìn)去程序仍然BOOM!!!。原因讀入函數(shù)對(duì)分隔符敏感有的是空格分隔有的是逗號(hào)還有的要求一行內(nèi)恰好 6 個(gè)數(shù)字不能多不能少。解決先用x/s查read_six_numbers里的格式串確認(rèn)分隔符再在read_six_numbers返回處下斷點(diǎn)x/6dw看棧上實(shí)際讀到了幾個(gè)數(shù)讀少了就是格式不對(duì)。5.4 gdb 斷點(diǎn)打在 phase 函數(shù)上但程序先炸了現(xiàn)象break phase_3之后run沒(méi)停到斷點(diǎn)直接輸出爆炸信息退出。原因前面某個(gè)階段的輸入是錯(cuò)的程序在階段 2 就炸了根本走不到階段 3也可能是斷點(diǎn)地址被 PIE 重定位改變地址對(duì)不上。解決先break explode_bomb兜底再逐個(gè)階段用continue推進(jìn)看停在哪一步同時(shí)用info files確認(rèn)二進(jìn)制是不是 PIE是的話改用break phase_3這種符號(hào)斷點(diǎn)而不是硬編碼地址。5.5 溢出 payload 長(zhǎng)度對(duì)了但跳轉(zhuǎn)地址錯(cuò)位現(xiàn)象偏移算得和info frame一致payload 長(zhǎng)度也對(duì)但ret之后跳到非法地址。原因目標(biāo)地址里含有0x0a被gets之類的行讀入函數(shù)當(dāng)成換行提前截?cái)鄬?shí)際寫(xiě)入的字節(jié)數(shù)比預(yù)期少。解決先x/8bx看棧上實(shí)際寫(xiě)入的字節(jié)確認(rèn)有沒(méi)有被截?cái)嘣贀Q目標(biāo)地址跳到目標(biāo)函數(shù)里不含0x0a的那條指令上一般往下挪一兩條就能繞開(kāi)。順帶養(yǎng)成習(xí)慣payload 生成腳本里加一行打印長(zhǎng)度和十六進(jìn)制內(nèi)容出問(wèn)題時(shí)省一半排查時(shí)間。6. 進(jìn)階把三個(gè)實(shí)驗(yàn)串成一條自動(dòng)驗(yàn)證鏈單次跑通和穩(wěn)定復(fù)現(xiàn)是兩件事。我在帶人做這套實(shí)驗(yàn)時(shí)發(fā)現(xiàn)絕大多數(shù)「昨天還對(duì)今天就不對(duì)」的情況都是因?yàn)轵?yàn)證步驟靠手敲中間漏了一步。把三個(gè)實(shí)驗(yàn)的驗(yàn)證串成一條鏈每次改完代碼跑一遍比事后對(duì)著報(bào)錯(cuò)猜要省時(shí)間得多。具體做法是寫(xiě)一個(gè)入口腳本把規(guī)則檢查、功能測(cè)試、反匯編、payload 生成四件事固定下來(lái)#!/bin/bash # 一次跑完三個(gè)實(shí)驗(yàn)的驗(yàn)證步驟, 任一步失敗就退出 set -e echo [1/4] bits.c 規(guī)則檢查 ./dlc -e bits.c echo [2/4] bits.c 功能測(cè)試 make -s btest ./btest echo [3/4] 炸彈反匯編刷新 objdump -d bomb asm.txt grep -c explode_bomb asm.txt echo [4/4] 溢出 payload 重建 python3 gen_payload.py ls -l payload.txt腳本說(shuō)明set -e讓任一步失敗就停避免帶著錯(cuò)誤往下跑make -s靜默編譯輸出干凈grep -c順手統(tǒng)計(jì)爆炸函數(shù)引用數(shù)個(gè)數(shù)變了往往意味著二進(jìn)制換過(guò)之前的斷點(diǎn)地址全部作廢最后一步重建 payload 并打印文件大小長(zhǎng)度異常一眼能看出來(lái)。這個(gè)腳本不長(zhǎng)但它把「我改了什么、哪一步開(kāi)始不對(duì)」變成了可定位的信息。另外一個(gè)值得堅(jiān)持的習(xí)慣是每次實(shí)驗(yàn)開(kāi)始前先把當(dāng)前二進(jìn)制的關(guān)鍵地址抄進(jìn)一個(gè)文本文件包括六個(gè)階段的入口、explode_bomb、字符串表基址、buf偏移、目標(biāo)函數(shù)地址。這份清單看起來(lái)笨但換環(huán)境重編一次二進(jìn)制之后所有硬編碼地址都會(huì)變有清單就能逐條對(duì)照更新沒(méi)有就只能從頭再找一遍。從那以后我每次動(dòng)這類底層實(shí)驗(yàn)都強(qiáng)制先跑一遍dlc -e和info frame把算子數(shù)和棧偏移這兩個(gè)數(shù)字記下來(lái)再寫(xiě)代碼翻車次數(shù)明顯少了。希望幫到你。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
99热精品在线观看| 综合伊人久久| 丁香五月激情视频| 久久性操| 99日韩| 婷婷五月天最新综合你懂的 | 射满了还射免费在线观看 -午夜版全集-新视觉影院 | 五月婷婷自拍| 91viP在线看| 97人妻碰碰中文无码久热丝袜| 激情啪啪五月| 婷婷五月综合丁香久久| 亚洲爆乳无码精品AAA片蜜桃| 色播六月| 七七色色综合| 婷婷丁香五月综合久久| 99网| 五月丁香婷婷综合在线| 色色9 9| 九九精品综合| 天天射夜夜骑| 五月情丁香色| 久久人人九九| 激情久久月| 能看的av| 天天干夜夜想| 丁香婷婷色九月| 天天噪夜夜爽| 日日噜噜夜夜狠狠久久丁香五月| 五月天婷亚洲天综合网综合| 91要啪| 久草热8精品视频在线观看 | 春色激情| 黄网在线免费| 97久久婷婷色| 99婷婷综合| 日日夜夜天天| 激情伊人五月天| 99精品福利视频| 26UUU欧美激情一区二区| 色色综合网络| 激情九九综合网| 丁香五月网络网络| 亚洲色激婷| 99狠狠| 五月婷婷深深爱| 亚洲综合另类| 成人av中文字幕| 男人的天堂五月丁香| 美女天天久久| 久色视频首页| 五月婷深深爱激情网| 五月色在线| 男人的天堂五月丁香| www.韩日视频| 色九九综合热99| 激情98色婷婷五| 婷婷久久五月天| 超碰人人在线| 99啪啪| 久久香蕉网| 丁香色成人| 人人色婷婷| 开心婷婷五月中文字幕组| 久久久婷| 成人国产网| 先锋影音av色五月天资源站| 五月丁小婷婷激情四射| 美女91一起草| 另类图片天天影视在线观看| 99re热| 99久久久| 男人的天堂99| 色色五月天网站| 六月激情网| 亚洲色碰| av大片在线| 五月天操逼激情| 婷婷中合| 久久综合影院| 亚洲无aV在线中文字幕 | 狠狠干五月天| Caoub青青超碰| 九九爱激情| 超碰资源在线| 少妇高潮呻吟A片免费看软件| 99免费在线| 99久热这里只有精品| WWW,激情五月天,COM| 夜夜骑操AV| 欧美亚洲婷婷五月| 性生活视频98791| 久久三级视频| 99色在线观看视频者| 婷婷五月天av| 婷婷五月六| www.五月瑟| 五月婷婷真爱激情网| 艹天天射| 欧美内射AAAAAAXXXXX| 色五月激情| 婷婷瑟瑟五月天| 五月婷婷激情性爱| 激情五月丁香五月| 强奸幻女毛片| 精品九九久久| 色五月综合网| 五月婷天天搞视频| 桃色成人网| 91 久热| 婷婷趴趴| 欧美久人人| 婷婷色五月开心五月| 婷婷色情网| 狠狠婷婷日韩| 777米奇影视第四色| 免费观看日韩成人av| 天天久综合网永久入口17v| 婷婷五月天成人在线视频| 91久操| 激情丁香五月婷婷| 爱久久小说下载网| 天堂婷婷五月在线| 色婷婷a v| 色婷婷成人做爰A片免费看网站| 五月丁香欧美综合| 一起肏在线视频| 天天舔夜夜操www com| www,26uuu,c0m,色情| 日本狠狠干| 久热免费视频| 9久精品| 久久HD| 综合精品啪啪| 艾小青av| 亚洲欧洲中文日韩久久AV乱码 | 99热6精品| 婷婷日韩| 99热日韩| 新激情婷婷| 精品色情一区二区三区四区| 丁香五月成人| 亚洲啪啪啪啪| 香蕉婷婷| 操操操操操操婷婷五月天| 五月色色激情网| 久久在线视频免费观看| 激情综合网激情五月网| 综合天堂AV久久久久久久| WWW.99热| 五月婷婷久久综合| 【乱子伦】黄色| 色五月琪琪| 大香AV| 91人人爽人人操| 西瓜美女a片| 九九aV| AV九九| 97碰| 这里只有精品久久| 26UUU在线观看| 欧洲亚洲最新精品| 五月婷在线| 五夜婷婷| 五月天丁香| 久久婷婷成人视频| 免费无码毛片一区二区A片| 狠狠爱综合网| 噼里啪啦完整版中文在线观看| 亚洲AV网址| 日操夜操天天操不卡| 日日婷婷不卡| 九色无码| 色欲人妻综合aaaaaaaa网| 9999久久久久| 激情丁香五月激情婷婷| 亚洲视频码| 狠狠色噜噜色狠狠狠综合久久成人波| 操人91| 亚洲激情校园| 真实的国产乱XXXX在线91| 亚洲五月天第一综合干| 91久久久久久久久18| 亚洲小视频免费看| 丁香五月色情av| 99热精品无码| 99色色热热| 538在线精品| 色欲Av五月天| av在线观看网址| 婷婷综合成人| 五月天婷婷青青| 少妇人妻偷人精品无码视频新浪| 色色五月丁香婷婷| 国产av一区二区三区| 丁香五月婷婷天| 爱穴久久| 久久五月天综合| 狠狠擼综合| 91在线操逼视频| 九九99视频| 六月丁香av| 超碰精品在线| 五月丁香啪啪啪| 丁香九月久久| 丁香五月婷婷少妇| 天天弄天天操| 五月丁香五月综合欧美| 五月婷婷内射网| 色欲久久99精品久久久久久| 热99在线| 狠狠综合网| 亚洲免费看片| 亚洲激情五月| 黄色录像网点| 97香蕉碰碰人妻国产欧美| 激情婷婷五月色| enecarbon-materials.com污K127封锁请涟系@wip1688 | 色婷婷亚洲精品天天综| 91色情播放| 亚洲色图欧美色图日本视频| 色5月婷婷| 丁香六月爱综合| 超碰男人色| 少妇人妻丰满做爰XXX| 看全色黄大色大片| 九九久热| 日日操,天天操| 婷婷五月色播网| 婷婷综合久久综合| www.丁香六月婷婷久久天堂影院.con| www色婷婷久久综合久色 | 丁香六月婷婷综合色| 婷婷丁香黄色| 天天摸天天舔天天爽| 久久婷婷五月天激情| 婷婷六月啪啪| 亚洲性色XXXXX| 久婷自拍视频| 五月的丁香六月的婷婷| 五月丁香六月在线欧美| 香蕉视频91| 久cao香蕉影院| 久操婷婷| 丁香婷婷久久| 噜噜视频| 日韩三级高清无码| 欧美色欲色欲天天天www| 伊人碰碰碰| 99免费青青蜜臀| 婷婷深爱五月亚洲综合| 日本wwww在线| 成人精品一区日本无码网| 91免费看片| 思思热久热| 九九久久五月天| 五月天婷婷基地| 五月婷丁香久久久| 婷婷五月天激情亚洲小说| 五月天婷婷综合久久| 大香蕉AV在线| 99re6久热只有精品6在线直播| 五月天婷婷三级黄| 九九综合久久丁香婷婷,开心激情综合网| 亚洲亚洲人成综合网络| 四LLL少妇BBBB槡BBBB| 九九热只有精品| 26UUU欧美激情一区二区| 丁香六月久| 去干网最新版本亚洲版| 狠狠草狠狠草| 亚洲成人网在线观看| 99热一区| 亚洲精品视频在线播放| 人人操五月天| 欧美日韩中文国产一区发布| 五月天最新网| 色色色99| 九九99精品视频在线观看| 亚洲人妻av| 日本一级一级一级一级| 性做久久久久久久免费看| 丁香六月天色婷婷| 日韩操| 欧美性色五月天| 五月婷婷插一插| 丁香五月 综合| 六月伊人婷婷| 久久9热综合| 蜜臀99久久精品久久久久| 国产激情在线观看| 五月天五月色婷婷综合| 亚洲第二AV| 日韩日比视频| 99无码免费视频| 3p日韩网站视频| 六月丁香五月激情婷婷| 婷婷的色色五月天| 久久草婷婷丁香网站| 久久人人人人妻| 色婷婷丁香AV综合| 182TV大香蕉| 99久久这里只有精品免费官网| 天天干 夜夜爽| 五月天伊人| 182无码| 五月婷婷婷色| 狠狠爱综合| 天天综合亚洲综合网天天αⅴ| 97超喷视频在线观看| 婷婷伊人綜合| 日日色五月天| 九月婷婷丁香| 激情综合色| www五月婷婷| 九九爱激情| 天天插天天日| 欧美槡BBBB槡BBB少妇| 欧洲免费视频色| 亚洲综合五月天| 欧美va在线| 五月婷九月| 在线观看熟女少妇| 色婷精品91| co超碰在线观看| 97色在线视频| 欧美色色色色色色| 婷婷综合精品| 五月丁香色综合| www.狠狠| 激情综合久久| 丁香六月婷| 丁香五月天啪啪| 婷婷五月天天爽| 色色色成人网| 性爱激情五月| 色欲五月天| 在线观看免费狠狠色丁香香综合| 99热碰碰热| 丁香五月五月婷婷欧美大香蕉| 久久性爱视频| 超碰在线免费9| 国产精品成人网址| 色视五月天婷婷| 久久99婷婷| 亚洲中文AV| 亚洲狠狠狠色婷婷综合激情久久久| 亚洲思思热久| 99久久极情精品一区| 欧美在线干| 国内久久久精品99| 婷婷亚洲综合| 99热99色| 中文字幕成人| 五月天播播| 日本99热| 五月天婷婷社区| 九九九热精品| 99精彩视频| 人人色婷婷五月天| 国产AV一区二区三区日韩| 亚洲成人免费电影| 欧美99| 99热这里只有精品国产免费| 这里有精品| 99激情网| 婷婷五月天天| 婷香狠狠爱五月| 亚洲 五月 婷婷 成人| 影音先锋一区二区三区| 欧美性做爰大片免费看办公室| 五月婷婷深深爱| 99久久五月婷婷| 色吧五月婷婷| 色偷偷色婷婷| 五月婷视频| 有码人妻久久| 久久这里只有精品视频15| 久久久精品人妻录| 色哟哟www| 色婷婷五月天成人网| 9热视频在线观看| 日韩在线视频中文字幕| 日韩抽插操逼| 亚洲AV永久无码影院黑人 | 久热这里只有精品99re| 噜噜综合网| 九九亚洲天堂| 97碰碰在线看视频免费| oumeisesewang| 久草视频一,二三四| 午夜爱插插| 丁香成人五月天| 亚洲 精品 综合 精品| 亚洲V国产V欧美V久久久久久| 色欲婷婷五月天| 亚洲精品视频在线| 精品A√| 久久婷婷亚洲无码一起| 五月天激情小说| 国产毛片精品一区二区色欲黄A片| 丁香五婷婷| 99精品在线| 丁香五月成人在线| 五月丁香啪啪网| 91人人人人人| 成人网站在线观看视频| 五月天精品综合| 九九这里是免费的视频5| 色婷婷九月综合| 操久久精| 桃色五月婷婷| 26uuu| 99久久免费精品| 在线日本www| 91丨九色丨大屁股| 婷婷色导航| 九九这里有精品视频| 在线成人国产| 嫩草AV久久伊人妇女超级A| 欧美亚洲999| 伊人久久大香| 婷婷五亚洲| 丁香激情五月| 九九热99热| 第四色五月激情网| 色你久久| 一区操| 丁香六月婷婷姐网| 麻豆精品| 免费一区二区三区| 国产亚洲成AV人片在线观黄桃| 草美女在线观看视频在线播放| 无码少妇高潮喷水A片免费| 婷婷成人综合免费视频| 97福利视频| 97久久超视频| 五月丁香六月停停停| 五月婷婷激情网| 庭庭久久内射| 色情五月综合婷婷| 99热这里全都是精品| 亚洲射激情| 一起草无码视频| 色私五月婷婷| 色五月婷婷91| 七七九色| 激情亭亭五月| 天天干,夜夜爽| 丁香六月婷婷综合在线| 亚洲无码www| 草榴视频黄色网| 丰满少妇猛烈A片免费看观看| www.26uuu.com亚洲电影| 五月婷婷 欧美| 丁香婷婷六月天| 五月深情久久| 性爱七区| 久色88| 97人人操com| 综合久久婷婷99| 欧美色综合天天久久综合精品| 狠狠五月激情婷婷直播片| 站长推荐无码播放| 久婷婷婷| 久热91| 五月天婷婷免费| 亚洲欧洲午夜成人精品av| 91综合在线观看| 五月 婷婷 成人| 欧美日本另类| 五月婷婷激情网| 色噜噜五月天| 六月色播| 五月天婷婷成人网| 久久性爱99国产| 久久久久久久久久久-久五月天婷婷| 激情播丁香| 国产三级片91| 人妻操逼视频。| 99这里是99在线视频| site:pzdcoin.com| 久久久久99精品成人片| 五月天天丁香婷婷在线中| site:esunnet.com| 久久99热精品a片在线观看| 午夜成人av在线| 狠狠色综合图片| 久久婷婷激情久久| 久久这里精彩免费在线观看| 涩涩涩婷婷| 丁香五月婷婷俺也要去| 五月婷婷丁香五月 | 99热99思午夜精品| 香蕉久久国产AV一区二区| 国精产品一区二区三区| 亚洲av无码精品色午夜| 六月丁香停| 丁香密臀AV激情网| 狠狠狠狠免费| 99爱在线免费视频| 99综合网| 七月激情六月婷婷综合在线播放| 天天肏天天肏天天肏| 成人网站在线观看视频| 狠色狠色综合久久| 天天综合亚洲综合| 丁香五月六月综合激情| 久久国产一区二区三区| 精品久久久久成人码免费动漫 | 亚州操逼网| 熟女色专区| 久久这里只有精品视频26| 色99网| 色综合99| av五月丁香| 丁香五月激情宗合| 五月婷婷六月情| 91色情播放| www.五月.com| 久人人操| 伊人久久婷婷五月天激情四射| 日韩九九| 丁香玖玖| 色色99| 9久精品视频| 九九视频这里只有精品在线播放| 五月婷婷六月爱| 九九视频在线| 苗黎美女四级成人版一级二级毛片| 天天狠狠夜夜狠狠2023| 超碰京东热av男人的天堂| 岛国操B不卡在线| 亚洲小说五月婷婷| 91婷婷搞| 人人操人人爰人人一天天碰夜夜拍夜夜爽-中国A级毛片天天看天天谢… | 超碰人人操人人干| 人人播| 99精品偷自拍| 无码四色色色| 久操大| 五月天婷婷涩涩| 东北婷婷五月天| 久久五月婷| 婷婷丁香色无五月| 7777国产盗摄农村女人| 狠狠搞综合色| 色婷婷影院| 六月色色| 五月丁香啪啪网| 亚洲人成网站999久久久综合| 99ri6在线视频| 激情婷婷亚洲五月| 欧美操人| 久鲁鲁色网| 亚洲操逼网| 五月香婷婷| 成人在线二区| 99久久国产成人精品| 色色亚洲五月天| 情欲禁地| 这里只有免费的精品| 综合久久99| 五月天丁香六月综合| 婷婷久久精品| 97在线精品视频| 欧美婷婷综合网| 严洲天天插| 亚洲黄色网址| 逼里香不卡| 婷婷成人av| 久久人妻视步| 91超级碰碰碰| 色色色777| 天天天天操| 久久视频66| 欧美日韩91| 成人片久久网站| 色色丁香| 五月天综合图片| 热99.com婷婷| 99热免费| 精热在线综合网| 狠狠色综合网| 精品国产乱码久久久久夜深人妻| 激情九色| 欧美色婷婷| 激情综合播播| 尤物一区二区| 五月婷婷六月丁香在线视频免费在线观看| 久久A极片| 性色99| 成人AV网站在线| 久久在这里99| 狠狠人人| 中文字幕精品无码一区二区| 丁香五月乱中文字幕| 偷拍九九五月丁香婷婷| 九九精品热| 激情网第四色| 色婷婷影| 色婷婷9| 久热这里这里有精品| 综合网五月| 激情综合网亚洲色图| 无码免费人妻A片AAA毛片西瓜| 五月天天丁香婷婷在线中| 三级黄色大片视频| 婷婷色综合av| 五月婷人妻| 国产精品99久久久久久久女警| 梁铮版《蜘蛛女侠》在线| 抽插特写| 日本天天操| 思思热国产在线| 超碰激情网| 国产在线激情视频| 婷婷综合在线| 可以直接看的av| 91色在线 | 日韩| 狠狠操狠狠爱| 婷婷五月综激情| 97干婷婷五月天| 超碰成人av| 亚洲亚洲人成综合网络| 亚洲热热视频| 中文字幕久久一区二区三区| 97婷婷狠狠| 五月天色小说| 久久99视频| 天天谢天天操| 色婷婷综合中心| 玖玖婷婷五月| 日本三级99人妇网站| 99热日本| 9月色婷婷| 深爱激情av| 婷婷中文字幕| 久久在线大香蕉| 色色色色色色综合网| 狠狠插狠狠操| 精品久久久999| 丁香婷婷色五月| 五月香蕉婷婷| 伊综合蕉| 激情五月婷婷| 五月丁香色色网| 伊人久久大香蕉网| 青草五月天| 秋霞三及片| 五月丁香六月婷婷,婷| 国际国外精品欧洲南美洲专区无码不卡| 五月天大香蕉| 国产乱妇乱子伦| 立川无码av| 2017狠狠干| 色播色丁香五月| 国产毛多水多女人A片| 色婷婷AV五月天| 亚洲精品国产成人AV在线| 婷婷五月丁香性爱| 成人AV片播放| 无码人妻丰满熟妇奶水区码| 五月丁香六月| 99热这里只有精品在线观看| 丁香综合网| 五月天激情婷婷| 思思re99视频在线观看| 色狠狠色狠狠| 1995年关宝慧版蜘蛛女| 色婷婷九月综合| 这里只有精品视频在线观看免费| 亚洲岛国电影| 日韩 中文 欧美| 蜜乳A√| 丁香五月电影| 91狠狠色色丁香婷婷综合久久| 婷婷五月天影院| 五月天成人综合| 99热这里只有精品2016| 四虎婷婷五月天| 婷婷九月色| 丁香综合网| 99视频在线| 久久99精品视频| 99热日韩| 色色成人網| 在线va网站| 九九视频这里是精品五月| 婷婷激情四射五月天| 成人做爰A片免费看视频| 视频一二区| 无码区婷婷五月花开| 久久色情| 五月婷婷综合精品| A1片久久久| 色婷婷在线播放| 久久综合五月天| 婷婷丁香六月| 久久丁香综合精品综合| 综合婷| 大香蕉九九操| 久热这里只有国产| 久久久婷丁香五月| 色婷婷亚洲六月婷婷中文字幕| 综合狠狠五月婷婷| 五月婷婷,六月丁香| 五月天伊人综合| 亚洲中文乱字字幕在线永久| 国精产品一区一区三区免费视频| 婷婷伊人久久| 五月丁香网站| 天天插综合| 开心色色五月天综合| 中文字幕成人日韩| 99热精品在线播放| 五月婷婷之六月丁香| 99热成人| 婷婷操逼| 71在线精品视频一区| 婷婷啪啪| 婷婷丁香五月在线播放| 99亚洲日韩| 久久婷婷啪啪视频| 丰满少妇乱A片无码| 欧美大片免费观看| 一本久久婷婷| 99久久亚洲国产| 天天射影| 婷婷激情六月| 拍真实国产伦偷精品| www.com任你艹| 九九热这里只有精品556| AV操逼网| 欧美激情凹凸丁香网| 久热婷婷| 超级碰碰一区| 狠狠另类视频| www.日本91| 久操香蕉| 五月天五月色婷婷综合| 九九人人精品| 夜色五月天| 色五月无码| 五月婷婷六月情| 色一情一乱一伦一区二区三区| 国产精品99久久久久久久女警| 国产精品久久久久久久久久久久| 69久久久| 婷婷五月天国产手机在线视频观看| 五月丁香 啪啪啪| 五月天婷婷中文字幕在线播放| 99精品热| 五月丁香在线观看国产| 91色九| 婷婷五月成人系列| 午夜一区| 原琪琪色影院| 91九色无码内射| 91狠狠色| 激情丁香五月天图片| 五月婷婷激情色情网| 秋霞性爱AV| 伊人9在线| 夜夜骑福利资源| 五月天电影网| 久久这有这里精品| 玖玖激情网| 热99免费在线| 精品色色| 亭亭丁香97| 天天色综合网吨吧| 五月天激情小说| 99久久精彩视频。| 深夜男女福利刺激影院一区完整| 思思热在线观看| 国产成人av在线| 色综合丁香婷婷| 丁香六月婷婷社区| 99久久五月婷婷| 99在线小视频| 五月婷婷激情五月| 色444综合网| 色五月婷婷丁香五月| 亚洲中文字幕在线观看| 天天日夜夜草进麻麻的子宫| 99热最新网址| 9久久久| 天天爱夜夜爽| 99热99思午夜精品| 亚洲色视频| 色五月婷婷影院| 婷婷激情六月视频| 殴美日比视频| 激情综合网五月天| 丁香婷婷丁香五月欧美人| 色五月综合| 亚洲五月丁| 丁香六月啪| 欧美va视频不用播放器的va视频网| 97碰操| 无码se| 99热精国产这里只有精品| 国产精品色色| 天天色图| 综合激情五月婷婷| 激情五月天婷婷免费观看| 成人精品视频99在线观看免费 | 超碰在线9| 色五月天丁香| 综合激情五月四射婷婷| 狠狠五月综合在线| 97影院一级片| 色情·com| 久久久久久丁香五月| 狠爱婷色| 色婷婷香蕉| 91dy.av| 久久综合55| 久9久9久9久9久9久9| 97色色色色| 丁香五月婷婷五月基地| www,com,五月色色| 伊人在线视频| 丁香六月色婷婷欧美| yazhoujiqingav| 九九無妻| 少妇日麻屄| 玖玖九九超碰| 色婷久久| 五月天婷婷激情在线色图| 操B五月天| 大香蕉伊人久久| 五月亭亭六月激情| 岛国资源站| 激情五月天网| 五月天色婷婷成人| 婷婷六月丁香在线| 嫩草视频| 99操99| 婷婷五月俺要去| 色级婷婷| 国产成人精品一区二区三区视频| 日日干日日色| 色综合av超碰| 国产精产国品一二三在观看| 久久人妻精品| www.热99热| 久激情网| www.com.色色| 国产无遮挡又黄又爽免费网站| 97操操| 91九色成人原创视频| 婷婷五月天网| 色综合九九色综合88| 亚洲爱爱无码婷婷色五月| 国产99久久久| 五月婷婷色情| 欧美 日韩 成人 在线| 日本操B视频在线观看| 草一草avb| www激情| 骚逼视频一区2区| 九九热这里只有精品6| 激情网婷婷婷| 狠狠色性| 狠爱婷色| 色色色色色色色五月| 亚洲精品V天堂中文字幕| 超碰日日操| AV在线免费网站| 超碰69天堂| 9久国产| 亚洲熟妇AV综合网五月丁香伊人 | 91日本在线观看| 丁香五月激情啪啪| 狠狠色婷婷| 久久免费试看120秒| 99这里| 91超级碰在线视频| 五月综合色| 99爱在线视频观看| 色色 9| 色综合久久88色综合中文字幕| 婷婷人人操| 另类丁香综合| 久久99久久久久久久噜噜| 国产乱子轮XXX农村| 狠狠干夜夜干| 99这里都是精品| 亚洲永久免费| 五月天婷婷在线AN| 无码人妻激情| 120分钟婬片免费看| 五月婷婷,狠狠操| 天天综合五月| 色色激情五月| 国产67194| 少妇人妻人伦A片| 桔色成人官方网站| 中文国产五月天| 色婷婷五月天小说网| 五月丁香六月婷婷亚洲视频| 天天添天天摸天天天天做| 日本熟女一区二区| 超碰在线99| 激情五月深爱五月| 色频玖玖五月天| 色A网| 99久久婷| 丁香五月 综合| 五月丁香天天| 丁香六月青青草| 91色逼| 久久五月丁香婷婷| 亚洲天堂亚洲色色色| 狠色狠色狠狠色综合网| 欧美97p| 激情伊人五月婷婷久久| 天天肏天天插| 夜夜操,天天撸| 99视频精品在线| 97精品综合久久| 激情小说五月天| 影音先锋91网站在线观看| 五月婷综合| 激情五月天综合网| 丁香五月狠狠在线观看| 色五月天成人在线| 色播播婷婷| 激情婷婷五月亚洲| 九九视频免费| 91大操| 9福利性视频欧美| 色啪影院| 深爱五月中文字幕| site:feetmall.com| 伊人玖玖婷婷| 亚洲亚洲人成综合网络| 婷婷丁香中文字幕| 一本色道久久88加勒比—| 最近韩国日本免费高清观看| 色吧网综合| 亚洲成人中心| 丁香五月婷婷欧美激情-中文天堂最新版在线观看| 991精品在线视频| 美女丁香五月天| 婷婷开心六月| 第四色五月天| 欧美黄色韩日网| 99精品在线播放| 伊人久久中文网| 亚洲艹网| 色五月婷婷五月天| 91精品91久久久中77777| 婷婷丁香五月天操逼| 99久久久久| 玖月婷婷爱丁香| 色播五月网| 思思热视频| 六月丁香成人| 色五月亚洲五月天| 婷婷五月丁香综合| 乱精品一区字幕二区| 久久婷网| 这里只有精品免费观看网占| 丁香丝袜五月| 五月天综合网| 冬月かえでAV无码播放| 久久人妻情侣| 久久这里只精品| 久久婷婷桃花五月天| 婷婷五月丁香在线观看| 欧美大道不卡| 色色六月| 日本色99网站| 久久99网站| www.狠狠| 黃色三级三级三级三级 qixing300.shrkbk.com www.jinbozs.com tianmiaosw.com | 看片视频在线免费日产在线看| 91黄操| 色噜婷婷| 亚洲99在线视频| 久久六月天| 天堂色婷婷| 激情啪啪五月| 色五月婷婷激情| 天久综合91综合首页| 国产 码在线成人网站| 天天射影院| 狠狠色中色| 丁香五月丁香伊人| 91精品丝袜久久久久久| 人人操91| AV在线观看网站| 91九色最新视频| 五月花成人网| 日本色婷婷| 婷婷五月天激情网| 亲子乱AV一区二区三区下载| 久热爱大香蕉在线蜜臀悦色 | 色婷婷丁香五月综合| 丁香五月天堂| 色色色婷婷五月天| 热久久这里只有精品| 青青草Avb在线| 天天婷婷色六月| 丁香五月婷婷综合激情啪啪啪啪啪啪啪 | 九九热视频在线观看| 五月丁香A片| 99久久玖玖| 另类婷婷五月天啪帕帕| 婷婷五月成人| 久久久中文| 国产成人+综合亚洲+天堂| 91日韩在线| 9久久久久久久久久久| 日韩精品无码99| 免费在线观看AV网站| 九九热视频免费观看| 91九色超碰| 五月天激情小说婷婷基地| 婷婷亚洲在线| 日韩乱玛久久| 丁香五月婷婷综合91| 99热这里都是精品| 色哟哟性爱av| 婷婷丁香久久| 综合激情网五月激情| 天天色天天日天天舔| 丁香五月激情久久麻豆| 久久人妻情侣| 丁香婷婷色情| 91九色首页| 婷婷丁香色五月亚洲| 丁香色六月婷婷| 国产精产国品一二三在观看| 五月激情视频网| AV片在线观看| 久久99综合网| 久激情网| 狠狠精品干练久久久无码中文字幕| 丁香五月婷婷激情小说| 色情五月停停丁香| 99综合网| 久久性爱视频免费| 婷婷五月色播天| 久久婷婷六月综合| 丁香婷婷综合影院| 一月婷婷色色| 色情五月天小说| 日韩综合成人| 色婷婷成人五月| 色播婷婷五月天| 内射干少妇亚洲69XXX| 五月四色婷婷| 超碰av在线| 婷婷午夜| 99热热热99精品婷婷| 久久人人妻| 激情影院内射| 大香蕉福利导航| 婷婷丁香五月麻豆| wwccc久久久| 双性美人被调教到喷水A片| 高清无码视频网址| 玖玖爱资源站| 色色综合网www| 五月天婷婷中文字幕在线播放| 开心激情站| www.henhengan| 色碰碰视频| 91怕怕网| 婷婷久久综合| 老司机伊人| 五月天综合缴情网网站0| 久热大香蕉| 久草狼人| 婷婷亚洲久久| 狠狠操狠狠| 色播五月网| 夜夜爽日日躁| 色狠狠色综合久久久绯色AⅤ影视 大香蕉五月天婷婷丁香91 | 欧美久草在线日本一级特黄大片做受9在线观看韩国电影《两个女人》未删减-毛片 | 99九九热视频| 99这里精品| 婷婷丁香五月天影院 | 丁香婷婷久久综合在线| 网色99| 国产亚洲成人综合| 在线观看亚洲视频影院| 内射激情在线| 丁香色六月| 久热伊人9| 午夜无码熟熟妇丰满人妻 | 人人操人| 午夜丁香婷婷| 岛国av网站| 日日操日日干| 青草网在线观看| 国产婷婷五月| 五月天婷婷无码| 亚洲视频在线观看| 日韩欧美一级大黄网站| 精品人妻伦一二三区久久| 欧美婷婷五月天综合| 全亚洲最大的婷婷五月天网站COM| 久操福利| 五月激情小说| 综合五月激情网| 婷婷久久六月天| 欧洲婷婷五月天| 91黄址| 六月婷婷色色色| 亚洲免费视频网站| 97色 五月天丁香| 无码免费人妻A片AAA毛片西瓜 | 欧洲不卡视频| 婷婷情色五月天| 色五月综合婷婷久久综合婷婷久久综合婷婷久久综合婷婷久久 | 99小视频在线| 99热99在线| 久久久久久久久久久97| 日韩精品电影| 国产精品第一国产精品| 婷婷五月天开心网| 天天插综合| 久久A区B区| www.色色色色| 久久婷婷综合五月趴| 婷婷五月天影院| 99这里有精品视频| 五月丁香福利| 欧美在线视频9| 婷婷五月天基地| 亚洲成av人影院| 亚洲成人综合在线| 1024日韩| 欧美成人一区二区三区在线视频| 婷婷五月精品中文字幕| 五月婷婷在线网站| 五月丁香另类网| 日本 @ va 免费| 操熟女成人网| 婷婷色丁香六月| 天天摸天天透天天舔| 青青草五月天| 4399亚洲视频| 岛国av网站| 色久综合天天做视频| 五月婷婷色播视频| 色99视频| 五月天偷拍| 九九在线视频| 能直接看的av网站| 99精品在线播放| 国产亚洲精品久久久久久郑州 | 人妻激情视频| 99热99久久| 无码人妻激情| 翔田千里aV中文字幕| 激情综合网丁香| www.激情五月天.com| 五月天激情无码高清 | 五月天婷婷综合| 综合久久首页| 天天操天天插天天射| 婷五月天六| 色色色综合网| 第四色五月激情网| 99热成人在线观看| 久久人妻乱子伦| 色97综合婷婷天天色| 开心色五月天久久久久久久| 久草大| 亚洲成人乱码av网站| 色亭亭五月天丁香综合AV - 百度 - 百度| 色狠狠色狠狠| 人草人人| 丁香婷婷久久 | 99热天堂| 婷婷五月婷婷| 51精品国自产在线| 婷婷五月综合中文字幕| 欧美激情综合色综合啪啪五月| 婷婷99狠狠| 三级毛片视频| 激情四射网| 另类图片 五月激情| 俺也去在线久久精品23欧美综合视频网站,丰满人妻一区二区三区在线视频53,丰满 | 色性综合| 九九九九九九九热| 婷婷九月综合| 免费无码毛片一区二区A片| Caoub青青超碰| 国产1区2区3区在线观| 精品国产va久久久| 婷婷久久综合久色| 婷婷啪啪| 五月丁香久久婷| 99热国产国产| 丁香五月激情在线| 精品网站:999WWW| 日韩视频99| 日本三级第一页| 色情婷| 五月婷在线视频免费播放| 五月婷婷六月爱| 久99视频在线观看| 午夜激情四射影院| 免费99情趣网视频| 国内外色色色色色成人视频| 人人色人人弄人人操| 五月丁香综合激情| 爱草视频在线观看| 第四色五月天| 国产婷伊人| 婷婷五月天在线看| 五月婷婷六月丁香色| 亚洲乱码日产精品BD在线观看| 色五月婷婷丁香凹凸| 天天日天天添| 天天天摸夜夜夜玩| 婷婷五月电影院| 五月天婷久久| 国产精品电影| 久久狠狠干| 日韩情色在线观看| 白天AV月月| 狠狠操天天干| 99亚洲精品视频在线观看| 五月色综合| 婷婷福利影院| 亚洲色色色色| 亚洲网视屏| 日本理论久久| 色婷五月天激情| 久久精品熟女亚洲AV麻豆| 狠狠干总合| 亚洲中文乱字字幕在线永久| 国产av基地| 激情久久久久久久久| 丁香五月婷婷色偷偷| 五月婷婷丁香在线视频| 91在线就要啪| 丁香5月啪啪| 九九色婷婷| 色综合丁香婷婷| 色婷婷五月天成人网| 爆乳熟女一区二区三区爆乳 | 颜射 精品性爱av| 国产99久久久国产精品免费看| 五月婷婷,狠狠操| 99在线观看视频| 狠狠狠狠青草| 舔色婷婷| 久久AAAA片一区二区| 青青草搞屄视频网站| 色色婷婷五月天| 综合久久99| 亚洲综合五月天婷婷丁香| 婷婷激情六月综合| 亚洲在线操| 久久久久人妻| 五月天婷婷基地丁香| 26uuu欧美|