linux 内网渗透后的痕迹清理

(⚠️本文仅用于授权渗透测试与防御研究,禁止非法用途)


0x00为什么要清理痕迹?

渗透后残留的日志、历史记录、文件时间戳等可能暴露攻击路径,导致溯源或防御反制。专业清理可降低风险,但需注意:完全隐身几乎不可能,对抗高级流量监控仍需更复杂手段。

0x01 隐藏SSH登录记录

SSH登录信息通常记录在以下日志中:

  • /var/log/auth.log

  • /var/log/secure(部分系统)

  • /var/log/wtmp(二进制登录记录)

last可以擦黄看最近的登陆记录

隐藏技巧

  1. 禁用伪终端分配

    ssh -T root@目标IP /bin/bash -i  

    -T参数禁止分配伪终端,/bin/bash -i启动交互式Shell,减少日志生成(但部分系统仍可能记录)。

  2. 手动清理日志

    # 删除含特定IP的日志行  
    sed -i '/你的IP/d' /var/log/auth.log  
    # 清空wtmp(需root权限)  
    echo > /var/log/wtmp  

0x02 清除命令历史记录

Bash/Zsh历史文件(~/.bash_history~/.zsh_history)会记录所有执行命令。

清除方法

  1. 实时禁用记录

    unset HISTFILE    # 当前会话不记录历史  
    export HISTCONTROL=ignorespace  # 命令前加空格不记录  
  2. 彻底删除历史

    history -c && history -w   # 清空内存并覆盖文件  
    rm ~/.bash_history ~/.zsh_history  
  3. 覆盖其他用户历史(需root):

    find /home -name ".*_history" -exec rm -f {} \;  

0x03 修改文件时间戳

管理员常通过文件修改时间(mtime)追踪异常文件。

伪装技巧

touch -r 参照文件.txt 目标文件.php   # 将目标文件时间设为参照文件时间  
touch -t 202401010000 目标文件.php   # 自定义时间戳(格式:年月日时分)  

0x04 清理系统日志

核心日志路径

  • Web服务:/var/log/apache2/*/var/log/nginx/*

  • 系统日志:/var/log/syslog/var/log/messages

清理方法

  1. 直接清空文件

    echo > /var/log/apache2/access.log  
  2. 选择性删除日志行: 

    sed -i '/攻击者IP/d' /var/log/syslog    # 删除含特定IP的行  

⚠️ 注意

  • 清空日志可能触发告警(如auditd监控文件变更)。

  • 优先备份原始日志:cp /var/log/auth.log /tmp/auth.log.bak


0x05 进阶对抗与防御检测
  1. 防恢复删除

    shred -zu 文件名    # 覆盖后彻底删除(避免恢复)
  2. 伪造正常日志
    向日志文件插入正常条目(需严格匹配日志格式)。

  3. 防御建议

    • 部署文件完整性检查工具(如AIDE)。

    • 启用实时日志监控(如ELK+Wazuh)。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值