Web應(yīng)用程序安全培訓(xùn)材料課件_第1頁(yè)
Web應(yīng)用程序安全培訓(xùn)材料課件_第2頁(yè)
Web應(yīng)用程序安全培訓(xùn)材料課件_第3頁(yè)
Web應(yīng)用程序安全培訓(xùn)材料課件_第4頁(yè)
Web應(yīng)用程序安全培訓(xùn)材料課件_第5頁(yè)
已閱讀5頁(yè),還剩65頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、Web應(yīng)用程序安全培訓(xùn)材料Web Application Security TrainingWeb應(yīng)用程序安全培訓(xùn)材料內(nèi)容提要 遠(yuǎn)程攻擊/滲透基礎(chǔ) Web Application Security Issues Web 1.0和WEB 2.0應(yīng)用程序攻擊手段對(duì)比 總結(jié) Web應(yīng)用安全展望 相關(guān)資源Web應(yīng)用程序安全培訓(xùn)材料北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料漏洞利用是攻擊/滲透的核心業(yè)務(wù)邏輯缺陷程序?qū)崿F(xiàn)技術(shù)缺陷ApacheIISOracle/SQL ServerSquidTomcat / ResinWindows*nixRouterFirewall / IDS基基礎(chǔ)礎(chǔ)平平

2、臺(tái)臺(tái)北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料Web應(yīng)用程序安全模型服務(wù)器端操作系統(tǒng)Web服務(wù)沙盒模型HTTP/HTTPS文件系統(tǒng)注冊(cè)表網(wǎng)絡(luò)內(nèi)存服務(wù)器端支撐服務(wù)數(shù)據(jù)庫(kù)服務(wù)目錄服務(wù)Mail服務(wù)瀏覽器插件沙盒模型PDFFlashQuickTimeHTTP/HTTPS北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料我們需要掌握什么 計(jì)算機(jī)網(wǎng)絡(luò)知識(shí)、網(wǎng)絡(luò)編程能力 工具論 & 方法論 自動(dòng)化掃描工具的優(yōu)勢(shì)和不足o優(yōu)勢(shì):通用性高、節(jié)省測(cè)試時(shí)間、保證測(cè)試的覆蓋率o不足:針對(duì)性不強(qiáng)、誤檢率通常較高、容易觸發(fā)安全設(shè)備(防火墻、IDS等)的報(bào)警 手工測(cè)試的優(yōu)勢(shì)和不足o優(yōu)勢(shì):針對(duì)性強(qiáng)、準(zhǔn)確

3、性高、欺騙性更強(qiáng)o不足:檢測(cè)效率低、費(fèi)時(shí)費(fèi)力北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料需要掌握的基礎(chǔ)知識(shí) 掌握至少一門網(wǎng)絡(luò)編程語(yǔ)言oC/C+/Java/C#/Perl/Python 熟悉Web應(yīng)用的通信基礎(chǔ)HTTP協(xié)議 熟悉至少一種Web應(yīng)用的開(kāi)發(fā)技術(shù),了解多種Web應(yīng)用的開(kāi)發(fā)技術(shù)oMS系:ASP/.NEToSun系: Java Web開(kāi)發(fā)技術(shù) JSP J2EE:Struts、WebWork、Spring、EJB。oLAMP:Linux+Apache+MySQL+PHPoRoR:Ruby on RailsoCGI、Perl、Python。北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)

4、用程序安全培訓(xùn)材料進(jìn)一步需要掌握的知識(shí) 掌握Web應(yīng)用程序漏洞的分類、成因及漏洞挖掘和利用方法 熟練使用一種或多種Web應(yīng)用漏洞測(cè)試工具,掌握Web應(yīng)用漏洞測(cè)試的方法 熟悉至少一種數(shù)據(jù)庫(kù)oSQLServer / MySQL / Oracle / Access / DB2 / PostgreSQLo默認(rèn)用戶名口令、存儲(chǔ)過(guò)程、常見(jiàn)配置缺陷 其他常見(jiàn)的網(wǎng)絡(luò)服務(wù)的漏洞挖掘和利用方法oFTPoMailoP2Po流媒體服務(wù)/視頻點(diǎn)播、直播服務(wù)o。北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料經(jīng)過(guò)學(xué)習(xí)應(yīng)該達(dá)到的基本目標(biāo) 熟練使用各種搜索引擎o不僅僅是Google 了解尋找已公開(kāi)漏洞信息的方法,對(duì)

