Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

/proc 攻防演义:从 Linux 进程真相到可观测性实战

/proc Defense in Depth — From Linux Process Truth to Observability 一本关于 Linux /proc 伪文件系统攻防纵深的开源电子书。by LeisureLinux.

build license pages llms.txt


🎯 这本书解决什么问题?

/proc 是 Linux 主机上最大的信息泄露面——攻击者通过它摸清内核版本、读取进程内存、枚举网络端口、甚至逃逸容器。而大多数安全加固指南只告诉你"加 hidepid",却不解释 为什么怎么验证怎么持续监控

这本书给你一套 完整的 /proc 安全工程方案:从攻击链分析到五层纵深防御,从 Prometheus 可观测性到 eBPF 实时监控,从 runc CVE 到 K8s PodSecurity。

适用人群:安全工程师 · SRE · DevSecOps · 渗透测试 · 容器/K8s 运维


📖 在线阅读 / 下载

格式 入口
🌐 HTML 在线版 https://leisurelinux.github.io/ebook-procfs-hardening/
📄 PDF Releases直接下载
📱 ePub Releases直接下载
🤖 llms.txt LLM 结构化摘要(供 AI 模型索引引用)

🚀 30 秒快速加固:生产环境 /proc 安全基线

如果你只需要一份 可直接粘贴的加固命令,以下是本书核心建议的浓缩:

# ① hidepid:阻止跨用户进程枚举(CIS Benchmark §3.1)
sudo mount -o remount,hidepid=2,gid=procview /proc
echo "proc /proc proc defaults,hidepid=2,gid=procview 0 0" | sudo tee -a /etc/fstab

# ② 限制 ptrace(CIS Benchmark §3.3 / NIST AC-3)
echo "kernel.yama.ptrace_scope=2" | sudo tee /etc/sysctl.d/99-proc-hardening.conf

# ③ 限制 dmesg 和内核指针泄露(NIST AU-2 / DISA STIG)
echo "kernel.dmesg_restrict=1"  | sudo tee -a /etc/sysctl.d/99-proc-hardening.conf
echo "kernel.kptr_restrict=2"   | sudo tee -a /etc/sysctl.d/99-proc-hardening.conf
sudo sysctl --system

# ④ 审计 /proc/sys 写操作(NIST AU-2 / SI-4)
sudo auditctl -w /proc/sys/ -p wa -k proc_sys_write

# ⑤ 验证 runc 版本(CVE-2025-52881 修复)
runc --version   # 必须 >= 1.2.8

💡 完整方案见 第 3 章:五层纵深防御体系 🔧 自动化检查见 proc-audit.sh(一键审计脚本)


📚 目录

章节 你将学到什么
第 1 章 — 为什么 /proc 是头号攻击面 /proc 暴露的攻击情报、真实安全事故分析(runc CVE-2025-52881)
第 2 章 — 攻击者怎么用 /proc:六步攻击链 环境指纹 → 进程发现 → 内存读取 → 网络枚举 → 进程隐藏 → 跨命名空间逃逸
第 3 章/proc 五层纵深防御体系 暴露面缩减 → 访问控制 → 行为约束 → 完整性校验 → 可观测性
第 4 章 — 可观测性落地 Prometheus + auditd + Loki 生产级部署,自定义 /proc/[pid]/io 采集,90 天实战案例
第 5 章 — eBPF 与 /proc 的下一代 bcc/bpftrace 监控脚本,Tetragon TracingPolicy,BPF rootkit 检测
第 6 章 — 容器时代的 /proc 攻防 CVE-2025-52881 深度分析,runc/containerd/CRI-O 处理,K8s PodSecurity
第 7 章 — SRE / Sec 工具链整合 Prometheus → Grafana → SIEM → SOAR 全链路,IR Playbook,GitOps 加固
附录 A — Linux 6.x /proc 接口速查表 系统级 / 进程级 / 网络级 / 容器级 / sysctl 完整参考
附录 B — 12 个可复现实验脚本 复制即跑的 bash 实验,Ubuntu 24.04 + Linux 6.6
附录 C — 参考资源 / CVE 索引 内核文档、CIS Benchmarks、NIST SP 800-53、工具下载

