文档网络安全教程【免费下载链接】Learn-Web-HackingStudy Notes For Web Hacking / Web安全学习笔记项目地址https://gitcode.com/gh_mirrors/le/Learn-Web-Hacking点击查看免费下载导读本指南以开源仓库 Learn-Web-Hacking 中「Linux 内网渗透 — 痕迹清理」一节为核心骨架展开系统梳理 Linux 主机入侵后清理操作痕迹、登录痕迹与日志文件的方法论。读者将掌握历史命令消除、系统日志清除/篡改、SSH 与 vim 操作痕迹抹除、磁盘级覆写删除shred/dd/wipe等可落地的实战命令并理解「痕迹无法彻底清除」的攻防边界与安全注意事项配合仓库中 信息收集 与 应急响应 的对照内容可用于授权渗透测试与红队演练中的痕迹管理环节。历史命令清理Shell 的历史记录是入侵后最容易被取证的痕迹之一。在 Bash 等交互式 Shell 中用户执行的每一条命令都会追加写入历史文件默认为~/.bash_history并且当前会话的输入会缓存在内存中随时可被history命令调出。清理历史命令可以从环境变量与进程两个层面入手。关闭历史记录的环境变量在一行中同时注销多个与历史记录相关的环境变量使当前会话不再记录任何命令unset HISTORY HISTFILE HISTSAVE HISTZONE HISTORY HISTLOG; export HISTFILE/dev/null;HISTFILE历史记录持久化到的文件路径设为/dev/null后命令不再落盘HISTSIZE/HISTFILESIZE控制内存与文件中保存的历史条目数量可一并设为 0HISTCONTROL/HISTIGNORE控制重复条目与忽略匹配模式如HISTCONTROLignorespace可让以空格开头的命令不入历史。由于环境变量对当前进程生效该命令必须在进入目标 Shell 会话后立即执行才有效。仓库的 应急响应文档 从防御视角给出了三种对应手法kill bash process ID杀死 Shell 进程使其不落盘、set o history关闭当前会话的历史记录功能、unset HISTFILE清除历史记录相关环境变量可作为攻击侧清理与防御侧检测的对照清单。直接终止当前 Shellkill -9 $$$$为当前 Shell 的 PID。直接以kill -9强杀 Shell 进程可避免退出时的正常 flush 流程将内存中的历史条目写入~/.bash_history。这种做法速度快、不留正常退出记录但会显得异常可能被具备进程监控的环境发现。清空会话历史history -chistory -c只清空当前会话内存中的历史列表历史文件~/.bash_history中的旧内容依然存在必须配合删除或截断文件操作。同理history -r可重新从文件载入历史history -w会把当前内存历史写回文件——防御与取证场景下这些命令同样用于恢复被清空的历史。通过 HISTSIZE 归零在配置层面直接将历史容量设置为 0HISTSIZE0当HISTSIZE为 0 时会话不再保存任何历史条目。该设置写入~/.bashrc等启动脚本可持久生效但修改配置文件本身也会留下篡改痕迹通常仅用于临时会话。清除与修改日志文件Linux 的系统日志集中存放于/var/log/目录是取证分析的核心数据源。仓库的 应急响应 — Linux 日志分析 一节明确了各日志文件的取证价值痕迹清理需要按「先了解日志记录内容再针对性清除」的顺序执行。关键日志文件清单与取证含义日志文件取证含义/var/log/btmp记录失败的登录尝试如 SSH 爆破、密码错误lastb命令读取/var/log/lastlog记录所有用户最近一次登录信息lastlog命令读取/var/log/wtmp记录登录进入、退出、数据交换、关机与重启事件last命令读取/var/run/utmp记录当前在线登录用户信息users、who -a命令读取/var/log/secure记录系统登录与权限相关事件pop3/ssh/telnet/ftp 等访问/var/log/message在部分发行版中承担类似职责上表中的日志含义与last、lastlog、lastb、users、who等查看命令与仓库 Linux 信息收集 一节中的描述相互印证攻击者既通过这些文件做信息收集也必须在撤退时处理同一批文件。清除手法直接删除或清空对应文件是最简单的方式# 清空日志内容保留文件避免触发日志文件消失告警 /var/log/btmp /var/log/lastlog /var/log/wtmp /var/run/utmp /var/log/secure /var/log/message需要注意部分文件被进程持续占用如utmp常被登录系统进程持有直接清空可能不影响当前已写入的内存缓冲需结合重启或杀死相关进程更隐蔽的做法是选择性删除单条记录但wtmp/utmp等为二进制格式记录结构体逐条抹除需要专业工具last类命令的显示会暴露时间线断裂针对 SSH 登录日志也可通过sed等工具按 IP 或时间范围过滤重写日志文件保留前后记录以维持时间线完整现代 systemd 发行版中日志由journald管理/var/log/journal/仅清空传统文本日志并不完整可考虑journalctl --vacuum-time1s等手段但该操作同样会产生明显异常。仓库 加固检查 — Linux 一节将/var/log/messages、/var/log/secure、/var/log/cron、/var/log/maillog、/var/log/boot.log列为敏感文件说明这些位置在防御侧同样是重点检查对象清理时必须一并评估。日志轮转文件的处理日志轮转logrotate会产生.1、.2或.gz压缩等历史归档文件如/var/log/secure-20261001、/var/log/wtmp.1这些归档往往保留更久、更少被关注却包含完整历史记录。清理日志时建议一并检查/var/log/目录下的归档文件否则攻防双方都可能遗漏关键证据。与此相关的目录信息可在 Linux 信息收集 — 日志 一节中查阅完整的日志清单。登录痕迹清理清除 SSH known_hosts~/.ssh/known_hosts记录用户通过 SSH 连接过的所有主机公钥指纹。入侵者登录过的跳板主机信息会暴露其来源与横向移动路径需要删除对应条目# 删除某条记录 ssh-keygen -R 目标IP或域名 # 或直接清空整个文件 ~/.ssh/known_hosts同时应检查~/.ssh/authorized_keys是否被植入了后门公钥与~/.ssh/目录整体因为该目录同时是信息收集公私钥信息与后门持久化持久化 — ssh 后门的高频位置。修改文件时间戳touch -r 参考文件 目标文件touch -r将目标文件的时间戳atime/mtime/ctime复制为与参考文件一致。典型用法是先找一个与现场环境时间相近的正常文件作为参考再把被触碰过的文件时间戳改回去避免ls -l、find -newer等按时间排査手段发现异常。注意touch只能修改 atime 与 mtimectime在文件元数据变化时会自动更新且普通用户无法伪造取证时可结合 最近文件检索find / -ctime -2交叉验证。删除 /tmp 临时文件入侵过程中反弹 Shell、提权脚本、后门程序等工具经常存放在/tmp目录撤退时需清理# 查看 /tmp 下可疑文件 ls -la /tmp find /tmp -type f -mmin -120 # 覆写式删除而非 rm理由见后文 shred -u /tmp/xxx/tmp目录本身即被 应急响应文档 列为重点排查位置残留文件会被立刻发现同时临时目录中遗留的mysql.sock等业务文件不能误删清理前应先确认文件归属。操作痕迹清理vim 历史记录vim 默认将编辑过的文件名记录在~/.viminfo中viminfo含文件名与部分操作历史。在 vim 内部关闭历史记录:set history0该命令只影响当前 vim 会话历史配置文件~/.viminfo的既有内容仍需单独处理删除或选择性清除 与:记录段。此外 vim 还会留下.swp 交换文件编辑异常退出时这些文件保留在目标目录中同样属于操作痕迹。SSH 无痕登录ssh -T userhost /bin/bash -i-T参数禁止分配伪终端Pseudo-Terminal配合远端直接执行/bin/bash -i可避免在系统侧产生常规的 login session 记录降低last/wtmp中留下交互式登录条目的概率。该方式本质是「非交互式命令执行 手动拉起交互 Shell」在部分严格审计的环境强制记录命令审计、强制 PAM 会话记录下仍可能被记录需要在实操前评估目标环境。覆写文件删除rm只是删除目录项文件数据块仍留在磁盘上可被取证工具恢复。对敏感文件应使用磁盘覆写方式删除这也是仓库 痕迹清理文档 与 Windows 横向移动工具清单shred 用于「重复写入文件防止文件恢复」共同强调的原则。shred# 默认覆写 3 次后删除 shred -u /path/to/file # 指定覆写次数并显示进度 shred -v -n 7 -z -u /path/to/file # 覆写整个分区/设备 shred /dev/sdb1常用参数-u--remove覆写完成后删除文件-n N--iterationsN覆写 N 次-z--zero最后一次用 0 覆写降低痕迹特征-v--verbose输出进度便于确认对目录或设备级别的擦除需谨慎shred无法覆写日志类 append-only 文件与日志轮转归档。dd# 用随机数据整体覆写然后删除 dd if/dev/urandom of/path/to/file bs1M count1 convnotrunc shred -u /path/to/file # 覆写整个分区高危操作仅限授权场景 dd if/dev/urandom of/dev/sdb1 bs4096dd的优势在于通用性强几乎在所有 Linux 环境可用通过if/dev/urandom或if/dev/zero指定随机/零数据源配合bs/count控制覆写大小。注意convnotrunc可避免覆写时截断文件导致提前停止。对日志类文件如wtmp进程可能持续写入覆写前应先停掉相关服务或进程。wipewipeDebian/Ubuntu 的wipe包是专为安全擦除设计的工具支持多种覆写算法与磁盘级擦除wipe -rf /path/to/file # 递归、强制、静默擦除 wipe -q /path/to/file # 快速模式wipe对文件系统与设备均可用并支持自定义覆写次数与随机源。需要注意该工具不是所有发行版默认安装需通过apt install wipe等包管理方式获取部分环境如极简容器只有dd与shred可用建议优先掌握通用的shreddd组合。文件系统层面的补充说明日志型文件系统ext4 的 journal、btrfs 的 COW会保留历史块引用即使覆写原位置旧数据块仍可能残留在日志中无法用常规shred/dd彻底消除/proc、/sys等伪文件系统内容不存在于磁盘覆写操作不适用在容器环境参考仓库 Docker 安全 相关内容中容器文件系统是 overlay 层rm后的数据可能残留在宿主机镜像层中覆写同样无法覆盖镜像层。难点为什么痕迹无法彻底清除仓库 trace.rst 明确列出了痕迹清理的核心难点这些边界判断直接决定了清理策略的取舍无法完全删除痕迹且没有日志本身也是一种特征彻底的日志空白如全部日志被清空、历史为空在防御方眼中是强烈入侵信号反而会加速应急响应与溯源应急响应 的排查流程会把日志异常列为重点本地日志之外仍有记录网络设备、安全设备防火墙、IDS/IPS、集中化日志系统SIEM、堡垒机参考 运维与堡垒机会在主机之外的层面保留流量、会话与审计记录删除本机日志无法触及留存的后门包含攻击者信息若目标主机留有后门见 Linux 持久化 中的 ssh 后门、alias 劫持、隐藏文件等后门本身的回调地址、密钥、配置都会泄露攻击者身份清理痕迹前应先评估后门是否必须移除使用的代理或跳板可能被反向入侵攻击者自身的跳板机、代理节点一旦被防守方反向渗透溯源反制跳板上的记录会成为完整证据链本地清理得再干净也无济于事。注意事项仓库文档结尾给出的操作纪律是痕迹清理能否成功的前提操作前检查是否有用户在线w、who、last、users确认目标主机当前在线用户避免清理登录日志时暴露自身或影响真实用户会话相关查看命令见 信息收集 — 用户删除文件使用磁盘覆写功能一律以shred/dd/wipe覆写代替rm防止取证恢复对应仓库 Windows 侧同样强调 彻底删除需多次覆写尽量与攻击前状态保持一致清理是恢复现场而非制造空白包括恢复文件时间戳、保留合理的日志量、不留下新的篡改痕迹如ctime变化、残留.swp/.viminfo让主机状态尽可能回归入侵前的基线。从攻防两端看痕迹清理痕迹清理的完整图景需要同时理解攻击手法与防御排查逻辑。仓库 防御 — 溯源分析 从防御侧给出了与本文一一对应的检测视角kill bash process ID、set o history、unset HISTFILE应急响应 则提供了从日志、用户、进程、启动项全维度还原入侵路径的排查框架。将攻击侧清理手法与防御侧排查清单对照阅读既能提升授权演练中痕迹管理的质量也能帮助安全工程师建立针对清理行为的检测规则如监控HISTFILE变更、shred/wipe进程调用、日志文件突然截断与时间戳异常。工具与参考仓库 工具 — 操作系统持久化 收录了Log killer这类可批量清除 Linux/Windows 服务器日志的工具可在红队工具链中作为补充Linux 内网渗透索引 将 信息收集、持久化、痕迹清理 串联为完整的 Linux 内网渗透流程本文所涉内容应在「信息收集 → 权限维持 → 痕迹清理」的完整链路中理解与运用。所有命令与手法仅适用于获得授权的渗透测试、红队演练及安全研究场景请遵守当地法律法规勿对非授权目标使用。赞分享文档网络安全教程【免费下载链接】Learn-Web-HackingStudy Notes For Web Hacking / Web安全学习笔记项目地址https://gitcode.com/gh_mirrors/le/Learn-Web-Hacking点击查看免费下载相关推荐沉浸式翻译常见问题排查指南4层定位从图标无反应到翻译结果空白沉浸式翻译常见问题排查指南4层定位从图标无反应到翻译结果空白 沉浸式翻译Immersive Translate是一款沉浸式双语网页翻译扩展除整页翻译外前端AI 应用ccg-workflow 渗透测试秘典Web/API 全栈渗透的 OWASP 实战指南ccg workflow 渗透测试秘典Web/API 全栈渗透的 OWASP 实战指南 ccg workflow 的安全域知识库内置了一份可直接作为 AI 协30天掌握量化交易stock 项目从数据采集到自动下单的完整路径30天掌握量化交易stock 项目从数据采集到自动下单的完整路径 想入门量化交易第一个坎往往不是写策略而是数据怎么进来、单子怎么出去行情从哪拿、存到金融科技数据分析机器学习上一篇解锁Windows网络测速神器iperf3-win-builds全面指南下一篇终极音乐解密工具如何在浏览器中轻松解锁加密音乐文件创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考