題:
XSS有多危險?
Sai Kumar
2019-04-01 08:26:47 UTC
view on stackexchange narkive permalink

我是一名軟件工程師,已經觀看了很多有關XSS的視頻。

但是我無法理解如果它在客戶端運行而不在服務器端執行會帶來多大的危險?其中包含數據庫和許多重要文件。

評論不作進一步討論;此對話已[移至聊天](https://chat.stackexchange.com/rooms/92029/discussion-on-question-by-sai-kumar-how-dangerous-is-xss)。
十一 答案:
Goron
2019-04-01 11:04:37 UTC
view on stackexchange narkive permalink

如果存在XSS漏洞,攻擊者可以採取以下措施。

  • Ad-Jacking -如果您設法將XSS存儲在網站,只需在其中註入廣告即可賺錢;)
  • 點擊劫持-您可以在頁面上創建隱藏的覆蓋圖,劫持受害者的​​點擊以執行惡意行為。
  • 會話劫持-如果Cookie中沒有HTTP ONLY標誌,則JavaScript可以訪問HTTP cookie。

  • 內容欺騙-JavaScript可以完全訪問網絡應用程序的客戶端代碼,因此您可以使用它顯示/修改所需的內容。

  • 憑據收集-最有趣的部分。您可以使用精美的彈出窗口來收集憑據。 WiFi固件已更新,請重新輸入您的憑據進行身份驗證。

  • 強制下載-這樣,受害者就不會從以下位置下載惡意Flash Player absolute-safe.com?不用擔心,您會更幸運地嘗試從受害者訪問的受信任網站上進行下載。

  • 加密挖礦-是的,您可以使用受害者的CPU為您挖掘一些比特幣!

  • 繞過CSRF保護-您可以使用JavaScript發出POST請求,可以使用JavaScript收集和提交CSRF令牌,還需要什麼?

  • 鍵盤記錄-您知道這是什麼。

  • 錄製音頻-它需要得到用戶的授權,但是您可以訪問受害者的麥克風。感謝HTML5和JavaScript。

  • 拍照-需要獲得用戶的授權,但您可以訪問受害者的網絡攝像頭。感謝HTML5和JavaScript。

  • 地理位置-它需要得到用戶的授權,但是您可以訪問受害者的地理位置。 感謝HTML5和JavaScript。

  • 隱藏HTML5網絡存儲​​數據-HTML5引入了一項新功能,即網絡存儲。現在,網站可以將數據存儲在瀏覽器中以供以後使用,當然,JavaScript可以通過window.localStorage()和window.webStorage()瀏覽器&系統

  • 指紋識別-使用JavaScript可以輕鬆查找瀏覽器名稱,版本,已安裝的插件及其版本,操作系統,體系結構,系統時間,語言和屏幕分辨率。

  • 網絡掃描-可以濫用受害者的瀏覽器來使用JavaScript掃描端口和主機。

  • 崩潰的瀏覽器-是的!您可以用….stuff淹沒瀏覽器。

  • 隱藏信息-捕獲網頁中的信息並將其發送到您的服務器。簡單!

  • 重定向-您可以使用javascript將用戶重定向到您選擇的網頁。

  • 捕獲-只是一個漂亮的重定向版本。例如,如果超過一分鐘未收到任何鍵盤或鼠標事件,則可能意味著該用戶是afk,並且您可以用偽造的網頁輕鬆地替換當前網頁。

  • 捕獲屏幕截圖-再次感謝HTML5,現在您可以獲取網頁的屏幕截圖。盲XSS檢測工具一直在這樣做,然後才變酷。

  • 執行操作-您正在控制瀏覽器

