C++黑客編程揭秘與防范

出版時間:2012-6  出版社:人民郵電出版社  作者:冀云  頁數(shù):265  字?jǐn)?shù):406000  
Tag標(biāo)簽:無  

內(nèi)容概要

  《C++黑客編程揭秘與防范》旨在通過簡單的語法知識及常用的系統(tǒng)函數(shù)編程,完成一些有特定功能的安全工具,讓讀者對系統(tǒng)知識等各方面有一個全面的了解,并且在筆者的帶領(lǐng)下一步步完成書中的實(shí)例。本書主要內(nèi)容為:第1章了解黑客編程,主要講解了VC(Visual
C++的縮寫)和Windwos下安全編程方面的基礎(chǔ)知識。第2章 從剖析簡單的木馬說起,講解有關(guān)的網(wǎng)絡(luò)編程和協(xié)議知識。第3章
Windows應(yīng)用編程基礎(chǔ),講解API編程的技術(shù)。第4章 加密與解密,講解PE等加密有關(guān)的知識。第5章
HOOK編程,講解了與鉤子有關(guān)的知識。第6章
黑客編程剖析,剖析了病毒的原理和攻防技術(shù),以及安全工具的開發(fā)。第7章最后的旅程——簡單驅(qū)動開發(fā)及逆向。
  《C++黑客編程揭秘與防范》適合網(wǎng)絡(luò)安全人員、黑客愛好者,以及相關(guān)的程序員閱讀。

書籍目錄

第1章 黑客編程入門 
 1.1 編程語言和開發(fā)環(huán)境的選擇 
  1.1.1 何為SDK、API和MFC 
  1.1.2 VC6和SDK的配置 
 1.2 應(yīng)用程序的調(diào)試 
  1.2.1 編寫我們的第一個程序 
  1.2.2 用VC6調(diào)試第一個程序 
  1.2.3 專業(yè)的應(yīng)用程序調(diào)試工具——OllyDbg 
 1.3 簡單API的介紹 
  1.3.1 復(fù)制自身程序到Windows目錄和系統(tǒng)目錄下 
  1.3.2 獲得系統(tǒng)的相關(guān)信息 
  1.3.3 Debug和Release的編譯方式 
  1.3.4 查看函數(shù)定義 
 1.4 總結(jié) 
第2章 木馬開發(fā)剖析 
 2.1 網(wǎng)絡(luò)通信基礎(chǔ) 
  2.1.1 IP地址的作用與分類 
  2.1.2 端口的作用與分類 
 2.2 網(wǎng)絡(luò)編程基礎(chǔ)知識 
  2.2.1 通信模型 
  2.2.2 Winsock 
  2.2.3 Winsock的相關(guān)函數(shù) 
  2.2.4 字節(jié)順序 
 2.3 簡單的通信程序 
  2.3.1 基于TCP協(xié)議的“Hello World!” 
  2.3.2 基于UDP協(xié)議的“Hello World!” 
 2.4 實(shí)現(xiàn)一個C/S模式的簡單木馬 
  2.4.1 木馬服務(wù)器端的實(shí)現(xiàn) 
  2.4.2 木馬客戶端的實(shí)現(xiàn) 
 2.5 總結(jié) 
