<span id="7ztzv"></span>
<sub id="7ztzv"></sub>

<span id="7ztzv"></span><form id="7ztzv"></form>

<span id="7ztzv"></span>

        <address id="7ztzv"></address>

            HTTP Parameter Pollution

            ABSTRACT

            如果在 URL 中加入未驗證的輸入,可能會讓攻擊者重寫請求參數的值。攻擊者可能會重寫現有的參數值、注入新的參數或利用直接得到的變量。

            EXPLANATION

            HTTP Parameter Pollution (HPP) 攻擊包含將編碼的查詢字符串分隔符注入其他現有的參數中。如果 Web 應用程序沒有正確地檢查用戶輸入,惡意用戶可能會破壞應用程序的邏輯,進行客戶端側或服務器側攻擊。如果再向 Web 應用程序提交參數,并且如果這些參數與現有參數的名稱相同,則 Web 應用程序可能會有下列一種反應

            它可能只從第一個參數中提取數據
            它可能從最后一個參數中提取數據
            它可能從所有參數中提取數據并把它們連接起來


            技術/HTTP 后端 總體解析結果 示例
            ASP.NET/IIS 所有出現特定參數的地方 par1=val1,val2
            ASP/IIS 所有出現特定參數的地方 par1=val1,val2
            PHP/Apache 最后出現的地方 par1=val2
            JSP,Servlet/Apache Tomcat 第一次出現的地方 par1=val1
            JSP,Servlet/Oracle
            Application Server 10g 第一次出現的地方 par1=val1
            IBM HTTP Server 第一次出現的地方 par1=val1
            mod_perl/Apache 變成陣列 ARRAY(0x8b9059c)


            例 1:根據應用程序服務器和應用程序自身的邏輯,下列請求可能造成與 authentication 系統的混淆,使攻擊者能模擬別的用戶。
            http://www.server.com/login.php?name=alice&name=hacker


            <%
            ...
            $id = $_GET["id"];
            header("Location:http://www.host.com/election.php?poll_id=" .$id);
            ...
            %>


            例 2:下列代碼使用來自于 HTTP 請求的輸入來呈現兩個超鏈接。
            URL: http://www.host.com/election.php?poll_id=4567
            鏈接 1: <a href="vote.php?poll_id=4567&candidate=white">Vote for Mr. White<a>
            鏈接 2: <a href="vote.php?poll_id=4567&candidate=green">Vote for Mrs. Green<a>

            由于程序員沒有考慮到攻擊者可能提供 poll_id(例如 "4567&candidate=green")的可能性,所以得到的頁面中將包含以下注入鏈接。因此,Green 女士將始終投票選擇撿出第一個參數的應用程序服務器。
            <a href="vote.php?poll_id=4567&candidate=green&candidate=white">Vote for Mr. White<a>
            <a href="vote.php?poll_id=4567&candidate=green&candidate=green">Vote for Mrs. Green<a>

            REFERENCES

            [1] Standards Mapping - OWASP Top 10 2010 - (OWASP 2010) A1 Injection

            [2] Standards Mapping - OWASP Top 10 2007 - (OWASP 2007) A2 Injection Flaws

            [3] Standards Mapping - OWASP Top 10 2004 - (OWASP 2004) A6 Injection Flaws

            [4] Standards Mapping - Common Weakness Enumeration - (CWE) CWE ID 235

            [5] HTTP Parameter Pollution Luca Carettoni, Independent Researcher & Stefano Di Paola, MindedSecurity

            [6] HTTP Parameter Pollution Vulnerabilities in Web Applications Marco `embyte’ Balduzzi


            Copyright 2013 Fortify Software - All rights reserved.
            (Generated from version 2013.1.1.0008 of the Fortify Secure Coding Rulepacks)
            desc.dataflow.php.http_parameter_pollution

            <span id="7ztzv"></span>
            <sub id="7ztzv"></sub>

            <span id="7ztzv"></span><form id="7ztzv"></form>

            <span id="7ztzv"></span>

                  <address id="7ztzv"></address>

                      亚洲欧美在线