5、常見(jiàn)漏洞做到了然于胸o微軟安全公告/CVE公告/各大軟件廠商的bugtraq。 可以根據(jù)漏洞檢測(cè)和利用的需要快速編寫(xiě)出合格的網(wǎng)絡(luò)程序 Hack/Exploit Tools Collectiono突破服務(wù)器端沙盒模型的攻擊是最有效和最直接的攻擊o其他攻擊方法一般需要比較高的構(gòu)造技巧和設(shè)計(jì)藝術(shù),很多時(shí)候攻擊的成功都是結(jié)合社會(huì)工程學(xué),利用被攻擊者安全意識(shí)的薄弱性北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料建議 重點(diǎn)突出,全面開(kāi)花oWeb應(yīng)用漏洞僅僅是我們關(guān)注的一個(gè)主要方面,但不能局限在Web應(yīng)用的漏洞o系統(tǒng)級(jí)漏洞和網(wǎng)絡(luò)基礎(chǔ)設(shè)施的漏洞很少,但一旦被成功利用,其效果是最好的!o所以大家需要

6、儲(chǔ)備大量的漏洞利用腳本和工具,在遇到不同的網(wǎng)絡(luò)環(huán)境、操作系統(tǒng)、開(kāi)放的服務(wù)時(shí)能夠做到有備無(wú)患 在攻與守的過(guò)程中提高實(shí)戰(zhàn)的能力o最好的學(xué)習(xí)攻擊和滲透的方法是自己搭建實(shí)驗(yàn)環(huán)境,進(jìn)行模擬攻擊o所以建議大家可以以小組為單位,每2組共同完成一次攻防實(shí)驗(yàn)。2組分別扮演紅軍和藍(lán)軍(紅軍扮演攻擊者,藍(lán)軍負(fù)責(zé)環(huán)境搭建和防守) 嚴(yán)格遵循不作惡原則o禁止在互禁止在互聯(lián)網(wǎng)環(huán)境下進(jìn)行攻防實(shí)驗(yàn)聯(lián)網(wǎng)環(huán)境下進(jìn)行攻防實(shí)驗(yàn)北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料參考書(shū)目 信息安全實(shí)驗(yàn)指導(dǎo) 網(wǎng)絡(luò)安全評(píng)估 黑客大曝光系列 其他網(wǎng)絡(luò)攻防類書(shū)籍 中文書(shū)主要用于掌握理論基礎(chǔ),更多的知識(shí)需要在實(shí)踐中學(xué)習(xí),要善于在實(shí)驗(yàn)中總結(jié)和

7、提高北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料接下來(lái)。 Web Application Security ISSUESoWeb應(yīng)用程序漏洞成因分類o漏洞示例和描述o一些漏洞利用的演示o漏洞的防御和解決方法 Web 1.0和WEB 2.0應(yīng)用程序攻擊手段對(duì)比北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料輸入Web應(yīng)用程序進(jìn)入后臺(tái)平臺(tái)應(yīng)用程序服務(wù)器操作系統(tǒng)網(wǎng)絡(luò)輸出Web應(yīng)用程序服務(wù)模型北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料輸入Web應(yīng)用程序進(jìn)入后臺(tái)平臺(tái)應(yīng)用程序服務(wù)器操作系統(tǒng)網(wǎng)絡(luò)輸出輸入有關(guān)的安