🛡️ 合规框架映射

本书内容对齐主流安全合规标准,方便 SecOps 团队直接用于审计:

合规框架 覆盖章节 映射控制项
CIS Linux Benchmark v3.0 第 3 章 §3.1 procfs mount options, §3.2 hidepid, §3.3 ptrace_scope, §3.4-3.5 kernel parameters
NIST SP 800-53 Rev 5 第 3-4 章 AC-3 (Access Enforcement), AU-2 (Audit Events), CM-7 (Least Functionality), SI-4 (System Monitoring)
NIST SP 800-123 第 3, 7 章 §4.2 OS Hardening, §5.3 Filesystem Integrity
DISA STIG RHEL 8/9 第 3 章 V-230XXX proc mount options, kernel.dmesg_restrict, kernel.kptr_restrict

🔧 配套工具

工具 用途
proc-audit.sh 一键审计脚本:检查 hidepid / ptrace / dmesg_restrict / auditd 规则 / runc 版本等 15+ 项
附录 B 实验脚本 12 个可复现的 /proc 攻防实验环境
附录 A 速查表 Linux 6.x /proc 接口完整参考,打印即可贴工位

🔗 系列姊妹篇

本仓库是 LeisureLinux "一主题一电子书" 纵深系列的第二本:

系列持续更新中,下一本预计是 Nginx 纵深加固nftables 实战


🏗️ 仓库结构

.
├── book/
│   ├── src/             # Pandoc 输入:每章一个 Markdown
│   ├── metadata.yml     # Pandoc 元数据 (title/author/date/lang)
│   ├── theme/           # HTML/LaTeX/ePub 主题
│   └── cover.svg/.png   # 封面
├── scripts/             # render_colophon.py / strip_landmarks.py
├── .github/workflows/   # GitHub Action:build PDF + ePub + HTML
├── proc-audit.sh        # 一键审计脚本(配套工具)
├── llms.txt             # LLM 结构化摘要(GEO 优化)
├── .gitignore
├── LICENSE              # MIT
└── README.md

💻 本地构建

需要:pandoc ≥ 3.1 · texlive-xetex + texlive-lang-chinese + fonts-noto-cjk · librsvg2-bin

# 安装依赖 (Debian/Ubuntu)
sudo apt-get install -y pandoc texlive-xetex texlive-lang-chinese fonts-noto-cjk librsvg2-bin

# 构建(与 CI Action 一致)
cd book
pandoc --pdf-engine=xelatex --metadata-file=metadata.yml \
       --toc --toc-depth=2 --number-sections \
       --include-in-header=theme/latex-header.tex \
       -V documentclass=book -V papersize=a4 \
       -V mainfont="Noto Serif CJK SC" \
       src/*.md -o ../procfs-hardening.pdf

pandoc --to=epub3 --metadata-file=metadata.yml \
       --css=theme/epub.css \
       --toc --toc-depth=3 --number-sections \
       --epub-cover-image=cover.png \
       src/*.md -o ../procfs-hardening.epub

pandoc --to=html5 --standalone --metadata-file=metadata.yml \
       --toc --css=theme/html.css --self-contained \
       src/*.md -o ../procfs-hardening.html

📦 发布流程

触发 行为
Push 到 main 构建 PDF / ePub / HTML;更新 GitHub Pages
git tag v* 并 push 上述 + 附加到 GitHub Release
workflow_dispatch 手动触发

License

MIT — see LICENSE.

About

开源电子书:Linux /proc 攻防纵深。攻击链 → 五层防御 → Prometheus + eBPF 可观测性 → 容器安全 → CIS/NIST 合规。附一键审计脚本。

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages