WEB常見安全漏洞講解課件_第1頁
WEB常見安全漏洞講解課件_第2頁
WEB常見安全漏洞講解課件_第3頁
WEB常見安全漏洞講解課件_第4頁
WEB常見安全漏洞講解課件_第5頁
已閱讀5頁,還剩18頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

WEB常見安全漏洞講解AnaWEB常見安全漏洞講解Ana1資產(chǎn)資產(chǎn)應(yīng)用程序安全風(fēng)險攻擊攻擊攻擊控制控制控制功能影響影響影響漏洞漏洞漏洞漏洞

攻擊者攻擊向量安全漏洞安全控制技術(shù)影響業(yè)務(wù)影響攻擊攻擊漏洞漏洞功能資產(chǎn)影響影響攻擊漏洞漏洞資產(chǎn)資產(chǎn)應(yīng)用程序安全風(fēng)險攻擊攻擊攻擊控制控制控制功能影響影響2注入跨站腳本失效的身份認(rèn)證和會話管理不安全的直接對象引用跨站請求偽造安全配置錯誤功能級訪問控制缺失未驗證的重定向和轉(zhuǎn)發(fā)敏感信息泄露使用含有已知漏洞的組件OWASPTOP10漏入跨站腳本失效的身份認(rèn)證和會話管理不安全的直接對象引用跨站3TOP-1注入原因:應(yīng)用程序缺少對輸入進(jìn)行安全性設(shè)計。方式:攻擊者將一些包含指令的數(shù)據(jù)發(fā)送給解釋器,欺騙解釋器執(zhí)行計劃外的命令。危害:讀取或篡改數(shù)據(jù)庫的信息,甚至能夠獲得服務(wù)器的包括管理員的權(quán)限。TOP-1注入原因:應(yīng)用程序缺少對輸入進(jìn)行安全性設(shè)計。4TOP-1注入什么是SQL注入?通過把SQL命令用戶提交的數(shù)據(jù)中,代碼原有SQL語句的語義,從而達(dá)到服務(wù)器惡意的SQL命令。插入改變控制執(zhí)行可以插入SQL語句并執(zhí)行TOP-1注入什么是SQL注入?插入改變控制執(zhí)行可以插入S5TOP-1注入應(yīng)用程序在下面存在漏洞的SQL語句的構(gòu)造中使用不可信數(shù)據(jù):

Stringquery="SELECT*FROMaccountsWHEREcustID='"+request.getParameter("id")+"'";

攻擊者在瀏覽器中將“id”參數(shù)的值修改成10000’or’1’=’1。如:http:///app/accountView?id=

這樣查詢語句的意義就變成了從accounts表中返回所有的記錄。SELECT*FROMaccountsWHEREcustID=10000;SELECT*FROMaccountsWHEREcustID=;‘‘‘‘漏洞案例10000’or’1’=’1TOP-1注入應(yīng)用程序在下面存在漏洞的SQL語句的構(gòu)造中6TOP-1注入如何識別SQL注入

數(shù)字型

單引號:http:///xx.asp?id=1’

提示錯誤邏輯真假:/xx.asp?id=1

and1=1

返回正確http:///xx.asp?id=1and1=2

返回錯誤

加減符號:/xxx.asp?id=2-1

返回與id=1相等字符型單引號:http:///xx.asp?name=xx’

提示錯誤邏輯真假:/xx.asp?name=xx’and‘a(chǎn)’=‘a(chǎn)

返回正確http:///xx.asp?name=xx’and‘a(chǎn)’=‘b

返回錯誤

加減符號:/xxx.asp?name=pet’+’ter

返回與name=petter相同搜索型單引號:http:///xx.asp?keyword=1’

提示錯誤邏輯真假:/xx.asp?keyword=1%’and‘%’=‘返回查詢1的內(nèi)容http:///xx.asp?keyword=1%’and‘%1’=‘無內(nèi)容返回或不是1的內(nèi)容

TOP-1注入7TOP-1注入防范1

參數(shù)校驗:

傳遞的參數(shù)做校驗,如果不合法,直接拒絕請求。

1.1

如果是數(shù)字類型,判斷是否為數(shù)字,如果不是,直接拒絕請求

1.2

如果有格式的類型(比如

日期,email,電話,身份證號碼等等),判斷是非符合格式,如果不符合格式,拒絕請求。

1.3

如果是字符串類型,沒有特殊的格式,需要對字符串長度做校驗,如果長度大于數(shù)據(jù)庫該字段的定義長度,直接拒絕請求。

比如

姓名,數(shù)據(jù)庫定義的事

varchar(12),如果輸入超過12個字符,直接拒絕請求2使用

PrepareStatement。PrepareStament可以有效防御sql注入攻擊。

PrepareStatement原理是:mysql執(zhí)行樹會根據(jù)預(yù)設(shè)的參數(shù)做轉(zhuǎn)義,可以把注入的sql當(dāng)作一個參數(shù)執(zhí)行,而不會當(dāng)作語句執(zhí)行

php

應(yīng)用,

可以使用PrepareStatement

替代

