国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

XSS攻擊實踐

社區管理員 / 717人閱讀

一、前言

由于瀏覽器同源策略,限制了頁面無法引用第三方資源,無法請求不同源下面的資源,影響了web的發展,所以瀏覽器出讓了一些安全策略來滿足web的發展。

  • 通過CSP安全策略來保證瀏覽器可以安全的加載第三方資源;

  • 通過CORS允許瀏覽器跨域請求;

  • 通過PostMessage來操作DOM

但這些策略也給了黑客攻擊我們的站點的機會。

web站點常見的攻擊方式包括:XSS攻擊CSRF攻擊Sql注入攻擊等。

二、XSS攻擊

1、什么是XSS攻擊

XSS攻擊(跨站腳本攻擊),黑客通過網站的漏洞,將惡意腳本插入Html頁面,當用戶打開站點時,由于惡意腳本和站點代碼擁有同樣的執行權限,惡意腳本就有可能篡改站點內容,竊取用戶信息發送到第三方服務器。

惡意代碼一般會做下面這些攻擊:

  • 獲取用戶Cookies

  • 修改用戶DOM,偽造登錄頁面

  • 生成浮窗廣告

  • 監聽用戶輸入

2、XSS攻擊的分類

XSS攻擊常被分為三類:存儲型攻擊、反射型攻擊、基于DOM的XSS攻擊。

前兩種一般要經過服務器,所以后端研發更需要注意,而最后一種沒有經過服務器,是需要前端注意避免的。

1)存儲型攻擊

一個真實的案例就是:2015年烏云網爆出來的,喜瑪拉雅站點,編輯上傳專輯名稱,未對錄入表單進行過濾,黑客可以上傳惡意腳本到服務器。當其他用戶點擊這張專輯的時候,就執行了惡意腳本,惡意腳本獲取用戶的Cookies信息,上傳到黑客的服務器,然后就可以登錄用戶的站點。

第一步:輸入惡意腳本到站點,沒有過濾,所以可以上傳到服務器

image.png 第二步:當用戶打開了當前頁面,執行了惡意腳本,后端代碼沒有禁止第三方站點發出的請求,所以黑客就獲取了用戶的Cookies,接著就可以訪問用戶的站點或者調用站點的API

image.png

2)反射型攻擊

反射型XSS攻擊的常見模式是,黑客發現了網站存在將url的參數直接在頁面上顯示,并且沒有過濾的情況,于是黑客就構造帶有惡意腳本的鏈接,誘導用戶點擊,當用戶點擊了鏈接,就將惡意代碼注入到了頁面并執行,從而獲取用戶信息等。

反射型攻擊案例:

頁面中又直接渲染html的變量,直接渲染html的,如下代碼,直接讀取url參數query, 在頁面展示,如果后端服務沒有經過過濾,就有可能將query的代碼引入頁面中執行,造成攻擊

image.png

image.png

3)基于DOM的XSS攻擊

該攻擊可以是一些流氓軟件或攻擊路由器,在http請求返回的過程中,在返回的數據中插入了惡意代碼,前端站點如果沒有過濾,就可能出現執行惡意代碼的情況。

3、其他相關案例

1、頁面讀取html顯示,后端通過抓取郵件內容,生成html,給到前端展示。由于郵件中可能存在一些非法標簽,瀏覽器在解析中無法識別,就導致瀏覽器crash,常常使用插件或者js過濾,轉譯等。

2、給朋友發送一個頁面的腳本,其中alert了6次,并且獲取了瀏覽器Cookies

<!DOCTYPE html> <html lang="en">     <head>         <meta charset="UTF-8">         <title>攻擊測試</title>     </head>     <body>         <script>             window.onload = () => {                 document.cookie = "username=test"                 for(let i=0; i<=5; i++){                     alert(`你被攻擊了,我獲取了你的Cookies${document.cookie}`)                  }             }         </script>         你被攻擊了     </body> </html> 復制代碼

打開頁面后:

image.png 如果將其中的攻擊腳本插入用戶的頁面中,然后向第三方服務器發送cookies,這就構成了XSS攻擊

三、模擬存儲型攻擊

我們來模擬下存儲型攻擊

1、前期準備

一個惡意的腳本這里用Express搭建,端口9000

一個惡意服務

2、正常站點

另外啟動一個http服務器,為我們的正常站點,端口8080。

假設,這個的網站存在漏洞,沒有過濾參數,惡意腳本上傳到了服務器

表單錄入

3、正常站點的另一個頁面

當用戶打開另一個頁面,可以加載了前一步錄入的內容,我們發現惡意腳本已經執行

打開站點

4、惡意腳本執行

惡意腳本執行

5、惡意服務后端獲取當前站點Cookies

獲取Cookie

四、防止XSS攻擊的辦法

阻止XSS攻擊,要先知道XSS攻擊的原理:一般分為兩個步驟。

第一步:黑客找到站點的漏洞,想站點插入惡意腳本。

第二步:讀取站點的信息,發送到第三方服務器。

XSS攻擊主要有以下方法注入:

  • html中的script腳本

  • 凡事可以請求第三方數據的地方:標簽的屬性Img的src屬性、a標簽的href屬性、background:url()

  • js腳本的拼接特殊字符

