surajs-sudo/SSH-Incident-Response-Lab

GitHub: surajs-sudo/SSH-Incident-Response-Lab

一个模拟SSH入侵事件的综合实验指南,涵盖日志取证分析、PCAP流量生成和系统加固全流程。

Stars: 1 | Forks: 0

# SSH 事件响应与系统加固综合指南 ## 目标 模拟安全网络环境,分析历史 SSH 认证日志中的恶意活动,生成网络流量取证数据,并执行事后系统加固和数据脱敏协议。 ## 第一阶段:取证数据生成与日志分析 初始阶段包括解析原始系统日志以识别未授权访问尝试,并生成用于取证分析的真实数据包捕获 (PCAP) 文件。 ### 日志提取 从 Linux 跳板机中提取了针对 SSH 服务(**端口 22**)的原始认证日志。 ### 流量合成 使用 **Scapy** 库开发并执行了一个自定义 Python 脚本。该脚本解析原始日志文本,提取源 IP 和目的 IP 地址,并将 syslog 数据封装到 UDP 数据包中,从而生成了一个取证 PCAP 文件。 ### 网络协议分析 - 将生成的 PCAP 导入 **Wireshark** 进行深度数据包检测。 - 识别出 **21:11:16** 时来自外部 IP 的无效用户账户(攻击者)的**密码认证失败**事件。 - 识别出 **21:18:10** 时来自相同外部 IP 的有效系统用户(`[default_user]`)的随后的**成功登录事件**。 ### 取证结论 失败尝试与成功尝试之间约 **七分钟的时间差** 强烈表明这是**人工手动访问**,而非自动化的暴力破解攻击。 ## 第二阶段:系统隔离与服务加固 在事件分析之后,立即采取了补救措施以隔离受感染的虚拟机并保护监听服务。 ### 网络隔离 修改了虚拟机监控程序的网卡设置,将环境从 **Bridged** 模式转换为 **NAT** 模式。 这成功地将虚拟机隐藏在主机的 IP 路由之后,阻止了进一步的未授权外部入站连接。 ### 服务终止 终止活动的 SSH 守护进程以关闭端口 22,并断开所有残留的持久连接: ``` sudo systemctl stop ssh ``` ### 永久禁用 将 SSH 服务从系统启动序列中移除,以防止服务在未来的重启中自动启动: ``` sudo systemctl disable ssh ``` ## 第三阶段:身份与访问管理 (IAM) 为了进一步保护系统,默认凭据和标准用户名被系统性清除,并替换为自定义的安全管理员账户。 ### 超级用户激活 为锁定的 `root` 账户临时设置了密码,以便在没有活跃用户后台进程干扰的情况下进行深度系统修改: ``` sudo passwd root ``` ### 账户迁移 直接登录 root 环境以覆盖默认系统身份。执行以下命令将用户、组和主目录重命名为加固标准名称(例如 `sec_admin`): ``` usermod -l sec_admin [default_user] groupmod -n sec_admin [default_user] usermod -d /home/sec_admin -m sec_admin ``` ### 凭据加固 为新建立的 `sec_admin` 账户分配新的、经过加密的安全密码。 ### 权限验证 以新用户身份重新登录,并成功验证了文件所有权的连续性和管理权限: ``` ls -la ~ sudo whoami ``` ## 第四阶段:操作安全 (OPSEC) 与数据清洗 在发布此事件报告及相关取证数据之前,执行了严格的数据清洗流程,以确保零泄露私有主机标识符。 ### 数据擦除 利用文本处理工具将原始日志和 Python 脚本中的真实私有 IP 地址和个人 Windows 主机名替换为标准的文档占位符: ``` Attacker: 203.0.113.10 Server: 10.0.0.50 ``` ### 取证数据重生成 使用经过清洗的新日志文件重新执行 Python PCAP 生成脚本,生成了一个 **100% 干净、可公开分享** 的网络捕获文件。 ### 视觉遮挡 对原始截图应用了严格的**黑框遮挡**处理,完全掩盖了旧 IP 地址和个人配置文件路径,以维持专业的 OPSEC 标准。
标签:Burp Suite 替代, BurpSuite集成, Linux安全管理, PCAP, Python自动化, Scapy, SSH安全, Wireshark, 句柄查看, 库, 应急响应, 应用安全, 数字取证, 暴力破解防御, 端口安全, 系统加固, 网络安全, 网络隔离, 自动化脚本, 蜜罐/模拟攻击, 逆向工具, 隐私保护