白帽子講Web掃描pdf

2019年10月1日12:11:05 評論 12
摘要

《白帽子講Web掃描》的關鍵詞:Web 2.0爬蟲,掃描設計,漏洞審計,云掃描,企業掃描,掃描反制。

白帽子講Web掃描 內容簡介

Web掃描器是一種可以對Web應用程序進行自動化安全測試的工具,它可以幫助我們快速發現目標存在的安全風險,并能夠對其進行持續性安全監控。

《白帽子講Web掃描》詳細講述了Web掃描器的概念、原理、實踐及反制等知識,筆者憑借多年的安全工作經驗,站在安全和開發的雙重角度,力求為讀者呈現出一個完整的Web掃描知識體系。通過對《白帽子講Web掃描》的學習和實踐,可以讓你快速建立自己的Web掃描體系,提高安全基礎能力。

白帽子講Web掃描 目錄

前言

第1章 掃描器基礎

1.1 什么是Web掃描器

1.2 掃描器的重要性

1.3 掃描器的類型

1.4 常見的掃描器(掃描器的示例)

1.5 掃描器評測

1.6 漏洞測試平臺

1.7 掃描環境部署

第2章 Web爬蟲基礎

2.1 什么是Web爬蟲

2.2 瀏覽器手工爬取過程

2.3 URL

2.4 超級鏈接

2.5 HTTP協議(Request/Response)

2.6 HTTP認證

2.7 HEAD方法

2.8 Cookie機制

2.9 DNS本地緩存

2.10 頁面解析

2.11 爬蟲策略

2.12 頁面跳轉

2.13 識別404錯誤頁面

2.14 URL重復/URL相似/URL包含

2.15 區分URL的意義

2.16 URL去重

2.17 頁面相似算法

2.18 斷連重試

2.19 動態鏈接與靜態鏈接

第3章 Web爬蟲進階

3.1 Web爬蟲的工作原理

3.2 實現URL封裝

3.3 實現HTTP請求和響應

3.4 實現頁面解析

3.5 URL去重去似

3.6 實現404頁面識別

3.7 實現斷連重試

3.8 實現Web爬蟲

3.9 實現Web 2.0爬蟲

第4章 應用指紋識別

4.1 應用指紋種類及識別

4.2 應用指紋識別的價值

4.3 應用指紋識別技術

第5章 安全漏洞審計

5.1 安全漏洞審計三部曲

5.2 通用型漏洞審計

5.3 Nday/0day漏洞審計

第6章 掃描器進階

6.1 掃描流程

6.2 軟件設計

6.3 功能模塊

6.4 軟件架構

6.5 數據結構

6.6 功能實現

6.7 掃描報告

6.8 掃描測試

第7章 云掃描

7.1 什么是云掃描

7.2 云掃描架構

7.3 云掃描實踐

7.4 云掃描服務

第8章 企業安全掃描實踐

8.1 企業為什么需要掃描

8.2 企業掃描的應用場景

第9章 關于防御

9.1 爬蟲反制

9.2 審計反制

9.3 防御策略

附錄A

附錄B

白帽子講Web掃描 精彩文摘

我的安全路

本人第一次接觸安全是在大學期間,有一次無意中讀到室友買的一本《黑客防線》雜志,立刻就被里面的黑客技術深深吸引。從那以后,我就開始瘋狂學習安全知識,而那時候大學還沒有設立類似的課程,只能靠自己獨立鉆研。一方面我借助安全雜志學習入侵實踐知識,另一方面則“泡”在圖書館里翻閱各類與安全相關的書籍補充理論知識,成長非常快。

但在大學畢業的時候,我卻并沒有選擇進入自己感興趣的安全類公司,反而進入了一家大型跨國公司,在里面做了一年的軟件測試工作,感覺這段經歷對我最大的改變就是,養成了喜歡用自動化方式去解決一些重復工作的習慣。

后來我還是希望遵從內心,決定找一份與安全相關的工作。在辭職前,我成功地入侵了公司的內部網絡,拿到公司域控的管理權限,并在服務器的桌面上留下了善意的修復建議,目的只是為了證明自己的安全能力。

