定 價:59 元
叢書名:高等院校信息安全專業(yè)規(guī)劃教材
- 作者:龐建民 陶紅偉 劉曉楠 岳峰
- 出版時間:2016/4/1
- ISBN:9787111534129
- 出 版 社:機械工業(yè)出版社
- 中圖法分類:TP393.08
- 頁碼:393
- 紙張:膠版紙
- 版次:1
- 開本:16開
本書首先從正向角度介紹編譯系統(tǒng)的一般原理和基本實現(xiàn)技術(shù),主要內(nèi)容有詞法分析、語法分析、語義分析與處理、符號表、運行時存儲組織、優(yōu)化、目標(biāo)代碼生成和多樣化編譯等;然后從反向角度介紹反編譯的相關(guān)原理和技術(shù),包括反編譯及其關(guān)鍵要素、反編譯器的整體框架、反編譯中的指令解碼和語義描述與映射、反編譯中的恢復(fù)技術(shù)、編譯優(yōu)化的反向處理、反編譯與信息安全等。 本書可作為計算機及信息安全相關(guān)專業(yè)高年級本科生的教科書或教學(xué)參考書,也可供計算機相關(guān)專業(yè)研究生和從事編程或者軟件逆向分析工作的工程技術(shù)人員參考。
目錄前言教學(xué)建議第1章 引論 11.1 編譯器與解釋器 11.2 編譯過程 21.3 編譯器結(jié)構(gòu) 21.4 編譯器的分類及生成 31.5 高級語言及其分類 31.6 編譯的前端和后端 41.7 C語言程序的編譯流程 41.8 UNIX/Linux環(huán)境中的make和makefile 71.9 本章小結(jié) 12習(xí)題 12第2章 詞法分析的理論與實踐 132.1 詞法分析器的需求分析 132.1.1 詞法分析器的功能 132.1.2 分離詞法分析的原因 142.2 詞法分析器的設(shè)計 152.2.1 輸入及其處理 152.2.2 單詞符號的描述:正規(guī)文法和正規(guī)式 152.2.3 單詞符號的識別:超前搜索 212.2.4 狀態(tài)轉(zhuǎn)換圖及其實現(xiàn) 222.3 有窮自動機 282.3.1 確定的有窮自動機 282.3.2 非確定的有窮自動機 292.3.3 NFA到DFA的轉(zhuǎn)化 292.3.4 DFA的化簡 312.4 正規(guī)式和有窮自動機的等價性 332.5 詞法分析器的生成器 352.6 本章小結(jié) 37習(xí)題 37第3章 語法分析 393.1 上下文無關(guān)文法 393.1.1 上下文無關(guān)文法的定義 393.1.2 語法樹和推導(dǎo) 403.1.3 二義性 433.2 語法分析器的功能 453.3 自上而下的語法分析 453.3.1 LL(1)分析方法 453.3.2 預(yù)測分析程序 533.4 自下而上的語法分析 563.4.1 移進與歸約 563.4.2 LR分析 573.4.3 LR(0)分析 603.4.4 SLR(1)分析 663.4.5 LR(1)分析 693.4.6 LALR(1)分析 723.4.7 分析方法比較 763.5 語法分析器的生成器 763.6 本章小結(jié) 78習(xí)題 78第4章 語義分析與處理 814.1 語法制導(dǎo)定義與語法制導(dǎo)翻譯 824.2 中間語言 914.3 語句的翻譯 954.3.1 說明語句的翻譯 954.3.2 賦值語句的翻譯 1004.3.3 控制語句的翻譯 1064.3.4 過程調(diào)用語句的翻譯 1204.4 本章小結(jié) 121習(xí)題 121第5章 符號表 1245.1 符號表的作用 1245.2 符號表的內(nèi)容 1255.3 符號表的組織 1275.4 符號表的實現(xiàn) 1295.5 名字的作用域 1325.6 本章小結(jié) 135習(xí)題 135第6章 運行時存儲組織 1376.1 靜態(tài)存儲分配 1386.2 動態(tài)存儲分配 1386.3 棧式動態(tài)存儲分配 1406.3.1 簡單的棧式存儲分配的實現(xiàn) 1406.3.2 嵌套過程語言的棧式實現(xiàn) 1416.4 堆式動態(tài)存儲分配 1456.5 存儲分配與安全性 1466.5.1 緩沖區(qū)溢出原理 1466.5.2 緩沖區(qū)溢出的防范 1476.6 本章小結(jié) 148習(xí)題 148第7章 優(yōu)化 1507.1 優(yōu)化技術(shù)簡介 1507.2 局部優(yōu)化 1517.3 循環(huán)優(yōu)化 1617.4 全局優(yōu)化 1727.4.1 到達–定值數(shù)據(jù)流分析 1737.4.2 活躍變量數(shù)據(jù)流分析和定值–引用數(shù)據(jù)流分析 1787.4.3 可用表達式數(shù)據(jù)流分析 1827.4.4 復(fù)寫傳播數(shù)據(jù)流分析 1867.5 本章小結(jié) 192習(xí)題 193第8章 目標(biāo)代碼生成 1968.1 代碼生成器設(shè)計中的問題 1968.1.1 代碼生成器的輸入 1968.1.2 目標(biāo)程序 1968.1.3 指令選擇 1978.1.4 變量存儲空間分配 1978.2 寄存器分配 1978.2.1 寄存器分配描述 1988.2.2 線性掃描的寄存器分配 1998.2.3 圖著色的寄存器分配 2018.3 窺孔優(yōu)化 2028.3.1 規(guī)則提取 2028.3.2 掃描匹配和等價語義轉(zhuǎn)換 2038.3.3 舉例說明 2058.4 一個代碼生成器實例 2058.4.1 待用信息和活躍信息 2068.4.2 寄存器描述和地址描述 2078.4.3 代碼生成算法 2088.5 本章小結(jié) 209習(xí)題 209第9章 多樣化編譯 2109.1 軟件多樣化需求 2109.2 多變體執(zhí)行及其環(huán)境 2119.3 海量軟件多樣性 2129.4 多樣化編譯技術(shù) 2139.5 多樣化編譯的應(yīng)用 2169.6 本章小結(jié) 217習(xí)題 217第10章 反編譯及其關(guān)鍵要素 21810.1 什么是反編譯 21810.1.1 反編譯概念 21810.1.2 編譯與反編譯 21910.1.3 反編譯器 21910.2 反編譯的基本過程 21910.2.1 按照反編譯技術(shù)實施的順序劃分 22010.2.2 按照反編譯實踐中的具體操作劃分 22410.2.3 按照反編譯器的功能塊劃分 22710.3 反編譯的前世今生 22810.3.1 建立——20世紀(jì)60年代 22810.3.2 發(fā)展——20世紀(jì)70年代 22910.3.3 瓶頸期——20世紀(jì)80年代 23110.3.4 反編譯的春天來了——20世紀(jì)90年代 23210.3.5 持續(xù)的研究——進入21世紀(jì) 23510.3.6 身邊的反編譯——我國對反編譯的研究 23610.4 反編譯的局限、先決條件和評價指標(biāo) 23610.4.1 反編譯技術(shù)面臨的宏觀問題 23610.4.2 反編譯技術(shù)面臨的技術(shù)性問題 23710.4.3 反編譯的先決條件 23810.4.4 反編譯器的評價指標(biāo) 23810.5 反編譯的應(yīng)用領(lǐng)域和研究重點 23910.5.1 應(yīng)用領(lǐng)域 23910.5.2 研究重點 23910.6 本章小結(jié) 240習(xí)題 240第11章 反編譯器的整體框架 24111.1 “I型”反編譯器的框架 24111.1.1 上下文環(huán)境的銜接 24111.1.2 dcc反編譯器的框架 24211.2 經(jīng)典多源反編譯框架簡介 24311.2.1 UQBT 24311.2.2 Hex-Rays 24711.2.3 BAP 24711.3 具備靜態(tài)反編譯能力的二進制翻譯器ITA 24811.3.1 ITA總體框架 24811.3.2 二進制文件解碼 24911.3.3 語義映射 25111.3.4 過程抽象分析 25111.3.5 優(yōu)化代碼消除 25111.3.6 C代碼產(chǎn)生器 25211.3.7 從ITA看靜態(tài)反編譯存在的普遍問題 25211.3.8 對ITA靜態(tài)反編譯框架的擴展ITA-E 25311.4 具備動靜結(jié)合反編譯能力的二進制翻譯器UTP-MBC 25411.4.1 UTP-MBC架構(gòu)設(shè)計需要解決的主要問題 25511.4.2 UTP-MBC翻譯器的相關(guān)研究 25611.4.3 一體化翻譯架構(gòu)設(shè)計 25711.5 本章小結(jié) 260習(xí)題 261第12章 反編譯中的指令解碼和語義描述與映射 26212.1 指令描述和指令解碼 26212.1.1 相關(guān)研究 26212.1.2 編解碼描述語言SLED 26312.1.3 基于SLED的x64指令描述和解碼 26612.1.4 SLED在多源一體解碼體系中的應(yīng)用 27012.2 指令的語義映射 27512.2.1 相關(guān)研究 27612.2.2 語義描述語言SSL 27612.2.3 中間表示 28212.2.4 一個示例——指令原子語義描述語言ASDL 28412.3 本章小結(jié) 288習(xí)題 288第13章 反編譯中的恢復(fù)技術(shù) 29013.1 數(shù)據(jù)流和數(shù)據(jù)恢復(fù) 29013.1.1 數(shù)據(jù)流分析 29013.1.2 數(shù)據(jù)恢復(fù)方法——以IA-64架構(gòu)上的反編譯為例 29713.1.3 小結(jié) 31013.2 高級控制流恢復(fù) 31013.2.1 控制流恢復(fù)概述 31113.2.2 高級控制流恢復(fù)分析 31513.2.3 結(jié)構(gòu)化算法介紹 31813.2.4 可能的問題與解決辦法 32513.2.5 小結(jié) 32513.3 過程恢復(fù) 32513.3.1 相關(guān)知識簡介 32613.3.2 庫函數(shù)的識別技術(shù) 32813.3.3 用戶自定義函數(shù)的過程恢復(fù) 33513.4 本章小結(jié) 349習(xí)題 349第14章 編譯優(yōu)化的反向處理 35014.1 常用的編譯優(yōu)化方法 35014.1.1 編譯優(yōu)化的原則 35014.1.2 優(yōu)化手段的分類 35014.2 部分編譯優(yōu)化的消除——謂詞執(zhí)行 35114.2.1 謂詞執(zhí)行 35114.2.2 IA-64平臺的謂詞指令 35114.2.3 謂詞消除 35314.3 本章小結(jié) 358習(xí)題 358第15章 反編譯與信息安全 35915.1 基于反編譯的惡意行為識別 35915.1.1 惡意代碼檢測背景 35915.1.2 文件格式異常信息 36315.1.3 指令序列層行為信息提取 36615.1.4 函數(shù)調(diào)用信息提取 36915.2 反編譯在惡意代碼檢測中的應(yīng)用 37715.2.1 系統(tǒng)架構(gòu)的提出 37715.2.2 推理算法研究的基本內(nèi)容 37815.2.3 惡意特征生成 38015.2.4 推理規(guī)則庫的建立 38115.2.5 多重多維模糊推理算法的研究與實現(xiàn) 38515.3 本章小結(jié) 391習(xí)題 391參考文獻 392