所以我有一個問題。假設一個Web應用程序存在一個xss漏洞,並且有人使用此漏洞通過運行一些惡意js代碼來利用其他用戶。假設此代碼按鍵記錄並通過發出請求將按鍵發送到另一個網站。現在,只要打開瀏覽器,該惡意js代碼就會一直運行,或者只要打開瀏覽器中的易受攻擊的選項卡,它就會一直運行?
它仍然取決於攻擊者程序的方式。基本上取決於用戶事件或在特定時間間隔觸發代碼。
@SaiKumar僅在該選項卡中。
@SaiKumar通常,您作為網站管理員可以使用XSS漏洞對客戶端執行任何操作。
對於具有“需要授權”的要點-必須注意,如果用戶已經將該權限授予網頁,則您可以自由使用,無需詢問。
“網絡掃描”-並非如此。您可以發出瘋狂的HTTP請求,但是瀏覽器不會讓您看到響應,除非HTTP服務器實際上在目標_and_上運行,並明確允許跨域請求。對於您來說,關閉的端口看起來與完全開放的SMTP服務器完全相同。顯然,這也適用於真實網頁。
@JohnDvorak是的,我同意網絡掃描。但是端口掃描可以非常容易地完成。有很多開源腳本可以實現這一目標。
我剛剛檢查了Google上的端口掃描程序之一。它使用Image元素繞過策略。仍然不確定可以通過這種方式獲得多少信息,但是很有趣。
值得一提的是標有“它需要用戶授權”的條目-用戶可能會授權,因為它是他們信任的站點,並且該站點上的XSS如果該站點已被授權,則可以免費獲得它。編輯:有人已經部分說了這個,對不起
@JohnDvorak您正在檢查f.ex。從任何站點下載的圖像尺寸。或無法加載圖像。無論如何,這是在HTML佈局模型中不可避免的信息洩漏,因為加載的圖像內容決定了頁面上元素的尺寸。
Margaret Bloom
2019-04-02 12:15:51 UTC
view on stackexchange narkive permalink

也許是一個現實生活中的例子將有助於理解像XSS這樣的表面上很小的安全漏洞可能有多危險。

作為安全評估的一部分,我的公司被要求嘗試訪問CEO個人。電子郵件。我設法通過某個OSint來獲取其個人電子郵件地址,現在可以使用許多信息竊取者惡意軟件之一的自定義版本進行魚叉式網絡釣魚,但我將信息收集階段延長了一段時間。事實證明,CEO很喜歡乘船,並在船賣網站上出售其中一艘。該網站似乎很業餘,我註冊並迷惑了一下。我發現了什麼?該站點允許您管理密碼,並在當前字段中預填一個密碼字段,為此,我對此站點進行了更多調查。我遇到了一個已存儲的XSS漏洞:當您回答要約時,您可以在其中放入任意HTML代碼(包括腳本),然後將其在閱讀器瀏覽器中執行!

看起來很“無害”,不是嗎?是嗎?

因此,如果將其與對密碼的管理不善怎麼辦?

因此,我製作了一個腳本來獲取密碼頁面(這是域內請求,滿足SOP),提取了密碼和客戶信息(UA,OS等),並將其發送到我的C&C。然後,通過謹慎地寫一封電子郵件告知首席執行官我的“購買意圖”,向首席執行官灌輸一種渴望。

一天后,我收到了他們用來登錄船用網站的密碼。正如預期的那樣,這是他們電子郵件所使用的密碼(沒有2FA,我不記得是不是這樣),並且能夠訪問網絡郵件(客戶端信息用於模擬合法訪問) ,以防有必要保持低調。

長話短說,進攻不是一個原子步,它是由征服者組成的。如果您給對手留出空間,您將永遠不知道他們從那裡可以做什麼。 XSS為攻擊者提供了空間,您已經看到了很多。

Steffen Ullrich
2019-04-01 09:26:38 UTC
view on stackexchange narkive permalink

攻擊者控制的代碼在客戶端的Web應用程序上下文中運行,可以完全控制客戶端的操作,還可以讀取HTML頁面的DOM等。

這意味著它既可以竊取此頁面內的秘密(密碼等),也可以按照登錄客戶端的身份進行操作(例如購買商品,在郵件客戶端中發送炸彈威脅等)。請注意,這種活動通常可以對客戶隱藏,這樣他/她就不會意識到自己目前正在受到攻擊。

520
2019-04-01 21:09:16 UTC
view on stackexchange narkive permalink

