freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

watercloud@xfocusorg(存儲版)

2024-10-11 14:23上一頁面

下一頁面
  

【正文】 ? 但分配的真正大小為 (n1)/4 *4 +4 + 8 ? (n1)/4 * 4 + 4 為以 4自己對其分配的大小 ,附加的 8個為堆管理內(nèi)部使用的信息。但這里有一個 難點 ,考察如下代碼: Lab bl Lab + 4 , %1 nop 用 gdb對程序的觀察發(fā)現(xiàn)寫入 %1的值為 : Lab+8+4 1 執(zhí)行完的結(jié)果令人很意外,因為 B手冊里說地址是 4字節(jié)對齊的,而且比預(yù)計多長 3字節(jié)!不過知道這一點后寫 shellcode也就沒有多大困難了。 初始化數(shù)據(jù)區(qū)溢出 一個比較有趣的是下面這兩個定義: ?char *p=hello。 char buff[1024]。 /*這個拷貝將覆蓋 PLT中存放 strcpy函數(shù)地址的內(nèi)存單元 */ strcpy(p,buff)。 我們最關(guān)心的是 set_num和 msg_num。 或者: sprintf(buffer,pmsg,arg1,arg2 . . . )。 . . . sprintf(buffer,..%s..,argv[username])。 《 Exploiting buffer overflows on HPUX/PARISC》 SunDay翻譯的 《 HPUX()緩沖區(qū)溢出 》 謝謝! 。 該程序使用如下: cifslogin [servername] username [options] 他在處理 p參數(shù)時存在一個堆溢出問題, 處理 username時存在一個棧溢出問題。 然后程序緊接著調(diào)用: xprintf(pmsg,參數(shù) 1,參數(shù) 2, . . . .)。程序運行時根據(jù)用戶環(huán)境變量選擇不同的語言系統(tǒng) : $ export LANG=chineses $ ct abc ct: 電話號碼錯誤 abc $ export LANG=C $ ct abc ct: bad phone number – abc 同時我們可以直接通過 NLSPATH環(huán)境變量強制指定一個信息文件, 使得程序運行時直接從該文件中取信息。 buff[1023]=0。 void main(void) { char *p=Hello World。 初始化數(shù)據(jù)區(qū)溢出 共 享 庫 信 息程 序 代 碼只 讀 數(shù) 據(jù) 區(qū)已 初 始 化 數(shù) 據(jù) 區(qū)函 數(shù) 導(dǎo) 入 表 P L T數(shù) 據(jù) 導(dǎo) 入 表 D L TG L O B A L未 初 始 化 數(shù) 據(jù) 區(qū)堆棧共 享 庫系 統(tǒng) 代 碼共 享 內(nèi) 存 區(qū)S R 4S R 5S R 7程 序 運 行 過 程 中 的 內(nèi) 存 分 部 和 重 要 寄 存 器 值系 統(tǒng) 空 間代 碼 空 間數(shù) 據(jù) 空 間系 統(tǒng) 空 間D PS P0 x 0 0 0 0 0 0 00 x 4 0 0 0 0 0 0 00 x 8 0 0 0 0 0 0 00 x F F F F F F F F從程序內(nèi)存分部圖我們可以看到函數(shù)導(dǎo)入表 PLT緊接在已初始化數(shù)據(jù)區(qū)。 SYSCALLGATE值為 0xC0000004。 2. 在以 4k為單位的子空間內(nèi)由某種數(shù)據(jù)結(jié)構(gòu)算法對子空間進(jìn)行管理。 } 調(diào)用動態(tài)鏈接庫函數(shù) 調(diào)用動態(tài)鏈接庫函數(shù) 當(dāng)調(diào)用動態(tài)鏈接庫函數(shù)如 getenv()等時整個過程比調(diào)用本地的函數(shù)負(fù)責(zé)很多,先后有: 1. 而是首先轉(zhuǎn)到了稱為 Import Stub的一段代碼處(使用到的每個外部函數(shù)對應(yīng)一份),此處主要完成以下操作: ? 從 PTL中加載目標(biāo)地址。 4. 出現(xiàn)格式化字符串漏洞時對參數(shù)的引用將向低地址引用參數(shù),向上將能夠訪問到函數(shù)的局部變量、再向上能夠訪問到程序的命令行參數(shù)和環(huán)境變量。}a l l o c 調(diào) 用 后 調(diào) 整 棧 空 間進(jìn) 入 函 數(shù) 后 的 棧 空 間對于 alloc分配的空間如果出現(xiàn)溢出就等同局部數(shù)組出現(xiàn)溢出 函數(shù)棧的參數(shù)存放區(qū)和棧幀標(biāo)識區(qū) 函數(shù)棧的參數(shù)存放區(qū)和棧幀標(biāo)識區(qū) c a l l e r ( ){ c a l l e e ( ) 。比如 sprintf函數(shù)是非葉子函數(shù),如果 caller如下 : caller() { char buff[32]。 ? 分配??臻g時??臻g大小總是以 64字節(jié)為單位分配的。 延時插槽 延時插槽 ( Delay Slot ) 和很多 RISC系統(tǒng)一樣 PA的分支指令都有一個延時問題,考察: 1. B,L sub_test, %r31 2. Copy %r31,%rp 3. Copy %r28,%r26 其執(zhí)行流程為: ? 執(zhí)行到 1處發(fā)現(xiàn)跳轉(zhuǎn),于是將返回地址放入 %r31,但返回地址為地址 3。 LDIL 加載一個 21位的立即數(shù)到寄存器的高 21位。 ?CMPB 滿足某種條件時跳轉(zhuǎn)。 無條件擴展轉(zhuǎn)移 : BE、 BVE。 ?SR7 他們都指向系統(tǒng)空間段(共享段和系統(tǒng)代碼段) 控制寄存器有 25個都是 32位 :CR0、 CR8CR32。 GR27 DP 全局?jǐn)?shù)據(jù)指針,對數(shù)據(jù)的操作都以它為基準(zhǔn)操作。 For 3個,將共享段和系統(tǒng)代碼段合并由空間寄存器 SR7來索引。 HP的趨勢是逐漸放棄 PA芯片全面轉(zhuǎn)向 IA64,但由于用戶的認(rèn)可問題,目前 IA64版本出售量很少,未來幾年內(nèi)我們能見到的 HPUX基本都是 PA版。 HPUX溢出程序編寫簡介 主要內(nèi)容 一 HPUX簡介 二 PA芯片簡介 內(nèi)存空間 寄存器 常用指令集 三 運行時體系結(jié)構(gòu) (Runtime Architecthure) 應(yīng)用程序空間布局 函數(shù)調(diào)用的棧分布 葉子函數(shù)和非葉子函數(shù) 函數(shù)棧的參數(shù)存放區(qū)和棧幀標(biāo)識區(qū) 調(diào)用動態(tài)鏈接庫函數(shù) 堆空間分配 系統(tǒng)調(diào)用與 SHELLCODE 四 溢出利用點滴 64位和 32位工具使用說明 棧溢出 堆溢出 初始化數(shù)據(jù)區(qū)溢出 格式化字符串問題 利用環(huán)境變量存放信息 五 溢出程序?qū)嵗治? cifslogin漏洞簡介 溢出程序 溢出程序分析 六 參考資料 主要內(nèi)容目錄表 一、 HPUX簡介 一、 HPUX簡況 ? HP UNIX運行在 PARISC芯片和 IA64芯片。 PA版本上的應(yīng)用程序可以無需重新編譯即可在 IA64版的 HPUX上運行。 空間范圍 名稱 權(quán)限 內(nèi)容 0x0 0x3FFFFFFF Text段 可讀,可執(zhí)行,不可寫 存放程序代碼及只讀數(shù)據(jù) 0x400000000x7FFFFFFF Data段 可讀,可寫,可執(zhí)行 數(shù)據(jù)、重定位表、堆棧等 0x800000000xBFFFFFFF 共享段 可讀,可執(zhí)行 動態(tài)鏈接庫及共享內(nèi)存區(qū) 0xC00000000xFFFFFFFF 系統(tǒng)代碼段 可讀,可執(zhí)行 操作系統(tǒng)代碼 4
點擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1