加密與解密

出版時間:2008-7  出版社:電子工業(yè)出版社  作者:段鋼  頁數(shù):543  
Tag標(biāo)簽:無  

內(nèi)容概要

本書以加密與解密為切入點,講述了軟件安全領(lǐng)域許多基礎(chǔ)知識和技能,如調(diào)試技能、逆向分析、加密保護(hù)、外殼開發(fā)、虛擬機設(shè)計等。讀者在掌握本書的內(nèi)容,很容易在漏洞分析、安全編程、病毒分析、軟件保護(hù)等領(lǐng)域擴展,這些知識點都是相互的,彼此聯(lián)系。國內(nèi)高校對軟件安全這塊領(lǐng)域教育重視程度還不夠,許多方面還是空白,而近年來許多企業(yè)對軟件安全技術(shù)人才需求量越來越大。從就業(yè)角度來說,掌握這方面技術(shù),可以提高自身的競爭能力;從個人成長角度來說,研究軟件安全技術(shù)有助于掌握一些系統(tǒng)底層知識,是提升職業(yè)技能的重要途徑。作為一名合格的程序員,除了掌握需求分析、設(shè)計模式等外,如能掌握一些系統(tǒng)底層知識,熟悉整個系統(tǒng)的底層結(jié)構(gòu),對自己的工作必將獲益良多。    本書可以作為學(xué)?;蚺嘤?xùn)機構(gòu)的軟件安全輔助教材,是安全技術(shù)愛好者、調(diào)試人員、程序開發(fā)人員不可多得的一本好書。

作者簡介