XSS攻擊對服務器沒有危險。這對於擁有服務器的原因是一種危險。這不是技術意義,而是非常人性化的,因為源自您網站的任何類型的XSS攻擊通常都以您的聲譽敗下陣來。一些測試用例:

  • 有人將您的站點重定向到偽造的登錄頁面。現在,您的網站上可能存在大規模安全漏洞,破壞了用戶帳戶。
  • 有人在您的網站上放置了一個加密礦工。這將使您的訪客的計算機加班,並且當被發現時,使您看起來像系統管理員那樣過於貪婪和/或完全不稱職。兩者都不美觀。
  • 有人將流量從您的網站重定向到競爭對手。我不必解釋為什麼這樣不好。
  • 有人在其中放了一些JavaScript,這使您的網站無法使用,甚至導致瀏覽器崩潰。再次,應該清楚這為什麼不好。
  • 有人將DDOS代碼放入您的站點中,以嘗試刪除您的站點或第三方。如果針對您,應該很清楚這為什麼不好。如果針對他人,並且您的網站被認為是可歸罪的,那麼如果您沒有因違反合同而修復網站,則託管服務提供商會切斷您的訪問權限。
  • 有人將您的廣告替換為自己的廣告。如果您依靠廣告收入,他們就會竊取該收入。
  • 有人使用它來監聽您的用戶。 Hel-lo,違反GDPR。
Vipul Nair
2019-04-01 10:54:17 UTC
view on stackexchange narkive permalink

當XSS在Web應用程序安全社區中首次廣為人知時,一些專業的滲透測試人員傾向於將XSS視為“ as腳”漏洞。

來源:Web應用程序黑客手冊

XSS是客戶端的命令注入,就像其他用戶指出的那樣,它可能導致用戶可以執行任何操作。 XSS通常用於會話劫持,其中使用JavaScript的攻擊者使受害者將會話Cookie傳輸到攻擊者控制的服務器,然後攻擊者可以從那裡執行“會話騎行”。

但是XSS也會導致完整的應用程序接管。考慮一個注入JavaScript並存儲它的場景。然後,管理員將其加載到Web瀏覽器(通常是日誌或CMS)中。如果那裡存在XSS,則您現在擁有管理會話令牌。這就是XSS可能非常危險的原因。

不僅存儲了XSS,而且如果您向管理員發送惡意URL,該怎麼辦?同樣的威脅也適用。
絕對。我沒有寫它,因為我只想添加steffen寫的東西。
Philipp
2019-04-01 20:30:53 UTC
view on stackexchange narkive permalink

XSS漏洞的大多數可能後果影響用戶,而不是服務器。因此,如果您不關心用戶的網站帳戶遭到破壞或用戶看到的網站內容不是來自服務器,則請忽略這些漏洞。

用戶具有管理員權限,那麼XSS漏洞很容易導致意外的管理員操作。典型的例子是您的管理區域中的日誌查看器不支持XSS。訪問日誌中的一些javascript代碼段可能會由您的管理員執行,並在其帳戶下執行管理操作。這就是為什麼您有時會在試圖入侵您網站的漫遊器的HTTP標頭中看到javascript代碼段的原因。

H. Idden
2019-04-03 02:24:17 UTC
view on stackexchange narkive permalink

為您提供一個真實的示例,其中在大約10年前的一次事件中使用XSS來直接接管服務器(儘管我忘記了(小型/無關緊要)網站的名稱,並且我懷疑它已經不存在了):

向網站站長報告:“您的網站上存在XSS漏洞。您應該解決此問題。我應該如何向您發送詳細信息?”

想要向網站站長提問:“向我展示我的服務器是超級安全的!請嘗試,但您沒有機會。”

記者的回答:“然後在您的網站上查看我的個人資料頁面。 “

網站管理員這樣做了,突然整個網站都死了。發生了什麼?報告者使用XSS漏洞在自己的個人資料頁面上插入了JavaScript代碼。

