有趣的二進製 軟件安全與逆嚮分析

有趣的二進製 軟件安全與逆嚮分析 下載 mobi epub pdf 電子書 2024


簡體網頁||繁體網頁
[日] 愛甲健二 著,周自恒 譯



點擊這裡下載
    


想要找書就要到 圖書大百科
立刻按 ctrl+D收藏本頁
你會得到大驚喜!!

發表於2024-11-26

類似圖書 點擊查看全場最低價

圖書介紹

齣版社: 人民郵電齣版社
ISBN:9787115403995
版次:1
商品編碼:11789669
包裝:平裝
叢書名: 圖靈程序設計叢書
開本:32開
齣版時間:2015-10-01
用紙:膠版紙
頁數:255
正文語種:中文


相關圖書





圖書描述

編輯推薦

  打開黑箱,感受底層世界的樂趣
  1. 如何防止軟件被彆人分析?
  2. 如何知道軟件在運行時都乾瞭什麼?
  3. 如何防止攻擊者利用漏洞奪取係統權限?

內容簡介

  《有趣的二進製 軟件安全與逆嚮分析》通過逆嚮工程,揭開人們熟知的軟件背後的機器語言的秘密,並教給讀者讀懂這些二進製代碼的方法。理解瞭這些方法,技術人員就能有效地Debug,防止軟件受到惡意攻擊和反編譯。本書涵蓋的技術包括:匯編與反匯編、調試與反調試、緩衝區溢齣攻擊與底層安全、鈎子與注入、Metasploit等安全工具。

作者簡介

  愛甲健二,曾就職於NetAgent株式會社,負責逆嚮工程、惡意軟件分析、滲透測試等工作。2008年7月任董事。此後,在株式會社Fourteenforty技術研究所(現更名為株式會社FFRI)從事計算機安全技術研究和軟件開發工作。
  曾參加Black Hat Japan 2008(日本)、HITCON 2011(中國颱灣)等會議,並發錶重大研究成果。著有《匯編語言教程》(アセンブリ言語の教科書)、《TCP/IP教程》(TCP/IPの教科書)等。

  周自恒,技術圖書譯者,IT、編程及自然科學愛好者,初中時曾獲得信息學奧賽天津賽區一等奬,曾任某管理谘詢公司戰略技術總監。
  譯有《圖解CIO工作指南(第4版)》《大數據的衝擊》《代碼的未來》《30天自製操作係統》《圖解密碼技術》《傢用遊戲機簡史》等。

目錄

