常見的應(yīng)用程序漏洞,修復(fù)應(yīng)用程序漏洞的方法

      應(yīng)用程序漏洞是應(yīng)用程序中的弱點(diǎn),攻擊者可以利用它來?yè)p害應(yīng)用程序的安全性。漏洞可以通過多種方式引入應(yīng)用程序,例如應(yīng)用程序的設(shè)計(jì)、實(shí)現(xiàn)或配置失敗。

      常見的應(yīng)用程序漏洞,修復(fù)應(yīng)用程序漏洞的方法-南華中天

      應(yīng)用威脅

      近年來,應(yīng)用程序漏洞變得越來越普遍。2021 年,國(guó)家漏洞數(shù)據(jù)庫(kù) (NVD) 添加了20,169 個(gè)新的常見漏洞和披露 (CVE) 。這表示在生產(chǎn)應(yīng)用程序中發(fā)現(xiàn)的漏洞數(shù)量比上一年發(fā)現(xiàn)的 18,325 個(gè)增加了 10% 以上。

      新應(yīng)用程序漏洞的快速增長(zhǎng)超過了組織識(shí)別、測(cè)試和部署補(bǔ)丁以糾正這些問題的能力。因此,公司通常運(yùn)行包含可利用漏洞的應(yīng)用程序。

      通過利用這些漏洞,網(wǎng)絡(luò)威脅參與者可以實(shí)現(xiàn)各種目標(biāo)。成功的利用可能會(huì)導(dǎo)致代價(jià)高昂且具有破壞性的數(shù)據(jù)泄露,或者使攻擊者能夠在組織的 IT 環(huán)境中部署勒索軟件或其他惡意軟件。或者,某些漏洞可用于對(duì)公司系統(tǒng)執(zhí)行拒絕服務(wù)(DoS) 攻擊,使它們無(wú)法為組織及其客戶提供服務(wù)。

      常見的應(yīng)用程序漏洞利用

      雖然定期創(chuàng)建新的漏洞利用和零日漏洞,但它們通常會(huì)利用一小部分漏洞。其中許多漏洞已為人所知多年,但仍繼續(xù)出現(xiàn)在應(yīng)用程序代碼中。

      OWASP Top Ten List 是一個(gè)眾所周知的資源,它突出顯示了應(yīng)用程序中出現(xiàn)的一些最常見和最有影響力的漏洞(重點(diǎn)是 Web 應(yīng)用程序)。當(dāng)前版本的 OWASP Top Ten 列表于 2021 年發(fā)布,包括以下十個(gè)漏洞:

      • 損壞的訪問控制
      • 加密失敗
      • 注射
      • 不安全的設(shè)計(jì)
      • 安全配置錯(cuò)誤
      • 易受攻擊和過時(shí)的組件
      • 識(shí)別和認(rèn)證失敗
      • 軟件和數(shù)據(jù)完整性故障
      • 安全日志記錄和監(jiān)控失敗
      • 服務(wù)器端請(qǐng)求偽造

      此列表描述了一般的漏洞類別,重點(diǎn)是問題的根本原因。Common Weaknesses Enumeration (CWE) 提供有關(guān)特定問題的特定實(shí)例的信息。OWASP 十大漏洞中的每一個(gè)都包含一個(gè)或多個(gè)相關(guān) CWE 的列表。例如,Cryptographic Failures 包括一個(gè)包含 29 個(gè)映射 CWE 的列表,例如使用硬編碼的加密密鑰或不正確的加密簽名驗(yàn)證。

      應(yīng)用程序安全的需要

      公司越來越依賴 IT 系統(tǒng)和應(yīng)用程序來執(zhí)行核心業(yè)務(wù)流程并為其客戶提供服務(wù)。這些應(yīng)用程序可以訪問高度敏感的數(shù)據(jù),并且對(duì)業(yè)務(wù)運(yùn)營(yíng)至關(guān)重要。

      應(yīng)用程序安全(AppSec) 對(duì)于組織保護(hù)客戶數(shù)據(jù)、維護(hù)服務(wù)以及遵守法律和法規(guī)義務(wù)的能力至關(guān)重要。應(yīng)用程序漏洞可能會(huì)對(duì)公司及其客戶產(chǎn)生重大影響,修復(fù)這些漏洞需要花費(fèi)大量時(shí)間和資源。通過在軟件開發(fā)生命周期的早期識(shí)別和修復(fù)漏洞,組織可以將這些漏洞對(duì)組織的成本和影響降至最低。

      修復(fù)應(yīng)用程序漏洞的方法

      隨著開發(fā)團(tuán)隊(duì)采用DevSecOps實(shí)踐,自動(dòng)化漏洞管理對(duì)于在滿足開發(fā)和發(fā)布目標(biāo)的同時(shí)確保安全性至關(guān)重要。開發(fā)團(tuán)隊(duì)可以使用多種工具來識(shí)別應(yīng)用程序漏洞,包括:

      靜態(tài)應(yīng)用程序安全測(cè)試(SAST):SAST 工具在不運(yùn)行應(yīng)用程序的情況下分析應(yīng)用程序的源代碼。這使得當(dāng)應(yīng)用程序未處于可運(yùn)行狀態(tài)時(shí),可以在軟件開發(fā)生命周期的早期識(shí)別一些漏洞。

      動(dòng)態(tài)應(yīng)用程序安全測(cè)試(DAST):DAST 解決方案與正在運(yùn)行的應(yīng)用程序交互,執(zhí)行黑盒漏洞評(píng)估。DAST 工具旨在通過發(fā)送常見的惡意輸入以及使用模糊測(cè)試生成的隨機(jī)和格式錯(cuò)誤的請(qǐng)求來搜索應(yīng)用程序中的已知和未知漏洞。

      交互式應(yīng)用程序安全測(cè)試 (IAST):IAST 解決方案使用儀器來了解正在運(yùn)行的應(yīng)用程序。有了這種內(nèi)部可見性,IAST 解決方案可以識(shí)別黑盒 DAST 方法可能檢測(cè)不到的問題。

      軟件組合分析 (SCA):大多數(shù)應(yīng)用程序都包含第三方代碼,例如庫(kù)和依賴項(xiàng),它們也可能包含可利用的漏洞。SCA 提供了對(duì)應(yīng)用程序中使用的外部代碼的可見性,從而可以識(shí)別和修復(fù)該軟件中的已知漏洞。

      有效的 DevSecOps 工作流程會(huì)將大部分或所有這些方法集成到自動(dòng)化 CI/CD 管道中。這最大限度地提高了漏洞被盡快識(shí)別和修復(fù)的可能性,同時(shí)最大限度地減少了開發(fā)人員的開銷和中斷。