JavaScript代碼(在瀏覽器和網站管理員會話中運行)向服務器發送了以下請求:

  1. 添加一個具有最高權限的新帳戶(出於演示目的)
  2. 在服務器上重命名PHP文件和SQL表(該網站有一個“管理”部分,允許該部分用於管理目的,例如更新)或安裝類似於許多CMS系統的小部件)
  3. ol>

    通過向託管公司發送請求以取消對服務器和域的訂閱並從中轉移資金,可能會造成其他損失他的銀行帳戶(假設網站管理員已登錄到託管人/域註冊商/銀行,並且沒有CSRF保護,這在10年前並不罕見)。

    也不要忘記XSS蠕蟲就像 MySpace蠕蟲Samy散佈在所有配置文件頁面上一樣,可能會破壞您的服務器的DDOS或損害您的用戶。

謝謝。我現在清楚地了解瞭如何使用xss破壞網站。但是,如何在服務器上重命名php文件和sql表?javascript可以用來重命名服務器上的文件嗎?如果文件與網頁不在同一目錄下怎麼辦?我們可以使用javascript運行sql查詢嗎?
該網站具有類似於phpMyAdmin的Web管理工具,該工具允許使用Web gui編輯SQL表和PHP文件,而不需要SSH或類似工具。JavaScript發送了與該工具將執行的請求類似的請求。哪些文件有危險,取決於管理工具的功能,安全性和權限。
User42
2019-04-01 13:06:48 UTC
view on stackexchange narkive permalink

您似乎在尋找對服務器(包括SQL等)而不是客戶端的危險,因此許多危險不適用。

但是有一個危險服務器(允許客戶端在服務器上執行的操作)。如果客戶端有權更改數據庫,則攻擊者也可以。客戶端有權在服務器上執行的任何操作也是如此。

Kailash
2020-01-03 23:01:14 UTC
view on stackexchange narkive permalink

XSS本身在以下意義上是危險的:

  • 會話ID / cookie可能被盜以獲取對受害者帳戶的完全訪問權限。
  • 網站的臨時污損。運行惡意JS腳本(礦工,卡數據竊取程序,按鍵記錄器等)
  • 使用Beef這樣的利用框架,攻擊者可以進行一些OS調用,例如遠程打開網絡攝像頭,轉動麥克風,將所有網站重定向到惡意網站等。
  • 有時XSS可以用來竊取受害者的秘密令牌,CSRF(跨站請求偽造)令牌,API密鑰,然後可以進一步利用CSRF攻擊。

此博客此博客展示瞭如何使用XSS攻擊在Web應用程序中執行SQL注入。

除了SQLi,這些都已包含在可接受的答案中
WoJ
2019-04-03 19:55:44 UTC
view on stackexchange narkive permalink

您還可以從其他答案中很好地了解XSS成為問題的技術原因。我將提供另一個觀點。

XSS是一個非常容易引入您的代碼中的漏洞,並且可以被掃描程序發現。這可能是為什麼它被包括記者在內的“普通大眾” 相對“知名”的原因之一(在“我聽說過”的意義上)。

如果您有一個公開可用的站點,則它可能被描述為

Sai Kumar LLC具有一個極易受攻擊的站點,因為它具有XSS。XSS是一個非常危險的漏洞。非常。

它允許竊取同伙的數據。是的̨da҉t͘a̵͢haś̴al͞r̀ead́y͠b̷e̷e̶n̨s͝t͜o̢l͝e͜n。 t>

然後您可以進行各種各樣的肚皮舞,解釋這不是漏洞,勘誤表將在第74頁的3 pt字體中顯示為灰色。

這就是為什麼我在公共網站上系統地提高XSS調查結果的CVSS的原因(當通過滲透測試,掃描或其他測試發現時)。

Tatum
2020-01-03 18:15:19 UTC
view on stackexchange narkive permalink

存儲的跨站點腳本的風險很大,原因有多種:瀏覽器的XSS過濾器不再可見有效負載。如果用戶轉到受影響的頁面,可能會偶然觸發有效負載,而利用精心設計的url或精確的表單輸入來利用反射的XSS將會是必需的。



該問答將自動從英語翻譯而來。原始內容可在stackexchange上找到,我們感謝它分發的cc by-sa 4.0許可。
Loading...