8、全問(wèn)題北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料1.未驗(yàn)證的用戶輸入-示例 設(shè)計(jì)輸入o./ViewServlet?url= 惡意輸入o./ViewServlet?url=o./ViewServlet?url= 通過(guò)這個(gè)簡(jiǎn)單的應(yīng)用程序可以間接實(shí)現(xiàn)文件枚舉和后臺(tái)程序掃描北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料1.未驗(yàn)證的用戶輸入-描述(1) 攻擊者可以篡改HTTP request的任何一個(gè)部分ourlo請(qǐng)求字符串oHTTP頭oCookieso表單域o隱藏域北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料1.未驗(yàn)證的用戶輸入-描述(2) 常見(jiàn)的輸入篡改攻擊

9、包括:o強(qiáng)制瀏覽o命令注入o跨站點(diǎn)腳本攻擊o緩沖區(qū)溢出攻擊o格式化字符串攻擊oSQL注入oCookie毒化o隱藏域控制 可能的原因o只在客戶端進(jìn)行輸入驗(yàn)證o過(guò)濾時(shí)未進(jìn)行規(guī)范化 導(dǎo)致其他的漏洞北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料1.未驗(yàn)證的用戶輸入-描述(3)北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料1.未驗(yàn)證的用戶輸入-解決方案 所有的用戶輸入需要在服務(wù)器端進(jìn)行集中的統(tǒng)一驗(yàn)證o請(qǐng)求參數(shù)oCookiesoHTTP請(qǐng)求頭 請(qǐng)求參數(shù)需要嚴(yán)格的驗(yàn)證其類型o數(shù)據(jù)類型(string, integer, real, etc)o最小和最大長(zhǎng)度o是否允許nullo參數(shù)是否是

10、必需的o數(shù)字的取值范圍o特定模式(正則表達(dá)式) 代碼復(fù)查 不要“濫用”隱藏域o存儲(chǔ)在Session中或從每次請(qǐng)求中獲取參數(shù)值北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料2.緩沖區(qū)溢出 一般情況下,采用J2EE架構(gòu)的Web應(yīng)用程序不存在緩沖區(qū)溢出漏洞 描述o應(yīng)用程序的緩沖區(qū)中存在過(guò)量的輸入數(shù)據(jù),導(dǎo)致惡意代碼被執(zhí)行oJava應(yīng)用程序中不存在緩沖區(qū)溢出風(fēng)險(xiǎn)? OutOfMemoryError 后臺(tái)應(yīng)用系統(tǒng) 本地代碼 解決措施o避免使用本地代碼北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料輸入Web應(yīng)用程序進(jìn)入后臺(tái)平臺(tái)應(yīng)用程序服務(wù)器操作系統(tǒng)網(wǎng)絡(luò)輸出后臺(tái)相關(guān)的安全問(wèn)題北京郵電大

11、學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料3.注入缺陷-示例 登錄模塊使用了如下的SQL查詢語(yǔ)句oselect * from users where user= + username + and password= + hashedPassword + 很容易被以下的用戶輸入破解登錄功能ousername: or 1=1opassword:任何可以通過(guò)驗(yàn)證規(guī)則的密碼 拼接后形成的SQL查詢語(yǔ)句oselect * from users where user=admin or 1=1 and password=secret北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料3.注入缺陷

12、-描述 在任何存在解釋器的地方都可能存在o腳本語(yǔ)言,例如Perl,Python和JavaScriptoShell腳本語(yǔ)言(執(zhí)行系統(tǒng)應(yīng)用程序)o通過(guò)系統(tǒng)調(diào)用訪問(wèn)操作系統(tǒng)o數(shù)據(jù)庫(kù)系統(tǒng):SQL注入o目錄遍歷(e.g. ././etc/passwd) 典型缺陷oRuntime.exec()o拼接字符串的SQLo文件輸入和輸出流操作北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料3.注入缺陷-解決方案 在任何時(shí)候避免直接使用外部的解釋器,而使用編程語(yǔ)言提供的API庫(kù)o避免使用Runtime.exec(),通過(guò)JavaMail API來(lái)發(fā)郵件 在將數(shù)據(jù)發(fā)送給后臺(tái)程序時(shí)對(duì)數(shù)據(jù)進(jìn)行編碼oSQL語(yǔ)句中

