幫助中心 | 我的帳號 | 關於我們

ARM彙編與逆向工程(藍狐卷基礎知識)/網路空間安全技術叢書

  • 作者:(美)瑪麗亞·馬克斯特德|責編:劉鋒//張秀華|譯者:ChaMd5安全團隊
  • 出版社:機械工業
  • ISBN:9787111744467
  • 出版日期:2024/02/01
  • 裝幀:平裝
  • 頁數:351
人民幣:RMB 129 元      售價:
放入購物車
加入收藏夾

內容大鋼
    本書由兩部分組成。第一部分首先概述ELF文件格式和操作系統的內部結構,然後介紹Arm架構基礎知識,並深入探討A32和A64指令集;第二部分深入探討逆向工程,包括Arm環境、靜態分析和動態分析,以及固件提取和模擬分析等關鍵主題。本書末尾講解在macOS中基於Arm的M1 SoC編譯的二進位文件的惡意軟體分析。
    通過閱讀本書,讀者可以深入理解Arm的指令和控制流模式,這對於針對Arm架構編譯的軟體的逆向工程至關重要。為幫助逆向工程師和安全研究人員更好地理解逆向工程,本書深入介紹了逆向工程的各個方面,具體包括:
    Arm架構的AArch32和AArch64指令集狀態,以及ELF文件格式內部結構;
    Arm彙編內部機制的詳細信息,可供逆向工程師分析惡意軟體和審計軟體安全漏洞使用,以及尋求Arm彙編語言詳細知識的開發人員使用;
    Armv8-A架構支持的A32/T32和A64指令集,以及常見的指令和控制流模式;
    用於靜態和動態二進位分析的已知逆向工程工具;
    在Linux上對Arm二進位文件進行反彙編和調試的過程,以及常用的反彙編和調試工具。

作者介紹
(美)瑪麗亞·馬克斯特德|責編:劉鋒//張秀華|譯者:ChaMd5安全團隊

目錄
譯者序
前言
致謝
作者簡介
第一部分  Arm彙編內部機制
  第1章  逆向工程簡介
    1.1  彙編簡介
      1.1.1  位和位元組
      1.1.2  字元編碼
      1.1.3  機器碼和彙編
      1.1.4  彙編
    1.2  高級語言
    1.3  反彙編
    1.4  反編譯
  第2章  ELF文件格式的內部結構
    2.1  程序結構
    2.2  高級語言與低級語言
    2.3  編譯過程
      2.3.1  不同架構的交叉編譯
      2.3.2  彙編和鏈接
    2.4  ELF文件概述
    2.5  ELF文件頭
      2.5.1  ELF文件頭信息欄位
      2.5.2  目標平台欄位
      2.5.3  程序入口點欄位
      2.5.4  表位置欄位
    2.6  ELF程序頭
      2.6.1  PHDR程序頭
      2.6.2  INTERP程序頭
      2.6.3  LOAD程序頭
      2.6.4  DYNAMIC程序頭
      2.6.5  NOTE程序頭
      2.6.6  TLS程序頭
      2.6.7  GNU_EH_FRAME程序頭
      2.6.8  GNU_STACK程序頭
      2.6.9  GNU_RELRO程序頭
    2.7  ELF節頭
      2.7.1  ELFmeta節
      2.7.2  主要的ELF節
      2.7.3  ELF符號
    2.8  .dynamic節和動態載入
      2.8.1  依賴項載入
      2.8.2  程序重定位
      2.8.3  ELF程序的初始化和終止節
    2.9  線程本地存儲
      2.9.1  local-execTLS訪問模型
      2.9.2  initial-execTLS訪問模型
      2.9.3  general-dynamicTLS訪問模型
      2.9.4  local-dynamicTLS訪問模型
  第3章  操作系統基本原理

    3.1  操作系統架構概述
      3.1.1  用戶模式與內核模式
      3.1.2  進程
      3.1.3  系統調用
      3.1.4  線程
    3.2  進程內存管理
      3.2.1  內存頁
      3.2.2  內存保護
      3.2.3  匿名內存和內存映射
      3.2.4  地址空間布局隨機化
      3.2.5  棧的實現
      3.2.6  共享內存
  第4章  Arm架構
    4.1  架構和配置文件
    4.2  Armv8-A架構
      4.2.1  異常級別
      4.2.2  Armv8-A執行狀態
    4.3  AArch64執行狀態
      4.3.1  A64指令集
      4.3.2  AArch64寄存器
      4.3.3  PSTATE
    4.4  AArch32執行狀態
      4.4.1  A32和T32指令集
      4.4.2  AArch32寄存器
      4.4.3  當前程序狀態寄存器
      4.4.4  執行狀態寄存器
  第5章  數據處理指令
    5.1  移位和循環移位
      5.1.1  邏輯左移
      5.1.2  邏輯右移
      5.1.3  算術右移
      5.1.4  循環右移
      5.1.5  帶擴展的循環右移
      5.1.6  指令形式
      5.1.7  位域操作
    5.2  邏輯運算
      5.2.1  位與
      5.2.2  位或
      5.2.3  位異或
    5.3  算術運算
      5.3.1  加法和減法
      5.3.2  比較
    5.4  乘法運算
      5.4.1  A64中的乘法運算
      5.4.2  A32/T32中的乘法運算
    5.5  除法運算
    5.6  移動操作
      5.6.1  移動常量立即數
      5.6.2  移動寄存器
      5.6.3  移動取反

  第6章  內存訪問指令
    6.1  指令概述
    6.2  定址模式和偏移形式
      6.2.1  偏移定址
      6.2.2  前索引定址
      6.2.3  后索引定址
      6.2.4  字面值定址
    6.3  載入和存儲指令
      6.3.1  載入和存儲字或雙字
      6.3.2  載入和存儲半字或位元組
      6.3.3  A32多重載入和存儲
      6.3.4  A64載入和存儲對
  第7章  條件執行
    7.1  條件執行概述
    7.2  條件碼
      7.2.1  NZCV條件標誌
      7.2.2  條件碼
    7.3  條件指令
    7.4  標誌設置指令
      7.4.1  指令的S后綴
      7.4.2  測試和比較指令
    7.5  條件選擇指令
    7.6  條件比較指令
      7.6.1  使用CCMP的布爾與條件
      7.6.2  使用CCMP的布爾或條件
  第8章  控制流
    8.1  分支指令
      8.1.1  條件分支和循環
      8.1.2  測試和比較分支
      8.1.3  表分支
      8.1.4  分支和切換
      8.1.5  子程序分支
    8.2  函數和子程序
      8.2.1  程序調用標準
      8.2.2  易失性和非易失性寄存器
      8.2.3  參數和返回值
      8.2.4  傳遞較大值
      8.2.5  葉子函數和非葉子函數