第3章 Windows應(yīng)用編程基礎(chǔ) 
 3.1 文件 
  3.1.1 打開文件 
  3.1.2 文件操作 
 3.2 AutoRun免疫程序的編寫 
  3.2.1 AutoRun免疫原理 
  3.2.2 AutoRun免疫程序的代碼實(shí)現(xiàn) 
  3.2.3 界面設(shè)置 
  3.2.4 代碼相關(guān)部分 
 3.3 注冊表操作 
  3.3.1 注冊表 
  3.3.2 與注冊表操作相關(guān)的常用API函數(shù) 
  3.3.3 注冊表啟動項的管理 
  3.3.4 程序的界面設(shè)置及相關(guān)代碼 
  3.3.5 啟動項的枚舉 
  3.3.6 添加啟動項的代碼 
  3.3.7 刪除啟動項的代碼 
 3.4 服務(wù)相關(guān)的編程 
  3.4.1 如何查看系統(tǒng)服務(wù) 
  3.4.2 服務(wù)控制管理器的開發(fā) 
  3.4.3 枚舉服務(wù)的相關(guān)API函數(shù) 
  3.4.4 服務(wù)的停止 
  3.4.5 停止服務(wù)的相關(guān)API函數(shù) 
  3.4.6 服務(wù)的啟動 
 3.5 進(jìn)程與線程 
  3.5.1 進(jìn)程 
  3.5.2 進(jìn)程的創(chuàng)建 
  3.5.3 “下載者”的簡單演示 
  3.5.4 CreateProcess()函數(shù)介紹與程序創(chuàng)建 
  3.5.5 進(jìn)程的結(jié)束 
  3.5.6 進(jìn)程的枚舉 
  3.5.7 調(diào)整當(dāng)前進(jìn)程的權(quán)限 
  3.5.8 進(jìn)程的暫停與恢復(fù) 
  3.5.9 多線程 
 3.6 DLL編程 
  3.6.1 什么是DLL 
  3.6.2 編寫一個簡單的DLL程序 
  3.6.3 對DLL程序的調(diào)用方法一 
  3.6.4 對DLL程序的調(diào)用方法二 
 3.7 遠(yuǎn)程線程 
  3.7.1 DLL注入 
  3.7.2 DLL卸載 
  3.7.3 無DLL的代碼注入 
 3.8 總結(jié) 
第4章 加密與解密 
 4.1 PE文件結(jié)構(gòu) 
  4.1.1 PE文件結(jié)構(gòu)全貌 
  4.1.2 MZ頭部 
  4.1.3 PE頭部 
  4.1.4 節(jié)表 
  4.1.5 節(jié)表數(shù)據(jù) 
 4.2 詳解PE文件結(jié)構(gòu) 
  4.2.1 DOS頭部詳解IMAGE_DOS_HEADER 
  4.2.2 PE頭部詳解IMAGE_NT_HEADERS 
  4.2.3 IAMGE_FILE_HEADER 
  4.2.4 IMAGE_OPTIONAL_HEADER 
  4.2.5 節(jié)區(qū)詳解IMAGE_SECTION_HEADER 
  4.2.6 與PE結(jié)構(gòu)相關(guān)的3種地址 
  4.2.7 3種地址的轉(zhuǎn)換 
 4.3 PE查看器 
 4.4 簡單的查殼工具 
 4.5 地址轉(zhuǎn)換器 
 4.6 添加節(jié)區(qū) 
  4.6.1 手動添加一個節(jié)區(qū) 
  4.6.2 通過編程添加節(jié)區(qū) 
 4.7 破解基礎(chǔ)知識及調(diào)試API函數(shù)的應(yīng)用 
  4.7.1 CrackMe程序 
  4.7.2 用OD破解CrackMe 
 4.8 文件補(bǔ)丁及內(nèi)存補(bǔ)丁 
  4.8.1 文件補(bǔ)丁 
  4.8.2 內(nèi)存補(bǔ)丁 
 4.9 調(diào)試API函數(shù)的使用 
  4.9.1 常見的3種斷點(diǎn)方法 
  4.9.2 調(diào)試API函數(shù)及相關(guān)結(jié)構(gòu)體介紹 
  4.9.3 判斷是否處于被調(diào)試狀態(tài) 
  4.9.4 斷點(diǎn)異常函數(shù) 
  4.9.5 調(diào)試事件 
  4.9.6 調(diào)試循環(huán) 
  4.9.7 內(nèi)存的操作 
  4.9.8 線程環(huán)境相關(guān)API及結(jié)構(gòu)體 
 4.10 打造一個密碼顯示器 
 4.11 總結(jié) 
