<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>
    爆米花
    xpath xpath注入

    xpath 注入防御方法有什么

    分享
  • 一顆小胡椒 2 CISM-WSE CISP-PTS 官方采納
    一顆小胡椒2 CISM-WSE CISP-PTS
    官方采納

    防御方式

    1. 數據提交到服務器上端,在服務端正式處理這批數據之前,對提交數據的合法性進行驗證。

    2. 檢查提交的數據是否包含特殊字符,對特殊字符進行編碼轉換或替換、刪除敏感字符或字符串,如過濾[] ‘ “ and or 等全部過濾,像單雙引號這類,可以對這類特殊字符進行編碼轉換或替換

    3. 對于系統出現的錯誤信息,以IE錯誤編碼信息替換,屏蔽系統本身的出錯信息或者用統一的報錯頁面代替(如updataxml()這類)

    4. 參數化XPath查詢,將需要構建的XPath查詢表達式,以變量的形式表示,變量不是可以執行的腳本。如下代碼可以通過創建保存查詢的外部文件使查詢參數化:

      declare variable $loginID as xs:string external;
      declare variable $password as xs:string external;
      //users/user[@loginID=$loginID and@password= $password]

    5. 通過MD5、SSL等加密算法,對于數據敏感信息和在數據傳輸過程中加密,即使某些非法用戶通過非法手法獲取數據包,看到的也是加密后的信息。 總結下就是:限制提交非法字符,對輸入內容嚴格檢查過濾,參數化XPath查詢的變量。

    總結下就是:限制提交非法字符,對輸入內容嚴格檢查過濾,參數化XPath查詢的變量

    補充:

    什么是 XPath 注入攻擊?XPath 注入攻擊是指利用 XPath 解析器的松散輸入和容錯特性,能夠在 URL、表單或其它信息上附帶惡意的 XPath 查詢代碼,以獲得權限信息的訪問權并更改這些信息。 XPath 注入攻擊利用兩種技術,即 XPath 掃描和 XPath 查詢布爾化。通過該攻擊,攻擊者可以控制用來進行 XPath 查詢的 XML 數據庫。這種攻擊可以有效地對付使用 XPath 查詢(和XML數據庫)來執行身份驗證。

  • delay 2 高級測評師 CISM-WSE 官方采納
    delay2 高級測評師 CISM-WSE
    官方采納

    xpath注入防御方法有:

    • 數據提交到服務器上端,在服務端正式處理這批數據之前,對提交數據的合法性進行驗證。

    • 檢查提交的數據是否包含特殊字符,對特殊字符進行編碼轉換或替換、刪除敏感字符或字符串,如過濾[] ‘ “ and or 等全部過濾,像單雙引號這類,可以對這類特殊字符進行編碼轉換或替換。

    • 對于系統出現的錯誤信息,以IE錯誤編碼信息替換,屏蔽系統本身的出錯信息或者用統一的報錯頁面代替(如updataxml()這類)。

    • 參數化XPath查詢,將需要構建的XPath查詢表達式,以變量的形式表示,變量不是可以執行的腳本。

    • 通過MD5、SSL等加密算法,對于數據敏感信息和在數據傳輸過程中加密,即使某些非法用戶通過非法手法獲取數據包,看到的也是加密后的信息。 總結下就是:限制提交非法字符,對輸入內容嚴格檢查過濾,參數化XPath查詢的變量。

  • 趣能一姐 2 CISAW安全運維(專業級) 高級信息系統項目管理師
    趣能一姐2 CISAW安全運維(專業級) 高級信息系統項目管理師

    什么是XPath

    XPath 即為 XML 路徑語言,是 W3C XSLT 標準的主要元素,它是一種用來確定 XML(標準通用標記語言的子集)文檔中某部分位置的語言。

    XPath 基于 XML 的樹狀結構,有不同類型的節點,包括元素節點,屬性節點和文本節點,提供在數據結構樹中找尋節點的能力,可用來在 XML 文檔中對元素和屬性進行遍歷。

    XPath注入原理

    XPath 注入利用 XPath 解析器的松散輸入和容錯特性,能夠在 URL、表單或其它信息上附帶惡意的 XPath 查詢代碼,以獲得高權限信息的訪問權。

    XPath注入類似于SQL注入,當網站使用未經正確處理的用戶輸入查詢 XML 數據時,可能發生 XPATH 注入,由于Xpath中數據不像SQL中有權限的概念,用戶可通過提交惡意XPATH代碼獲取到完整xml文檔數據。

    防御方法

    過濾字符是必須的,比如[、]、轉義 ‘、and、or等等。
    過濾不需要的函數:name()、count() 等等。
    加密/Hash:既然 XPath 注入會導致 XML 數據泄露,所以對敏感信息的加密是必須的。這個方法還有一個額外的好處:使得惡意的字符失效。比如對密碼 MD5 的話,就意味著密碼這個點沒法插入單引號來破壞語句了,因為單引號會進入md5()函數計算。
    屏蔽錯誤信息。
    參數化 XPath 查詢。這個因編程語言而異。

  • 在下炳尚 2 風險管理(專業級)RM/PL 高級信息系統項目管理師
    在下炳尚2 風險管理(專業級)RM/PL 高級信息系統項目管理師

    驗證是否包含特定的 XPath 函數,可以過濾掉一些 XPath 函數,以提高安全性,當然了不能以犧牲用戶體驗或影響用戶正常使用為前提。

  • Ann 2 等保高級測評師 NISP
    Ann2 等保高級測評師 NISP

    驗證是否包含特定的 XPath 函數,可以過濾掉一些 XPath 函數,以提高安全性,當然了不能以犧牲用戶體驗或影響用戶正常使用為前提。

  • 房樂 2 CISAW CISP-PTE
    房樂2 CISAW CISP-PTE

    什么是XPath

    XPath 即為 XML 路徑語言,是 W3C XSLT 標準的主要元素,它是一種用來確定 XML(標準通用標記語言的子集)文檔中某部分位置的語言。

    XPath 基于 XML 的樹狀結構,有不同類型的節點,包括元素節點,屬性節點和文本節點,提供在數據結構樹中找尋節點的能力,可用來在 XML 文檔中對元素和屬性進行遍歷。

    XPath注入原理

    XPath 注入利用 XPath 解析器的松散輸入和容錯特性,能夠在 URL、表單或其它信息上附帶惡意的 XPath 查詢代碼,以獲得高權限信息的訪問權。

    XPath注入類似于SQL注入,當網站使用未經正確處理的用戶輸入查詢 XML 數據時,可能發生 XPATH 注入,由于Xpath中數據不像SQL中有權限的概念,用戶可通過提交惡意XPATH代碼獲取到完整xml文檔數據。

    防御方法

    過濾字符是必須的,比如[、]、轉義 ‘、and、or等等。
    過濾不需要的函數:name()、count() 等等。
    加密/Hash:既然 XPath 注入會導致 XML 數據泄露,所以對敏感信息的加密是必須的。這個方法還有一個額外的好處:使得惡意的字符失效。比如對密碼 MD5 的話,就意味著密碼這個點沒法插入單引號來破壞語句了,因為單引號會進入md5()函數計算。
    屏蔽錯誤信息。
    參數化 XPath 查詢。這個因編程語言而異。

  • 寫回答
    亚洲 欧美 自拍 唯美 另类