web業務層攻擊在技術上的特點:
攻擊數據缺乏明顯特征:與傳統的應用層攻擊不同,業務層攻擊的報文與正常業務的報文并無明顯差別。因此,基于特征檢測的各種掃描工具和防護設備往往無法起到作用。
與業務邏輯高度相關:業務層攻擊常常針對目標應用量身定制,攻擊者在發起攻擊前,都會對應用的業務進行深入的測試和分析,從中挖掘出有利用價值的漏洞。每個用戶都預留了用于重置密碼的重要聯系方式,如手機號碼或郵箱。攻擊者注冊一個用戶,并正常使用重置密碼功能,在自己的郵箱獲取重置密碼的憑據后進行密碼重置,在這一過程中,攻擊者通過截包觀察分析請求數據,篡改請求數據中的電子郵箱地址為其他賬號的郵箱地址,重放提交,就可以使用自己郵箱中已獲取的憑據成功重置其他賬號的密碼。
難以在開發環節避免:應用開發以滿足用戶需求為優先考量,設計者通常從功能實現而非攻擊者的視角去設計系統,同時也普遍缺乏應用安全的知識儲備和實踐能力。舉例來說,在設計 Web 應用的用戶登錄功能時,從應用開發角度來看,在賬號或密碼輸入錯誤時,是否要求用戶在刷新驗證碼的同時重新輸入帳號信息,是不影響登錄功能的正常使用的。對攻擊者來講,這就是一個可利用的漏洞。只要不刷新session,攻擊者就可以一直不換驗證碼去嘗試密碼,進而導致暴力破解等問題;也可以去嘗試用戶名,從而爆破用戶名列表,再利用社會工程庫的數據進行撞庫。
修補漏洞代價大:業務安全漏洞的修復,并非通過加入一兩段驗證代碼就能達到目的,往往需要修改業務處理流程,甚至很有可能在修補一個已知漏洞時,帶來更多新的漏洞。大部分都需要對業務處理流程進行調整,絕非在局部功能上小修小補所能解決。
推薦文章