有著大公司的背景及對安全工作的執著追求,我順利地加入了瑞星公司,在這里開始進一步學習安全的知識。得益于瑞星寬松的工作環境和濃厚的安全氛圍,在完成本職工作之余,我開始進行更多的學習和研究,同時也接觸到很多新的安全產品。也是在那段時間,我寫了自己第一款移動端的手機防火墻軟件,不過此時我對安全的理解更多的是攻防學習和漏洞研究,所掌握的知識并不成體系。

再后來我加入安全寶創業。安全寶算是我最有感情的一家公司,它讓我從零開始踏上一個公司的安全建設之路,對安全工作進行系統的規劃,以閉環的方式來推進和完善每個工作流程,然后通過攻防對抗實踐進行迭代式的改進。其實對于企業來講,攻防對抗仍然可以作為企業安全建設中最有價值的應用實踐之一。

之后我加入百度。雖然還是以乙方的視角做著安全服務工作,但甲方的工作氛圍和技術培訓也讓我對攻防的理解更加全局化,更加工程化,也更加體系化。此時,我對掃描的看法也發生了變化:掃描作為攻擊的一種方式,它應該更貼近真實的攻擊;而真實的攻擊其實是一種全視角、持續性、動態化的入侵行為,它會對目標進行全視角的信息和資產收集,然后通過持續性的漏洞測試及動態的情報能力發現其中的脆弱點。因此,如果我們想重塑掃描的價值,那么就應該以攻擊者的視角,同時將更多的安全能力融入掃描中,并以攻擊的全流程來對其進行改進和擴充,從而最終實現掃描的情報化、插件化、智能化。

我的安全觀

我眼中的Web安全

還記得自己剛剛加入百度,小哥(程巖)在面試我的時候,問了一個問題,我至今依然記憶深刻:每個Web安全人員都有自己的安全體系,你眼中的Web安全是什么樣子的?

當時我也是第一次被問到這么宏觀的問題,第一感覺就是問題很大,一時不知從何說起,現在我還記得自己當時的回答:我眼中的Web安全包含著我做的所有內容,比如漏洞挖掘、漏洞分析、漏洞攻擊和規則防御等。它們都是圍繞漏洞的生命周期進行展開的,可以按照時間順序將它們劃分為4個階段,如下。

漏洞的感知:我們需要從各個方面和渠道去關注Web漏洞,獲取最新的漏洞資源和信息,如漏洞監控、漏洞預警或漏洞挖掘等。

漏洞的分析:獲取漏洞資源后,我們就需要對漏洞進行分析和研究,弄清楚漏洞的原理及成因,而這主要體現在兩方面,一方面是可以構造出漏洞的POC,并補充到掃描器中,對漏洞實現自動化檢測和驗證;另一方面則是深入理解漏洞原理后,能夠寫出對應的漏洞匹配特征,制作漏洞簽名,并給WAF升級進行防護。

漏洞的響應:這里主要分為兩部分,一部分是對內的響應,也就是自身的漏洞響應,對漏洞進行快速排查和修復;另一部分則是對外的響應,也就是對互聯網的全網客戶進行響應,評估漏洞對其影響,以及協助修復,并對全網的安全態勢進行監控。

漏洞的沉淀:按照漏洞的描述、原理、場景,以及修復策略等相關信息,對每個漏洞進行編號和積累,形成有價值的漏洞知識庫。

現在回想起來,對于當時的回答,我其實并不滿意,只能算是勉強應付下來。但事后自己卻想得更多了,這個問題屬于主觀題,或許它沒有標準的答案,也沒有所謂的對與錯,但它卻可以讓每個人按照自己的角度、自己的工作、自己的理解,重新去思考和審視自己的知識體系。從那以后,這個問題也就一直伴隨著我,它也是我作為面試官必問的題目之一。因為我相信在不同的階段,每個人對它的理解肯定是不一樣的。

三個基礎的安全認知

1.木桶原理

盛水的木桶是由多塊木板箍成的,盛水量也是由這些木板決定的。若其中一塊木板很短,則此木桶的盛水量就被限制,該短板就成了這個木桶盛水量的限制因素,若要此木桶盛水量增加,只有換掉短板或將其加長才行,這就是木桶原理。它表達的意思就是,一個水桶無論有多高,它盛水的高度取決于其中最短的那塊木板。在信息安全領域中,目標系統就好比盛水的木桶,它的安全性完全取決于系統中最薄弱的那個環節。