Statement寫法。3數(shù)據(jù)庫權(quán)限做限制

3.1不能對業(yè)務(wù)賬號開selectinformation_schema權(quán)限。因為一旦某個漏洞被成功注入,information_schema庫暴露所有庫,所有表,字段的定義。給sql注入者提供了便利,,,注入者不需要猜測表結(jié)構(gòu),就能輕松獲取所有表的定義,進(jìn)而輕松獲取所有表的數(shù)據(jù)

3.2各個業(yè)務(wù)賬號只能訪問自己業(yè)務(wù)的數(shù)據(jù)。這樣即使某個漏洞被注入,也只是影響到該業(yè)務(wù)的數(shù)據(jù),不會影響到其他業(yè)務(wù)的模塊

TOP-1注入防范1

參數(shù)校驗:

傳遞的參數(shù)做校驗,如8TOP-2失效的身份認(rèn)證和會話管理漏洞案例

案例#1:機票預(yù)訂應(yīng)用程序支持URL重寫,把會話ID放在URL里:

http:///sale/saleitems;

?dest=Hawaii

該網(wǎng)站一個經(jīng)過認(rèn)證的用戶希望讓他朋友知道這個機票打折信息。他將上面鏈接通過郵件發(fā)給他朋友們,并不知道自己已經(jīng)

。當(dāng)他的朋友們使用上面的鏈接時,他們將會使用他的會話和信用卡。案例#2:應(yīng)用程序超時設(shè)置不當(dāng)。用戶使用公共計算機訪問網(wǎng)站。離開時,該用戶沒有點擊退出,而是直接關(guān)閉瀏覽器。攻擊者在

能使用相同瀏覽器通過身份認(rèn)證。案例#3:內(nèi)部或外部攻擊者進(jìn)入系統(tǒng)的密碼數(shù)據(jù)庫.存儲在數(shù)據(jù)庫中的用戶密碼

,所有用戶的密碼都被攻擊者獲得。jsessionid=2P0OC2JDPXM0OQSNDLPSKHCJUN2JV泄漏了自己的會話ID一個小時后沒有被加密TOP-2失效的身份認(rèn)證和會話管理漏洞案例

案例#1:9TOP-2失效的身份認(rèn)證和會話管理1.用戶身份驗證憑證沒有使用哈?;蚣用鼙Wo(hù)。

2.認(rèn)證憑證可猜測,或者能夠通過薄弱的的帳戶管理功能(例如賬戶創(chuàng)建、密碼修改、密碼恢復(fù),弱會話ID)重寫。

3.會話ID暴露在URL里(例如,URL重寫)。

4.會話ID容易受到會話固定(sessionfixaPon)的攻擊。???

5.會話ID沒有超時限制,或者用戶會話或身份驗證令牌特別是單點登錄令牌在用戶注銷時沒有失效。

6.成功注冊后,會話ID沒有輪轉(zhuǎn)。

7.密碼、會話ID和其他認(rèn)證憑據(jù)使用未加密連接傳輸。TOP-2失效的身份認(rèn)證和會話管理1.用戶身份驗證憑證沒10TOP-3跨站腳本(XSS)插入瀏覽執(zhí)行攻擊什么是跨站腳本攻擊?往Web頁面里插入惡意html/js代碼當(dāng)用戶瀏覽該web頁面時嵌入Web頁面里面的html代碼會被執(zhí)行從而達(dá)到攻擊用戶的特殊目的插入HTML/JS代碼并執(zhí)行TOP-3跨站腳本(XSS)插入瀏覽執(zhí)行攻擊什么是跨站腳本11TOP-3跨站腳本(XSS)反射型存儲型DOM型危害小利用難度大需要點擊影響范圍廣利用簡單危害大存儲于數(shù)據(jù)庫中有反射也有存儲本地執(zhí)行TOP-3跨站腳本(XSS)反射型存儲型DOM型危害小利用12TOP-3跨站腳本(XSS)防范最好的辦法是根據(jù)數(shù)據(jù)將要置于的HTML上下文(包括主體、屬性、JavaScript、CSS或URL)對所有的不可信數(shù)據(jù)進(jìn)行恰當(dāng)?shù)霓D(zhuǎn)義(escape)。更多關(guān)于數(shù)據(jù)轉(zhuǎn)義技術(shù)的信息見OWASPXSSPrevenPonCheatSheet。

TOP-3跨站腳本(XSS)防范最好的辦法是根據(jù)數(shù)據(jù)將要13TOP-4不安全的直接對象引用已登錄的用戶(ID:123)/user?id=ID:123的個人信息ID:125的個人信息123123125/user?id=有漏洞!TOP-4不安全的直接對象引用已登錄的用戶http://w14TOP-5安全配置錯誤漏洞案例

案例#1:應(yīng)用程序服務(wù)器管理員。而。攻擊者在你的服務(wù)器上發(fā)現(xiàn)了標(biāo)準(zhǔn)的管理員頁面,通過默認(rèn)密碼登錄,從而接管了你的服務(wù)器。

