Wade Alcorn, Christian Frichot, Michele Orrù Copyright ? 2014 by John Wiley & Sons, Inc., Indianapolis, Indiana ISBN: 978-1-118-66209-0 ISBN: 978-1-118-66210-6 (ebk) ISBN: 978-1-118-91435-9 (ebk)
關于作者
Wade Alcorn(@WadeAlcorn)
BeEF(瀏覽器漏洞利用框架:瀏覽器漏洞利用最流行工具之一)創(chuàng)建者;NCC集團亞太區(qū)總經理,主管關鍵基礎設施、銀行、零售商和其他企業(yè)的安全評估;發(fā)表多篇新興威脅技術論文,發(fā)現了流行軟件中的多個漏洞。
Christian Frichot(@xntrik)
多個IT行業(yè)從業(yè)經歷;活躍軟件開發(fā)者,主攻數據可視化、數據分析,輔助企業(yè)更有效管理安全和過程。作為BeEF開發(fā)者之一,他還花費大量時間研究怎么更好地利用瀏覽器及其技術輔助滲透測試。
Michele Orrù(@antisnatchor)
BeEF項目核心開發(fā)者和人員招募者,具備多種編程語言和框架的深度知識,鐘愛發(fā)散思維和共產主義烏托邦,眾多黑客大會演講人。
關于貢獻作者
Ryan Linn(@sussurro)
滲透測試員、作家、程序員、教育者;具系統(tǒng)管理員和Web應用開發(fā)背景,多年IT安全從業(yè)經驗。目前是全職滲透測試員,多個開源項目的常規(guī)貢獻者,比如Metasploit、BeEF和Ettercap項目;數個安全大會的演講者,比如DefCon、Black Hat。
Martin Murfit(@SystemSystemSyn)
擁有物理學學位,但整個職業(yè)生涯都在從事各種形式的滲透測試,是跨國安全公司 Trustwave SpiderLabs 滲透測試團隊歐洲、中東和亞洲(EMEA)區(qū)顧問兼經理,發(fā)現過公開記錄的漏洞,曾在黑帽大會等安全會議上演講或做幕后工作。
關于技術編輯
Dr.-Ing. Mario Heiderich(@0x6D6172696F)
德國滲透測試機構Cure53創(chuàng)始人,認為XSS終能通過使用JavaScript徹底根治,發(fā)起了HTML5安全欺騙表等安全相關的項目;業(yè)余時間為大型德國企業(yè)和跨國公司進行培訓和安全咨詢工作;在多個國際安全會議上發(fā)表過演講;與人合著了兩本書和多篇學術論文。
引言
本書概覽
本書主要涉及Firefox、Chrome、IE及少量現代移動瀏覽器。
Web瀏覽器是當今數據呈現、檢索和導航的瑞士軍刀,自1990年蒂姆·博納-李爵士發(fā)明了Web瀏覽器以來,該遠超預期的應用就成為了世界上最受認可的軟件之一。
本書將教你怎樣入侵和防護現代瀏覽器。
誰應該閱讀本書
有技術背景,想了解Web瀏覽器實際風險的人。攻防均可??梢允枪芾韱T、程序猿,甚至信息安全從業(yè)者。
應大體了解服務器-客戶端模型、HTTP協(xié)議、基本安全概念。未必需要有編程背景,但如果了解一些編程基本原則,在查看代碼片段時會很有用。
鑒于JavaScript在瀏覽器的統(tǒng)治地位,本書很多實踐例子都是用它寫的。不過,即便沒有JavaScript經驗也不用擔心,代碼自帶注釋。
本書編排
按攻擊思維分10章,每章按漏洞類別分節(jié)。
第一章:Web瀏覽器安全:審查攻擊利用瀏覽器的方法學,覆蓋瀏覽器呈現的攻擊界面,以及瀏覽器如何增加了之前以為受保護資產的暴露面。
第二章:初始化控制:探索怎么在目標瀏覽器中執(zhí)行你的代碼。你將嘗試跨站腳本漏洞、中間人攻擊、社會工程等等。
第三章:保持控制:介紹怎樣維持通信和駐留,給你多次執(zhí)行指令的互動控制能力。你將在本章學到怎樣使用載荷維護與瀏覽器的通信,發(fā)送多次指令迭代。本章是發(fā)起后續(xù)章節(jié)中各種攻擊的基礎。
第四章:繞過同源策略:同源策略(SOP)限制網站間的互動。但是瀏覽器本身、插件和擴展應用SOP的程度不同。這種不一致性給攻擊者留下了利用邊緣案例的機會。本章探索繞過不同SOP控制的方法。你還將發(fā)現拖放和各種UI矯正與時間攻擊的問題。只要編碼正確,SOP繞過技術可將瀏覽器轉化為HTTP代理。
第五章:攻擊用戶:人往往是安全中最弱的一環(huán)。本章帶你探索去匿名和秘密啟動Web攝像頭,在有/沒有顯式用戶介入的情況下執(zhí)行惡意文件。
第六章:攻擊瀏覽器:盡管全書都講的是攻擊瀏覽器和繞過其安全控制,本章專注在去除掉所有擴展和插件的裸瀏覽器上。你將深入探究瀏覽器指紋獲取,學習怎樣發(fā)起攻擊并入侵托管瀏覽器的主機。
第七章:攻擊擴展:擴展就是往Web瀏覽器里添加/移除功能的軟件。擴展與其表兄弟插件不同,不是獨立的程序。擴展在受信任區(qū)以較高權限執(zhí)行代碼,并從互聯(lián)網等低信任度區(qū)域接受輸入。擴展中注入攻擊風險甚高,事實上,某些攻擊還能導致遠程代碼執(zhí)行。本章帶你剖析擴展攻擊,了解提權漏洞利用。
第八章:攻擊插件:插件是獨立于Web瀏覽器執(zhí)行的軟件,Acrobat Reader、Flash Player、Java、QuickTime、RealPlayer、Shockwave和MediaPlayer都是插件。插件是漏洞重災區(qū),是奪取瀏覽器控制權的最可靠途徑。本章教你使用流行免費工具分析并利用瀏覽器插件,你將學習繞過“點擊播放”這樣的防護機制,以及利用漏洞獲得目標控制權。
第九章:攻擊Web應用:本章關注可不違反同源策略(SOP)從瀏覽器發(fā)起的攻擊。你將學到進行跨源資源指紋獲取,甚至跨源常用Web應用漏洞發(fā)現的各種技巧。通過瀏覽器還能發(fā)現并利用跨源跨站腳本和SQL注入漏洞。但最后,你會理解怎樣達成跨源遠程代碼執(zhí)行、跨站請求偽造攻擊、基于時間的延遲枚舉、身份驗證攻擊,以及拒絕服務攻擊。
第十章:攻擊網絡:通過端口掃描發(fā)現未知主機來描繪內網攻擊界面,探索過程還有NAT定位這樣的呈現技術加持。本章還介紹了利用Web瀏覽器與非Web服務直接通信的方法,以及利用協(xié)議間漏洞利用技術來入侵瀏覽器內網中的目標。
尾聲:最后的想法:關于瀏覽器安全的未來。
Web上有什么
本書相關網站:https://browserhacker.com或www.wiley.com/go/browserhackershandbook。上面有本書內容相關的信息和增補,還包括了可供復制粘貼的代碼片段,章節(jié)問題的示例視頻。
編譯你的武器庫
要明確,你的知識才是你工具箱中最重要的工具。本書中最常見到的工具是瀏覽器漏洞利用框架(BeEF)和Metasploit。本書作者是BeEF項目核心開發(fā)人員,大量例子來源于BeEF代碼庫,絕大部分過程都被自動化了。