舉個例子,我們在給企業進行滲透測試服務時,發現弱口令的安全問題仍然是企業的一個重災區,這些企業雖然在安全方面做了很多工作,而且也部署了一些安全設備,但往往卻因為一個簡單的弱口令導致整個系統被入侵和攻破,所以我們需要審視系統中的薄弱點,并進行加強。

2.攻防不對稱,安全是相對的

攻防不對稱其實很好理解,防御方需要保護的是一個整體,而攻擊方卻可以通過審視這個整體,選擇其中一個薄弱的環節進行持續的攻擊。在這個對抗的過程中,其實很多內容都是不對稱的,如下。

?技術不對稱:攻擊方可以針對目標使用的某個軟件或組件進行深入的漏洞挖掘,然后通過新的0day漏洞完成攻擊和入侵,而防御方卻無法對系統每個部分的漏洞都有所了解。

?成本不對稱:攻擊方可以選擇成本低廉、破壞力強的DDoS拒絕服務攻擊,而防御方卻需要消耗巨大的成本進行整體的防御。

?信息不對稱:攻擊方可以選擇通過人員、社交、無線等與企業有依賴關系的入口制訂攻擊路徑,而防御方卻無法覆蓋所有的關聯入口。

因此不論是安全產品,還是安全設計,它們的目標從來都不是絕對安全的,而只追求相對安全。但這個認知絕不是用來找借口或是逃避安全責任的,而是用來提醒我們:安全是一個動態的過程,當前的安全工作仍然還有提升的空間;攻防其實只是一種成本的博弈對抗,只需要在允許的成本范圍內進行適度、有效的防御即可;在攻防不對稱的情況下,我們可以選擇用攻擊驅動的方式進行防御。

3.縱深防御

我們知道,當今所有的信息安全技術其實都是以“用戶是好人”為信任前提,只有當確認他干了壞事之后,才會把他定義為“壞人”,然后開始對其進行響應或防御。只有當某個用戶已被證明產生了危害后,才將其定位為黑客或攻擊者,開始對他進行應急處置,這種防御方式顯然存在天然的滯后性,也勢必會導致安全人員處于被動、挨打的局面。

為了能夠改變這種被動、滯后的劣勢,就需要拉伸防御的縱深。其實一個完整的攻擊并不是由單點完成的,它通常會由一系列的環節關聯組成,屬于一個持續、連貫的過程。因此,我們可以在攻擊過程中的每個必要環節點設置防御,從而做到提前感知和防御,利用這種層層設防、聯動防御的方式,就可以化被動為主動,在攻擊產生危害之前對其進行應急響應和處置。

安全其實是一個動態、整體的概念,正如道哥所說,互聯網本來是安全的,自從有了研究安全的人之后,互聯網就變得不安全了;而研究安全的人歸根結底可以分為攻與防兩個大分支,不過這里所說的攻防不是單純的攻擊入侵與技術防御,它們會結合技術、業務、流程、人員、制度和管理,形成一個廣義的攻防概念,并一起構成了安全這個整體。因此我們看待安全的時候需要從攻與防兩個不同的角度來整體審視和博弈均衡,同時攻擊和防御也會在不斷碰撞和對抗的過程中得到發展和變化。攻擊通常會選擇系統相對薄弱的環節來實施,防御則需要從各個角度及不同維度進行整體防御,補齊系統的各個短板,但攻防它又是不對稱的,因此我們需要利用縱深防御的理念,將完整的攻擊鏈條進行拆分和細化,在每個環節進行深度分析和防御,從而建立起立體化的安全防御體系。

圖書網:白帽子講Web掃描pdf

恭喜,此資源為免費資源,請先
本站所有資源收集于互聯網,只做學習和交流使用,版權歸著作人和出版社所有,請在下載后24小時之內自覺刪除,若作商業用途,請購買正版,由于未及時購買和付費發生的侵權行為,與本站無關。本站發布的內容若侵犯到您的權益,請聯系站長刪除,我們將及時處理!
  • 我的微信
  • 掃一掃加好友
  • weinxin
  • 微信公眾號
  • 掃一掃關注(網站備用地址)
  • weinxin

發表評論

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: