摘要:是代替用戶完成指定的動(dòng)作,需要知道其他用戶頁面的代碼和數(shù)據(jù)包。
常見web安全及防護(hù)原理
sql注入原理
就是通過把SQL命令插入到Web表單遞交或輸入域名或頁面請(qǐng)求的查詢字符串,最終達(dá)到欺騙服務(wù)器執(zhí)行惡意的SQL命令
總的來說有以下幾點(diǎn)
永遠(yuǎn)不要信任用戶的輸入,要對(duì)用戶的輸入進(jìn)行校驗(yàn),可以通過正則表達(dá)式,或限制長(zhǎng)度,對(duì)單引號(hào)和雙"-"進(jìn)行轉(zhuǎn)換等
永遠(yuǎn)不要使用動(dòng)態(tài)拼裝SQL,可以使用參數(shù)化的SQL或者直接使用存儲(chǔ)過程進(jìn)行數(shù)據(jù)查詢存取
永遠(yuǎn)不要使用管理員權(quán)限的數(shù)據(jù)庫(kù)連接,為每個(gè)應(yīng)用使用多帶帶的權(quán)限有限的數(shù)據(jù)庫(kù)連接
不要把機(jī)密信息明文存放,請(qǐng)加密或者h(yuǎn)ash掉密碼和敏感的信息
XSS原理及防范
Xss(cross-site scripting)攻擊指的是攻擊者往Web頁面里插入惡意html標(biāo)簽或者javascript代碼。比如:攻擊者在論壇中放一個(gè)看似安全的鏈接,騙取用戶點(diǎn)擊后,竊取cookie中的用戶私密信息;或者攻擊者在論壇中加一個(gè)惡意表單,當(dāng)用戶提交表單的時(shí)候,卻把信息傳送到攻擊者的服務(wù)器中,而不是用戶原本以為的信任站點(diǎn)
XSS防范方法
首先代碼里對(duì)用戶輸入的地方和變量都需要仔細(xì)檢查長(zhǎng)度和對(duì)”<”,”>”,”;”,”’”等字符做過濾;其次任何內(nèi)容寫到頁面之前都必須加以encode,避免不小心把html tag 弄出來。這一個(gè)層面做好,至少可以堵住超過一半的XSS 攻擊
XSS與CSRF有什么區(qū)別嗎?
XSS是獲取信息,不需要提前知道其他用戶頁面的代碼和數(shù)據(jù)包。CSRF是代替用戶完成指定的動(dòng)作,需要知道其他用戶頁面的代碼和數(shù)據(jù)包。要完成一次CSRF攻擊,受害者必須依次完成兩個(gè)步驟
登錄受信任網(wǎng)站A,并在本地生成Cookie
在不登出A的情況下,訪問危險(xiǎn)網(wǎng)站B
CSRF的防御
服務(wù)端的CSRF方式方法很多樣,但總的思想都是一致的,就是在客戶端頁面增加偽隨機(jī)數(shù)
通過驗(yàn)證碼的方法
是否了解 Web 注入攻擊(最常見 XSS 和 CSRF)?
SQL注入
把SQL命令插入到表單或輸入U(xiǎn)RL查詢字符串提交,欺騙服務(wù)器達(dá)到執(zhí)行惡意的SQL目的
XSS(Cross Site Script),跨站腳本攻擊
攻擊者在頁面里插入惡意代碼,當(dāng)用戶瀏覽該頁之時(shí),執(zhí)行嵌入的惡意代碼達(dá)到攻擊目的
CSRF(Cross Site Request Forgery),跨站點(diǎn)偽造請(qǐng)求
偽造合法請(qǐng)求,讓用戶在不知情的情況下以登錄的身份訪問,利用用戶信任達(dá)到攻擊目的
如何防范 Web 前端攻擊?
不要信任任何外部傳入的數(shù)據(jù)
針對(duì)用戶輸入作相關(guān)的格式檢查、過濾等操作
不要信任在任何傳入的第三方數(shù)據(jù)
使用 CORS,設(shè)置 Access-Control-Allow-Origin
更安全地使用 Cookie
設(shè)置Cookie為HttpOnly,禁止了JavaScript操作Cookie
防止網(wǎng)頁被其他網(wǎng)站內(nèi)嵌為iframe
服務(wù)器端設(shè)置 X-Frame-Options 響應(yīng)頭,防止頁面被內(nèi)嵌
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/52130.html
摘要:用于發(fā)布身份驗(yàn)證事件的。導(dǎo)入用于安全,配置身份驗(yàn)證,這在非應(yīng)用程序中也是相關(guān)的。安全出于安全考慮,除和之外的所有默認(rèn)禁用,屬性可用于啟用。有關(guān)保護(hù)的其他信息可以在參考指南中找到。 28. 安全 如果在類路徑上有Spring Security,那么web應(yīng)用程序默認(rèn)是安全的,Spring Boot依賴Spring Security的內(nèi)容協(xié)商策略來決定是使用httpBasic還是formL...
摘要:一旦最基本的應(yīng)用創(chuàng)建好了,你可以給他加上安全防護(hù)。一旦成功登出了,我們的應(yīng)用程序重定向到到并顯示相應(yīng)的登陸成功的消息。這標(biāo)記該應(yīng)用程序是一個(gè)應(yīng)用程序,并激活一些關(guān)鍵行為,比如創(chuàng)建一個(gè)。一旦應(yīng)用程序啟動(dòng),用瀏覽器訪問。 原網(wǎng)頁 https://spring.io/guides/gs/securing-web/ 本指南將引導(dǎo)您完成創(chuàng)建一個(gè)資源由Spring Security的保護(hù)的一個(gè)簡(jiǎn)單...
摘要:框架入門簡(jiǎn)介是一個(gè)能夠?yàn)榛诘钠髽I(yè)應(yīng)用系統(tǒng)提供聲明式的安全訪問控制解決方案的安全框架。 1.Spring Security框架入門 1.1 Spring Security簡(jiǎn)介 Spring Security是一個(gè)能夠?yàn)榛赟pring的企業(yè)應(yīng)用系統(tǒng)提供聲明式的安全訪問控制解決方案的安全框架。它提供了一組可以在Spring應(yīng)用上下文中配置的Bean,充分利用了Spring IoC,DI(...
摘要:使用框架各個(gè)組件實(shí)現(xiàn)一個(gè)在線聊天網(wǎng)頁,當(dāng)有用戶連接,服務(wù)器監(jiān)聽到用戶連接會(huì)使用推送最新用戶列表,有用戶斷開刷新在線列表,實(shí)時(shí)推送用戶聊天信息。根據(jù)請(qǐng)求頭是否等于判斷是否是。 使用Spring框架各個(gè)組件實(shí)現(xiàn)一個(gè)在線聊天網(wǎng)頁,當(dāng)有用戶連接WebSocket,服務(wù)器監(jiān)聽到用戶連接會(huì)使用Stomp推送最新用戶列表,有用戶斷開刷新在線列表,實(shí)時(shí)推送用戶聊天信息。引入Jetty服務(wù)器,直接嵌入整...
摘要:?jiǎn)⒂冒踩赃@個(gè)簡(jiǎn)單的默認(rèn)配置指定了如何保護(hù)請(qǐng)求,以及客戶端認(rèn)證用戶的方案?;跀?shù)據(jù)庫(kù)進(jìn)行認(rèn)證用戶數(shù)據(jù)通常會(huì)存儲(chǔ)在關(guān)系型數(shù)據(jù)庫(kù)中,并通過進(jìn)行訪問。必須經(jīng)過認(rèn)證其他所有請(qǐng)求都是允許的,不需要認(rèn)證。要求用戶不僅需要認(rèn)證,還要具備權(quán)限。 Spring Security Spring Security 是基于Spring 應(yīng)用程序提供的聲明式安全保護(hù)的安全框架。Spring Sercurity ...
摘要:其簡(jiǎn)陋的頁面讓人不忍直視,但更新到系列后,像脫胎換骨一般好用這篇博客記錄我個(gè)人在使用過程中遇到過的坑,每個(gè)坑位都會(huì)附上詳細(xì)的填坑辦法環(huán)境參數(shù)服務(wù)直接注冊(cè)失敗常見的注冊(cè)失敗問題可以分為以下兩種服務(wù)端與客戶端不在同一臺(tái)服務(wù)器上提示安全校驗(yàn)不通過 Spring Boot Admin 1.x其簡(jiǎn)陋的頁面讓人不忍直視,但更新到2.x系列后,像脫胎換骨一般好用 這篇博客記錄我個(gè)人在使用Spring...
閱讀 2747·2021-09-02 15:11
閱讀 921·2019-08-26 18:18
閱讀 1876·2019-08-26 11:57
閱讀 3332·2019-08-23 16:59
閱讀 2007·2019-08-23 16:51
閱讀 2314·2019-08-23 16:11
閱讀 3135·2019-08-23 14:58
閱讀 1117·2019-08-23 11:34