ibraahiimtech/linux-soc-labs

GitHub: ibraahiimtech/linux-soc-labs

基于 MITRE ATT&CK 框架的 Linux 安全运营实战学习仓库,通过模拟攻击行为并讲解标准 Linux 工具下的检测与狩猎方法来帮助初学者积累 SOC 分析师实操经验。

Stars: 0 | Forks: 0

# Linux SOC Labs 实践导向的 Linux 安全调查工作 —— 目标是在英国获取初级 SOC 工程师 / 云安全分析师职位。 本仓库记录了我基于结构化、实验室环境下的练习,这些技术是真实 SOC 分析师在 Linux 主机上用于基线建立、威胁狩猎和分流的实际方法。每次实验都会植入一个真实的攻击者行为,然后逐步讲解如何仅使用标准 Linux 工具来检测它。 **目标环境:** Ubuntu 24.04.1 LTS 实验虚拟机 **调查框架:** MITRE ATT&CK **工作流:** 枚举 → 过滤 → 调查 → 文档记录 ## 精选调查 ### 🔍 通过已删除的二进制文件检测无文件恶意软件 通过运行二进制文件然后将其从磁盘删除,模拟了内存驻留恶意软件。通过显示 `(deleted)` 的 `/proc//exe` 符号链接检测到了正在运行的进程。这是 Linux 上最强的无文件恶意软件指标之一。 → [week01/day03-processes/](week01/day03-processes/) **MITRE:** T1620 — Reflective Code Loading 🔍 针对攻击者 7 个隐藏位置的持久化狩猎 植入了一个恶意的 cron 任务、一个 `.bashrc` 后门和一个流氓 systemd 服务(`system-update-check.service`),然后构建了检测逻辑来捕获每一个持久化项。使用 `dpkg -S` 验证了该 systemd 服务不属于任何软件包。 → [week01/day02-persistence/](week01/day02-persistence/) **MITRE:** T1053.003 (Cron), T1543.002 (systemd), T1546.004 (Shell config) 🔍 实时进程分流工作流 使用 `/proc/` 对任何可疑 PID 进行六步深入分析:命令行、二进制路径、工作目录、网络连接、父进程和启动时间。捕获了一个伪造的挖矿木马(持续占用 99% CPU)、一个监听 4444 端口的 Metasploit 风格监听器,以及上面提到的无文件恶意软件示例。 → [week01/day03-processes/day03-walkthrough.md](week01/day03-processes/day03-walkthrough.md) **MITRE:** T1059 (Command-line execution), T1496 (Resource hijacking) 仓库结构 使用的技术和工具 Linux 内部机制 - 分析 `/etc/passwd` 和 `/etc/shadow` 以审计 UID 0、检测空密码和账户老化 - 使用 `find / -perm -4000` 枚举 SUID 二进制文件并结合 GTFOBins 查询 - 使用 `/proc//` 文件系统进行实时进程取证 - 使用 `journalctl` 重构用户管理时间线 持久化检测 - Cron、systemd unit 文件、shell 启动文件、SSH `authorized_keys`、PAM、`/etc/ld.so.preload`、MOTD 脚本 - 交叉检查软件包数据库 (`dpkg -S`) 以识别手动放置的服务文件 进程调查 - 使用 `ps aux --sort=-%cpu` 查找挖矿木马特征 - 使用 `ss -tunap` 枚举监听器和连接 - 过滤 `/proc/*/exe` 以查找 `/tmp/`、`/var/tmp/`、`/dev/shm/` 路径以及 `(deleted)` 标记 - 使用 `lsof -p` 和 `pstree -p` 进行关系映射 Bash 与脚本编写 - 结合使用 `grep`、`awk`、`sort`、`uniq` 的管道进行日志分析 - 具有清晰部分和部分标记的可重用检测脚本 - 流重定向 (`> file 2>&1`)、后台任务、heredoc 我的学习心得 - **大多数“异常”都是良性的。** 第一天的 `tempadmi` 谜团最终被证明是账户重命名后截断的用户名,通过交叉比对 `passwd`、`lastlog` 和 `journalctl` 得以解决。真实的 SOC 工作主要是高效地排除可能性。 - **没有任何单一命令能捕获所有类型的攻击。** 第三天植入的三个场景需要三种不同的检测技术。多角度的狩猎才是核心意义所在。 - **枯燥的名字往往掩盖了攻击。** “system-update-check.service”比“evil_backdoor.service”更危险,因为分析师常常会一眼带过。务必对照软件包数据库进行验证。 - **Bash 包含保留变量。** 在处理进程树时遇到了 `PPID: readonly variable`;记录了相应的修复方法(`PARENT_PID`),以便该脚本可以重复使用。 路线图 本仓库是 6 个月结构化课程的一部分: | 阶段 | 状态 | 重点 | |---|---|---| | 第 1 个月 — Linux 与 Bash | 进行中 | 审计、持久化、进程、日志分析、系统强化 | | 第 2 个月 — 网络基础 | 即将开始 | TCP/IP、Wireshark、IDS 基础 | | 第 3 个月 — Azure 基础 | 即将开始 | Entra ID、Defender for Cloud、系统强化 | | 第 4 个月 — Sentinel 与 KQL | 即将开始 | 检测规则编写、工作簿、狩猎查询 | | 第 5 个月 — Defender XDR | 即将开始 | 端点检测、Logic Apps 自动化 | | 第 6 个月 — IR 与求职准备 | 即将开始 | 威胁建模、完善作品集、面试 | 配套仓库: - [cloud-soc](https://github.com/ibraahiimtech/cloud-soc) — Azure / Sentinel / KQL 相关工作 - [networking-fundamentals](https://github.com/ibraahiimtech/networking-fundamentals) — pcap 分析与协议相关工作 关于我 我是一名位于英国的网络安全初学者,目前正在进行一项结构化的实践项目,同时进行正规学习。我的目标是在泰晤士河谷 / 伦敦地区寻找初级 SOC 工程师和云安全分析师的职位。 欢迎进行入门/初级职位的交流:随时可以通过我的 GitHub 主页与我联系。
标签:BurpSuite集成, 安全实验室, 安全运营, 应用安全, 扫描框架