13、的單引號(hào)oLDAP語(yǔ)句中的逗號(hào),括號(hào)等 更好的解決辦法:使用JDBC驅(qū)動(dòng)的PreparedStatements(以Java為例) 以受限制的系統(tǒng)權(quán)限運(yùn)行Web應(yīng)用程序 所有的外部調(diào)用的輸出、返回代碼值和錯(cuò)誤代碼值都需要檢查北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料輸入Web應(yīng)用程序進(jìn)入后臺(tái)平臺(tái)應(yīng)用程序服務(wù)器操作系統(tǒng)網(wǎng)絡(luò)輸出輸出相關(guān)的安全問(wèn)題北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料4.跨站點(diǎn)腳本(XSS)-示例 Web應(yīng)用程序直接將請(qǐng)求中的參數(shù)“回顯”在用戶的瀏覽器中 URL中請(qǐng)求參數(shù)的回顯o正常的URL: o被注入JS代碼后的URL: name=kindale

14、rt(test)body%20onload=alert(IbmIsNotPerfect);location.replace();%20 x=en_USo截圖北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料4.著名公司的XSS漏洞 TOMoXSS演示代碼(String.fromCharCode(97,108,101,114,116,40,34,84,79,77,25628,32034,28431,27934,65292,50,31186,21518,33258,21160,36339,36716,21040,89,97,104,111,111,25628,32034,34,41,59,

15、115,101,116,84,105,109,101,111,117,116,40,102,117,110,99,116,105,111,110,40,41,123,108,111,99,97,116,105,111,110,46,114,101,112,108,97,99,101,40,34,104,116,116,112,58,47,47,119,119,119,46,121,97,104,111,111,46,99,110,34,41,125,41)%3C/script%3E&mimetype=wmao截圖北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料4.著名公司的XSS漏洞

16、 SogouoXSS演示代碼o截圖北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料4.跨站點(diǎn)腳本(XSS)-描述攻擊者將惡意腳本代碼發(fā)送到終端用戶的瀏覽器oWeb應(yīng)用程序的輸出直接回顯到用戶的瀏覽器而未經(jīng)過(guò)檢查o瀏覽器信任Web應(yīng)用程序的代碼 惡意腳本可以o訪問(wèn)cookie,會(huì)話令牌,或其他通過(guò)用戶瀏覽器獲得的敏感信息o重寫(xiě)HTML頁(yè)面2種基本策略o持久化的(可自動(dòng)觸發(fā)),例如惡意代碼存儲(chǔ)到數(shù)據(jù)庫(kù)中,通過(guò)論壇發(fā)帖,訪客留言等o反射型(誘騙點(diǎn)擊型),例如錯(cuò)誤消息,搜索引擎危害示例o會(huì)話劫持o釣魚(yú)攻擊oDDoS攻擊o遠(yuǎn)程信息獲取,如端口掃描、用戶瀏覽歷史信息枚舉北京郵電大學(xué) 信息安全中心

17、 黃瑋Web應(yīng)用程序安全培訓(xùn)材料4.跨站點(diǎn)腳本(XSS)-解決方案 輸入校驗(yàn) 編碼所有的展現(xiàn)層輸出(HTMLEncode或JSTL的c:out、Struts的標(biāo)簽等) 對(duì)輸入進(jìn)行長(zhǎng)度限制或截短 如果你的應(yīng)用程序需要顯示用戶提交HTML內(nèi)容,你應(yīng)該過(guò)濾標(biāo)簽,。,要確保用戶不能提交惡意腳本代碼 上面的辦法是遠(yuǎn)遠(yuǎn)不夠的,可以參考MySpace的Samy蠕蟲(chóng)的攻擊代碼>(())##&北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料5.不恰當(dāng)?shù)腻e(cuò)誤處理-示例 錯(cuò)誤的用戶名 錯(cuò)誤的用戶口令北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料5.不恰當(dāng)?shù)?/p>

18、錯(cuò)誤處理-描述 程序的錯(cuò)誤消息會(huì)暴露程序的一些實(shí)現(xiàn)細(xì)節(jié) 示例o堆棧調(diào)試信息,數(shù)據(jù)庫(kù)錯(cuò)誤消息,錯(cuò)誤代碼oJSP編譯錯(cuò)誤信息包含物理路徑信息o不一致的錯(cuò)誤消息(例如拒絕訪問(wèn)或沒(méi)有找到)o錯(cuò)誤導(dǎo)致的服務(wù)器宕機(jī)(DoS) 用戶錯(cuò)誤輸入回顯到頁(yè)面時(shí)沒(méi)有進(jìn)行過(guò)濾或轉(zhuǎn)義導(dǎo)致的XSS攻擊北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料5.不恰當(dāng)?shù)腻e(cuò)誤處理-解決方案 定義一套清晰和一致的錯(cuò)誤處理機(jī)制o簡(jiǎn)明扼要的易于用戶理解的錯(cuò)誤消息(例如,不同的錯(cuò)誤消息對(duì)應(yīng)一個(gè)錯(cuò)誤代碼id)o為系統(tǒng)管理員記錄重要信息(關(guān)聯(lián)錯(cuò)誤代碼id)o不要暴露出任何對(duì)攻擊者有用的信息(程序的調(diào)試信息和異常時(shí)堆棧信息等) 當(dāng)需要顯示