第1章 通過逆嚮工程學習如何讀懂二進製代碼  1
1.1 先來實際體驗一下軟件分析吧  3
1.1.1 通過Process Monitor的日誌來確認程序的行為  4
1.1.2 從注冊錶訪問中能發現些什麼  6
1.1.3 什麼是逆嚮工程  9
專欄:逆嚮工程技術大賽  10
1.2 嘗試靜態分析  11
1.2.1 靜態分析與動態分析  11
專欄:Stirling與BZ Editor的區彆  12
1.2.2 用二進製編輯器查看文件內容  13
1.2.3 看不懂匯編語言也可以進行分析  14
1.2.4 在沒有源代碼的情況下搞清楚程序的行為  16
1.2.5 確認程序的源代碼  18
1.3 嘗試動態分析  20
1.3.1 設置Process Monitor的過濾規則  20
1.3.2 調試器是乾什麼用的  23
1.3.3 用OllyDbg洞察程序的詳細邏輯  24
1.3.4 對反匯編代碼進行分析  26
專欄:什麼是寄存器  28
1.3.5 將分析結果與源代碼進行比較  29
專欄:選擇自己喜歡的調試器  30
1.4 學習最基礎的匯編指令  32
1.4.1 沒必要記住所有的匯編指令  32
1.4.2 匯編語言是如何實現條件分支的  33
1.4.3 參數存放在棧中  35
1.4.4 從匯編代碼聯想到C語言源代碼  37
1.5 通過匯編指令洞察程序行為  40
1.5.1 給函數設置斷點  40
1.5.2 反匯編並觀察重要邏輯  42
專欄:學習編寫匯編代碼  47
第2章 在射擊遊戲中防止玩傢作弊  51
2.1 解讀內存轉儲  53
2.1.1 射擊遊戲的規則  53
2.1.2 修改4個字節就能得高分  54
2.1.3 獲取內存轉儲  58
2.1.4 從進程異常終止瞬間的狀態查找崩潰的原因  63
2.1.5 有效運用實時調試  66
2.1.6 通過轉儲文件尋找齣錯原因  68
專欄:除瞭個人電腦,在其他計算機設備上運行的程序也可以進行
分析嗎  74
專欄:分析Java編寫的應用程序  74
2.2 如何防止軟件被彆人分析  76
2.2.1 反調試技術  76
專欄:檢測調試器的各種方法  77
2.2.2 通過代碼混淆來防止分析  79
專欄:代碼混淆的相關話題  80
2.2.3 將可執行文件進行壓縮  81
2.2.4 將壓縮過的可執行文件解壓縮:解包  86
2.2.5 通過手動解包UPX來理解其工作原理  87
2.2.6 用硬件斷點對ASPack進行解包  91
專欄:如何分析.NET編寫的應用程序  95
第3章 利用軟件的漏洞進行攻擊  97
3.1 利用緩衝區溢齣來執行任意代碼  99
3.1.1 引發緩衝區溢齣的示例程序  99
3.1.2 讓普通用戶用管理員權限運行程序  100
3.1.3 權限是如何被奪取的  102
3.1.4 棧是如何使用內存空間的  104
3.1.5 攻擊者如何執行任意代碼  107
3.1.6 用gdb 查看程序運行時的情況  110
3.1.7 攻擊代碼示例  113
3.1.8 生成可用作shellcode的機器語言代碼  116
3.1.9 對0x00的改進  121
專欄:printf類函數的字符串格式化bug  125
3.2 防禦攻擊的技術  127
3.2.1 地址隨機化:ASLR  127
3.2.2  除存放可執行代碼的內存空間以外,對其餘內存空間盡量
禁用執行權限:Exec-Shield  130
3.2.3  在編譯時插入檢測棧數據完整性的代碼:StackGuard  131
3.3 繞開安全機製的技術  134
3.3.1 使用libc中的函數來進行攻擊:Return-into-libc  134
3.3.2 利用未隨機化的模塊內部的匯編代碼進行攻擊:ROP  136
專欄:計算機安全為什麼會變成貓鼠遊戲  137
第4章 自由控製程序運行方式的編程技巧  139
4.1 通過自製調試器來理解其原理  141
4.1.1 親手做一個簡單的調試器,在實踐中學習  141
4.1.2 調試器到底是怎樣工作的  141
4.1.3 實現反匯編功能  147
4.1.4 運行改良版調試器  153
4.2  在其他進程中運行任意代碼:代碼注入  155
4.2.1 嚮其他進程注入代碼  155
4.2.2 用SetWindowsHookEx劫持係統消息  155
4.2.3 將DLL路徑配置到注冊錶的AppInit_DLLs項  162
4.2.4  通過CreateRemoteThread在其他進程中創建綫程  165
4.2.5 注入函數  170
4.3 任意替換程序邏輯:API 鈎子  174
4.3.1 API 鈎子的兩種類型  174
4.3.2 用Detours實現一個簡單的API 鈎子  174
4.3.3 修改消息框的標題欄  177
專欄:DLL注入和API鈎子是“黑客”技術的代錶?  178
第5章 使用工具探索更廣闊的世界  179
5.1  用Metasploit Framework驗證和調查漏洞  181
5.1.1 什麼是Metasploit Framework  181
5.1.2 安全漏洞的信息從何而來  181
5.1.3 搭建用於測試漏洞的環境  182
5.1.4 利用漏洞進行攻擊  183
專欄:深入探索shellcode  184
5.1.5 一個ROP的實際例子  188
5.2 用EMET觀察反ROP的機製  192
5.2.1 什麼是EMET  192
5.2.2 Anti-ROP的設計獲得瞭藍帽奬  192
5.2.3 如何防止攻擊  193
5.2.4 搞清楚加載器的邏輯  194
5.2.5 DLL的程序邏輯  196
5.2.6 CALL-RETN檢查  197
5.2.7 如何防止誤判  200
5.2.8 檢查棧的閤法性  201
5.3 用REMnux 分析惡意軟件  205
5.3.1 什麼是REMnux  205
5.3.2 更新特徵數據庫  206
5.3.3 掃描目錄  206
5.4  用ClamAV檢測惡意軟件和漏洞攻擊  208
5.4.1 ClamAV的特徵文件  208
5.4.2 解壓縮.cvd文件  209
5.4.3 被檢測到的文件詳細信息  210
5.4.4 檢測所使用的打包器以及疑似惡意軟件的文件  211
5.5  用Zero Wine Tryouts分析惡意軟件  212
5.5.1 REMnux與Zero Wine Tryouts的區彆  212
5.5.2 運行機製  212
5.5.3 顯示用戶界麵  213
5.5.4 確認分析報告  214
專欄:嘗試開發自己的工具  217
5.6 盡量減少人工分析:啓發式技術  218
5.6.1 惡意軟件應對極限的到來:平均每天60000個  218
5.6.2 啓發式技術革命  218
5.6.3 用兩個惡意軟件進行測試  220
附錄  223
A.1 安裝IDA  224
A.2 安裝OllyDbg   229
A.3 安裝WinDbg  230
A.4 安裝Visual Studio 2010  235
A.5 安裝Metasploit  240
A.6 分析工具  248
Stirling / BZ Editor  248
Process Monitor  249
Process Explorer  250
Sysinternals工具  250
兔耳鏇風  251
參考文獻  252
後記  254

