電腦安全的書籍比比皆是。許多人和管理人員常因書類眾多而不知所措,這也是理所當然的。針對電腦系統的攻擊,其複雜度會因為弱點攻擊事件的增加而逐漸提高。
攻擊者可以對你所做的最壞之事為何?這就是本書要教你的東西。基於防禦的原則,唯一的方式就是深入瞭解你的攻擊者,本書將揭露你的系統可能遭受的威脅。本書所論及的各項主題,包括逆向工程、SQL 攻擊、社交工程、反鑑識,以及針對 Unix 和 Windows 系統的高階攻擊手段。本書會讓你瞭解你的敵人,讓你做好打仗的準備。
本書特別重視逆向工程(reverse engineering,簡稱 RE)。RE 是管理人員的基本技能,因為他們必須察覺出機器上所安裝的任何惡意軟體(malware):加裝了木馬的二進制檔案、看起來無害但會把私密資料傳給其創造者的「間諜軟體」(spyware),等等。會談到 Linux 或 Windows CE 逆向工程的書籍只有本書。本書也是唯一會教 SQL injection 如何運作的書籍,讓你得以檢視自己的資料庫及 web 應用程式,以便找出弱點。
本書是一本論及電腦戰爭(電腦系統的攻擊以及防禦)之全方位而新穎的書籍。這種事通常很嚇人,一點也不輕鬆。如果你人就在前線,需要抵抗攻擊者攻擊你的網站,你的手上或是書架上就應該要有這本書。
作者簡介:
Cyrus Pekiari 是 Airscanner 的創辦人,他開發了一些無線安全工具。他也是好幾本安全書籍的作者,時常在安全會議上發表演講,也是 InformIT.com 網站上安全方面的主持人。
Anton Chuvakin 是 netForensics 的資深安全分析師,他的專長是網路安全、入侵偵測、系統強化以及弱點分析。他寫過許多有關電腦和網路安全的文章。
目錄
序
第一部分 破解軟體
第一章 組合語言
1.1 暫存器
1.2 ASM 運算碼
1.3 參考資料
第二章 Windows 逆向工程
2.1 RCE 的歷史
2.2 逆向工具
2.3 逆向工程實例
2.4 參考資料
第三章 Linux 逆向工程
3.1 基本工具和技巧
3.2 有用的反組譯內容
3.3 問題領域
3.4 撰寫新工具
3.5 參考資料
第四章 Windows CE 逆向工程
4.1 Windows CE 架構
4.2 CE 逆向工程基礎
4.3 CE 逆向工程實務
4.4 對 serial.exe 進行逆向工程
4.5 參考資料
第五章 溢位攻擊
5.1 緩衝區溢位
5.2 瞭解緩衝區
5.3 粉碎堆疊
5.4 堆積溢位
5.5 防止緩衝區溢位
5.6 血淋淋的挑戰
5.7 參考資料
第二部分 網路追蹤
第六章 TCP/IP 分析
6.1 TCP/IP 簡史
6.2 封裝
6.3 TCP
6.4 IP
6.5 UDP
6.6 ICMP
6.7 ARP
6.8 RARP
6.9 BOOTP
6.10 DHCP
6.11 TCP/IP 協商機制
6.12 隱藏通道
6.13 IPv6
6.14 Ethereal
6.15 封包分析
6.16 分段
6.17 參考資料
第七章 社交工程
7.1 背景
7.2 展開攻擊
7.3 高等社交工程
7.4 參考資料
第八章 偵察
8.1 線上偵察
8.2 結論
8.3 參考資料
第九章 OS 特徵探測
9.1 telnet 期程協商
9.2 TCP 疊層特徵探測
9.3 特殊用途的工具
9.4 被動特徵探測
9.5 模糊作業系統特徵探測
9.6 TCP/IP 時限偵測
9.7 參考資料
第十章 隱藏蹤跡
10.1 你在躲誰?
10.2 攻擊後之清理
10.3 鑑識蹤跡
10.4 保持隱藏存取
10.5 參考資料
第三部分 平台攻擊
第十一章 Unix 防禦
11.1 Unix 通行密碼
11.2 檔案權限
11.3 系統登錄功能
11.4 Unix 網路存取
11.5 強化 Unix
11.6 Unix 網路防禦
11.7 參考資料
第十二章 Unix 攻擊
12.1 本地攻擊
12.2 遠端攻擊
12.3 Unix 阻絕服務攻擊
12.4 參考資料
第十三章 Windows 用戶端攻擊
13.1 阻絕服務攻擊
13.2 遠端攻擊
13.3 遠端桌面/遠端協助
13.4 參考資料
第十四章 Windows Server 攻擊
14.1 版本沿革
14.2 Kerberos 認證攻擊
14.3 Kerberos 認證回顧
14.4 擊敗緩衝區溢位的防禦
14.5 Active Directory 弱點
14.6 駭擊 PKI
14.7 智慧卡駭擊
14.9 其他廠商之加密功能
14.8 Encrypting File System 的變更
14.10 參考資料
第十五章 SOAP XML Web Services 安全
15.1 XML 加密
15.2 XML 簽章
15.3 參考資料
第十六章 SQL injection
16.1 SQL 簡介
16.2 SQL injection 攻擊
16.3 SQL injection 防禦
16.4 PHP-Nuke 實例
16.5 參考資料
第十七章 無線安全
17.1 降低訊號的漂移
17.2 WEP 的問題
17.3 破解 WEP
17.4 WEP 破解實務
17.5 VPN
17.6 TKIP
17.7 SSL
17.8 空運病毒
17.9 參考資料
第四部分 高階防禦
第十八章 日誌分析
18.1 日誌分析基礎
18.2 日誌範例
18.3 登錄狀態
18.4 何時查看日誌
18.5 日誌滿溢和聚集
18.6 日誌分析的挑戰
18.7 安全資訊管理
18.8 全球性日誌聚集
18.9 參考資料
第十九章 入侵偵測系統
19.1 IDS 範例
19.2 Bayesian 分析法
19.3 侵駭 IDS
19.4 IDS 的未來
19.5 Snort IDS 案例研究
19.6 IDS 的部署議題
19.7 參考資料
第二十章 蜜罐
20.1 動機
20.2 建立基礎架構
20.3 捕捉攻擊
20.4 參考資料
第廿一章 意外事件應變
21.1 案例研究:蠕蟲破壞
21.2 定義
21.3 意外事件應變架構
21.4 小型網路
21.5 中型網路
21.6 大型網路
21.7 參考資料
第廿二章 鑑識和反鑑識
22.1 硬體回顧
22.2 資訊碎屑
22.3 鑑識工具
22.4 可開機鑑識 CD-ROM
22.5 Evidence Eliminator
22.6 鑑識案例研究:FTP 攻擊
22.7 參考資料
第五部分 附錄
附錄 有用的 SoftICE 命令和斷點
索引
序
第一部分 破解軟體
第一章 組合語言
1.1 暫存器
1.2 ASM 運算碼
1.3 參考資料
第二章 Windows 逆向工程
2.1 RCE 的歷史
2.2 逆向工具
2.3 逆向工程實例
2.4 參考資料
第三章 Linux 逆向工程
3.1 基本工具和技巧
3.2 有用的反組譯內容
3.3 問題領域
3.4 撰寫新工具
3.5 參考資料
第四章 Windows CE 逆向工程
4.1 Windows CE 架構
4.2 CE 逆向工程基礎
4.3 CE 逆向工程實務
4.4 對 serial.exe 進行逆向工程
4.5 參考資料
第五章 溢位攻擊
5.1 緩衝區...