InnerWarden/killchain
GitHub: InnerWarden/killchain
基于 eBPF 和 syscall 位掩码的内核级攻击链实时检测工具,通过累积进程行为特征匹配反弹 Shell、代码注入等八种攻击模式并支持前置链预警。
Stars: 0 | Forks: 0
# killchain
**9 位中的 8 种攻击模式。** 使用 syscall 位掩码和 eBPF 进行内核级杀伤链检测。
## 工作原理
每个 syscall 类别映射到一个 bit 标志。当进程执行 syscall 时,标志会按 PID 累积。当累积的标志与已知的攻击模式匹配时,我们便实现了一次检测。
```
Bit 0: socket() — network setup
Bit 1: dup2(stdin) — FD redirection
Bit 2: dup2(stdout) — FD redirection
Bit 3: dup2(stderr) — FD redirection
Bit 4: execve(/bin/sh) — shell spawn
Bit 5: connect() — outbound connection
Bit 6: ptrace() — process injection
Bit 7: mprotect(RWX) — memory manipulation
Bit 8: memfd_create() — fileless execution
```
## 攻击模式
| 模式 | 位 | MITRE ATT&CK |
|---------|------|-------------|
| **Reverse Shell** | socket + dup2(0,1,2) + execve | T1059 |
| **Bind Shell** | socket + bind + listen + execve | T1059 |
| **代码注入** | ptrace + mprotect(RWX) | T1055 |
| **漏洞利用 → Shell** | mprotect(RWX) + execve | T1203 |
| **注入 → Shell** | ptrace + execve | T1055 |
| **漏洞利用 → C2** | mprotect(RWX) + socket + connect | T1071 |
| **完整漏洞利用** | mprotect(RWX) + socket + dup2 + execve | T1203+T1059 |
| **数据渗出** | open + socket + connect (大量读取) | T1041 |
## 前置链检测
当进程累积了 2 个或更多 bit 但未完成完整模式时,跟踪器还会发出**前置链警告**。这可以在攻击完成执行之前捕获正在进行中的攻击。
## 安装
```
[dependencies]
killchain = { git = "https://github.com/InnerWarden/killchain" }
```
## 架构
```
eBPF (kernel) → PID_CHAIN bitmap per process
↓ events via Redis Streams
killchain (userspace) → pattern matching + enrichment → incidents
```
[InnerWarden](https://innerwarden.com) 安全生态系统的一部分。
标签:AMSI绕过, Cloudflare, Docker镜像, Go语言工具, Hpfeeds, IP 地址批量处理, MITRE ATT&CK, Redis, Rust, 位掩码, 内核级监控, 反弹Shell, 可视化界面, 威胁检测, 安全渗透, 攻击链检测, 数据渗透, 无文件执行, 系统调用, 网络安全, 网络流量审计, 行为检测, 逆向Shell, 通知系统, 隐私保护