19、用戶的錯(cuò)誤輸入時(shí),一定要編碼(過(guò)濾或轉(zhuǎn)義)用戶的錯(cuò)誤輸入 部署產(chǎn)品之前要預(yù)編譯JSP代碼 修改默認(rèn)的錯(cuò)誤頁(yè)面(404,401等) 執(zhí)行代碼復(fù)查北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料輸入Web應(yīng)用程序進(jìn)入后臺(tái)平臺(tái)應(yīng)用程序服務(wù)器操作系統(tǒng)網(wǎng)絡(luò)輸出Web應(yīng)用程序設(shè)計(jì)實(shí)現(xiàn)的安全問(wèn)題北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料6.脆弱的訪問(wèn)控制-示例 文檔/軟件的下載鏈接地址保護(hù) Web應(yīng)用程序的后臺(tái)管理入口地址 后臺(tái)操作未執(zhí)行用戶身份認(rèn)證北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料6.脆弱的訪問(wèn)控制-描述 內(nèi)容或程序功能未能有效的保護(hù)以限制只允許合法用戶的

20、訪問(wèn) 典型案例o不安全的ido強(qiáng)制瀏覽(直接在瀏覽器的地址欄中輸入U(xiǎn)RL)o目錄遍歷o文件訪問(wèn)權(quán)限o客戶端緩存 可能的原因o認(rèn)證只發(fā)生在用戶登錄時(shí)o僅對(duì)URL進(jìn)行鑒權(quán),而不是對(duì)內(nèi)容進(jìn)行鑒權(quán)o未采取集中式的授權(quán)管理,而是分散授權(quán)管理北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料6.脆弱的訪問(wèn)控制-解決方案 對(duì)每個(gè)需要保護(hù)的請(qǐng)求進(jìn)行檢查,不僅是在用戶第一次請(qǐng)求時(shí)進(jìn)行檢查 避免使用自己開(kāi)發(fā)的訪問(wèn)控制,而是使用J2EE提供的CMS或者其他的一些安全框架,如Acegio采用聲明式而非硬編碼的訪問(wèn)控制o集中化訪問(wèn)控制而非分散訪問(wèn)控制 注意:J2EE容器默認(rèn)允許所有URL的訪問(wèn) (可選)擴(kuò)展基于