第5章 HOOK編程 
 5.1 HOOK知識前奏 
 5.2 內(nèi)聯(lián)鉤子——Inline Hook 
  5.2.1 Inline Hook的原理 
  5.2.2 Inline Hook的實(shí)現(xiàn) 
  5.2.3 HOOK MessageBoxA 
  5.2.4 HOOK CreateProcessW 
  5.2.5 7字節(jié)Inline Hook 
  5.2.6 Inline Hook的注意事項 
 5.3 導(dǎo)入地址表鉤子——IAT HOOK 
  5.3.1 導(dǎo)入表簡介 
  5.3.2 導(dǎo)入表的數(shù)據(jù)結(jié)構(gòu)定義 
  5.3.3 手動分析導(dǎo)入表 
  5.3.4 枚舉導(dǎo)入地址表 
  5.3.5 IAT HOOK介紹 
  5.3.6 IAT HOOK之CreateFileW() 
 5.4 Windows鉤子函數(shù) 
  5.4.1 鉤子原理 
  5.4.2 鉤子函數(shù) 
  5.4.3 鍵盤鉤子實(shí)例 
  5.4.4 使用鉤子進(jìn)行DLL注入 
 5.5 總結(jié) 
第6章 黑客編程剖析 
 6.1 惡意程序剖析 
  6.1.1 惡意程序的自啟動 
  6.1.2 木馬的配置生成與反彈端口 
  6.1.3 代碼實(shí)現(xiàn)剖析 
 6.2 簡單病毒剖析 
  6.2.1 病毒的感染剖析 
  6.2.2 縫隙搜索的實(shí)現(xiàn) 
  6.2.3 感染目標(biāo)程序文件剖析 
  6.2.4 添加感染標(biāo)志 
  6.2.5 自刪除功能的實(shí)現(xiàn) 
 6.3 隱藏DLL文件 
  6.3.1 啟動WinDBG 
  6.3.2 調(diào)試步驟 
  6.3.3 編寫枚舉進(jìn)程中模塊的函數(shù) 
  6.3.4 指定模塊的隱藏 
 6.4 安全工具開發(fā)基礎(chǔ) 
  6.4.1 行為監(jiān)控工具開發(fā)基礎(chǔ) 
  6.4.2 專殺工具 
  6.4.3 U盤防御軟件 
  6.4.4 目錄監(jiān)控工具 
 6.5 引導(dǎo)區(qū)解析 
  6.5.1 通過WinHex來手動解析引導(dǎo)區(qū) 
  6.5.2 通過程序解析MBR 
  6.5.3 自定義MBR的各種結(jié)構(gòu)體 
  6.5.4 解析MBR的程序?qū)崿F(xiàn) 
  6.6 加殼與脫殼 
  6.6.1 手動加殼 
  6.6.2 編寫簡單的加殼工具 
第7章 最后的旅程——簡單驅(qū)動開發(fā)及逆向 
 7.1 驅(qū)動版的“Hello World” 
  7.2 驅(qū)動下的進(jìn)程遍歷 
  7.2.1 配置VMware和WinDbg進(jìn)行驅(qū)動調(diào)試 
  7.2.2 EPROCESS和手動遍歷進(jìn)程 
  7.2.3 編程實(shí)現(xiàn)進(jìn)程遍歷 
 7.3 HOOK SSDT(系統(tǒng)服務(wù)描述表) 
  7.3.1 SSDT簡介 
  7.3.2 HOOK SSDT 
  7.3.3 Inline HOOK SSDT 
 7.4 應(yīng)用程序與驅(qū)動程序的通信 
  7.4.1 創(chuàng)建設(shè)備 
  7.4.2 應(yīng)用程序與驅(qū)動程序的通信方式 
  7.4.3 應(yīng)用程序與驅(qū)動程序的通信實(shí)例 
 7.5 C語言代碼逆向基礎(chǔ) 
  7.5.1 函數(shù)的識別 
  7.5.2 if…else…分支結(jié)構(gòu) 
  7.5.3 switch分支結(jié)構(gòu) 
  7.5.4 for循環(huán)結(jié)構(gòu) 
  7.5.5 do…while與while…循環(huán)結(jié)構(gòu) 
參考文獻(xiàn)

章節(jié)摘錄