案例#2:。攻擊者發(fā)現(xiàn)只需列出目錄,她就可以找到你服務(wù)器上的任意文件。攻擊者找到并下載所有已編譯的Java類,她通過反編譯獲得了所有你的自定義代碼。然后,她在你的應(yīng)用程序中找到一個訪問控制的嚴(yán)重漏洞。

案例#3:應(yīng)用服務(wù)器配置,這樣就暴露了潛在的漏洞。攻擊者熱衷于收集錯誤消息里提供的額外信息。

案例#4:應(yīng)用服務(wù)器自帶的。該示例應(yīng)用有已知安全漏洞,攻擊者可以利用這些漏洞破壞您的服務(wù)器。

控制臺自動安全后沒有刪除目錄列表在你的服務(wù)器上未被禁用示例應(yīng)用程序沒有刪除默認(rèn)賬戶也沒有改變允許堆棧跟蹤返回給用戶注意這些問題:1.是否有軟件沒有被及時更新?這包括操作系統(tǒng)、Web/應(yīng)用服務(wù)器、數(shù)據(jù)庫管理系統(tǒng)、應(yīng)用程序和其它所有的代碼庫文件。

2.是否使用或安裝了不必要的功能(例如,端口、服務(wù)、網(wǎng)頁、帳戶、權(quán)限)?

3.默認(rèn)帳戶的密碼是否仍然可用或沒有更改?

4.你的錯誤處理設(shè)置是否防止堆棧跟蹤和其他含有大量信息的錯誤消息被泄露?

5.你的開發(fā)框架(比如:Struts、Spring、ASP.NET)和庫文件中的安全設(shè)置是否理解正確并配置恰當(dāng)?TOP-5安全配置錯誤漏洞案例

案例#1:應(yīng)用程序服務(wù)15TOP-6敏感信息泄露首先你需要確認(rèn)的是哪些數(shù)據(jù)是敏感數(shù)據(jù)而需要被加密。例如:密碼、信用卡、醫(yī)療記錄、個人信息應(yīng)該被加密。對于這些數(shù)據(jù),要確保:

1.當(dāng)這些數(shù)據(jù)被長期存儲的時候,無論存儲在哪里,它們是否都被加密,特別是對這些數(shù)據(jù)的備份?

2.無論內(nèi)部數(shù)據(jù)還是外部數(shù)據(jù),傳輸時是否是明文傳輸?在互聯(lián)網(wǎng)中傳輸明文數(shù)據(jù)是非常危險的。

3.是否還在使用任何舊的或脆弱的加密算法?

4.加密密鑰的生成是否是脆弱的,或者缺少恰當(dāng)?shù)拿荑€管理或缺少密鑰回轉(zhuǎn)?

5.當(dāng)瀏覽器接收或發(fā)送敏感數(shù)據(jù)時,是否有瀏覽器安全

TOP-6敏感信息泄露首先你需要確認(rèn)的是哪些數(shù)據(jù)是敏感數(shù)據(jù)16TOP-6敏感信息泄露

攻擊案例

案例#1:一個應(yīng)用程序加密存儲在數(shù)據(jù)庫的信用卡信息,以防止信用卡信息暴露給最終用戶。但是,數(shù)據(jù)庫設(shè)置為對信用卡表列的詢進(jìn)行自動解密,這就使得SQL注入漏洞能夠獲得所有信用卡信息的明文。該系統(tǒng)應(yīng)該被設(shè)置為前端應(yīng)用程序使用公鑰對信用卡信息加密,后端應(yīng)用程序只能使用私鑰解密。

案例#2:一個網(wǎng)站上所有需要身份驗證的網(wǎng)頁都沒有使用SSL。攻擊者只需監(jiān)控網(wǎng)絡(luò)數(shù)據(jù)流(比如一個開放的無線網(wǎng)絡(luò)或其社區(qū)的有線網(wǎng)絡(luò)),并竊取一個已驗證的受害者的會話cookie。然后,攻擊者利用這個cookie執(zhí)行重放攻擊并接管用戶的會話從而訪問用戶的隱私數(shù)據(jù)案例#3:密碼數(shù)據(jù)庫使用unsalted的哈希算法去存儲每個人的密碼。一個文件上傳漏洞使黑客能夠獲取密碼文件。所有這些unsaltedTOP-6敏感信息泄露

攻擊案例

案例#1:一個應(yīng)用程17TOP-7功能級訪問控制缺失http:///app/getappInfo/app/admin_getappInfoUIJS未登錄用戶

(游客)已登錄用戶(普通用戶)普通用戶功能頁面管理員功能頁面有漏洞有漏洞有漏洞TOP-7功能級訪問控制缺失http://example.18TOP-8跨站請求偽造(CSRF)TOP-8跨站請求偽造(CSRF)19TOP-8跨站請求偽造(CSRF)請求的參數(shù)可預(yù)知鏈接or頁面以用戶的身份向服務(wù)器發(fā)送請求攻擊者在構(gòu)造這個請求構(gòu)造的請求自動提交誘惑讓已登錄用戶訪問瀏覽器的cook

溫馨提示

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

評論

0/150

提交評論