對于后端來說,主要有以下幾處常常不可信:

  • 用戶輸入內容

  • url參數

  • post參數

  • 第三方的鏈接

  • referere

  • Cookies

1、過濾關鍵字

對于存儲型XSS攻擊和反射型XSS攻擊,二者由于都需要過服務器,那么只要后端開發在入庫的時候最敏感代碼進行過濾進行過濾,就可以避免大部分的XSS攻擊。

2、前端框架和組件的使用

目前對于前端的大部分組件(富文本組件)和常見的Vue、React框架都對展示的數據,只會展示以字符串進行展示。

對于有可能嵌入惡意代碼的部分也貼心的增加了提示:

如在Vue中:

<div v-html="html"></div> 復制代碼

在React中:

<div dangerouslySetInnerHTML = {{__html:<div><script src="http://xxs.js"></script></div>}} ></div> 復制代碼

這些可能導致XSS攻擊的地方,框架都給了顯著的提示,所以在頁面顯示這些不可控的內容前要進行過濾。

3、嚴格執行CSP策略

設置CSP,現在站點加載或發送請求到第三方服務器

4、給Cookie設置HttpOnly

給cookies設置了該屬性,當前頁面重要的Cookie就無法通過js讀取,這樣黑客也就無法獲取用戶的信息


作者:前端中后臺
鏈接:https://juejin.cn/post/7041435485310287886
來源:稀土掘金
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。


文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/127962.html

相關文章

  • xss注入實踐和防范

    摘要:劫持用戶是最常見的跨站攻擊形式,通過在網頁中寫入并執行腳本執行文件多數情況下是腳本代碼,劫持用戶瀏覽器,將用戶當前使用的信息發送至攻擊者控制的網站或服務器中。預防將錄入的惡意標簽進行轉碼再存儲,主要在后端錄入的時候做。 xss定義 Cross Site Scripting的縮寫本來是CSS,但是這樣就跟Cascading Style Sheets的縮寫混淆了,所以使用XSS,使用字母X...

    Rango 評論0 收藏0
  • xss注入實踐和防范

    摘要:劫持用戶是最常見的跨站攻擊形式,通過在網頁中寫入并執行腳本執行文件多數情況下是腳本代碼,劫持用戶瀏覽器,將用戶當前使用的信息發送至攻擊者控制的網站或服務器中。預防將錄入的惡意標簽進行轉碼再存儲,主要在后端錄入的時候做。 xss定義 Cross Site Scripting的縮寫本來是CSS,但是這樣就跟Cascading Style Sheets的縮寫混淆了,所以使用XSS,使用字母X...

    JinB 評論0 收藏0
  • Web安全之XSS Platform搭建及使用實踐

    摘要:一背景是一個非常經典的滲透測試管理系統,原作者在年所開發,由于后來長時間沒有人維護,導致目前在環境下無法運行。 一、背景 XSS Platform 是一個非常經典的XSS滲透測試管理系統,原作者在2011年所開發,由于后來長時間沒有人維護,導致目前在PHP7環境下無法運行。 筆者最近花了一點時間將源碼移植到了PHP7環境中,同時增加安裝功能;另外還修復之前的代碼的一些不嚴謹語法的問題,...

    shevy 評論0 收藏0
  • Web安全之XSS Platform搭建及使用實踐

    摘要:一背景是一個非常經典的滲透測試管理系統,原作者在年所開發,由于后來長時間沒有人維護,導致目前在環境下無法運行。 一、背景 XSS Platform 是一個非常經典的XSS滲透測試管理系統,原作者在2011年所開發,由于后來長時間沒有人維護,導致目前在PHP7環境下無法運行。 筆者最近花了一點時間將源碼移植到了PHP7環境中,同時增加安裝功能;另外還修復之前的代碼的一些不嚴謹語法的問題,...

    XboxYan 評論0 收藏0
  • 快速找出網站中可能存在的XSS漏洞實踐(一)

    摘要:一背景筆者最近在慕課錄制了一套跨站漏洞加強安全視頻教程,課程當中有講到的挖掘方式,所以在錄制課程之前需要做大量實踐案例,最近視頻已經錄制完成,準備將這些漏洞的挖掘過程記錄下來,方便自己也方便他人。 一、背景 筆者最近在慕課錄制了一套XSS跨站漏洞 加強Web安全視頻教程,課程當中有講到XSS的挖掘方式,所以在錄制課程之前需要做大量實踐案例,最近視頻已經錄制完成,準備將這些XSS漏洞的挖...

    Jason_Geng 評論0 收藏0
  • 快速找出網站中可能存在的XSS漏洞實踐(一)

    摘要:一背景筆者最近在慕課錄制了一套跨站漏洞加強安全視頻教程,課程當中有講到的挖掘方式,所以在錄制課程之前需要做大量實踐案例,最近視頻已經錄制完成,準備將這些漏洞的挖掘過程記錄下來,方便自己也方便他人。 一、背景 筆者最近在慕課錄制了一套XSS跨站漏洞 加強Web安全視頻教程,課程當中有講到XSS的挖掘方式,所以在錄制課程之前需要做大量實踐案例,最近視頻已經錄制完成,準備將這些XSS漏洞的挖...

    YPHP 評論0 收藏0

發表評論

0條評論

社區管理員

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<