21、實(shí)例的訪問(wèn)控制 防止客戶端緩存重要內(nèi)容:設(shè)置HTTP請(qǐng)求頭和meta標(biāo)簽 在服務(wù)器端使用操作系統(tǒng)提供的訪問(wèn)控制保護(hù)文件的未經(jīng)授權(quán)的訪問(wèn)北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料7.脆弱認(rèn)證和會(huì)話管理-示例 未采用Session cookie,而是在URL中編碼已通過(guò)認(rèn)證的用戶名和密碼 上面的這個(gè)URL很容易被一次XSS攻擊截獲到北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料7.脆弱認(rèn)證和會(huì)話管理-描述 脆弱的認(rèn)證和會(huì)話管理 典型案例o簡(jiǎn)單易猜解的用戶名和用戶口令o存在缺陷的身份管理功能,例如密碼修改功能,忘記密碼和賬戶更新功能o主動(dòng)會(huì)話劫持,假冒已通過(guò)身份認(rèn)證的合法

22、用戶 HTTP協(xié)議是無(wú)狀態(tài)協(xié)議,因而沒(méi)有標(biāo)準(zhǔn)的會(huì)話管理o使用jsessionid的URL重寫(xiě)o(Session) cookies北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料7.脆弱認(rèn)證和會(huì)話管理-解決方案 使用強(qiáng)認(rèn)證機(jī)制o密碼策略(密碼強(qiáng)度,使用/更改/存儲(chǔ)控制)o安全傳輸(SSL)o小心實(shí)現(xiàn)“找回密碼”功能o移除默認(rèn)用戶 Session機(jī)制需要注意的問(wèn)題oSession cookie必須是“安全”的oSession id必須是“不可預(yù)測(cè)”的 盡量使用應(yīng)用程序服務(wù)器提供的安全機(jī)制,而不是實(shí)現(xiàn)自己的安全機(jī)制北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料輸入Web應(yīng)用程序

23、進(jìn)入后臺(tái)平臺(tái)應(yīng)用程序服務(wù)器操作系統(tǒng)網(wǎng)絡(luò)輸出基礎(chǔ)平臺(tái)的安全問(wèn)題北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料8.不安全的存儲(chǔ)-示例 日常備份策略o程序的備份采用可擦寫(xiě)的設(shè)備,如移動(dòng)硬盤、U盤等o使用UltraEdit等編輯器編輯文件后未刪除編輯器自動(dòng)生成的.bak備份文件,導(dǎo)致源代碼泄露 數(shù)據(jù)未加密存儲(chǔ)o用戶口令等機(jī)密數(shù)據(jù)以明文形式存儲(chǔ)在數(shù)據(jù)庫(kù)中北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料8.不安全的存儲(chǔ)-描述 敏感/重要的數(shù)據(jù)應(yīng)該采取安全的存儲(chǔ)方式 典型案例o沒(méi)有加密存儲(chǔ)關(guān)鍵數(shù)據(jù)o密鑰、證書(shū)和密碼等采用了不安全的存儲(chǔ)介質(zhì)o弱隨機(jī)數(shù)字發(fā)生器o弱加密算法o未采用安全的密鑰

