Crowdsec:一款面向Linux的現(xiàn)代化協(xié)作式大型多人防火墻
譯文【51CTO.com快譯】介紹
CrowdSec是一款大型多人防火墻,旨在通過(guò)服務(wù)器端代理保護(hù)互聯(lián)網(wǎng)上敞開(kāi)的Linux服務(wù)器、服務(wù)、容器或虛擬機(jī)。它受Fail2Ban的啟發(fā),旨在成為這款入侵防御工具的現(xiàn)代化協(xié)作版本。
CrowdSec免費(fèi)開(kāi)源(采用MIT許可證),源代碼發(fā)布在GitHub上。它使用行為分析系統(tǒng),根據(jù)日志來(lái)確定是否有人企圖攻擊您。如果您的代理檢測(cè)到這類攻擊,會(huì)處理違規(guī)的IP,并發(fā)送加以審查。如果該信號(hào)通過(guò)審查過(guò)程,該IP被重新分發(fā)給共享相似技術(shù)配置文件的所有用戶,讓他們免受該IP的侵襲。
目的是利用群體的力量來(lái)創(chuàng)建實(shí)時(shí)IP信譽(yù)數(shù)據(jù)庫(kù)。至于攻擊您計(jì)算機(jī)的IP,您可以選擇以自己覺(jué)得合適的任何方式對(duì)付威脅。最終,CrowdSec利用社區(qū)的力量創(chuàng)建了一個(gè)極其準(zhǔn)確的IP信譽(yù)系統(tǒng),惠及其所有用戶受益。
在創(chuàng)始人看來(lái)很顯然,開(kāi)源將是CrowdSec的主要支柱之一。該項(xiàng)目的創(chuàng)始人從事開(kāi)源項(xiàng)目已有幾十年,他們不僅追隨開(kāi)源,確切地說(shuō)堅(jiān)定地信仰開(kāi)源。他們認(rèn)為,社區(qū)是對(duì)付我們面臨的大規(guī)模黑客攻擊的關(guān)鍵,而開(kāi)源是創(chuàng)建社區(qū),并讓人們?yōu)轫?xiàng)目貢獻(xiàn)知識(shí),最終使該項(xiàng)目變得更出色更安全的有力手段。
該解決方案最近迎來(lái)了1.x版本,帶來(lái)了架構(gòu)上的重大變化:引入了本地REST API。
CrowdSec的工作原理
CrowdSec用Golang編寫(xiě),目的在于在復(fù)雜的現(xiàn)代架構(gòu)(比如云、lambda和容器)上運(yùn)行。為此,它是“分離的”,這意味著您可以“在這里檢測(cè)”(比如在數(shù)據(jù)庫(kù)日志中)和“在那里緩解”(比如在防火墻或rproxy中)。
該工具在內(nèi)部使用漏桶算法(leaky bucket),以便嚴(yán)格控制事件。場(chǎng)景用YAML編寫(xiě),盡可能簡(jiǎn)單易讀,又不犧牲精細(xì)度。推理引擎讓您可以從鏈桶(chain bucket)或元桶(meta-bucket)獲取洞察力,這意味著如果多個(gè)桶(比如Web掃描、端口掃描和登錄嘗試失敗)溢出到一個(gè)“元桶”中,您可以觸發(fā)“針對(duì)性攻擊”緩解措施。
激進(jìn)的IP使用互聯(lián)網(wǎng)保鏢(bouncer)來(lái)處理。CrowdSec Hub提供了現(xiàn)成的數(shù)據(jù)連接器、互聯(lián)網(wǎng)保鏢(比如ginx、PHP、Cloudflare或Netfilter)和場(chǎng)景,以阻止不同類別的攻擊。這些保鏢可通過(guò)多種方式來(lái)緩解威脅。
Crowdsec可在Captcha之類的保鏢上工作,限制可適用的權(quán)限、多因子身份驗(yàn)證、遏制查詢,或者需要時(shí)激活Cloudflare攻擊模式。通過(guò)輕量級(jí)的可視化界面和強(qiáng)大的Prometheus可觀察性,您可以了解本地發(fā)生的情況(以及發(fā)生的地方)。
眾包安全
盡管Crowdsec軟件目前看起來(lái)像是改進(jìn)的Fail2Ban,但該項(xiàng)目的目的是利用群體的力量,創(chuàng)建高度準(zhǔn)確的IP信譽(yù)數(shù)據(jù)庫(kù)。CrowdSec攔截特定IP時(shí),觸發(fā)的場(chǎng)景和時(shí)間戳被發(fā)送到我們的API,接受檢查,并添加到全球不良IP數(shù)據(jù)庫(kù)中。
雖然我們已經(jīng)在向社區(qū)重新分發(fā)阻止名單,但計(jì)劃一旦處理了,其他先決代碼行就真正改善這一方面。網(wǎng)絡(luò)已經(jīng)發(fā)現(xiàn)了超過(guò)130000個(gè)IP(每天在更新),能夠?qū)⑵渲械募s10%(13000個(gè))重新分發(fā)給我們的社區(qū)成員。
我們的愿景是,一旦CrowdSec社區(qū)足夠大,我們就會(huì)實(shí)時(shí)生成最準(zhǔn)確的IP信譽(yù)數(shù)據(jù)庫(kù)。這種全球信譽(yù)引擎加上本地行為評(píng)估和緩解,有望讓許多企業(yè)可以以很低的成本獲得更嚴(yán)格的安全。
案例探究
以下是表明CrowdSec本領(lǐng)的兩個(gè)例子:
案例1
一家保護(hù)客戶免受DDoS攻擊的公司創(chuàng)建了依賴Fail2Ban的DDoS緩解策略。當(dāng)其中一個(gè)客戶受到涉及7000臺(tái)機(jī)器的僵尸網(wǎng)絡(luò)的攻擊時(shí),CrowdSec能夠攝取所有日志,并成功阻止了僵尸網(wǎng)絡(luò)中超過(guò)95%的機(jī)器,在不到五分鐘的時(shí)間內(nèi)有效地緩解了攻擊。不妨比較一下,要應(yīng)對(duì)這種攻擊,F(xiàn)ail2Ban將需要每分鐘處理幾千條日志,這頗具挑戰(zhàn)性,將花費(fèi)近50分鐘。
案例2
一家電子商務(wù)公司正遭到大規(guī)模信用卡填塞攻擊。攻擊者正向支付網(wǎng)關(guān)發(fā)送垃圾郵件,并使用唯一的IP地址測(cè)試成千上萬(wàn)不同的信用卡資料。這家公司安裝CrowdSec后,即可掃描所有日志,在短短幾分鐘內(nèi)阻止入侵,而不用修改所有應(yīng)用程序以試圖檢測(cè)攻擊。
原文標(biāo)題:Introducing Crowdsec: A Modernized, Collaborative Massively Multiplayer Firewall for Linux,作者:Brittany Day
【51CTO譯稿,合作站點(diǎn)轉(zhuǎn)載請(qǐng)注明原文譯者和出處為51CTO.com】





