本書由看雪軟件安全網(wǎng)站(看雪學(xué)院)站長段鋼主持編著。在本書的編寫過程中,參與創(chuàng)作的每位作者傾力將各自擅長的專業(yè)技術(shù)毫無保留地奉獻(xiàn)給廣大讀者,使得本書展現(xiàn)出了極具價值的豐富內(nèi)容。如果讀者在閱讀本書后,能夠感受到管窺技術(shù)奧秘帶來的內(nèi)心的喜悅,并愿意與大家分享這份感受,這是作者最大的愿望。主編:段鋼編委:(按章節(jié)順序排列)Blowfish,沈曉斌,丁益青,單海波,王勇,趙勇,唐植明,softworm,afanty,李江濤,林子深,印豪,馮典,羅翼,林小華,郭春楊Blowfish看雪首席版主。經(jīng)驗豐富的大齡程序員。1992年上大學(xué)始接觸電腦,1997年讀研期間接觸網(wǎng)絡(luò)并自學(xué)加密解密技術(shù),一發(fā)不可收拾,其時常在教育網(wǎng)BBS灌水。喜多方涉獵,亦能抓住一點深入鉆研,對逆向分析技術(shù)尤為癡迷。多年來常在看雪論壇灌水,見證了論壇的風(fēng)風(fēng)雨雨,也結(jié)識了一些不錯的朋友。參與章節(jié):第5章  5.1 序列號保護(hù)方式第14章  14.5 軟件保護(hù)的若干忠告沈曉斌看雪核心專家團(tuán)隊成員。看雪論壇ID為cnbragon,現(xiàn)攻讀密碼學(xué)專業(yè)碩士學(xué)位。最初的愛好是網(wǎng)絡(luò)安全,進(jìn)而研究軟件的逆向工程,對密碼學(xué)的興趣由此而發(fā)。對密碼學(xué)的各個方面都有所涉獵,尤其擅長密碼學(xué)在軟件保護(hù)中的應(yīng)用研究。獨立完成了一個加密算法庫CryptoFBC。譯作有《程序員密碼學(xué)》。參與章節(jié):第6章  加密算法丁益青看雪技術(shù)專家。看雪論壇ID為cyclotron,復(fù)旦大學(xué)在讀碩士研究生,復(fù)旦大學(xué)日月光華BBS黑客與系統(tǒng)安全版版主,致力于Windows環(huán)境下可執(zhí)行文件的加密解密與逆向工程研究。主要作品有EmbedPE、IDT Protector、PEunLOCK等。參與章節(jié):第8章  8.3 偽編譯單海波看雪核心專家團(tuán)隊成員。看雪論壇ID為tankaiha,生于六朝古都南京,碩士研究生畢業(yè),現(xiàn)任某研究所工程師,工作之余好與計算機為伴。2002年接觸匯編并熱衷于病毒技術(shù)學(xué)習(xí),后偶遇看雪學(xué)院,遂終日游戲于程序加密與解密,不可自拔。2006年與kanxue及壇中數(shù)位好友成立.net安全小組DST(Dotnet Reverse Team),共同探討.net平臺下的軟件安全技術(shù)。參與章節(jié):第9章  .Net平臺加解密王勇看雪技術(shù)專家。畢業(yè)于石油大學(xué)(華東)計算機科學(xué)與技術(shù)專業(yè)。擅長C/C++、ASM和驅(qū)動程序開發(fā)。對面向?qū)ο蟪绦蛟O(shè)計和Windows系統(tǒng)底層的研究有豐富的經(jīng)驗。很高興這次能與各位高手一起合作,也希望能與編程愛好者及加密解密愛好者更多的交流。參與章節(jié):第10章  10.15 編寫PE分析工具趙勇看雪技術(shù)專家。來自江蘇江陰,計算機業(yè)余愛好者,興趣愛好廣泛。參與章節(jié):第13章  13.6 附加數(shù)據(jù)唐植明看雪技術(shù)核心權(quán)威??囱┱搲疘D為DiKeN,2002年畢業(yè)于蘭州大學(xué),計算機科學(xué)與技術(shù)專業(yè)。愛好逆向工程,iPB(inside Pandora's Box)組織創(chuàng)始人(在這兒更是要感謝組織的兄弟姐妹們,大家團(tuán)結(jié)友好,互相學(xué)習(xí),為iPB的成功作出了巨大努力),曾在2002年編寫過《加密與解密實戰(zhàn)攻略》算法部分。參與章節(jié):第13章  13.10 靜態(tài)脫殼softworm看雪技術(shù)天才。70后一代,非計算機專業(yè)的業(yè)余愛好者。1998年開始接觸逆向與破解,迄今已近10年,終于達(dá)到了“知道自己不知道”的境界。感興趣的方向包括殼、虛擬機保護(hù)、病毒引擎、Rootkit。后兩項還處于只知道名字的水平,愿與有共同愛好的朋友一起學(xué)習(xí)。參與章節(jié):第13章  13.9.2 Thmedia的SDK分析afanty看雪技術(shù)專家。多年專業(yè)研究軟件加解密技術(shù)。參與章節(jié):第14章  14.1 防范算法求逆李江濤看雪技術(shù)核心權(quán)威。看雪論壇ID為ljtt,喜歡學(xué)習(xí)編程技術(shù),常用編程語言為VC/MASM。對PB、VFP的反編譯有深入的研究,寫過DePB、FoxSpy等程序。平時大多數(shù)時間都在電腦上耕作,最大的希望是能夠領(lǐng)悟到編程的精髓,寫一個自己比較滿意的作品。參與章節(jié):第14章  14.2.2 SMC技術(shù)實現(xiàn)林子深看雪技術(shù)導(dǎo)師。看雪論壇ID為forgot,1989年生,看雪論壇外殼開發(fā)小組組長。熟悉Win32平臺和80x86匯編,擅長代碼的逆向,對殼的研究比較多。參與章節(jié):第12章  12.4.1 虛擬機介紹第14章  14.2.4 簡單的多態(tài)變形技術(shù)第15章  反跟蹤技術(shù)印豪看雪資深技術(shù)權(quán)威??囱┱搲疘D為Hying,擅長加殼技術(shù),擁有獨立創(chuàng)作的加密利器。參與章節(jié):第16章  外殼編寫基礎(chǔ)馮典看雪技術(shù)天才??囱┱搲疘D為bughoho,1990年生,來自四川,看雪論壇虛擬機開發(fā)小組組長,目前工作主要是從事逆向研究。個人自述:記得14歲時家里買了臺電腦,使我對編程有了極大的興趣。16歲上高一時已對讀書徹底不感興趣,于是退學(xué)(現(xiàn)在的我才發(fā)現(xiàn),我并不是對讀書感興趣,而是對教育制度的反感)。后來聽了家人的意見,轉(zhuǎn)讀四川新華電腦學(xué)校,感受頗多,一月之后便退學(xué),至于為什么我就不說了。17歲時,一個偶然的機會,使我對逆向有了濃厚的興趣,并接觸到看雪論壇,也認(rèn)識到了kanxue。承蒙kanxue抬舉,讓我執(zhí)筆虛擬機這一章,由于我并不是一個才高八斗的人,所以寫得也沒有那么的妙筆生花、鬼斧神工了。參與章節(jié):第17章  虛擬機的設(shè)計

書籍目錄

前言第1篇 基礎(chǔ)篇 第1章 基礎(chǔ)知識   1.1 文本字符   1.1.1 字節(jié)存儲順序   1.1.2 ASCII與Unicode字符集  1.2 WINDOWS 操作系統(tǒng)   1.2.1 Win API簡介   1.2.2 常用Win32 API函數(shù)   1.2.3 什么是句柄   1.2.4 Windows 9x與Unicode   1.2.5 Windows NT/2000/XP與Unicode   1.2.6 Windows 消息機制  1.3 保護(hù)模式簡介   1.3.1 虛擬內(nèi)存   1.3.2 保護(hù)模式的權(quán)限級別  1.4 認(rèn)識PE格式第2篇 調(diào)試篇 第2章 動態(tài)分析技術(shù) 33  2.1 OLLYDBG調(diào)試器   2.1.1 OllyDbg界面   2.1.2 OllyDbg的配置   2.1.3 加載程序   2.1.4 基本操作   2.1.5 斷點   2.1.6 插件   2.1.7 Run trace   2.1.8 Hit trace   2.1.9 符號調(diào)試技術(shù)   2.1.10 OllyDbg常見問題  2.2 SOFTICE調(diào)試器 第3章 靜態(tài)分析技術(shù) 31  3.1 文件類型分析   3.1.1 PEiD工具   3.1.2 FileInfo工具  3.2 靜態(tài)反匯編   3.2.1 打開文件   3.2.2 IDA的配置   3.2.3 IDA主窗口界面   3.2.6 交叉參考   3.2.7 參考重命名   3.2.8 標(biāo)簽的用法   3.2.9 進(jìn)制的轉(zhuǎn)換   3.2.10 代碼和數(shù)據(jù)轉(zhuǎn)換   3.2.11 字符串   3.2.12 數(shù)組   3.2.13 結(jié)構(gòu)體   3.2.14 枚舉類型   3.2.15 堆棧變量   3.2.16 IDC腳本   3.2.17 FLIRT   3.2.18 插件   3.2.19 其他功能   3.2.20 小結(jié)    3.3 可執(zhí)行文件的修改    3.4 靜態(tài)分析技術(shù)應(yīng)用實例      3.4.1 解密初步   3.4.2 逆向工程初步 第4章 逆向分析技術(shù) 35  4.1 啟動函數(shù)  4.2 函數(shù)   4.2.1 函數(shù)的識別   4.2.2 函數(shù)的參數(shù)   4.2.3 函數(shù)的返回值  4.3 數(shù)據(jù)結(jié)構(gòu)   4.3.1 局部變量   4.3.2 全局變量   4.3.3 數(shù)組  4.4 虛函數(shù)  4.5 控制語句   4.5.1 IF-THEN-ELSE語句   4.5.2 SWITCH-CASE語句   4.5.3 轉(zhuǎn)移指令機器碼的計算   4.5.4 條件設(shè)置指令   4.5.5 純算法實現(xiàn)邏輯判斷  4.6 循環(huán)語句  4.7 數(shù)學(xué)運算符   4.7.1 整數(shù)的加法和減法   4.7.2 整數(shù)的乘法   4.7.3 整數(shù)的除法  4.8 文本字符串   4.8.1 字符串存儲格式   4.8.2 字符尋址指令   4.8.3 字母大小寫轉(zhuǎn)換   4.8.4 計算字符串的長度  4.9 指令修改技巧第3篇 解密篇 第5章 常見的演示版保護(hù)技術(shù) 34  5.1 序列號保護(hù)方式   5.1.1 序列號保護(hù)機制   5.1.2 如何攻擊序列號保護(hù)   5.1.3 字符串比較形式   5.1.4 注冊機制作  5.2 警告(NAG)窗口  5.3 時間限制   5.3.1 計時器   5.3.2 時間限制   5.3.3 拆解時間限制保護(hù)  5.4 菜單功能限制   5.4.1 相關(guān)函數(shù)   5.4.2 拆解菜單限制保護(hù)  5.5 KEYFILE保護(hù)   5.5.1 相關(guān)API函數(shù)   5.5.2 拆解KeyFile保護(hù)  5.6 網(wǎng)絡(luò)驗證   5.6.1 相關(guān)函數(shù)   5.6.2 網(wǎng)絡(luò)驗證破解一般思路  5.7 CD-CHECK   5.7.1 相關(guān)函數(shù)   5.7.2 拆解光盤保護(hù)  5.8 只運行一個實例   5.8.1 實現(xiàn)方案   5.8.2 實例  5.9 常用斷點設(shè)置技巧 第6章 加密算法   6.1 單向散列算法   6.1.1 MD5算法   6.1.2 SHA算法   6.1.3 小結(jié)  6.2 對稱加密算法   6.2.1 RC4流密碼   6.2.2 TEA算法   6.2.3 IDEA算法   6.2.4 BlowFish算法   6.2.5 AES算法   6.2.6 對稱加密算法小結(jié)  6.3 公開密鑰加密算法   6.3.1 RSA算法   6.3.2 ElGamal公鑰算法   6.3.3 DSA數(shù)字簽名算法   6.3.4 橢圓曲線密碼編碼學(xué)  6.4 其他算法   6.4.1 CRC32算法   6.4.2 Base64   6.5 常見加密庫接口及其識別   6.5.1 Miracl大數(shù)運算庫   6.5.2 FGInt   6.5.4 其它加密算法庫介紹第4篇 語言和平臺篇 第7章 DELPHI程序  7.1 認(rèn)識DELPHI  7.2 DEDE反編譯器  7.3 按鈕事件代碼  7.4 模塊初始化與結(jié)束化 第8章 VISUAL BASIC程序   8.1 基礎(chǔ)知識   8.1.1 字符編碼方式   8.1.2 編譯模式  8.2 自然編譯(NATIVE)   8.2.1 相關(guān)VB函數(shù)   8.2.2 VB程序比較方式  8.3 偽編譯(PCODE)(cyclotron編寫)   8.3.1 虛擬機與偽代碼   8.3.2 動態(tài)分析VB P-code程序   8.3.3 偽代碼的綜合分析   8.3.4 VB P-code攻擊實戰(zhàn) 第9章 .NET平臺加解密(tankaiha 編寫) 51  9.1 .NET概述   9.1.1 什么是.Net   9.1.2 幾個基本概念   9.1.3 第一個.Net程序  9.2 MSIL與元數(shù)據(jù)   9.2.1 PE結(jié)構(gòu)的擴展   9.2.2 .Net下的匯編MSIL   9.2.3 MSIL與元數(shù)據(jù)的結(jié)合  9.3 代碼分析技術(shù)   9.3.1 靜態(tài)分析   9.3.2 動態(tài)調(diào)試   9.3.3 代碼修改  9.4 代碼保護(hù)技術(shù)及其逆向   9.4.1 強名稱   9.4.2 名稱混淆   9.4.3 流程混淆   9.4.4 壓縮   9.4.5 加密   9.4.6 其它保護(hù)手段  9.5 深入.NET   9.5.1 反射與CodeDOM   9.5.2 Unmaganed API   9.5.3 Rotor、MONO與.Net內(nèi)核第5篇 系統(tǒng)篇 第10章 PE文件格式 54  10.1 PE的基本概念   10.1.1 基地址   10.1.2 相對虛擬地址   10.1.3 文件偏移地址   10.2 MS-DOS頭部  10.3 PE文件頭   10.3.1 Signature字段   10.3.2 IMAGE_FILE_HEADER 結(jié)構(gòu)   10.3.3 Optional Header   10.4 區(qū)塊   10.4.1 區(qū)塊表   10.4.2 各種區(qū)塊的描述   10.4.3 區(qū)塊的對齊值   10.4.4 文件偏移與虛擬地址轉(zhuǎn)換    10.5 輸入表   10.5.1 輸入函數(shù)的調(diào)用   10.5.2 輸入表結(jié)構(gòu)   10.5.3 輸入地址表   10.5.4 輸入表實例分析  10.6 綁定輸入  10.7 輸出表   10.7.1 輸出表結(jié)構(gòu)   10.7.2 輸出表結(jié)構(gòu)實例分析  10.8 基址重定位   10.8.1 基址重定位概念   10.8.2 基址重定位結(jié)構(gòu)定義   10.8.3 基址重定位結(jié)構(gòu)實例分析  10.9 資源   10.9.1 資源結(jié)構(gòu)   10.9.2 資源結(jié)構(gòu)實例分析   10.9.3 資源編輯工具  10.10 TLS初始化  10.11 調(diào)試目錄  10.12 延遲裝入數(shù)據(jù)  10.13 程序異常數(shù)據(jù)  10.14 .NET頭部  10.15 PE分析工具編寫   10.15.1 文件格式檢查   10.15.2 FileHeader和OptionalHeader內(nèi)容的讀取   10.15.3 得到數(shù)據(jù)目錄表信息   10.15.4 得到區(qū)塊表信息   10.15.5 得到輸出表信息   10.15.6 得到輸入表信息 第11章 結(jié)構(gòu)化異常處理 11  11.1 基本概念   11.1.1 異常列表   11.1.2 異常處理的基本過程   11.1.3 SEH的分類  11.2 SEH相關(guān)數(shù)據(jù)結(jié)構(gòu)   11.2.1 TEB結(jié)構(gòu)   11.2.2 EXCEPTION_REGISTRATION結(jié)構(gòu)   11.2.3 EXCEPTION_POINTERS、EXCEPTION_RECORD、CONTEXT  11.3 異常處理回調(diào)函數(shù)第6篇 脫殼篇  第12章 專用加密軟件 11  12.1 認(rèn)識殼   12.1.1 殼的概念   12.1.2 壓縮引擎  12.2 壓縮殼   12.2.1 UPX   12.2.2 ASPacK    12.3 加密殼   12.3.1 ASProtect   12.3.2 Armadillo   12.3.3 EXECryptor   12.3.4 Themida  12.4 虛擬機保護(hù)軟件   12.4.1 虛擬機介紹   12.4.2 VMProtect簡介 第13章 脫殼技術(shù)64  13.1 基礎(chǔ)知識   13.1.1 殼的加載過程   13.1.2 脫殼機   13.1.3 手動脫殼  13.2 尋找OEP   13.2.1 根據(jù)跨段指令尋找OEP   13.2.2 用內(nèi)存訪問斷點找OEP   13.2.3 根據(jù)堆棧平衡原理找OEP   13.2.4 根據(jù)編譯語言特點找OEP  13.3 抓取內(nèi)存映像   13.3.1 Dump原理   13.3.2 反DUMP技術(shù)  13.4 重建輸入表   13.4.1 輸入表重建的原理   13.4.2 確定IAT的地址和大小   13.4.3 根據(jù)IAT重建輸入表   13.4.4 ImportREC重建輸入表   13.4.5 輸入表加密概括  13.5 DLL文件脫殼   13.5.1 尋找OEP   13.5.2 Dump映像文件   13.5.3 重建DLL的輸入表   13.5.4 構(gòu)造重定位表  13.6 附加數(shù)據(jù)  13.7 PE文件的優(yōu)化  13.8 壓縮殼   13.8.1 UPX外殼   13.8.2 ASPack外殼  13.9 靜態(tài)脫殼   13.9.1 外殼Loader的分析   13.9.2 編寫靜態(tài)脫殼器  13.10 加密殼   13.10.1 ASProtect   13.10.2 Thmedia的SDK分析第7篇 保護(hù)篇 第14章 軟件保護(hù)技術(shù) 26  14.1 防范算法求逆   14.1.1 基本概念   14.1.2 堡壘戰(zhàn)術(shù)   14.1.3 游擊戰(zhàn)術(shù)  14.2 抵御靜態(tài)分析   14.2.1 花指令   14.2.2 SMC技術(shù)實現(xiàn)   14.2.3 信息隱藏   14.2.4 簡單多態(tài)變形技術(shù)  14.3 文件完整性檢驗   14.3.1 磁盤文件校驗實現(xiàn)   14.3.2 校驗和(Checksum)   14.3.3 內(nèi)存映像校驗  14.4 代碼與數(shù)據(jù)結(jié)合技術(shù)   14.4.1 準(zhǔn)備工作   14.4.2 加密算法選用   14.4.3 手動加密代碼   14.4.4 使.text區(qū)塊可寫  14.5 軟件保護(hù)的若干忠告 第15章 反跟蹤技術(shù)(forgot編寫) 52  15.1 由BEINGDEBUGGED引發(fā)的蝴蝶效應(yīng)   15.1.1 BeingDebugged   15.1.2 NtGlobalFlag   15.1.3 Heap Magic   15.1.4 從源頭消滅BeingDebugged  15.2 回歸NATIVE:用戶態(tài)的夢魘   15.2.1 CheckRemoteDebuggerPresent   15.2.2 ProcessDebugPort   15.2.3 ThreadHideFromDebugger   15.2.4 Debug Object   15.2.5 SystemKernelDebuggerInformation   15.2.6 Native API   15.2.7 Hook和AntiHook  15.3 真正的奧秘:小技巧一覽   15.3.1 SoftICE檢測方法   15.3.2 OllyDbg檢測方法   15.3.3 調(diào)試器漏洞   15.3.4 防止調(diào)試器附加   15.3.5 父進(jìn)程檢測   15.3.6 時間差   15.3.7 通過Trap Flag檢測   15.3.8 雙進(jìn)程保護(hù) 第16章 外殼編寫基礎(chǔ)(Hying編寫)35  16.1 外殼的結(jié)構(gòu)  16.2 加殼主程序   16.2.1 判斷文件是否為PE格式   16.2.2 文件基本數(shù)據(jù)讀入   16.2.3 附加數(shù)據(jù)讀取   16.2.4 輸入表處理   16.2.5 重定位表處理   16.2.6 文件的壓縮   16.2.7 資源數(shù)據(jù)處理   16.2.8 區(qū)塊的融合  16.3 外殼部分編寫   16.3.1 外殼的加載過程   16.3.2 自建輸入表   16.3.4 外殼引導(dǎo)段   16.3.5 外殼第二段    16.4 將外殼部分添加至原程序 第17章 虛擬機的設(shè)計  17.1 原理   17.1.1 反匯編引擎   17.1.2 指令分類    17.2 啟動框架和調(diào)用約定   17.2.1 調(diào)度器VStartVM   17.2.2 虛擬環(huán)境:VMContext   17.2.3 平衡堆棧:VBegin和VCheckEsp  17.3 HANDLER的設(shè)計   17.3.1 輔助Handler   17.3.2 普通Handler和指令拆解   17.3.3 標(biāo)志位問題   17.3.4 相同作用的指令   17.3.5 轉(zhuǎn)移指令   17.3.6 轉(zhuǎn)移跳轉(zhuǎn)指令的另一種實現(xiàn)   17.3.7 CALL指令   17.3.8 retn指令   17.3.9 不可模擬指令  17.4 托管代碼的異常處理   17.4.1 VC++的異常處理   17.4.2 Delphi的異常處理  17.5 小結(jié)第8篇 PEDIY篇 第18章 補丁技術(shù)  18.1 文件補丁  18.2 內(nèi)存補丁   18.2.1 跨進(jìn)程內(nèi)存存取機制   18.2.2 Debug API機制   18.2.3 利用調(diào)試寄存器機制   18.2.4 DLL劫持技術(shù)  18.3 SMC補丁技術(shù)   18.3.1 單層SMC補丁技術(shù)   18.3.2 多層SMC補丁技術(shù)  18.4 補丁工具 第19章 代碼的二次開發(fā)  19.1 數(shù)據(jù)對齊  19.2 增加空間   19.2.1 區(qū)塊間隙   19.2.2 手工構(gòu)造區(qū)塊   19.2.3 工具輔助構(gòu)造區(qū)塊  19.3 獲得函數(shù)的調(diào)用   19.3.1 增加輸入函數(shù)   19.3.2 顯式鏈接調(diào)用DLL  19.4 代碼的重定位   19.4.1 修復(fù)重定位表   19.4.2 代碼的自定位技術(shù)  19.5 增加輸出函數(shù)  19.6 消息循環(huán)   19.6.1 WndProc函數(shù)   19.6.2 尋找消息循環(huán)   19.6.3 WndProc匯編形式  19.7 修改WNDPROC擴充功能   19.7.1 擴充WndProc   19.7.2 擴充Exit菜單功能   19.7.3 擴充Open菜單功能  19.8 增加接口   19.8.1 用DLL增加功能   19.8.2 擴展消息循環(huán)附錄 附錄A 浮點指令 附錄B 在Visual C++中使用內(nèi)聯(lián)匯編術(shù)語表參考文獻(xiàn)

章節(jié)摘錄

第1篇 基礎(chǔ)篇第1章 基礎(chǔ)知識研究加密與解密,必須要了解一些Windows系統(tǒng)的基礎(chǔ)知識,這樣在分析的過程中才能有的放矢地處理各種問題。1.1 文本字符在學(xué)習(xí)過程中會與各類字符打交道,它們在Windows里扮演著重要角色。1.1.1 字節(jié)存儲順序多字節(jié)數(shù)據(jù)是按怎樣的順序存放的呢?實際情況和CPU有關(guān),微處理機中的存放順序有正序(BiG-Endian)和逆序(Little-Endian)之分。常見的Intel體系芯片使用的編碼方式屬于Little—Endian類;某些RISC架構(gòu)的CPU,如IBM的Power—PC等屬于BiG—Endian類。兩種編碼區(qū)別:·BiG—Endian 高位字節(jié)存入低地址,低位字節(jié)存入高地址,依次排列;·Little—Endian 低位字節(jié)存入低地址,高位字節(jié)存入高地址,反序排列。例如,將12345678h寫入到以1000h開始的內(nèi)存中,則結(jié)果如圖1.1所示。本書以運行在Intel x86 CPU上的Windows為講解平臺,因此涉及的編碼皆為Little.Endian類。1.1.2 ASCIl與Unicode字符集美國信息交換標(biāo)準(zhǔn)碼(ASCII)是一個7位的編碼標(biāo)準(zhǔn),包括26個小寫字母、26個大寫字母、10個數(shù)字、32個符號、33個控制代碼和一個空格,總共128個代碼。由于計算機通常用“字節(jié)”(byte)這個8位的存儲單位來進(jìn)行信息交換,因此不同的計算機廠家對ASCIl進(jìn)行了擴充,增加了128個附加的字符來補充ASCII。

編輯推薦

《加密與解密(第3版)》暢銷書升級版,值得期待; 看雪軟件安全學(xué)院眾多一流高手合力歷時4年精心打造; 全面揭示W(wǎng)indows平臺的加密與解密技術(shù)。 軟件安全是信息安全領(lǐng)域的重要內(nèi)容,涉及到軟件相關(guān)的加密、解密、逆向分析、漏洞分析、安全編程以及病毒分析等。目前,國內(nèi)高校對軟件安全教育重視程度不夠,許多方面還是空白。隨著互聯(lián)網(wǎng)應(yīng)用的普及和企業(yè)信息化程度的不斷提升,社會和企業(yè)對軟件安全技術(shù)人才需求逐年上升,在計算機病毒查殺、網(wǎng)游安全、網(wǎng)絡(luò)安全、個人信息安全等方面人才缺口很大,相關(guān)職位待遇較高。從就業(yè)角度來看,掌握軟件安全相關(guān)知識和技能,不但可以提高自身的職場競爭能力,而且有機會發(fā)揮更大的個人潛力,獲得滿意的薪酬;從個人成長方面來說,研究軟件安全技術(shù)有助于掌握許多系統(tǒng)底層知識,是提升職業(yè)技能的重要途徑。作為一名合格的程序員,除了掌握需求分析、設(shè)計模式等,如能掌握一些系統(tǒng)底層知識,熟悉整個系統(tǒng)的底層結(jié)構(gòu),對自己的工作必將獲益良多。揭示軟件加密與解密最核心,看雪安全技術(shù)團(tuán)隊全力支持。專家講壇,全面探討,軟件安全問題與解決之道。技術(shù)剖析,深入淺出,分析加密與解密技術(shù)核心。共同進(jìn)步,循序漸進(jìn)。迅速提升讀者的專業(yè)水平。《加密與解密(第3版)》技術(shù)支持:看雪軟件安全網(wǎng)站提供《加密與解密(第3版)》的全面技術(shù)支持服務(wù),閱讀此書過程中,如有什么問題或?qū)W習(xí)心得,歡迎光臨論壇與這些傳說中的好手共同交流。

