FCSC-FR/couic
GitHub: FCSC-FR/couic
一款基于 eBPF/XDP 的轻量级网络过滤工具,通过 REST API 管理黑白名单,专门用于防御应用层 DDoS 攻击。
Stars: 26 | Forks: 2
## 简介
**Couic** `[kwɪk]` 是一个轻量级 eBPF 驱动的网络过滤解决方案,专门用于防御 **第 7 层(应用层)DDoS 攻击**。
它使用 [XDP](https://en.wikipedia.org/wiki/Express_Data_Path) 附加到网络接口,然后暴露 HTTP REST API 来管理黑名单和白名单。
**Couic** 自 2021 年投入生产以来,每年都在演进,采用不同的形式来适应 [France Cybersecurity Challenge](https://fcsc.fr/)🦕 基础设施的需求。这个 [CTF](https://en.wikipedia.org/wiki/Capture_the_flag_(cybersecurity) 竞赛每年由 [ANSSI](https://cyber.gouv.fr/offre-de-service/formations-entrainement-et-decouverte-des-metiers/challenges/france-cybersecurity-challenge/)(法国国家网络安全机构)组织,需要高度防护以应对 CTF 参与者造成的平台过载以及 DDoS 攻击,特别是在第 7 层。
该程序旨在补充托管提供商实施的 L3/L4 保护措施,专注于绕过下层防御的**应用层威胁**。它的目标是尽可能简单高效,并与服务器上的现有过滤解决方案(iptables、ipsets、nftables 等)协同工作。
**Couic** 在 SSTIC2024 研讨会[^1]上首次亮相。
## 功能特性
- 支持 Linux 5.11+
- 支持 **IPv4** 和 **IPv6** CIDR
- 使用 set 文件进行**静态配置**
- 通过 JSON API 进行**动态配置**
- 通过提供的 CLI 实现**易于使用**
- 感谢 IGNORE 和 DROP 过滤策略的**防锁定系统**
- API 添加的条目**自动过期**
- **标签**功能便于条目管理
- 通过 Prometheus exporter 端点**实时监控**网络和 eBPF 程序性能
- 通过 webhook 通知进行**报告**过滤活动
- Couic 分布式实例之间的**简单同步**
- **高性能**数据包处理
## 项目架构
该项目提供了一个可编程防火墙,围绕两个核心组件构建,并提供辅助工具作为集成示例:

| 组件 | 类型 | 用途 | 状态 |
|-----------|------|---------|--------|
| `couic` | 核心 | 带 REST API(通过 `Unix Domain Socket`)的 eBPF 过滤守护进程 | 公开 |
| `couicctl` | 核心 | 命令行管理工具 | 公开 |
| `couic-report` | 辅助 | 遥测聚合和通知(Discord) | 公开 |
| `couicmon` | 辅助 | 基于日志的自动规则注入 | 即将推出 |
| `client` | 库 | REST API 客户端实现 | 公开 |
| `common` | 库 | Couic 组件的共享类型和定义 | 公开 |
## 文档
综合文档(包括入门、管理和参考部分)可在 [Couic 文档](https://couic.net) 中找到。
## 许可证
本项目根据您的选择,授权采用 [Apache License, Version 2.0](LICENSE-APACHE) 或 [MIT](LICENSE-MIT)。
[^1]:
在论文(法语)中了解更多关于 Couic 的故事(以前叫 Hodor):[SSTIC2024 - Retour d'expérience sur l'organisation d'un CTF :
Rétrospective de 5 ans de FCSC](https://www.sstic.org/media/SSTIC2024/SSTIC-actes/ctf_fcsc/SSTIC2024-Article-ctf_fcsc-thuau_iooss_court_jean_olivier_claverie.pdf)
标签:AGPLv3 许可证, DDoS防护, Docker镜像, Layer 7, REST API, XDP, 内核模块, 安全资源, 应用层安全, 文档结构分析, 日志审计, 系统防护, 网络安全, 网络过滤, 自定义请求头, 通知系统, 防火墙, 隐私保护, 高性能网络