第二部分  逆向工程
  第9章  Arm環境
    9.1  Arm板
    9.2  使用QEMU模擬虛擬環境
      9.2.1  QEMU用戶模式模擬
      9.2.2  QEMU系統模式模擬
  第10章  靜態分析
    10.1  靜態分析工具
      10.1.1  命令行工具
      10.1.2  反彙編器和反編譯器
      10.1.3  BinaryNinjaCloud
    10.2  引用調用示例

    10.3  控制流分析
      10.3.1  main函數
      10.3.2  子程序
      10.3.3  轉換為字元
      10.3.4  if語句
      10.3.5  商除法
      10.3.6  for循環
    10.4  演算法分析
  第11章  動態分析
    11.1  命令行調試
      11.1.1  GDB命令
      11.1.2  GDB多用戶模式
      11.1.3  GDB擴展:GEF
      11.1.4  Radare2
    11.2  遠程調試
      11.2.1  Radare2
      11.2.2  IDAPro
    11.3  調試內存損壞
    11.4  使用GDB調試進程
  第12章  逆向arm64架構的macOS惡意軟體
    12.1  背景
      12.1.1  macOSarm64二進位文件
      12.1.2  macOSHelloWorld(arm64)
    12.2  尋找惡意arm64二進位文件
    12.3  分析arm64惡意軟體
      12.3.1  反分析技術
      12.3.2  反調試邏輯(通過ptrace)
      12.3.3  反調試邏輯(通過sysctl)
      12.3.4  反虛擬機邏輯(通過SIP狀態和VM遺留物檢測)
    12.4  總結

  • 商品搜索:
  • | 高級搜索
首頁新手上路客服中心關於我們聯絡我們Top↑
Copyrightc 1999~2008 美商天龍國際圖書股份有限公司 臺灣分公司. All rights reserved.
營業地址:臺北市中正區重慶南路一段103號1F 105號1F-2F
讀者服務部電話:02-2381-2033 02-2381-1863 時間:週一-週五 10:00-17:00
 服務信箱:bookuu@69book.com 客戶、意見信箱:cs@69book.com
ICP證:浙B2-20060032