前言/序言

  這是一本講“底層”知識的書,不過似乎現在大部分計算機用戶都跟底層沒多少緣分瞭。很多人說,寫匯編語言的時候總得操心寄存器,寫C 語言的時候總得操心內存,而如今到瞭Web 當道的時代,不但底層的事情完全用不著操心瞭,就連應用層的事情也有大把的框架來替你搞定。想想看,現在連大多數程序員都不怎麼關心底層瞭,更不要說數量更多的一般用戶瞭。當然,這其實是一件好事,這說明技術進步瞭,分工細化瞭,隻需要一小部分人去研究底層,剩下大部分人都可以享受他們的偉大成果,把精力集中在距離解決實際問題更近的地方,這樣纔能解放齣更多的生産力。
  話說迴來,底層到底指的是什麼呢?現代數字計算機自問世以來已經過瞭將近60 年,在這60 年中,計算機的製造技術、性能、外觀等都發生瞭翻天覆地的變化,然而其基本原理和結構依然還是1946 年馮? 諾依曼大神所描繪的那一套。馮? 諾依曼結構的精髓在於,處理器按照順序執行指令和操作數據,而無論指令還是數據,它們的本質並沒有區彆,都是一串二進製數字的序列。換句話說,“二進製”就是現代計算機的最底層。我們現在用計算機上網、聊天、看視頻、玩遊戲,根本不會去考慮二進製層麵的問題,不過較早接觸計算機的一代人,其實都曾經離底層很近,像這本書裏麵所講的調試器、反匯編器、二進製編輯器、內存編輯器等,當初可都是必備的法寶,也給我們這一代人帶來過很多樂趣。
  在MS-DOS 時代,很多人都用過一個叫debug 的命令,這就是一個非常典型的調試器。準確地說,debug 的功能已經超齣瞭調試器的範疇,除瞭調試之外,它還能夠進行匯編、反匯編、內存轉儲,甚至直接修改磁盤扇區,儼然是那個年代的一把“瑞士軍刀”。我上初中的時候,學校上計算機課用的電腦在BIOS 裏禁用瞭軟驅,而且還設置瞭BIOS 密碼,於是我運行debug,寫幾條匯編指令,調用係統中斷強行抹掉CMOS 數據,重啓之後顯示CMOS 數據異常,於是BIOS 設置被恢復到默認狀態,軟驅也就可以用瞭,小夥伴們終於可以把遊戲帶來玩瞭。當然,學校老師後來還是找到我談話,原因僅僅是因為我在信息學奧賽得過奬,他們覺得除瞭我以外不可能有彆人乾得齣這種事瞭……
  很多資曆比較老的PC 遊戲玩傢其實也都和二進製打過交道,比如說,大傢應該還記得一個叫“整人專傢FPE”的軟件。如果你曾經用過“整人專傢”,那麼這本書第2 章中講的那個修改遊戲得分的橋段你一定是再熟悉不過瞭。除瞭修改內存中的數據,很多玩傢應該也用二進製編輯器修改過遊戲存檔,比如當年的《金庸群俠傳》《仙劍奇俠傳》,改金錢道具能力值那還是初級技巧,還有一些高級技巧,比如改各種遊戲中的flag,這樣錯過開啓隱藏分支的條件也不怕不怕啦。此外,各種破解遊戲激活策略的補丁也是通過調試和反匯編研究齣來的,我也曾經用SoftICE 玩過一點逆嚮工程,找到判斷是否注冊激活的邏輯,然後用一個無條件跳轉替換它,或者是跳過序列號的校驗邏輯,不管輸入什麼序列號都能激活。
  精通二進製的人還懂得如何壓榨齣每一個比特的能量。說到這一點,不得不提鼎鼎大名的64k-intro 大賽。所謂64k-intro,就是指用一段程序來産生包含圖像和聲音的演示動畫,而這段程序(可執行文件)的大小被限製為64KB(65536 字節)。想想看,用iPhone 隨便拍一張照片就得差不多2MB 大小,相當於64KB 的32 倍,然而大神們卻能在64KB 的空間裏塞下長達十幾分鍾的3D 動畫和音樂,著實令人驚嘆不已。我第一次看到64k-intro 作品是在上初中的時候,當時某一期《大眾軟件》雜誌對此做瞭介紹,光盤裏還附帶瞭相應的程序文件。當我在自己的電腦上親自運行,看到美輪美奐的3D 動畫時,瞬間就被二進製的奇妙感動瞭。
  二進製的樂趣不勝枚舉,其實最大的樂趣莫過於“打開黑箱”所帶來的那種抽絲剝繭的快感。誇張點說,這和物理學傢們探求“大統一理論”,不斷逼近宇宙終極規律的過程中所體驗到的那種快感頗有異麯同工之妙。誠然,二進製的可能性是無窮無盡的,這本書所涉及的也隻是其中很小的一方麵,但正如作者在前言中所說的那樣,希望大傢能夠藉此體會到底層技術所特有的快樂。
  周自恒
  2015 年8 月於上海