版權(quán)頁:   插圖:   從圖6—6中看到了反彈木馬的工作原理。通常情況下攻擊者的IP地址是變動的,那么“小白”是如何連接到“黑客”的主機(jī)的呢?一般情況下黑客要把自己的IP地址動態(tài)地保存到某個固定的IP地址下(比如保存到網(wǎng)上FTP空間中),然后木馬通過讀取該IP地址下保存的黑客的IP地址進(jìn)行連接,同樣用圖來說明,如圖6—7所示。 從圖6—7中可以看出,黑客開啟木馬客戶端后,首先會更新服務(wù)器上保存著的自己的IP地址?!靶“住睍プx取服務(wù)器中保存著的黑客的IP地址,然后“小白”去連接“黑客”的主機(jī),主動地讓黑客去控制它,這就是木馬中的“自動上線”。關(guān)于反彈端口的介紹就到這里。有了思路,通過前面學(xué)習(xí)的Wmsock的知識自己可以試著實(shí)現(xiàn)一下,這里就不做更多的介紹了。 二、木馬的配置生成與配置信息的保護(hù) 木馬寫好以后,通常會發(fā)布一個程序,在木馬程序中通過配置一些相關(guān)的內(nèi)容和參數(shù)后,會生成一個木馬的服務(wù)器端程序。為什么木馬的客戶端會生成木馬的服務(wù)端程序呢?其實(shí)木馬的客戶端和服務(wù)端本來就是兩個程序,只是通過某種方式使其成為了一個文件而已。讓木馬的服務(wù)端和客戶端成為一個文件可以有多種方法,常見的有資源法和文件附加數(shù)據(jù)法兩種。 在PE文件結(jié)構(gòu)中有一個數(shù)據(jù)目錄稱作資源,資源可以是圖片、圖標(biāo)、音頻、視頻等內(nèi)容。資源法也就是把服務(wù)端以資源的形式連接到客戶端的程序中,然后客戶端通過一些操作資源的函數(shù)將資源讀取出來并生成文件。文件附加數(shù)據(jù)法是將服務(wù)端保存到客戶端的末尾,然后通過文件操作函數(shù),直接將服務(wù)端讀取出來并生成新的文件。 反彈端口連接是要訪問某個固定的IP地址去讀取保存著黑客的動態(tài)IP地址的信息,而這個固定的IP地址是保存在木馬程序中的。也就是說,我們的客戶端在把服務(wù)端生成以后,會把一些配置信息寫入服務(wù)端程序的指定位置中,服務(wù)端程序會讀取指定位置的信息來進(jìn)行使用。配置信息的寫入與讀出必須要一致,否則就沒有意義了。 對于配置信息中往往會存在一些比較敏感的信息,比如郵箱賬號、密碼等內(nèi)容。比如,我們在分析盜QQ的木馬時會發(fā)現(xiàn)接收QQ密碼的郵箱,由于現(xiàn)在很多郵箱都需要SMTP的驗(yàn)證,因此在配置信息中也會看到郵箱的賬號及密碼信息。這樣配置信息中的這些敏感信息很容易被人獲取到,甚至接收QQ密碼郵箱的賬號和密碼也會被別人獲取到,真是“偷雞不成蝕把米”。對于此類情況,正確的做法是對配置信息進(jìn)行加密。也就是說客戶端往服務(wù)端中寫配置信息前需要加密后再寫入,而服務(wù)端在使用這些信息前需要先解密再使用。 關(guān)于配置生成客戶端與配置信息的保護(hù)上面已經(jīng)介紹得差不多了,接下來應(yīng)該把重點(diǎn)放在代碼的實(shí)現(xiàn)上了。我們的代碼是模擬實(shí)現(xiàn)上面的內(nèi)容,而不是真的去生成木馬。

編輯推薦

1、講解windows安全和網(wǎng)絡(luò)編程知識;2、講解內(nèi)核編程以及軟件逆向知識;

圖書封面

圖書標(biāo)簽Tags

評論、評分、閱讀與下載


    C++黑客編程揭秘與防范 PDF格式下載


