一個bug引發慘案!成功追回損失後,拼多多還應做什麼?
1月20日凌晨,網際網路銷售平臺拼多多遭遇了“優惠券Bug”:網站每一位註冊使用者可以通過微信渠道、網頁端、QQ渠道等,領取面值為100元的優惠券,該優惠券適用該網站的商品,有效期為一年。隨後,有網友曝出,用領取的優惠券可以充值話費、Q幣。上午9點,網友發現拼多多已將相關優惠券全部下架,直至10點左右,該漏洞才被拼多多官方修復。併網傳拼多多一夜損失近200億元,一時引起廣泛關注。而拼多多的這一“優惠券Bug”,更多的還是網站安全隱患問題,拼多多成功追回損失後, 更重要的事情是程式碼的安全要重視起來 。
近年來,全球大規模爆發勒索病毒和挖礦病毒,讓沉寂許久的黑客技術,又重新回到了人們的視野中。Windows作業系統市場佔有率高達90%以上,所以面對勒索病毒、挖礦病毒,Windows使用者首當其衝。 今天介紹一本資訊保安類的圖書。
為了揭開病毒木馬的神祕面紗,更好地服務於資訊保安,《Windows黑客程式設計技術詳解》總結並剖析了常見的Windows黑客程式設計技術,用通俗易懂的語言介紹了使用者層下的Windows程式設計和核心層下的Rootkit程式設計。這本書理論技術與實戰操作相輔相成,凸顯“道與術”;庖丁解牛式剖析Windows使用者層和核心層黑客技術原理 ;程式碼相容性高,支援Windows 7到Windows 10全平臺系統。
《Windows黑客程式設計技術詳解》
作者:甘迪文
掃描二維碼,一鍵購買
作者自述
資訊保安行業是一個朝陽行業,國家、企業以及高校都予以高度重視。其中,Windows系統的市場佔有率高達90%以上,因此Windows系統上的安全需求更多,安全攻防更激烈。
我從本科開始就對黑客技術感興趣,通過自學,積累了許多這方面的開發技術,並逐漸有了自己的心得和感悟。到了研究生階段,之前積累的知識幫助我快速而高效地完成了專案的安全開發工作,但是卻發現周圍仍有很多安全相關專業的同學仍陷於開發難的苦惱中,於是便萌生了寫作本書的想法,希望通過分享自己積累的心得體會,讓更多的初學者能少走些彎路。
古人云“知其然,知其所以然”。作為一個初學者,首先要做到的是“知其然”,即學會怎麼去做;然後再去理解這樣做的緣由,即“知其所以然”。本書著重於“知其然”階段,編寫一本能夠讓初學者看懂的技術科普書。
所以,本書在詳細介紹每一種黑客技術時,均是按照下述7個模組進行寫作的。
1.背景:介紹技術的應用場景。
2.函式介紹:給出技術實現所需的前提知識。
3.實現原理(過程):講解技術實現的原理。
4.編碼實現:給出技術實現的部分關鍵程式碼。
5.測試:對程式進行測試,給出測試方法和測試結果。
6.小結:對該技術點進行總結,指出難易點和注意事項。
7.安全小貼士:針對一些有攻擊性的技術,給出檢測或防禦方法。
本書所包含的知識點循序漸進,語言平實,每個技術點條理清晰,主要有3個突出的特點。
1.技術點講解詳細。因為我是一邊編著本書,一邊重寫程式,所以,能夠在書中把實現步驟和注意事項一一指明。
2.知識點相容性高。本書的技術以及對應的示例程式碼 (包括核心層下的Rootkit技術程式碼),均支援32位和64位的Windows 7、Windows 8.1和Windows 10作業系統。
3.注重實戰。本書所介紹的技術知識都貼近實戰技術,可以讓讀者直接感受到實戰的魅力。
由於本書是基於每一個技術點去撰寫的,章節獨立性較高。所以,讀者可以按順序閱讀,也可以選擇自己感興趣的章節跳讀。對於每一章的閱讀,建議依次按照背景、函式介紹、實現原理、編碼實現、測試和總結的順序進行閱讀,這樣才能更好地提高自己的安全開發水平。
本書組織結構
本書分為“使用者篇”(第1~11章)與“核心篇”(第12~18章)兩篇,總計18章。為了幫助讀者更好地瞭解本書所講的內容,下面列出了每章所講的主要內容。
第1章,開發環境,主要介紹VS 2013開發環境的安裝、工程專案的設定,以及關於Debug模式和Release模式的相關注意事項。
•第2章,基礎技術,介紹了執行單一例項、DLL延遲載入和資源釋放等內容。
•第3章,注入技術,介紹了全域性鉤子注入、遠執行緒注入、突破SESSON 0隔離的遠執行緒注入、APC注入等內容。
•第4章,啟動技術,介紹了建立程序API、突破SESSON 0隔離建立使用者程序、記憶體直接載入執行等知識。
•第5章,自啟動技術,涵蓋了登錄檔、快速啟動目錄、計劃任務和系統服務等內容。
•第6章,提權技術,包含程序訪問令牌許可權提升、Bypass UAC等內容。
•第7章,隱藏技術,講解了程序偽裝、傀儡程序、程序隱藏、DLL劫持等知識。
•第8章,壓縮技術,介紹了資料壓縮API、ZLIB壓縮庫等知識。
•第9章,加密技術,介紹了Windows自帶的加密庫、Crypto++密碼庫等知識。
•第10章,傳輸技術,介紹了Socket通訊、FTP通訊、HTTP通訊、HTTPS通訊等知識。
•第11章,功能技術,講解了程序遍歷、檔案遍歷、桌面截圖、按鍵記錄、遠端CMD、U盤監控、檔案監控、自刪除等知識。
•第12章,開發環境,介紹了內容開發環境的配置、驅動程式開發與測試、驅動無原始碼除錯、32位和64位驅動開發等知識。
•第13章,檔案管理技術,介紹了檔案管理中用到的核心API、IRP、NTFS解析等知識。
•第14章,登錄檔管理技術,講解了登錄檔管理中用到的API、HIVE檔案解析等知識。
•第15章,HOOK技術,介紹了SSDT HOOK、過濾驅動等知識。
•第16章,監控技術,講解了程序建立監控、模組載入監控、登錄檔監控、物件監控、Minifilter檔案監控、WFP網路監控等內容。
•第17章,反監控技術,與第16章相反,它介紹了反程序建立監控、反執行緒建立監控、反模組載入監控、反登錄檔監控、反物件監控、反Minifilter檔案監控等內容。
•第18章,功能技術,介紹了過PatchGuard的驅動隱藏、過PatchGuard的程序隱藏、TDI網路通訊、強制結束程序、檔案保護、檔案強刪等知識。
· 附錄,函式一覽表 ,介紹了本書使用的函式以及相應的作用。
由於本書中的程式碼均使用C/C++來編寫,因此掌握C/C++語言的概念可以更容易理解本書。如果不具備程式設計知識,也可繼續學習並理解所有技術點的開發流程。對於書中的核心層開發部分,即使讀者沒有接觸過核心開發,也可根據本書的內容一步步學習核心開發技術。
最後需要提醒大家的是:
根據國家有關法律規定,任何利用黑客技術攻擊他人計算機的行為都屬於違法行為。希望讀者在閱讀本書後一定不要使用本書介紹的技術對他人的計算機進行攻擊,否則後果自負。
名家評論
本書詳解了注入、啟動、許可權、HOOK、監控等技術,從技術知識體系上對其細節(如實現原理、編碼實戰、案例測試等)進行了剖析,降低了學習難度,因此非常適合Windows安全、二進位制安全、逆向工程等相關領域的愛好者、從業者群體閱讀。大家可以通過本書對自己的Windows安全知識體系進行補充與鞏固。值得閱讀!
—— 孔韜循(K0r4dji),丁牛科技有限公司首席安全官,破曉安全團隊創始人
"黑客"當今已經不再是神祕的代言詞,而是攻防技術的象徵——如何利用簡短的程式碼實現意想不到的結果,各類病毒木馬是如何利用Windows的相關API技術實現傳播、隱藏、啟動、複製等操作——黑客已經把Windows的機制運用得淋漓盡致,這本《Windows黑客程式設計技術詳解》帶領讀者從使用者態到核心態一步一步地瞭解黑客如何巧妙地利用各類Windows的機制達成自己的目的,以及從攻與防出發的角度瞭解黑客是怎樣的一個“神祕群體”!值得推薦!
——朱利軍,四葉草資訊科技有限公司首席安全官
闡述Windows下黑客程式設計常用技術的書籍有很多,但或涉獵不全,或程式碼健壯性及相容性較差,而能將以上技術按照難易梯度依次彙集在一本書內,並且所有示例程式碼均是多系統全平臺相容的,我個人知道的僅此一本。本書內部穿插的那些作者苦心而作的若干精巧例子值得我們每個人細細品味,同時這本書對於軟體安全領域的工作人員也不失為一本案頭必備的程式碼、案例參考工具書。
——任曉琿,十五派資訊保安教育創始人,《黑客免殺攻防》作者
在當前網路安全逐漸娛樂化的時代,本書就像一股清流,讓我想起10餘年前和小夥伴們一起徹夜研究各種植入、逃逸技術的一幕幕。本書教會你製作網路空間的利刃的方法,對於技術流的小夥伴們是一門必修的功課,不過切記要把它用在正道。
——王珩,賽寧網安副總經理,資訊保安漏洞門戶(vulhub.org.cn)創始人
目錄一覽
第1篇 使用者篇
第1章 開發環境 3
1.1 環境安裝 3
1.2 工程專案設定 5
1.3 關於Debug模式和Release模式的小提示 7
第2章 基礎技術 10
2.1 執行單一例項 10
2.2 DLL延遲載入 13
2.3 資源釋放 15
第3章 注入技術 22
3.1 全域性鉤子注入 22
3.2 遠執行緒注入 27
3.3 突破SESSION 0隔離的遠執行緒注入 34
3.4 APC注入 37
第4章 啟動技術 42
4.1 建立程序API 42
4.2 突破SESSION 0隔離建立使用者程序 48
4.3 記憶體直接載入執行 55
第5章 自啟動技術 60
5.1 登錄檔 60
5.2 快速啟動目錄 66
5.3 計劃任務 69
5.4 系統服務 75
第6章 提權技術 84
6.1 程序訪問令牌許可權提升 84
6.2 Bypass UAC 89
第7章 隱藏技術 97
7.1 程序偽裝 97
7.2 傀儡程序 102
7.3 程序隱藏 106
7.4 DLL劫持 112
第8章 壓縮技術 119
8.1 資料壓縮API 119
8.2 ZLIB壓縮庫 126
第9章 加密技術 133
9.1 Windows自帶的加密庫 133
9.2 Crypto++密碼庫 152
第10章 傳輸技術 168
10.1 Socket通訊 168
10.2 FTP通訊 181
10.3 HTTP通訊 190
10.4 HTTPS通訊 202
第11章 功能技術 210
11.1 程序遍歷 210
11.2 檔案遍歷 214
11.3 桌面截圖 219
11.4 按鍵記錄 226
11.5 遠端CMD 232
11.6 U盤監控 235
11.7 檔案監控 241
11.8 自刪除 245
第2篇 核心篇
第12章 開發環境 253
12.1 環境安裝 253
12.2 驅動程式的開發與除錯 254
12.3 驅動無原始碼除錯 264
12.4 32位和64位驅動開發 268
第13章 檔案管理技術 270
13.1 檔案管理之核心API 270
13.2 檔案管理之IRP 293
13.3 檔案管理之NTFS解析 303
第14章 登錄檔管理技術 317
14.1 登錄檔管理之核心API 317
14.2 登錄檔管理之HIVE檔案解析 329
第15章 HOOK技術 337
15.1 SSDT HOOK 337
15.2 過濾驅動 351
第16章 監控技術 357
16.1 程序建立監控 357
16.2 模組載入監控 363
16.3 登錄檔監控 369
16.4 物件監控 374
16.5 Minifilter檔案監控 379
16.6 WFP網路監控 385
第17章 反監控技術 392
17.1 反程序建立監控 392
17.2 反執行緒建立監控 397
17.3 反模組載入監控 403
17.4 反登錄檔監控 407
17.5 反物件監控 411
17.6 反Minifilter檔案監控 415
第18章 功能技術 421
18.1 過PatchGuard的驅動隱藏 421
18.2 過PatchGuard的程序隱藏 426
18.3 TDI網路通訊 429
18.4 強制結束程序 437
18.5 檔案保護 442
18.6 檔案強刪 444
附錄 函式一覽表 447
《Windows黑客程式設計技術詳解》
作者:甘迪文
掃描二維碼,一鍵購買
《Windows黑客程式設計技術詳解》介紹的是黑客程式設計的基礎技術,涉及使用者層下的Windows程式設計和核心層下的Rootkit程式設計。本書分為使用者篇和核心篇兩部分,使用者篇包括11章,配套49個示例程式原始碼;核心篇包括7章,配套28個示例程式原始碼。本書介紹的每個技術都有詳細的實現原理,以及對應的示例程式碼(配套程式碼均支援32位和64位Windows 7、Windows 8.1及Windows 10系統),旨在幫助初學者建立起黑客程式設計技術的基礎。
本書面向對計算機系統安全開發感興趣,或者希望提升安全開發水平的讀者,以及從事惡意程式碼分析研究的安全人員。
更多安全書單
《Wireshark資料包分析實戰(第3版)》
作者:[美]克里斯 ▪ 桑德斯(Chris Sanders)
掃描二維碼,一鍵購買
Wireshark是最流行的一款網路嗅探軟體,本書在上一版的基礎上針對Wireshark 2.0.5和IPv6進行了更新,並通過大量真實的案例對Wireshark的使用進行了詳細講解,旨在幫助讀者理解Wireshark捕獲的PCAP格式的資料包,以便對網路中的問題進行排錯。
《Wireshark網路分析實戰(第2版)》
作者:[印度]甘德拉·庫馬爾·納納
掃描二維碼,一鍵購買
Wireshark大百科全書;鉅細靡遺地講解Wireshark操作細節;掌握Wireshark基本操作的唯一入門級圖書;排除網路故障;效能調優的好幫手 每一位IT運維人員的必備利器。
本書包含了用Wireshark 2排除數通網路故障的實用祕訣。相較於之前的版本,Wireshark 2又增加了很多強大功能,獲得了業界更廣泛的關注。
本書擴充了上一版的主題,涵蓋如何使用Wireshark監控TCP效能、網路安全、無線LAN以及雲和虛擬系統,介紹了在單播/多播網路環境中如何藉助Wireshark分析端到端的IPv4/IPv6連通性故障。讀者將瞭解E-mail協議的正常執行機制,學會如何使用Wireshark來完成基本的故障分析和排除工作。利用Wireshark這款利器,讀者可以解決企業網路中常用應用程式的故障。讀者還將學習如何測量網路引數,如何檢查並修復因網路引數引起的效能問題。