關(guān)于我們
書單推薦
新書推薦
|
徹底研究:黑客編程技術(shù)揭秘與攻防實戰(zhàn)
本書全面介紹了在Windows環(huán)境下使用Socket API開發(fā)各類黑客軟件及系統(tǒng)安全防護(hù)工具軟件的編程實現(xiàn)方法。
在講解細(xì)節(jié)上,本書循序漸進(jìn)地向讀者介紹了黑客攻擊程序、安全防護(hù)工具、遠(yuǎn)程控制軟件、網(wǎng)絡(luò)安全管理軟件的原理及具體編程實現(xiàn)方法,從當(dāng)前熱門的黑客軟件和安全防護(hù)工具中選擇典型案例,深入分析。
基于網(wǎng)絡(luò)安全,登堂入室,定制屬于自己的黑客攻防軟件。知己知彼,完整再現(xiàn)主流的黑客攻擊實現(xiàn)方式和攻防案例,提升讀者實戰(zhàn)技能。細(xì)致入門和實踐相輔相成,為網(wǎng)管員典藏書架再添寶典。
對專業(yè)人士來說,黑客并不神秘。黑客技術(shù)也只是計算機(jī)安全技術(shù)分支之一,也是有章可循的。有人利用黑客技術(shù)做小偷類違法犯罪的事情,我們需要培養(yǎng)出技術(shù)更強(qiáng)、訓(xùn)練有素的警察即可。本書就是這樣一本希望通過揭秘網(wǎng)絡(luò)底層開發(fā)技術(shù),培養(yǎng)出更多更優(yōu)秀的系統(tǒng)、網(wǎng)絡(luò)安全軟件開發(fā)者。 能編寫出屬于自己的黑客軟件一直是很多網(wǎng)絡(luò)安全愛好者夢寐以求的。為了讓更多的網(wǎng)絡(luò)安全愛好者能夠迅速掌握黑客軟件、安全工具的開發(fā)技術(shù),也為了提高國內(nèi)網(wǎng)絡(luò)安全技術(shù)的整體水平,筆者精心編寫了本書。 筆者根據(jù)自己多年的學(xué)習(xí)和工作經(jīng)驗,結(jié)合當(dāng)前網(wǎng)絡(luò)安全技術(shù)最新的發(fā)展態(tài)勢,循序漸進(jìn)地為讀者講解如何在Visual C 環(huán)境下開發(fā)各種黑客工具和安全軟件。本書旨在技術(shù)上為讀者提供一個學(xué)習(xí)的方法和參考,其中部分技術(shù)可能存在一定的破壞性,需要讀者在學(xué)習(xí)時慎重使用并用于合適的測試環(huán)境。本書以實例開發(fā)了安全軟件的雛形,源代碼發(fā)布在出版社網(wǎng)站上,請讀者移步下載,或者到QQ學(xué)習(xí)交流群82481994中下載。 本書的內(nèi)容安排 本書共分為三篇,共15章,以網(wǎng)絡(luò)編程最基本的Windows Sockets API開始,逐步介紹簡單的網(wǎng)絡(luò)掃描器技術(shù),讓讀者輕松入門。通過常見黑客工具及下載者程序的編寫和防范,讓讀者對編程技術(shù)有一個更大的提高。在讀者掌握了一定的黑客軟件開發(fā)基礎(chǔ)后,筆者開始介紹Rootkit編程技術(shù)及遠(yuǎn)程控制技術(shù),讓讀者通過一個完整綜合的實例學(xué)習(xí)Visual C 開發(fā)黑客軟件。最后結(jié)合筆者的工作經(jīng)驗介紹了網(wǎng)絡(luò)準(zhǔn)入技術(shù)和網(wǎng)絡(luò)蜘蛛等拓展技術(shù),供有興趣的讀者深入學(xué)習(xí)。 第一篇(第1~3章):初入門徑 講述了使用Visual C 開發(fā)黑客軟件,尤其是基于網(wǎng)絡(luò)的黑客軟件必須具備的理論基礎(chǔ)及入門級的編程實例。通過本章學(xué)習(xí),讀者可以掌握Windows Sockets API編程開發(fā)的技術(shù)、網(wǎng)絡(luò)掃描程序及認(rèn)證程序破解的編程實現(xiàn),從而為進(jìn)一步提高編程水平打下基礎(chǔ)。 第二篇(第4~7章):做一個專業(yè)的黑客 講述了拒絕服務(wù)攻擊技術(shù)的原理及實現(xiàn),感染型下載者程序的功能、原理及編程實現(xiàn),Rootkit技術(shù)的編程實現(xiàn)。通過本章學(xué)習(xí),讀者的黑客編程技術(shù)將得到很大提高。本章介紹的3類典型程序是當(dāng)前互聯(lián)網(wǎng)最為流行的黑客攻擊技術(shù)或?qū)崿F(xiàn)方式。同時針對下載者程序,筆者還講解了如何有針對地防范,并通過U盤病毒防火墻的形式予以實現(xiàn)。 第三篇(第8~15章):成為大師的修煉 本篇通過一個完整的黑客軟件遠(yuǎn)程控制軟件的功能、原理、設(shè)計、實現(xiàn)及優(yōu)化等方面,為讀者深入剖析了一個完整黑客軟件的開發(fā)流程。本篇是前幾章編程技術(shù)的綜合,是各種技術(shù)的綜合運用。筆者在本篇詳細(xì)地介紹了編程中的各個細(xì)節(jié),同時首次公開了部分遠(yuǎn)程控制軟件的關(guān)鍵代碼。并且結(jié)合筆者的工作和學(xué)習(xí)經(jīng)驗,介紹了網(wǎng)絡(luò)準(zhǔn)入技術(shù)、網(wǎng)絡(luò)蜘蛛、SSDT恢復(fù)等技術(shù)的原理及實現(xiàn)方式。對于希望進(jìn)一步提高自己黑客軟件開發(fā)技術(shù)的讀者無疑是一個拓展機(jī)會。通過學(xué)習(xí)本篇,為讀者將來開發(fā)出自己的網(wǎng)絡(luò)安全工具或軟件提供了必要的鋪墊作用。 本書的特點 從Windows Sockets API編程基礎(chǔ)到最基本的網(wǎng)絡(luò)掃描器編程,從基本黑客攻擊程序到基于認(rèn)證的網(wǎng)絡(luò)程序破解,從流行下載者程序的編程實現(xiàn)到U盤防火墻等安全工具,從Windows底層的Rootkit編程到遠(yuǎn)程控制軟件開發(fā),從網(wǎng)絡(luò)準(zhǔn)入控制結(jié)束到網(wǎng)絡(luò)蜘蛛等,本書逐個講解各類黑客軟件的實現(xiàn)原理,并通過代碼編程實現(xiàn),其中很多代碼尚屬首次公開。 本書的特點主要體現(xiàn)在以下幾個方面: ? 本書的編排采用循序漸進(jìn)的方式,適合對Visual C 程序開發(fā)有一定了解,并對黑客程序開發(fā)抱有極大興趣的網(wǎng)絡(luò)安全愛好者。 ? 本書結(jié)合筆者多年的工作和學(xué)習(xí)經(jīng)驗積累,通過對流行網(wǎng)絡(luò)安全技術(shù)中典型案例的編程實現(xiàn),為讀者提供了快速學(xué)習(xí)和進(jìn)步的參考。 ? 本書在介紹大量網(wǎng)絡(luò)安全技術(shù)實現(xiàn)原理時,都提供了典型的案例和參考的圖例。讀者通過對原理的學(xué)習(xí),能夠掌握Visual C 開發(fā)黑客工具的具體技術(shù),同時也能更加深入地理解網(wǎng)絡(luò)安全技術(shù)的具體細(xì)節(jié),從而提高自身的技術(shù)水平。 ? 本書除了介紹主流的安全技術(shù)及編程方法,還涉及Rootkit、SSDT恢復(fù)等系統(tǒng)底層編程技術(shù),對于希望提高黑客軟件開發(fā)技術(shù)的讀者無疑是一個很大的幫助。 ? 本書突破常規(guī),對重要的編程技術(shù)和細(xì)節(jié)沒有遮遮掩掩,其中部分功能實現(xiàn)的代碼尚屬首次公開。當(dāng)然,為了防止一些具有破壞性的程序被錯誤使用造成不必要的破壞,筆者對光盤中的部分代碼做了技術(shù)處理,相信有一定編程基礎(chǔ)的讀者能夠自行解決。 ? 本書雖然以黑客軟件開發(fā)為基本出發(fā)點,但是又不僅限于黑客技術(shù);筆者更多的是從技術(shù)角度探討技術(shù)原理及實現(xiàn)方法,同時將網(wǎng)絡(luò)安全思想時刻灌注其中。書中涉及的U盤防火墻、網(wǎng)絡(luò)準(zhǔn)入技術(shù)等都是筆者對當(dāng)前互聯(lián)網(wǎng)黑客攻擊泛濫的思考和防范方法的具體實現(xiàn)。 適合閱讀本書的讀者 本書由河南城建學(xué)院的趙笑聲編寫。全書由淺入深,由理論到實踐,尤其適合對Visual C 環(huán)境有一定了解,同時對黑客軟件開發(fā)抱有極大興趣的初級讀者學(xué)習(xí)并逐步完善自己的知識結(jié)構(gòu)。具體來說,以下讀者應(yīng)該仔細(xì)研讀本書: ? 希望進(jìn)入應(yīng)用軟件開發(fā)行業(yè)的新手。 ? 迫切希望提高個人開發(fā)測試技能和水平的初級程序測試人員。 ? 具備一定的研發(fā)理論知識但是缺乏實踐的軟件研發(fā)工程師。 ? 希望了解國內(nèi)外黑客軟件開發(fā)的動向以及最新反黑客軟件的開發(fā)人員。 第1章 黑客入門,Socket API開發(fā)必知 1 1.1 Windows API和Socket 1 1.1.1 Windows API編程的優(yōu)點 1 1.1.2 Socket通信流程 2 1.2 服務(wù)器端Socket的操作 3 1.2.1 在初始化階段調(diào)用WSAStartup 3 1.2.2 建立Socket 4 1.2.3 綁定端口 4 實例1.1 bind函數(shù)調(diào)用示例 5 1.2.4 監(jiān)聽端口 6 1.2.5 accept函數(shù) 6 實例1.2 accept函數(shù)示例 7 1.2.6 WSAAsyncSelect函數(shù) 7 實例1.3 響應(yīng)Socket事件的結(jié)構(gòu)代碼 8 1.2.7 結(jié)束服務(wù)器端與客戶端Socket連接 8 1.3 客戶端Socket的操作 9 1.3.1 建立客戶端的Socket 9 1.3.2 發(fā)起連接申請 9 實例1.4 connect函數(shù)示例 9 1.4 Socket數(shù)據(jù)的傳送 9 1.4.1 TCP Socket 與UDP Socket 10 1.4.2 發(fā)送和接收數(shù)據(jù)的函數(shù) 10 1.5 自定義CMyTcpTran通信類 12 1.5.1 為什么要使用類 13 1.5.2 Visual C 中創(chuàng)建通信類 13 實例1.5 CMyTcpTran類頭文件 15 1.5.3 CMyTcpTran類的代碼實現(xiàn) 17 實例1.6 CMyTcpTran類方法的函數(shù)實現(xiàn) 17 實例1.7 Socket通信庫初始化實現(xiàn)方法 18 實例1.8 初始化套接字資源 18 實例1.9 創(chuàng)建連接通信函數(shù)的實現(xiàn) 20 實例1.10 初始化Socket資源的接收函數(shù) 21 實例1.11 發(fā)送套接字?jǐn)?shù)據(jù)的函數(shù)實現(xiàn) 23 1.6 小結(jié) 25 第2章 專業(yè)風(fēng)范,網(wǎng)絡(luò)掃描器的開發(fā)實現(xiàn) 26 2.1 掃描器的產(chǎn)生及原理 26 2.1.1 掃描器的產(chǎn)生 26 2.1.2 不同掃描方式掃描器原理及性能簡介 27 2.2 主機(jī)掃描技術(shù) 29 2.2.1 ICMP Echo掃描 29 2.2.2 ARP掃描 30 2.3 端口掃描技術(shù) 31 2.3.1 常用端口簡介 31 2.3.2 TCP connect掃描 32 2.3.3 TCP SYN 掃描 33 2.4 操作系統(tǒng)識別技術(shù) 33 2.4.1 根據(jù)ICMP協(xié)議的應(yīng)用得到TTL值 33 2.4.2 獲取應(yīng)用程序標(biāo)識 35 2.4.3 利用TCP/IP協(xié)議棧指紋鑒別 35 2.4.4 操作系統(tǒng)指紋識別依據(jù) 36 2.4.5 操作系統(tǒng)指紋識別代碼實現(xiàn) 39 2.4.6 Web站點猜測 48 2.4.7 綜合分析 49 實例2.1 一段端口檢測程序代碼 50 2.5 掃描器程序?qū)崿F(xiàn) 52 2.5.1 ICMP echo掃描原理 52 2.5.2 ICMP echo掃描的實現(xiàn)方法 53 實例2.2 ICMP掃描程序類定義 54 實例2.3 ICMP掃描的代碼實現(xiàn) 55 實例2.4 ICMP掃描判斷主機(jī)存活 58 2.5.3 ARP掃描的原理 59 2.5.4 ARP掃描的實現(xiàn)方法 60 實例2.5 ARP設(shè)備掃描的實現(xiàn)方式 60 實例2.6 ARP掃描程序?qū)嵗?64 2.5.5 TCP SYN掃描的原理 66 2.5.6 TCP SYN掃描的實現(xiàn)方法 66 實例2.7 TCP SYN掃描實例 66 2.5.7 綜合應(yīng)用實例ARP欺騙程序 70 2.5.8 ARP欺騙的原理 70 2.5.9 Winpcap環(huán)境初始化 70 實例2.8 Winpcap驅(qū)動程序初始化 70 2.5.10 欺騙主程序 77 實例2.9 ARP欺騙程序的實現(xiàn)方法 77 2.6 資產(chǎn)信息掃描器開發(fā) 83 2.6.1 資產(chǎn)信息掃描器的應(yīng)用范圍 83 2.6.2 snmp協(xié)議掃描的原理 84 2.6.3 snmp協(xié)議掃描的實現(xiàn)方法 84 實例2.10 snmp協(xié)議掃描的實現(xiàn)方法 84 2.7 小結(jié) 87 第3章 提升,暴力破解和防范 88 3.1 針對應(yīng)用程序通信認(rèn)證的暴力破解 88 3.1.1 FTP協(xié)議暴力破解原理 88 3.1.2 FTP協(xié)議暴力破解實現(xiàn)方法 88 實例3.1 FTP暴力破解程序代碼 89 3.1.3 IMAP協(xié)議破解原理 92 3.1.4 IMAP協(xié)議破解方法 92 實例3.2 IMAP協(xié)議破解 92 3.1.5 POP3協(xié)議暴力破解原理 94 3.1.6 POP3協(xié)議暴力破解實現(xiàn)方法 95 實例3.3 POP3協(xié)議暴力破解 95 3.1.7 Telnet協(xié)議暴力破解原理 98 3.1.8 Telnet協(xié)議暴力破解實現(xiàn)方法 98 實例3.4 Telnet協(xié)議暴力破解 98 3.2 防范惡意掃描及代碼實現(xiàn) 101 3.2.1 防范惡意掃描的原理 101 3.2.2 防范惡意掃描的實現(xiàn)方法 102 實例3.5 防范惡意掃描程序的框架 102 3.3 小結(jié) 106 第4章 用代碼說話,拒絕服務(wù)攻擊與防范 107 4.1 拒絕服務(wù)原理及概述 107 4.1.1 拒絕服務(wù)攻擊技術(shù)類別 107 4.1.2 拒絕服務(wù)攻擊形式 108 4.2 拒絕服務(wù)攻擊原理及概述 109 4.2.1 DoS攻擊 109 4.2.2 DDoS攻擊 110 4.2.3 DRDoS攻擊 110 4.2.4 CC攻擊 111 4.3 拒絕服務(wù)攻擊代碼實現(xiàn) 112 4.3.1 DoS實現(xiàn)代碼的原理 112 實例4.1 典型UDP Flood攻擊 117 實例4.2 SYN Flood攻擊代碼示例 120 實例4.3 典型TCP多連接攻擊程序示例 123 實例4.4 ICMP Flood攻擊數(shù)據(jù)包構(gòu)造 127 實例4.5 ICMP Flood攻擊 130 4.3.2 DRDoS攻擊的代碼實現(xiàn) 132 實例4.6 InitSynPacket函數(shù)實現(xiàn)過程 134 實例4.7 InitIcmpPacket函數(shù)實現(xiàn)過程 136 實例4.8 SYN反射線程實現(xiàn)方式 136 實例4.9 ICMP反射攻擊線程實現(xiàn) 138 實例4.10 開啟反射攻擊線程 140 實例4.11 反射攻擊線程 140 4.3.3 CC攻擊的代碼實現(xiàn) 143 實例4.12 CC攻擊代碼實現(xiàn) 143 4.3.4 修改TCP并發(fā)連接數(shù)限制 146 實例4.13 修改TCP并發(fā)連接線程 146 4.4 拒絕服務(wù)攻擊防范 151 4.4.1 拒絕服務(wù)攻擊現(xiàn)象及影響 151 4.4.2 DoS攻擊的防范 151 4.4.3 DRDoS攻擊的防范 152 4.4.4 CC攻擊的防范 152 實例4.14 ASP程序Session認(rèn)證 153 實例4.15 ASP程序判斷真實IP地址 153 4.5 小結(jié) 154 第5章 你也能開發(fā)病毒 155 5.1 感染功能描述 155 5.1.1 話說熊貓燒香 155 5.1.2 何為下載者 156 5.1.3 感染功能描述 157 5.2 感染型下載者工作流程 165 5.3 感染所有磁盤 166 5.3.1 感染所有磁盤原理 167 5.3.2 感染所有磁盤的實現(xiàn)方法 167 實例5.1 感染所有磁盤的代碼 167 5.4 感染U盤、移動硬盤 167 5.4.1 U盤、移動硬盤感染的原理 167 5.4.2 U盤、移動硬盤感染的實現(xiàn)方法 168 實例5.2 U盤感染實現(xiàn)代碼 171 5.5 關(guān)閉殺毒軟件和文件下載的實現(xiàn) 171 5.5.1 關(guān)閉殺毒軟件的原理 171 5.5.2 關(guān)閉殺毒軟件和文件下載的實現(xiàn)方法 172 實例5.3 關(guān)閉殺毒軟件和文件下載 172 5.6 結(jié)束指定進(jìn)程 176 5.6.1 結(jié)束指定進(jìn)程的原理 177 5.6.2 結(jié)束指定進(jìn)程的實現(xiàn)方法 177 實例5.4 結(jié)束指定進(jìn)程 177 5.6.3 暴力結(jié)束進(jìn)程 178 實例5.5 暴力結(jié)束進(jìn)程 178 實例5.6 下載執(zhí)行程序 186 5.7 局域網(wǎng)感染 187 5.7.1 局域網(wǎng)感染原理 187 5.7.2 局域網(wǎng)感染的實現(xiàn)方法 187 實例5.7 局域網(wǎng)同網(wǎng)段掃描并感染的代碼實現(xiàn) 187 實例5.8 IPC連接操作 190 5.8 隱藏進(jìn)程 191 5.8.1 隱藏進(jìn)程的原理 192 5.8.2 隱藏進(jìn)程的實現(xiàn)方法 192 5.9 感染可執(zhí)行文件 193 5.9.1 感染可執(zhí)行文件的原理 193 5.9.2 感染可執(zhí)行文件的實現(xiàn)方法 193 實例5.9 匯編查找kernel.dll的地址 193 實例5.10 遍歷文件目錄查找.exe文件路徑 196 實例5.11 全盤搜索.exe文件 197 5.10 感染網(wǎng)頁文件 197 5.10.1 感染網(wǎng)頁文件的原理 197 5.10.2 感染網(wǎng)頁文件的實現(xiàn)方法 197 實例5.12 向指定文件尾部寫入代碼 197 實例5.13 搜索網(wǎng)頁文件并調(diào)用感染函數(shù) 198 實例5.14 設(shè)置文件隱藏屬性 199 5.11 多文件下載 200 5.11.1 多文件下載的原理 200 5.11.2 多文件下載的實現(xiàn)方法 200 5.12 自刪除功能 202 5.12.1 自刪除功能的原理 202 5.12.2 自刪除功能的實現(xiàn)方法 202 實例5.15 程序自刪除功能 202 5.13 下載者調(diào)用外部程序 203 5.13.1 下載者調(diào)用外部程序的原理 203 5.13.2 下載者調(diào)用外部程序的實現(xiàn)方法 203 實例5.16 zxarps.exe程序幫助信息 203 實例5.17 釋放資源調(diào)用ARP攻擊程序 206 實例5.18 調(diào)用ARP攻擊程序循環(huán)攻擊C段IP地址 207 5.14 機(jī)器狗程序 208 5.14.1 機(jī)器狗程序原理 208 5.14.2 機(jī)器狗代碼實現(xiàn) 209 實例5.19 機(jī)器狗釋放驅(qū)動并安裝執(zhí)行的代碼實現(xiàn) 209 實例5.20 驅(qū)動感染userinit.exe 213 5.15 利用第三方程序漏洞 216 實例5.21 迅雷溢出漏洞利用文件Thunder.js 217 5.16 程序其他需要注意的地方 219 5.16.1 窗口程序的創(chuàng)建 219 實例5.22 創(chuàng)建窗口程序的代碼實現(xiàn) 219 5.16.2 應(yīng)用程序互斥處理 220 實例5.23 應(yīng)用程序互斥處理 220 5.16.3 禁止關(guān)閉窗口 221 5.17 小結(jié) 221 第6章 你當(dāng)然也能開發(fā)殺毒程序 222 6.1 下載者的防范措施 222 6.1.1 U盤感染的防范 222 6.1.2 驅(qū)動級病毒的防范 224 6.1.3 阻止第三方程序引起的漏洞 226 6.1.4 本地計算機(jī)防范ARP程序運行 227 6.1.5 其他需要注意的地方 228 6.2 U盤病毒防火墻的開發(fā) 228 6.2.1 U盤病毒防火墻的功能及實現(xiàn)技術(shù) 228 6.2.2 U盤病毒防火墻的代碼實現(xiàn) 229 實例6.1 全盤檢測AutoRun.inf文件 229 實例6.2 單個磁盤的掃描檢測程序 229 實例6.3 刪除病毒文件 231 實例6.4 格式化磁盤 231 實例6.5 調(diào)用System函數(shù)格式化磁盤 232 實例6.6 備份文件 232 實例6.7 增加注冊表啟動項 235 實例6.8 禁止系統(tǒng)自動播放功能 235 6.3 小結(jié) 237 第7章 攻防的高難度的動作 238 7.1 Rootkit與系統(tǒng)內(nèi)核功能 238 7.1.1 Rootkit簡介 238 7.1.2 Rootkit相關(guān)的系統(tǒng)功能 238 7.1.3 Rootkit的分類及實現(xiàn) 239 實例7.1 IRPS形式的Rootkit編碼實現(xiàn) 241 7.2 Rootkit對抗殺毒軟件 243 7.2.1 增加空節(jié)來感染PE文件 244 實例7.2 給程序增加空字節(jié) 244 7.2.2 通過Rootkit來繞過KIS 7.0 的網(wǎng)絡(luò)監(jiān)控程序 251 實例7.3 編程繞過KIS 252 7.2.3 HIV繞過卡巴斯基主動防御的方法 253 實例7.4 HIV繞過卡巴斯基 253 7.2.4 關(guān)于進(jìn)程PEB結(jié)構(gòu)的修改實現(xiàn) 255 實例7.5 進(jìn)程PEB結(jié)構(gòu)的修改實現(xiàn) 255 實例7.6 修改PEB信息 258 7.2.5 結(jié)束AVP的批處理 259 實例7.7 結(jié)束AVP的批處理程序 259 7.3 Rootkit程序?qū)嵗?262 實例7.8 RootKit程序保護(hù)文件功能 262 實例7.9 上層應(yīng)用程序調(diào)用sys驅(qū)動 268 7.4 小結(jié) 270 第8章 沒開發(fā)過自己的軟件,怎么成大師 271 8.1 遠(yuǎn)程控制軟件簡介 271 8.1.1 遠(yuǎn)程控制軟件的形式 271 8.1.2 遠(yuǎn)程控制軟件的特點 272 8.2 遠(yuǎn)程控制軟件的功能 273 8.2.1 反彈連接功能 273 8.2.2 動態(tài)更新IP功能 273 8.2.3 詳細(xì)的計算機(jī)配置信息的獲取 274 8.2.4 進(jìn)
你還可能感興趣
我要評論
|