linux 内网渗透后的痕迹清理

server/2025/3/11 0:41:59/

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


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)。


http://www.ppmy.cn/server/174055.html

相关文章

Android WebSocket工具类:重连、心跳、消息队列一站式解决方案

依赖库 使用 OkHttp 的WebSocket支持。 在 build.gradle 中添加依赖: implementation com.squareup.okhttp3:okhttp:4.9.3WebSocket工具类实现 import okhttp3.*; import android.os.Handler; import android.os.Looper; import android.util.Log;import java.ut…

解析 SQL,就用 sqlparse!

文章目录 解析 SQL,就用 sqlparse!一、背景:为什么你需要 sqlparse?二、什么是 sqlparse?三、如何安装 sqlparse?四、简单易用的库函数1\. parse(sql)2\. format(sql, **options)3\. split(sql)4\. get_typ…

阿里云 linux centos7安装nacos

1、查看自己的java版本 java -version 2、下载nacos版本 https://github.com/alibaba/nacos/releases?page2&spm5176.28103460.0.0.14675d271E2cB5 3、上传到 目录下 4、解压该文件 tar -zxvf nacos-server-x.x.x.tar.gz5、修改配置文件 打开 application.propert…

如何在Spring Boot中读取JAR包内resources目录下文件

精心整理了最新的面试资料和简历模板,有需要的可以自行获取 点击前往百度网盘获取 点击前往夸克网盘获取 以下是如何在Spring Boot中读取JAR包内resources目录下文件的教程,分为多种方法及详细说明: 方法1:使用 ClassPathResour…

【C语言】--- 动态内存管理详解

动态内存管理 1.为什么需要动态内存分配2.malloc 和 free2.1 malloc2.2 free 3. calloc和realloc3.1calloc3.2 realloc 4.常见的动态内存的错误4.1对空指针解引用的操作4.2 对开辟的空间越界访问4.3 对非动态开辟内存使用free函数4.4 使用free函数释放动态开辟空间的一部分4.5…

用低代码平台集成人工智能:无需专业开发也能实现智能化

引言:人工智能的普及与企业需求 随着人工智能(AI)技术的飞速发展,越来越多的企业开始意识到其在提升运营效率、优化客户体验和推动业务创新方面的巨大潜力。从智能客服到自动化决策支持,从数据分析到个性化推荐&#x…

基于NLP的客户意见分析:从数据到洞察

友友们好! 我的新专栏《Python进阶》正式启动啦!这是一个专为那些渴望提升Python技能的朋友们量身打造的专栏,无论你是已经有一定基础的开发者,还是希望深入挖掘Python潜力的爱好者,这里都将是你不可错过的宝藏。 在这个专栏中,你将会找到: ● 深入解析:每一篇文章都将…

NodeJS学习笔记

NodeJS软件安装 node环境安装: https://nodejs.org 安装好后的node通常在C:\Program Files\nodejs验证安装是否成功 node -v npm -v 进入REPL模式命令行模式 nodeNodeJS在REPL模式和编辑器使用 windos在dos下常用命令 windos命令: 1、cmd dos系统2、…