使用Falcosidekick將執行時安全整合到現有環境中

danny_2018發表於2023-10-27

如果你希望將執行時安全整合到現有環境中,Falco[1]是一個明顯的選擇。Falco 是一個由 CNCF 託管的開源專案,為雲端、容器和 Kubernetes 工作負載提供實時威脅檢測。Falco 已經被全球一些最大的公司採用,下載量超過 8000 萬次。

然而,許多 Falco 使用者很早就發現,Falco 的預設事件輸出相當有限。出廠時,Falco 只能將輸出傳送到五個不同的端點:syslog、stdout、stderr 以及 gRPC 或 HTTPS 端點。

雖然這些輸出可能足以讓你開始使用,但大多數從業人員希望將 Falco 與他們已經使用的工具整合。這就是Falcosidekick[2]的用武之地。

Falcosidekick 是 Falco 的伴侶(即副手;))專案,允許將 Falco 事件轉發到 60 個不同的服務(不斷增加中),使從業人員能夠使用他們已經使用的工具監控和響應 Falco 事件。

例如,如果你希望立即收到可疑活動的通知,你可以將 Falco 事件轉發到諸如 Slack 或 Telegram 等聊天程式,警報平臺如 PagerDuty 或 AlertManager,或者當然是電子郵件。為了減少噪音,你可以明確設定通知的級別,例如,警告級別的事件可能透過電子郵件傳送,而關鍵或更高階別的事件則透過聊天傳送或直接傳送到警報平臺。

如果你想以程式設計方式處理某些事件,Falcosidekick 與許多不同的服務整合,包括 AWS Lambda、GCP Cloud Run 和 Cloud Functions、或者 Knative 等函式作為服務平臺。警報也可以傳送到訊息佇列,如 Amazon SNS、Apache Kafka 或 RabbitMQ。這些整合提供了幾乎無限的可能性,用於構建事件響應系統。

例如,假設你在 Kubernetes 叢集上執行 Falco,並且 Falco 發現有人執行了不屬於容器基礎映象的程式。在這種情況下,你可以選擇讓 Falcosidekick 將該事件傳送到 AWS Lambda。Lambda 將接收警報並執行一個函式,給包含可疑容器的 Pod 應用一個標籤,導致該 Pod 被停用並生成一個新的 Pod 來替代它。

Falcosidekick 還可以將事件傳送到傳統的監控和日誌平臺,如 Elasticsearch、Prometheus、Grafana 或 Datadog(以及其他許多平臺)。這些平臺可以用於集中處理和處理警報,以便你可以發現趨勢或異常。

除了檢視實際的 Falco 事件之外,Falcosidekick 還提供了自身效能的指標。還有一些服務端點可用於檢查 Falcosidekick 是否正在執行以及其整體健康狀況。

Falcosidkick 具有自己的基於 Web 的使用者介面,可以快速檢視你的 Falco 環境。此介面提供了有關 Falcosidekick 效能指標的報告,以及與連線的 Falco 例項報告的事件的動態。

如果你想歸檔 Falco 事件,Falcosidekick 可以將它們傳送到 Redis 或各種物件儲存服務,如 AWS S3 或 Google Cloud Storage。

Falcosidekick 作為守護程式執行,可以透過多種機制輕鬆安裝,包括作為 Docker 容器安裝,或透過 Helm 安裝。使用 Helm,你可以在安裝 Falco 時安裝 Falcosidekick,或者稍後將其新增到你的環境中。從架構角度來看,Sidekick 部署在兩個 Pod 中以確保高可用性,一個 Sidekick 例項可以接收來自多個 Falco 環境的事件。

有這麼多不同的選項,Falcosidekick 為將 Falco 的執行時安全能力整合到你現有的工具中開啟了無數的可能性。如果你想親自嘗試 Falcosidekick,請檢視Thomas 的部落格文章[3],瞭解如何將 Falcosidekick 與 Slack 整合。如果你想參與 Falco 或 Falcosidekick 的開發,請加入我們在Kubernetes Slack[4]的#Falco 頻道進行交流,或檢視Github 倉庫[5]。

來自 “ CNCF ”, 原文作者:MIKE COLEMAN;原文連結:https://mp.weixin.qq.com/s/tFoSpysuWVBbK3r1-ULU5Q,如有侵權,請聯絡管理員刪除。

相關文章