• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    web跨站點腳本攻擊方式和測試方法[2]

    發布: 2010-2-05 10:53 | 作者: 不詳 | 來源: 領測軟件測試網采編 | 查看: 40次 | 進入軟件測試論壇討論

    領測軟件測試網

      web跨站點腳本攻擊方式和測試方法[2]   web測試

      只要您點擊了某些 URL,這一切便有可能發生。每天之中,在閱讀來自留言板或新聞組的受信任的電子郵件的時侯,您會多少次地單擊其中的 URL?

      網絡釣魚攻擊通常利用 XSS 漏洞來裝扮成合法站點?梢钥吹胶芏噙@樣的情況,比如您的銀行給你發來了一封電子郵件,向您告知對您的帳戶進行了一些修改并誘使您點擊某些超鏈接。如果仔細觀察這些 URL,它們實際上可能利用了銀行網站中存在的漏洞,它們的形式類似于 alert(‘XSS’)http://mybank.com/somepage?redirect=alert(‘XSS’),這里利用了“redirect”參數來執行攻擊。

      如果您足夠狡猾的話,可以將管理員定為攻擊目標,您可以發送一封具有如下主題的郵件:“求救!這個網站地址總是出現錯誤!”在管理員打開該 URL 后,便可以執行許多惡意操作,例如竊取他(或她)的憑證。

      好了,現在我們已經理解了它的危害性 -- 危害用戶,危害管理員,給公司帶來壞的公共形象,F在,讓我們看看本文的重點 -- 測試您的網站是否存在這些問題。

      測試 XSS 漏洞

      多年以來,我一直是一名全職的安全顧問,已經做過無數次的這種測試了。我將好的測試計劃歸結為兩個字:徹底。對于你我來說,查找這些漏洞與能夠有機會在 Bugtraq 或 Vulnwatch 上吹噓一番沒有任何關系;它只與如何出色完成負責的工作有關。如果這意味著對應用程序中所有的單個查詢字符串參數、cookie 值 以及 POST 數據值進行檢查,那么這只能表明我們的工作還不算太艱巨。

      顯然,一次完整的安全性檢查所涉及的內容通常遠遠超出尋找 XSS 漏洞那樣簡單;它需要建立整體的威脅模型,測試溢出漏洞、信息泄漏、錯誤處理、SQL 注入、身份驗證和授權錯誤。好在執行這樣徹底的工作時,各個領域之間都存在重疊。比如,在測試 XSS 漏洞時,經常會同時找出錯誤處理或信息泄漏問題。

      我假設您屬于某個負責對 Web 應用程序進行開發和測試的小組。在這個幸運的位置上,您可以混合使用黑盒白盒方法。每種方法都有它自己的優點,結合使用時甚至能相互提供支持。

      1.按順序準備您的工具包

      測試工作也可以是自動化的,但是我們在這里只討論手動操作。手動測試的必備工具包括:

      •Paros proxy (http://www.parosproxy.org),用于截獲 HTTP 通信數據

      •Fiddler (http://www.fiddlertool.com/fiddler),用于截獲 HTTP 通信數據

      •Burp proxy (http://www.portswigger.net/proxy/)

      •TamperIE (http://www.bayden.com/dl/TamperIESetup.exe),用于修改 GET 和 POST   軟件測試

      我們以上至少列出了三種 Web 代理軟件。也可以尋找其他不同的類似產品,因為每種產品都有它自己的獨到之處。下面,您需要在 Web 瀏覽器發出 HTTP 請求之前截獲這些請求,并修改它們以注入 XSS 測試代碼。上面所有這些工具都可以完成這項任務,某些工具還會顯示返回的 HTML 源代碼(如果您選擇了截獲服務器響應)。

      截獲客戶端發出的 GET 和 POST 請求非常重要。這樣可以繞過所有的客戶端 javascrīpt 輸入驗證代碼。我在這里要提醒所有 Web 開發人員 -- 客戶端安全控制是靠不住的。應該總是在服務器端執行有效性驗證。

      2.確定站點及其功能 -- 與開發人員和 PM 交流

      繪制一些簡單的數據流圖表,對站點上的頁面及其功能進行描述。此時,可以安排一些與開發人員和項目經理的會議來建立威脅模型。在會議上盡可能對應用程序進行深入探討。站點公開了 Web 服務嗎?是否有身份驗證表單?有留言板嗎?有用戶設置頁面嗎?確保列出了所有這些頁面。

      3.找出并列出所有由用戶提供輸入的點

      對站點地圖進行進一步細化。我通常會為此創建一個電子表格。對于每個頁面,列出所有查詢字符串參數、cookie 值、自定義 HTTP 標頭、POST 數據值和以其他形式傳遞的用戶輸入。不要忘記搜索 Web 服務和類似的 SOAP 請求,并找出所有允許用戶輸入的字段。

      分別列出每個輸入參數,因為下面需要獨立測試每個參數。這可能是最重要的一個步驟!如果閱讀下面的電子表格,您會看到我已經在示例站點中找出了一大堆這樣的東西。如 forwardURL 和 lang 這樣的查詢字符串。如 name、password、msgBody、msgTitle 和這樣的 POST 數據,甚至某些 Cookie 值。所有這些都是我們感興趣的重要測試內容。

      4.認真思考并列出測試用例

      使用已經得到的電子表格并列出各種用來測試 XSS 漏洞的方法。我們稍候將討論各種方法,但是現在先讓我們看看我的電子表格的屏幕截圖,請注意,我列出了頁面上允許的每個值以及每個值的所有測試類型。這種記錄測試的方法僅是我自己的習慣,您可以使用自己的方法。我喜歡記錄所有東西,以便我能知道已經做了哪些工作和哪些工作沒有做。

    延伸閱讀

    文章來源于領測軟件測試網 http://www.kjueaiud.com/

    TAG: web Web WEB 攻擊 腳本 站點


    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備10010545號-5
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>