24、交換機(jī)制北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料8.不安全的存儲(chǔ)-解決方案 僅存儲(chǔ)那些必須存儲(chǔ)的數(shù)據(jù)o要求用戶每次重新輸入o存儲(chǔ)Hash值,而不是加密值 不允許對(duì)后臺(tái)應(yīng)用程序的直接訪問(wèn)o數(shù)據(jù)庫(kù)訪問(wèn)o文件系統(tǒng)訪問(wèn) 不要在Web應(yīng)用程序服務(wù)器所在的根目錄存儲(chǔ)重要文件 不要使用自己的加密算法,而是使用JCE(Java Cryptography Extension)北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料9.不安全的配置管理-描述 Web應(yīng)用程序的運(yùn)行環(huán)境包括o應(yīng)用程序服務(wù)器(如Tomcat、WebSphere和WebLogic等)和Web服務(wù)器(如IIS、Apac

25、he等)o后臺(tái)系統(tǒng)(數(shù)據(jù)庫(kù)服務(wù)器、目錄服務(wù)器、郵件服務(wù)器等)o操作系統(tǒng)和基礎(chǔ)網(wǎng)絡(luò)架構(gòu) 最常見(jiàn)的配置漏洞o未及時(shí)更新安全補(bǔ)?。ú僮飨到y(tǒng)、應(yīng)用程序等)o不必要的默認(rèn)、備份、示例文件o開(kāi)放具有管理權(quán)限的服務(wù)o默認(rèn)的用戶賬戶和默認(rèn)口令o配置不當(dāng)?shù)腟SL證書(shū) 開(kāi)發(fā)者和管理者(部署人員)之間缺乏溝通北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料9.不安全的配置管理-解決方案 為每一個(gè)服務(wù)器配置創(chuàng)建一個(gè)安全基準(zhǔn)o配置所有的安全機(jī)制(補(bǔ)丁更新策略、訪問(wèn)控制策略、密碼策略等)o關(guān)閉所有不使用的服務(wù)o創(chuàng)建用戶角色、權(quán)限和賬戶,包括禁用所有默認(rèn)賬戶或修改默認(rèn)口令o日志和警告系統(tǒng) (半)自動(dòng)化配置過(guò)程o使

26、用項(xiàng)目批量構(gòu)建工具(如Ant)和Ghost 保持更新o保持Web應(yīng)用程序的運(yùn)行環(huán)境的安全補(bǔ)丁的更新o更新安全配置基準(zhǔn)o定期執(zhí)行內(nèi)部和外部的漏洞掃描工具北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料10.拒絕服務(wù)攻擊-示例 應(yīng)用程序從后臺(tái)的內(nèi)容管理系統(tǒng)獲取了大量的信息 一次前臺(tái)的請(qǐng)求導(dǎo)致了對(duì)后臺(tái)數(shù)據(jù)庫(kù)的多次操作請(qǐng)求北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料10.拒絕服務(wù)攻擊-描述Web應(yīng)用程序非常容易遭受拒絕服務(wù)攻擊,這是由于Web應(yīng)用程序本身無(wú)法區(qū)分正常的請(qǐng)求通信和惡意的通信數(shù)據(jù)容易產(chǎn)生大量的攻擊負(fù)載典型案例o有限的資源特別容易成為DoS攻擊的目標(biāo) 帶寬 數(shù)據(jù)庫(kù)連接

27、 磁盤容量 CPU資源 內(nèi)存 線程o特定于用戶的DoS 用戶并發(fā)訪問(wèn)控制鎖 用戶密碼更改o未處理的程序異常北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料10.拒絕服務(wù)攻擊-解決方案 避免可能會(huì)導(dǎo)致資源密集性消耗的請(qǐng)求oCPU:頻繁的請(qǐng)求,JDBC連接o內(nèi)存或磁盤容量:大數(shù)據(jù)量的POST和過(guò)量的HttpSession數(shù)據(jù)o匿名用戶訪問(wèn)的限制 在大負(fù)載的情況下測(cè)試應(yīng)用程序的性能 利用緩存服務(wù)器或限制數(shù)據(jù)庫(kù)連接 小心使用“鎖”機(jī)制北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料輸入Web應(yīng)用程序進(jìn)入后臺(tái)平臺(tái)應(yīng)用程序服務(wù)器操作系統(tǒng)網(wǎng)絡(luò)輸出又是輸入相關(guān)的問(wèn)題北京郵電大學(xué) 信息安全中