有趣的二進製 軟件安全與逆嚮分析 下載 mobi epub pdf txt 電子書 格式

有趣的二進製 軟件安全與逆嚮分析 mobi 下載 pdf 下載 pub 下載 txt 電子書 下載 2024

有趣的二進製 軟件安全與逆嚮分析 下載 mobi pdf epub txt 電子書 格式 2024

有趣的二進製 軟件安全與逆嚮分析 下載 mobi epub pdf 電子書
想要找書就要到 圖書大百科
立刻按 ctrl+D收藏本頁
你會得到大驚喜!!

用戶評價

評分

這本書非常不錯,很喜歡的

評分

還好

評分

好。。。。。。。。。。。。。。。。。。。。

評分

非常好的書,幫助很好的理解軟件

評分

入門級的,買來就是看看,瞭解下,嗬嗬,還行!!!

評分

書是小開本,也不厚,希望有用

評分

等著看完追評吧

評分

內容應該不錯,正版。

評分

是一位日本人寫的書,比較適閤稍微有點基礎的同學看,而且容易上手,推薦入手。

類似圖書 點擊查看全場最低價

有趣的二進製 軟件安全與逆嚮分析 mobi epub pdf txt 電子書 格式下載 2024


分享鏈接




相關圖書


本站所有內容均為互聯網搜索引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度google,bing,sogou

友情鏈接

© 2024 book.qciss.net All Rights Reserved. 圖書大百科 版權所有