<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    鐵手劍譜

    上善若水
    數據加載中……
    TOP 10 Web應用安全之一:輸入校驗

    TOP 10 Web應用脆弱性之一:未經驗證的輸入


    描述

    Web 應用使用HTTP 請求(也許還有文件,也是一種特殊請求) 來進行輸入,并決定如何進行響應。攻擊者可以篡改HTTP 請求的任何部分,包括url,查詢字符串(querystring, headers, cookies, 表單字段(包括隱藏字段),試圖繞過服務器的安全機制。常見的通用輸入篡改攻擊包括:

    o       強迫瀏覽(forced browsing);

    o       命令注入(command insertion);

    o       交叉站點腳本(cross site scripting);

    o       緩沖區溢出(buffer overflows);

    o       格式字符串攻擊(format string attacks);

    o       SQL注入(SQL injection);

    o       有毒餅干(cookie poisoning);

    o       隱藏字段操作(hidden field manipulation),等等。

     

    某些站點試圖通過過濾惡意輸入來保護自己。但問題是編碼信息的方式無窮無盡。這些編碼方式看起來并不是加密的,所以似乎也用不著解碼。但是,開發人員仍然經常忘記將所有的參數在使用之前解碼為最簡單的形式。參數應該在其被校驗之前轉換為最簡單的形式,否則,惡意輸入就可能掩飾自己從而流過過濾器。簡化這些編碼的過程稱為是“規格化(canonicalization)”。因為幾乎所有的HTTP 輸入都可以編碼為多種格式,這種技術便可以打亂各種旨在利用和攻擊上述弱點的攻擊行為。這使得過濾非常困難。

    有非常之多的web 應用僅使用客戶端校驗來驗證輸入??蛻舳诵r灆C制是非常容易繞過的,這樣就使得Web應用幾乎對惡意參數的攻擊毫無保護。攻擊者可以使用攻擊甚至telnet來產生他們自己的HTTP 請求。他們才不關心開發人員預定想要在客戶端發生的時候事情呢。注意,客戶端校驗僅僅在提高性能和可用性方面有益,但是它毫無安全可言。因此,對于惡意參數攻擊,服務器端校驗是必須的。

    這種攻擊的數量在不斷上升,因為有大量的支持參數的“模糊化”(“fuzzing”)、腐朽(corruption)、以及野蠻強制增長的工具出現。不應該低估了這些使用非校驗輸入進行攻擊的影響。實際上如果開發人員能夠在使用參數之前對其進行驗證,就可抵擋大部分的攻擊。因此,最好使用一個中心化的、強大的驗證機制來對所有HTTP 請求的輸入都進行驗證,這樣利用此弱點進行攻擊的數量就會大減。


    環境影響

    所有web servers, application servers, 以及應用環境都容易受到這種參數篡改的攻擊。


    如何決定你的應用是否脆弱

    一個Web應用所用的未經驗證的HTTP請求的任何和部分都稱為是“臟” 參數。找出臟參數的最簡單的方式是進行最詳細的代碼評審,找出所有從HTTP請求提取信息的方法調用。比如,在J2EE應用中,這些包括HttpServletRequest 類(以及其子類)中的方法。然后你就可以循著代碼查看參數變量是在哪里使用的。如果變量在使用之前未作驗證,這可能就是一個潛在的問題。在Perl中,你因該考慮使用 “taint” (-T) 選項。

    你也可以通過一些工具來找出臟參數,比如OWASP WebScarab。它們可以查看和評審通過HTTP/HTTPS的所有數據,并進行分析。

    如何保護

    保護很簡單,那就是確保任何參數在被使用之前都進行了驗證。最好的辦法是使用一個中心化的組件庫,比如Java中的Jarkarta Commons Validator.每個參數都演進行嚴格檢查。涉及到過濾臟數據的“負面”方法或者依賴于簽名的方法都不可能很有效率,并且難以維護。

    參數應該進行“正向”規格的檢查,正向規格( “positive” specification )的定義可包括:

    • 數據類型(string, integer, real, )
    • 允許的字符集
    • 最大最小長度
    • 是否允許null
    • 是否必需
    • 是否允許重復
    • 數值范圍
    • 特定的法定值 (枚舉)
    • 特定模式(正則表達式)

     * 本系列整理自 OWASP(Opensource Web Applicaiton Security Project )

    posted on 2005-09-12 11:52 鐵手 閱讀(1791) 評論(1)  編輯  收藏 所屬分類: 企業架構安全

    評論

    # air jordan 2011-06-10 17:31 air jordan

    I'm agree!
      回復  更多評論    
    主站蜘蛛池模板: 亚洲av无码专区首页| 最近国语视频在线观看免费播放| 国产99视频精品免费视频7| 一边摸一边桶一边脱免费视频| 亚洲精品国产精品乱码不卡√ | 四虎永久在线观看免费网站网址| 亚洲精品无码aⅴ中文字幕蜜桃| 久久精品国产亚洲Aⅴ蜜臀色欲| 亚洲一区二区在线免费观看| 在线观看亚洲AV日韩AV| 亚洲日本一区二区三区在线| 一二三四影视在线看片免费 | 久久国产精品一区免费下载| 亚洲国产精品自在自线观看| 亚洲精品无码久久千人斩| 2021国产精品成人免费视频| 2022国内精品免费福利视频| xxx毛茸茸的亚洲| 亚洲一区精品无码| 真实乱视频国产免费观看| 精品成人免费自拍视频| 日韩色视频一区二区三区亚洲| 久久精品国产亚洲av四虎| 永久免费无码网站在线观看| 91制片厂制作传媒免费版樱花 | av无码国产在线看免费网站| 在线观看黄片免费入口不卡| 亚洲人成色777777老人头| 91亚洲一区二区在线观看不卡| 亚洲免费日韩无码系列| 处破痛哭A√18成年片免费| 日韩成人免费视频| 男人j进女人p免费视频| 亚洲已满18点击进入在线观看| 亚洲AV无码国产精品麻豆天美| 免费少妇a级毛片人成网| 成人免费视频一区| 精品久久8x国产免费观看| 青青操在线免费观看| 特黄特色的大片观看免费视频| 亚洲大尺度无码无码专线一区|