28、心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料11.跨站點(diǎn)請(qǐng)求偽造-示例 利用站點(diǎn)已驗(yàn)證通過(guò)的用戶會(huì)話(無(wú)需獲取用戶的登錄憑證) 當(dāng)一個(gè)已經(jīng)登錄的用戶打開(kāi)一個(gè)包含有XSS攻擊代碼的頁(yè)面(或者通過(guò)一個(gè)隱藏的iframe),并且該XSS代碼執(zhí)行上述的URL請(qǐng)求,則該用戶就會(huì)執(zhí)行addFriend這個(gè)操作 結(jié)果:用戶在不知情的情況下添加了攻擊者作為自己的好友 教育人博客CSRF漏洞演示北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料11.跨站點(diǎn)請(qǐng)求偽造-描述 從名稱上來(lái)看類似跨站點(diǎn)攻擊,但實(shí)質(zhì)上完全不同:oXSS是濫用用戶對(duì)Web站點(diǎn)的信任oCSRF是濫用Web站點(diǎn)對(duì)其授權(quán)用戶的信任 偽裝成來(lái)自受信任

29、站點(diǎn)的合法用戶o有時(shí)也被稱為會(huì)話劫持攻擊 典型案例o誘騙用戶訪問(wèn)一個(gè)圖片源標(biāo)記為惡意請(qǐng)求鏈接的頁(yè)面,從而觸發(fā)一個(gè)異步的惡意遠(yuǎn)程調(diào)用o接受受信任并且通過(guò)驗(yàn)證的用戶的輸入但并不檢查數(shù)據(jù)的來(lái)源地址北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料11.跨站點(diǎn)請(qǐng)求偽造-解決方案 使用GET方法進(jìn)行查詢操作o方便用戶加入收藏夾o可以通過(guò)電子郵件的方式發(fā)送鏈接地址給其他用戶 使用POST方法進(jìn)行更新操作o不能被用戶加入收藏夾或通過(guò)電子郵件告知o不能被隨意的重新提交o增加X(jué)SS攻擊的難度 一些框架支持這些差異oStruts默認(rèn)不區(qū)分GET和POST請(qǐng)求oSpring Web MVC支持該特性:Sim

30、pleFormController,WebContentInterceptor 在鏈接中使用時(shí)間戳和加密(防止簡(jiǎn)單重放) 在關(guān)鍵應(yīng)用處使用一次性口令(圖片驗(yàn)證碼等)北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料擴(kuò)展內(nèi)容 獨(dú)立于特定開(kāi)發(fā)語(yǔ)言的漏洞oPHP - RFI (Remote ) 關(guān)于網(wǎng)頁(yè)木馬o必須利用瀏覽器沙盒模型的漏洞 Web 2.0安全o不僅是AJAXo一切只是剛剛開(kāi)始。北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料發(fā)現(xiàn)、枚舉和參數(shù)控制Web 1.0Web 2.0應(yīng)用程序和應(yīng)用服務(wù)器平臺(tái)指紋識(shí)別AJAX

31、框架指紋識(shí)別(通過(guò)包含的.js文件)應(yīng)用程序功能探索通過(guò)分析框架腳本,發(fā)掘應(yīng)用程序支持的方法確定“程序調(diào)用”的方法和標(biāo)準(zhǔn)框架指紋定義的“程序調(diào)用”方法Fuzz表單元素Fuzz(AJAX)方法控制隱藏域和GET參數(shù)控制對(duì)本地JS代理的調(diào)用控制上傳數(shù)據(jù)調(diào)用北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料XSSWeb 1.0Web 2.0注入腳本到HTML文本注入腳本到JavaScript流注入腳本到HTML標(biāo)記的屬性將腳本注入到即將寫(xiě)入DOM中的XML或JSON樣式表腳本代碼注入破壞動(dòng)態(tài)腳本節(jié)點(diǎn)的數(shù)組北京郵電大學(xué) 信息安全中心 黃瑋Web應(yīng)用程序安全培訓(xùn)材料注入攻擊Web 1.0Web 2.0攻擊后臺(tái)數(shù)據(jù)查詢類協(xié)議 SQL LDAP XPATH/XQuery攻擊后臺(tái)數(shù)據(jù)查詢類協(xié)議 SQL LDAP XPATH/XQuery攻擊下行對(duì)象的序列化(在某種程度上類似XSS) JSON JavaScript Array

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論