|
-- 會員 / 註冊 --
|
|
|
|
C#灰帽子:設計安全測試工具 ( 簡體 字) |
作者:[美]布蘭德·佩里( Brandon Perry ) | 類別:1. -> 安全 -> 網路安全 -> 駭客攻擊與入侵 2. -> 程式設計 -> .NET -> C# |
譯者: |
出版社:機械工業出版社 | 3dWoo書號: 48860 詢問書籍請說出此書號!【有庫存】 NT售價: 345 元 |
出版日:4/1/2018 |
頁數:276 |
光碟數:0 |
|
站長推薦: |
印刷:黑白印刷 | 語系: ( 簡體 版 ) |
|
加入購物車 │加到我的最愛 (請先登入會員) |
ISBN:9787111590767 |
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 序 |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證) |
作者序: |
譯者序: |
前言: |
內容簡介:本書介紹如何用C#核心庫進行漏洞掃描、惡意軟件自動分析和安全事件響應等,以及如何編寫安全實用工具可應用于Mac、Linux、移動平臺等。例如,編寫模糊分析器以便用HTTP和XML庫掃描SQL和XSS注入,在Metasploit中生成代碼來創建跨平臺和跨架構的工具,用Nessus、OpenVAS和sqlmap自動化掃描漏洞并利用SQL漏洞,等等。使用C#工具庫和本書提供的工具可簡化日常安全工作。 |
目錄:第1章 C#基礎知識速成 1 1.1 選擇IDE 1 1.2 一個簡單的例子 2 1.3 類和接口 3 1.3.1 創建一個類 4 1.3.2 創建接口 4 1.3.3 從抽象類中子類化并實現接口 5 1.3.4 將所有內容與Main()方法結合到一起 7 1.3.5 運行Main()方法 8 1.4 匿名方法 9 1.4.1 在方法中使用委托 9 1.4.2 更新Firefighter類 10 1.4.3 創建可選參數 10 1.4.4 更新Main()方法 11 1.4.5 運行更新的Main()方法 12 1.5 與本地庫整合 12 1.6 本章小結 14 第2章 模糊測試和漏洞利用技術 15 2.1 設置虛擬機 16 2.1.1 添加僅主機虛擬網絡 16 2.1.2 創建虛擬機 16 2.1.3 從BadStore ISO啟動虛擬機 17 2.2 SQL注入 19 2.3 跨站腳本攻擊 20 2.4 使用基于突變的模糊測試工具對GET參數進行模糊測試 22 2.4.1 污染參數和測試漏洞 23 2.4.2 構造HTTP請求 23 2.4.3 測試模糊測試的代碼 25 2.5 對POST請求進行模糊測試 25 2.5.1 編寫一個對POST請求進行模糊測試的工具 28 2.5.2 開始模糊測試 29 2.5.3 對參數進行模糊測試 30 2.6 對JSON進行模糊測試 32 2.6.1 設置存在漏洞的程序 32 2.6.2 捕獲易受攻擊的JSON請求 33 2.6.3 編寫對JSON進行模糊測試的工具 34 2.6.4 測試對JSON進行模糊測試的工具 39 2.7 利用SQL注入 40 2.7.1 手工進行基于UNION的注入 40 2.7.2 編程進行基于UNION的注入 42 2.7.3 利用基于布爾的SQL注入 45 2.8 本章小結 53 第3章 對SOAP終端進行模糊測試 55 3.1 設置易受攻擊的終端 55 3.2 解析WSDL 56 3.2.1 為WSDL文檔編寫一個類 57 3.2.2 編寫初始解析方法 58 3.2.3 為SOAP類型和參數編寫一個類 60 3.2.4 編寫一個SoapMessage類來定義發送的數據 62 3.2.5 為消息部分實現一個類 63 3.2.6 使用SoapPortType類定義端口操作 64 3.2.7 為端口操作實現一個類 65 3.2.8 使用SOAP綁定定義協議 66 3.2.9 編輯操作子節點的列表 68 3.2.10 在端口上尋找SOAP服務 68 3.3 自動化執行模糊測試 70 3.3.1 對不同的SOAP服務進行模糊測試 71 3.3.2 對SOAP HTTP POST端口進行模糊測試 75 3.3.3 對SOAP XML端口進行模糊測試 78 3.3.4 運行模糊測試工具 82 3.4 本章小結 83 第4章 編寫有效載荷 84 4.1 編寫回連的有效載荷 84 4.1.1 網絡流 85 4.1.2 運行命令 86 4.1.3 運行有效載荷 88 4.2 綁定有效載荷 88 4.2.1 接收數據,運行命令,返回輸出 89 4.2.2 從流中執行命令 90 4.3 使用UDP攻擊網絡 91 4.3.1 運行在目標機器上的代碼 92 4.3.2 運行在攻擊者機器上的代碼 95 4.4 從C#中運行x86和x86-64 Metasploit有效載荷 97 4.4.1 安裝Metasploit 97 4.4.2 生成有效載荷 99 4.4.3 執行本機Windows有效載荷作為非托管代碼 100 4.4.4 執行本機Linux有效載荷 102 4.5 本章小結 106 第5章 自動化運行Nessus 107 5.1 REST和Nessus API 107 5.2 NessusSession類 108 5.2.1 發送HTTP請求 109 5.2.2 注銷和清理 111 5.2.3 測試NessusSession類 112 5.3 NessusManager類 112 5.4 啟動Nessus掃描 114 5.5 本章小結 117 第6章 自動化運行Nexpose 118 6.1 安裝Nexpose 118 6.1.1 激活與測試 120 6.1.2 一些Nexpose語法 121 6.2 NexposeSession類 121 6.2.1 ExecuteCommand()方法 123 6.2.2 注銷及釋放會話 126 6.2.3 獲取API版本 127 6.2.4 調用Nexpose API 127 6.3 NexposeManager類 128 6.4 自動發起漏洞掃描 130 6.4.1 創建一個擁有資產的站點 130 6.4.2 啟動掃描 131 6.5 創建PDF格式站點掃描報告及刪除站點 132 6.6 匯總 133 6.6.1 開始掃描 133 6.6.2 生成掃描報告并刪除站點 134 6.6.3 執行自動化掃描程序 134 6.7 本章小結 135 第7章 自動化運行OpenVAS 136 7.1 安裝OpenVAS 136 7.2 構建類 137 7.3 OpenVASSession類 137 7.3.1 OpenVAS服務器認證 138 7.3.2 創建執行OpenVAS命令的方法 139 7.3.3 讀取服務器消息 140 7.3.4 建立發送/接收命令的TCP流 141 7.3.5 證書有效性及碎片回收 141 7.3.6 獲取OpenVAS版本 142 7.4 OpenVASManager類 143 7.4.1 獲取掃描配置并創建目標 144 7.4.2 封裝自動化技術 148 7.4.3 運行自動化操作 149 7.5 本章小結 149 第8章 自動化運行Cuckoo Sandbox 150 8.1 安裝Cuckoo Sandbox 150 8.2 手動運行Cuckoo Sandbox API 151 8.2.1 啟動API 151 8.2.2 檢查Cuckoo的狀態 152 8.3 創建CuckooSession類 153 8.3.1 編寫ExecuteCommand()方法來處理HTTP請求 154 8.3.2 用GetMultipartFormData()方法創建分段HTTP數據 156 8.3.3 用FileParameter類處理文件數據 158 8.3.4 測試CuckooSession及支持類 159 8.4 編寫CuckooManger類 160 8.4.1 編寫CreateTask()方法 161 8.4.2 任務細節及報告方法 162 8.4.3 創建任務抽象類 163 8.4.4 排序并創建不同的類類型 165 8.5 組合在一起 167 8.6 測試應用程序 168 8.7 本章小結 170 第9章 自動化運行sqlmap 171 9.1 運行sqlmap 172 9.1.1 sqlmap REST API 173 9.1.2 用curl測試sqlmap API 174 9.2 創建一個用于sqlmap的會話 177 9.2.1 創建執行GET請求的方法 179 9.2.2 執行POST請求 179 9.2.3 測試Session類 180 9.3 SqlmapManager類 182 9.3.1 列出sqlmap選項 184 9.3.2 編寫執行掃描的方法 185 9.3.3 新的Main()方法 187 9.4 掃描報告 188 9.5 自動化執行一個完整的sqlmap掃描 189 9.6 將sqlmap和SOAP漏洞測試程序集成在一起 191 9.6.1 在SOAP漏洞測試程序中增加sqlmap GET請求支持 191 9.6.2 增加sqlmap POST請求支持 192 9.6.3 調用新編寫的方法 194 9.7 本章小結 196 第10章 自動化運行ClamAV 197 10.1 安裝ClamAV軟件 197 10.2 ClamAV軟件本地庫與clamd網絡守護進程 199 10.3 通過ClamAV軟件本地庫自動執行 199 10.3.1 創建支持的枚舉類型和類 199 10.3.2 調用ClamAV軟件的本地庫函數 202 10.3.3 編譯ClamAV軟件引擎 203 10.3.4 掃描文件 205 10.3.5 清理收尾 206 10.3.6 通過掃描EICAR測試文件來測試程序 207 10.4 通過clamd守護進程自動化執行 208 10.4.1 安裝clamd守護進程 209 10.4.2 啟動clamd守護進程 209 10.4.3 創建clamd進程會話類 210 10.4.4 創建clamd進程管理器類 211 10.4.5 測試clamd進程 212 10.5 本章小結 214 第11章 自動化運行Metasploit 215 11.1 運行RPC服務器 215 11.2 安裝Metasploitable系統 217 11.3 獲取MSGPACK庫 218 11.3.1 為MonoDevelop環境安裝NuGet軟件包管理器 218 11.3.2 安裝MSGPACK庫 219 11.3.3 引用MSGPACK庫 220 11.4 編寫MetasploitSession類 221 11.4.1 為HTTP請求以及與MSGPACK庫進行交互創建Execute()方法 222 11.4.2 轉換MSGPACK庫的響應數據 223 11.5 測試會話類 225 11.6 編寫MetasploitManager類 226 11.7 整合代碼模塊 228 11.7.1 運行漏洞利用示例 229 11.7.2 與命令行進行交互 230 11.7.3 連接得到命令行 231 11.8 本章小結 231 第12章 自動化運行Arachni 233 12.1 安裝Arachni軟件 233 12.2 Arachni軟件的REST API函數 234 12.2.1 創建ArachniHTTP-Session類 235 12.2.2 創建ArachniHTTP-Manager類 237 12.3 整合會話和管理器類 238 12.4 Arachni軟件的RPC服務 239 12.4.1 手動運行RPC服務 239 12.4.2 ArachniRPCSession類 241 12.4.3 ExecuteCommand()的支持方法 243 12.4.4 ExecuteCommand()方法 245 12.4.5 ArachniRPCManager類 247 12.5 整合代碼 248 12.6 本章小結 250 第13章 反編譯和逆向分析托管程序集 252 13.1 反編譯托管程序集 252 13.2 測試反編譯器 255 13.3 使用monodis工具分析程序集 256 13.4 本章小結 259 第14章 讀取離線注冊表項 260 14.1 注冊表項結構 260 14.2 獲取注冊表項 261 14.3 讀取注冊表項 263 14.3.1 創建注冊表項文件的解析類 263 14.3.2 創建節點鍵類 264 14.3.3 創建值鍵的存儲類 269 14.4 對庫進行測試 270 14.5 導出啟動密鑰 271 14.5.1 GetBootKey()方法 271 14.5.2 GetValueKey()方法 273 14.5.3 GetNodeKey()方法 273 14.5.4 StringToByteArray()方法 274 14.5.5 獲取啟動密鑰 275 14.5.6 驗證啟動密鑰 275 14.6 本章小結 276 |
序: |
|