用戶評論 (總計92條)

 
 

  •   這是本適合黑客入門的書 當(dāng)然是編程等深入方向 如果抱著學(xué)習(xí)各種黑機(jī)軟件等無聊思想的就算了 買了你也看不了
  •   黑客編程,超值,需要一定基礎(chǔ)
  •   幾乎是手把手的指導(dǎo),黑客兩個字很能激起編程學(xué)習(xí)者的興趣,確實(shí)能學(xué)到很多有意思的東西。
  •   了解了黑客的方法,才能更好的防范,
  •   學(xué)習(xí)黑客方便的知識入門不錯
  •   對一些編程入門的新手來說是不錯的選擇
  •   介紹了一些常用的黑客方法,但一般書籍是不會提及的
  •   好書,值得學(xué)習(xí),黑客入門
  •   這本書只能算是入門的一種簡介把.看了一下講解下原理在用示例證明.30RMB挺值得的 特別是在促銷時候買
  •   注重應(yīng)用,只是講解了怎么做,不夠詳細(xì)
  •   計算機(jī)安全類的一本書讀起來挺不錯的
  •   講解得很詳細(xì),好書。
  •   正在看前面幾章,易懂,但切合實(shí)用,是本好書~
  •   讀過該書,屬于入門級的書籍。簡單易懂,對于入門讀者非常適合。幫兩個朋友各買了一本。
  •   里邊涉及到的知識還是很值得去研究的
  •   學(xué)會了很多新的知識,這是其他教程沒有的
  •   主要講的是win32內(nèi)部調(diào)用的一些內(nèi)容
  •   這本書比較基礎(chǔ),用來入門比較好。如果想深入了解,還需要:自己實(shí)踐
  •   讓我學(xué)到啦一些基礎(chǔ)的東西
  •   要有一定的c/c++基礎(chǔ)才適合看,最好有winapi經(jīng)驗(yàn)
  •   正在讀,印刷有一個地方有點(diǎn)小問題,但不影響閱讀,內(nèi)容不錯至于里面的代碼還沒試過
  •   書不厚,沒幾天就能讀完,希望 能從不同角度了解C++
  •   實(shí)例非常好
  •   很不錯這本書,挺適合我的
  •   不錯,挺全的,稍微有點(diǎn)C++基礎(chǔ)就能看懂了!
  •   賣家發(fā)貨很效率,書有點(diǎn)薄,但內(nèi)容很精彩。
  •   書比較薄 內(nèi)容還是不錯的
  •   書不錯,就是郵政的快遞太**包裝全壞了,而且說好的貨到刷卡,打電話來說刷不了卡要不要送態(tài)度極其惡劣。
  •   對于感興趣的人來說很不錯,很好的書
  •   作為新手的入門以及深入來說是本很好的書
  •   書的紙張很好,就是書太薄了點(diǎn)
  •   還在準(zhǔn)備讀,在學(xué)習(xí)C++中……
  •   不錯的一本書,正在學(xué)習(xí)。
  •   這本書寫的很好 通俗易懂 理論與實(shí)際相結(jié)合 思路很清晰
  •   不錯啊痛苦
  •   還不錯&;hellip;&;hellip;&;hellip;&;hellip;&;hellip;&;hellip;&;hellip;&;hellip;
  •   寫的很詳細(xì),入門書籍。
  •   印刷不錯,紙張也不錯
  •   覺得不錯就買下了。翻了一下,恩呢!
  •   不錯當(dāng)當(dāng)網(wǎng)很好 買東西包裝都不錯~~
  •   第二次買了,朋友要的。
  •   很好比較實(shí)用,可以借鑒借鑒
  •   需要一定的C++功底
  •   講的還行 但是面窄
  •   不錯,慢慢看!
  •   看的挺好
  •   在學(xué)習(xí)不用看就很好因?yàn)樵谫I的時候就已經(jīng)確定是好貨了當(dāng)當(dāng)大品牌值得信賴
  •   學(xué)會了很多新的知識
  •   不錯,包裝非常好
  •   額,為什么紙質(zhì)不是很好呢???
  •   這本比較深奧
  •   還沒看,看完追加評論
  •   棒極了嗎么候車廳級長
  •   挺不錯的呵
  •   還不錯,但是挺薄的啊。。。
  •   暫時還沒仔細(xì)看,好像還不錯。
  •   我想學(xué)習(xí)計算機(jī)不過這本書是黑客儒門我只是看看不是真正的想做違法的事,
  •   簡單的原理,還要自己多理解。
  •   這個還是不錯的,對于初學(xué)者很適合,整體上很好,書的內(nèi)容并沒有很新穎的地方,而且還是過于偏向基礎(chǔ)了,可以適當(dāng)?shù)奶砑痈脤拥臇|西,讓書的內(nèi)容豐富起來,循序漸進(jìn)寫書會更好,總之我個人還是很滿意
  •   書不錯,就是內(nèi)容偏基礎(chǔ),可以適當(dāng)?shù)膸胄└钊氲牡臇|西
  •   書本質(zhì)量還不錯,就是內(nèi)容有些深,沒有一定匯編語言基礎(chǔ)的人可能會看不懂
  •   不僅紙質(zhì)不好,而且書角還翹起,不給力,還沒看,期待內(nèi)容值得一看
  •   只是書角有點(diǎn)歪了,發(fā)貨速度快,頂!
  •   內(nèi)容還不錯 但是才翻幾頁就看到幾個筆誤
  •   大致翻了一下,內(nèi)容上還行。入門
  •   本書還可以,是本好書
  •   哈不錯 樹影好的 舒婷愛哦de
  •   可以好好看看。
  •   給弟弟買的 還沒有看呢 呵呵
  •   C++黑客編程揭秘與防范,介紹了一些黑客編程基礎(chǔ)
  •   C++黑客編程揭秘與防范

    一般

    沒有源碼
  •   這本書是比較基礎(chǔ)的 介紹基礎(chǔ)的網(wǎng)絡(luò)編程 當(dāng)然對于沒有這方面基礎(chǔ)的人來說還是值得一看的
  •   書一般,內(nèi)容只是粗略介紹編程的方法,只有265頁
  •   還沒看 貌似不適合入門
  •   要看懂這本書,需要有C++語言基礎(chǔ),前面基礎(chǔ)講的不是很細(xì)
  •   基本就是網(wǎng)上一些資料的羅列,不怎么樣,沒幫助
  •   作為黑客入門級教材還說的過去,但是對代碼部分的描述過于簡單,有些例子只給出了部分代碼,剩余部分需要自己從前例中尋找,如果不自習(xí)研究研究還真不知道完整的代碼是什么。如果能隨書帶一張光盤就完美了。從網(wǎng)上下載的配套代碼也不夠詳細(xì)。另外就是書里的內(nèi)容過于老舊,有些include內(nèi)容在現(xiàn)在來看根本就是錯的對參數(shù)的介紹過于冗雜,有些沒必要說的東西說的太詳細(xì),而需要仔細(xì)說明或舉例說明的東西又一帶而過總而言之,在為數(shù)不多的黑客教材里,還算可以
  •   內(nèi)容太廣,包含的多,但是,講的都淺。
  •   已經(jīng)看了一多半了,內(nèi)容很易懂
  •   書上的教程都是代碼,沒有范例,非常難領(lǐng)會
  •   送貨快,書的質(zhì)量比較好,就是里面的內(nèi)容相對少了點(diǎn)
  •   值得一讀,還是蠻不錯的一本書
  •   看不懂,因?yàn)閷W(xué)習(xí)的東西還是比較少的,好書吧
  •   如果你想要成為一個黑客,如果你想知道常見的黑客技術(shù)是如何實(shí)現(xiàn)的,我相信這本書是一個好的選擇
  •   不錯,入門很好,很喜歡
  •   內(nèi)容不錯,可以用做c++進(jìn)階
  •   已向幾位老年朋友介紹了,防備美國cracker攻擊。
  •   這本書主要介紹了hook技術(shù)與實(shí)現(xiàn),還算不錯的基礎(chǔ)書籍。
  •   內(nèi)容銜接緊密,章節(jié)清晰
  •   學(xué)習(xí)黑客編程
  •   日````
  •     此書我非常喜歡,很多別人不喜歡告訴別人的技術(shù)這里都有。
      
      此書應(yīng)該很負(fù)責(zé)。
      
      大家可以比較一下同類書籍就知道了。
      
      書中的例子都很短,閱讀不會有負(fù)擔(dān)。
      
      書中的例子都很短,閱讀不會有負(fù)擔(dān)。
 

250萬本中文圖書簡介、評論、評分,PDF格式免費(fèi)下載。 第一圖書網(wǎng) 手機(jī)版

京ICP備13047387號-7