圖書封面

圖書標(biāo)簽Tags

評論、評分、閱讀與下載


    加密與解密 PDF格式下載


用戶評論 (總計144條)

 
 

  •   最開始接觸逆向工程這個概念,就是通過看雪論壇....本身破解就是一個很酷的東西...一直覺得很神秘,現(xiàn)在段鋼大大以及看雪的一眾高手傾力出品了這本<<加密與解密>>,在看到介紹之后就果斷滴買了!(加**當(dāng)?shù)蝺r格也確實geiliable)...這本書,語言易懂,而且內(nèi)容很全面,看里面的內(nèi)容,是一種享受...里面涵蓋了密碼算法,脫殼技術(shù),以及軟件保護(hù)方面的知識..適合入門使用.還是標(biāo)題那句話:看雪出品,必屬精品.
  •   真的很好的一本書呀.首先出書的是看雪,在軟件安全方面,看雪可以算是權(quán)威了和向?qū)Я?其次在書中的確會讓人很快入門,而且學(xué)習(xí)到很多有趣的知識.比如修改PE、DLL劫持……最后,其實匯編語言不是那么簡單。學(xué)校的學(xué)的匯編語言還是有用的,不是只能搞DOS下的軟件的。學(xué)習(xí)加密與解密,可以當(dāng)作參考書來學(xué)習(xí),也可以當(dāng)作教科書來學(xué)習(xí)。
  •   這本書包含了加密與解密第二版的重要部分以及軟件加密技術(shù)內(nèi)幕的重要章節(jié),可以說是買此書就等于買了兩本好書。
  •   看雪老大段鋼的新書,真是好書!就是送貨的要求沒滿足我,我星期四定的,星期天就送來了。我在我的送貨要求里是星期一至星期五送貨的,星期天我要上課,但是當(dāng)當(dāng)就偏偏在星期天給送來了。還好我寢室有同學(xué),幫我去拿了~希望當(dāng)當(dāng)下次不要在周末給關(guān)來了,寧可慢一些!還是多做一些評價這本書吧,這本書從各個方便講了加密與解密的內(nèi)容,但是對于新手來說還是只有前幾章能看懂。對于后面,沒有PE基礎(chǔ),不熟悉windows編程的人來說,有些難于上手,所以我強烈建議學(xué)完了windows編程后再看這本書,當(dāng)然會密碼學(xué)算法更好~
  •   建議買0day的時候也把這本書買了,詳細(xì)介紹了0day中的工具的用法,對加密解密,軟件漏洞的學(xué)習(xí)很有幫助
  •   看雪潛水N久,早就想買一本來收藏,可惜前面的基本書都絕版了.可惜.這次終于買到了.入門來說不錯,想要深入的研究加密解密,最主要的就是動手,自己實踐.
  •   這本書非常適合對軟件安全技術(shù)的人學(xué)習(xí)參考
  •   希望能繼續(xù)出加密解密的進(jìn)階版,感謝看雪論壇,感謝段剛老師。 很希望出新版。
  •   基本來說一本書出到三版以上,質(zhì)量是不會差的,《加密和解密》也是這樣,我很久以前買了第一版,最近又買了第三版,感覺書的印刷質(zhì)量和內(nèi)容都有了不少提高,這本書是非常適合加解密人的入門書,強烈推薦。
  •   加密與解密是許多人認(rèn)為比較神密高深的東西!我也是這種心態(tài)。但有一種好奇就想去了解所以就購買了這本加密與解密(第三版),但拿到書后,覺得看通這本書還有很長的路要走。沒有匯編基礎(chǔ),一切得從頭來。路漫漫其修遠(yuǎn),有書有目標(biāo)弄懂終有時日!
  •   此書不錯,是軟件加密和破解方面的專家之作。但缺點是沒光盤。當(dāng)當(dāng)送貨比較及時,從定貨到收貨五天。
  •   1、當(dāng)當(dāng)網(wǎng)的貨到付款很好,讓買家放心。2、書本的價格非常合理,《加密與解密》這本書的價值遠(yuǎn)遠(yuǎn)大于書本本身,45元相當(dāng)實惠,比起那些東拼西湊來計算機類書籍強的多?。。。。。。。。。。。?!3、讓我最感動的是快遞大哥周末的時候送來的,當(dāng)時愛人不在家,他可能在家看孩子,但是我一個電話打過去,他抱著孩子爬6樓給我送來,真是萬分感謝。(注:其實不需要那么著急的,抱著孩子到6樓給我送,實在是我的錯誤。如果知道的話,我自己去拿就是了)4、感謝當(dāng)當(dāng)網(wǎng)提供這么方便的服務(wù)5、嘿嘿。如果送貨時間能快一些就好了
  •   軟件安全愛好者案頭必備圖書,內(nèi)容豐富翔實。發(fā)貨挺迅速的,價格公道。
  •   對加密解密感興趣的人,這本書是本很不錯的選擇;如果有點匯編和sdk編程經(jīng)驗的話,學(xué)起來更容易點;
  •   對于學(xué)加密解密的朋友來說,此書是必讀的
  •   幫你了解網(wǎng)絡(luò)安全是什么,軟件的漏洞都在那里
  •   加密與解密(第三版),增加知識
  •   較為全面、系統(tǒng)講解了加密、解密概念、方法以及所采用的各類工具。
  •   加密與解密這本書還是值得購買的,讓我學(xué)到不少知識。
  •   學(xué)習(xí)加密與解密的好書!
  •   書很厚,但文章全是精華。對Win平臺下的軟件加解密講得入木三分,精彩至極。這本書的暢銷自在情理之中。建議程序員和有一定匯編基礎(chǔ)的人去拜讀。這本書,只有鉆研,才會有收獲.
  •   今天終于收到加密與解密第三版了!書包裝不錯,初次在當(dāng)當(dāng)網(wǎng)購物,感覺不錯!以后繼續(xù)合作!
  •   這本書不錯,是想學(xué)習(xí)加密解密應(yīng)該多看的書。
  •   很好的加密與解密的學(xué)習(xí)材料~~
  •   是學(xué)習(xí)加密解密的好東西啊
  •   加密與解密這本素真的很好,特別適合新手入門。
  •   非常好的書,對加密解密有興趣的都應(yīng)該看看
  •   好書,從中可以系統(tǒng)地學(xué)到軟件保護(hù)的相關(guān)知識,使讀者受益非淺
  •   看雪出的經(jīng)典書。比較全面,像讀者展示了這個領(lǐng)域的技術(shù)。
  •   非常詳細(xì)的入門級教材。加解密技術(shù)本身入門就不容易。需要個各計算機基礎(chǔ)知識。
  •   對于學(xué)加密和解密來說,段老大寫的書不錯,從第一版到三版都購買了,第三版更新了很多新內(nèi)容.
  •   看雪的書要支持一下的,普及技術(shù)
  •   別人說可以不買書,直接看論壇就可以了,其實不然,本書將所有知識點整理并有條理的介紹加密和解密!
  •   這本書講解的不錯,安全領(lǐng)域的好書。
  •   講的內(nèi)容很全面,感覺深度不夠。當(dāng)一個加密和解密的入門介紹。
  •   這本書綜合了看雪學(xué)院上各方面技術(shù)的精華,雖然看雪上都能夠查到相關(guān)知識,但還是書看著有感覺,查閱起來也方便。
  •   非常實用,全面,實用,基礎(chǔ),從代碼層面了解軟件,程序
  •   看雪論壇的經(jīng)典之作,非常值得購買的一本書,希望大家也能支持一下正版圖書!
  •   在看雪論壇看了一些基礎(chǔ)資料,讓我學(xué)到了許多東西.
    如果有一定的基礎(chǔ)看這樣的書,受益菲淺呀.
  •   主要傾向于軟件安全,想搞反病毒的。這個就可看可不看
  •   書內(nèi)容好,質(zhì)量也是非常好,絕對是破解加密界的經(jīng)典!
  •   終于買到這本書了,感覺很爽啊,本來對安全方面就很關(guān)心的我,終于得到滿足了。謝謝看雪學(xué)院,謝謝當(dāng)當(dāng)網(wǎng)
  •   這是一本非常不錯的一本書,關(guān)于軟件的內(nèi)部的各個方面,有一個非常細(xì)致的說明與講解
  •   很不錯的一本書,支持看雪!!呵呵
  •   支持看雪,買了看到我學(xué)習(xí)成績倒數(shù)第三了,真的很好看
  •   看雪論壇的書,我不怎么搞逆向工程,只是作為自己的愛好。但是我覺得對逆向思維很有幫助,買了
  •   看雪老大的作品!我就在看雪混!支持!物超所值!
  •   對于看雪的作品一定支持!
  •   從看雪論壇追著看,此書真的不錯
  •   還沒開始看 在看雪論壇 看到的這本書 應(yīng)該很不錯吧
  •   這本書是看雪論壇里面的精華帖子的集合,但是讓我們個人去一個個看這些帖子就太費勁了,集合起來很好,而且有了條理性了。
  •   也許我是一個喜歡追根問底的人吧,看到那一個個炫目的程序運行結(jié)果,就想知道那些代碼是怎么在內(nèi)存中組織的?我還能改進(jìn)它嗎?這本書,將我引進(jìn)了計算機底層世界的大門。
  •   本來手上有本書的電子版,初看了十幾頁就已決定入手實體書了,收到貨后,質(zhì)量很好,講的內(nèi)容也很詳細(xì),例子分析得很到位,有逆向工程基本知識的人絕對能在本書中收益頗多,推薦!
  •   對于想自學(xué)逆向工程這類知識的學(xué)生,這本書非常經(jīng)典。實際操作一下書中的例子,自習(xí)思考其中的緣由,可以更快更好地掌握這類知識。
  •   哥終于正式?jīng)Q定涉足加解密行當(dāng)了,看著本書入門真不錯!
  •   書里講的很詳細(xì),真的教會了我很多東西,看雪論壇真是個好論壇啊。
  •   是看了看雪論壇推薦菜買的,值得(僅對我自己)。
  •   內(nèi)容很充實,可以學(xué)到很多的底層知識
  •   還不錯,看了與收獲,對一些底層的東西有更深一步的了解
  •   非常適合實踐的一本書,底層必備。
  •   很專業(yè)不愧是看雪的老大?。。。。?!
  •   看雪的教材真的很超值,很喜歡
  •   在看雪學(xué)習(xí)有一段時間了,可是還有很多地方弄不明白。
  •   接合了前面2本的精華,去除了過時的東西,增加了新的東西,對計算機各個方面的人來說都是一本值得收藏的書,我自認(rèn)為是國人寫的最好的一本計算機科普書籍之一,一般計算機的書籍都屬國外的。反正很好很喜歡,很厚,很好,很大,還有很紅。呵呵。。。。已經(jīng)買了支持一下
  •   我很喜歡這本書,它讓我學(xué)了很多以前只以為很懂的技術(shù)
  •   看雪的經(jīng)典之作不用多說了你懂的
  •   看雪出的書,不錯,性價比也不錯
  •   看雪會一步一步的引導(dǎo)你走向高手。
  •   看雪的又一經(jīng)典之作??!
  •   俺是初學(xué),看雪的書,肯定值得的了。
  •   看雪出的就是牛,值!
  •   仔細(xì)品嘗看雪的大作是一種享受?。?!
  •   做底層,就要看這本
  •   六月二十九才發(fā)貨過來,還沒看過,是朋友介紹所以就收藏看看樓主:我是現(xiàn)大一學(xué)生,計算機科學(xué)與技術(shù)專業(yè),還不知適我沒.給個見意.三克油!!!
  •   技術(shù)永遠(yuǎn)的摯愛
  •   紙張不錯,大概瀏覽了一下,內(nèi)容挺全面,還沒深入讀,先支持一個。
  •   是一本好書,問題是我有許多不懂的地方。
  •   雖然書有點老,但是對于一個隊這方面了解很少的來說,作為入門還是挺好的。
  •   還不錯,是正版的,現(xiàn)在正在看,當(dāng)當(dāng)不錯,以后繼續(xù)支持,就是發(fā)貨速度有待提高。
  •   首先證明,的確是第三版,當(dāng)時買的時候網(wǎng)站上沒有封皮,生怕買錯了。書很大,比我想象中的要大,大概比A4紙還要稍微寬一些。很厚也很重,但是紙略微薄了一點,不過這么厚的書,是可以理解的。內(nèi)容沒有全看完,講的很細(xì),也很基礎(chǔ)。適合初學(xué)者。不帶光盤,盤需要根據(jù)前言的網(wǎng)址下載。
  •   書的內(nèi)容不錯,就是對我來說有點深,最好多點實例就好了!
  •   不知道是不是發(fā)貨速度太快導(dǎo)致書破了,不過我要的是內(nèi)容,所以外觀就遠(yuǎn)遠(yuǎn)不夠重要了。
  •   送貨很及時,書的內(nèi)容也很容易理解!非常好的一本書!
  •   這本書的內(nèi)容都是循序漸進(jìn)的講解,很好
  •   這本書非常實在,都是一些高手編的,很好
  •   絕對好書,非常實際而且作者很為讀者考慮,盡量減少讀者成本~謝謝作者
  •   質(zhì)量還不錯,內(nèi)容很強大,不建議沒win編程基礎(chǔ)的人買,讀起來有些吃力??!
  •   學(xué)習(xí)這方面的最好能看下
  •   很經(jīng)典,已經(jīng)第三版了,不過要有匯編的基礎(chǔ)。
  •   內(nèi)容十分豐富,沖著論壇名氣買的,果真沒讓我失望。
  •   看的很費勁,但是我會努力看下去的,是本好書,但是需要有基礎(chǔ)
  •   非常好,非常系統(tǒng)
  •   早就想買這書,都第三版了,只是還沒什么時間看,印刷質(zhì)量不錯
  •   內(nèi)容豐富,全面,
  •   好書。不解釋。
  •   好書,不過多評論
  •   不錯,入門的好書
  •   該書發(fā)行與踏雪網(wǎng)站相結(jié)合,既有理論又不乏實踐,好書。偶喜歡!
  •   一本好書值這個錢個人感覺比前兩版寫的要好不少。通俗了好多,作為入門不錯
  •   很好!催眠的好書,呵呵
 

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

京ICP備13047387號-7