首页 > 系统相关 >Linux清除记录的常见方式

Linux清除记录的常见方式

时间:2024-04-10 16:57:02浏览次数:25  
标签:文件 log 记录 清除 命令 Linux var 日志 php

  1. 隐藏远程SSH登陆记录

  2. 清除当前的history记录

  3. 隐藏Vim的操作记录

  4. 隐藏文件修改时间

  5. 锁定文件

  6. 清除系统日志痕迹

1. 隐藏远程SSH登陆记录

隐身登录系统,不会被w、last等指令检测到。

ssh -T [email protected] /bin/bash -i

-T表示不分配伪终端,/usr/bin/bash 表示在登录后调用bash命令 -i 表示是交互式shell

原理

w/last命令日志/var/log/wtmp 是utmp和wtmp的日志接口产生的,而这俩接口是正常登陆分配伪终端(tty)之后才调用的,ssh -T [email protected] /usr/bin/bash表示登陆后调用bash命令。不是一个完整的会话 类似执行一个临时命令,系统不会分配伪终端

伪终端(pseudo terminal有时也被称为pty)应用场景:

1. 在图形界面下打开的命令行终端
2. 基于ssh协议或telnet协议等远程打开的命令行界面

排查

登录后先用 echo $PPID 获取自己的PID,netstat\lsof 都可以排查到

 

 

2. 清除当前的history记录

如果我们不希望命令被记录,在退出会话前直接执行:

# 清除当前会话的命令历史记录
history -r

# 或者 不给当前的shell留时间去处理,内存的命令也就没时间写入到文件
kill -9 $$

原理

history -r将历史命令文件中的命令(/.bash_history) 读入当前历史命令缓冲区.

history -r 把历史文件(/.bash_history)附加到内存数据中了

3. 隐藏Vim的操作记录

当我们使用 vim时候,会在 ~/.viminfo留下操作记录,建议使用 vi 。或者在vim中使用命令关闭记录。

:set history=0 :!command

4. 隐藏文件修改时间

一般管理员会查看一个文件的修改时间,我们可以把我们的后门文件时间修改成几天之前创建的效果。使用如下命令。

# touch -r A B 使B文件时间变得和A文件相同
touch -r index.html shell.php

 

图片

 

但是稍微有经验的管理员使用stat或者 find ./ -ctime 0 -name "*.php" 就会发现这里的问题

# 查找24小时内被创建的php文件
find ./ -ctime 0 -name "*.php"

 

图片

 

stat中的三个属性意思是

最近访问(access time):表示我们最后一次访问(仅仅是访问,没有改动)文件的时间
最近更改(modify time):表示我们最后一次修改文件的时间
最近改动(change time):表示我们最后一次对文件属性改变的时间,包括权限,大小,属性等等

比如 最近访问(access time)。我们用cat访问下,发现 最近访问 变了

 

图片

 

那么如果再绕过 stat的检测呢?修改系统时间后再 touch -r A B 就可以了。最后记得把系统时间改回来啊

5. 锁定文件

有时候你发现用root权限都不能修改某个文件,大部分原因是曾经用chattr命令锁定该文件了。此权限用ls -l是查看不出来的,从而达到隐藏权限的目的。chattr命令不能保护/、/dev、/tmp、/var目录。lsattr命令是显示chattr命令设置的文件属性。

chattr +i shell.php  #锁定文件
rm -rf shell.php #提示禁止删除

lsattr shell.php #属性查看
chattr -i shell.php #解除锁定
rm -rf shell.php #删除文件

 

图片

 

让某个文件只能往里面追加数据,但不能删除,适用于各种日志文件

# chattr +a /var/log/messages

6. 清除系统日志痕迹

Linux 系统存在多种日志文件,来记录系统运行过程中产生的日志

清除系统日志痕迹

/var/log/btmp   记录所有登录失败信息,使用lastb命令查看
/var/log/lastlog 记录所有用户最后一次登录时间的日志,使用lastlog命令查看
/var/log/wtmp 记录所有用户的登录、注销信息,使用last命令查看
/var/log/utmp 记录当前已经登录的用户信息,使用w,who,users等命令查看
/var/log/secure 记录与安全相关的日志信息
/var/log/message 记录系统启动后的信息和错误日志

# 直接覆盖日志文件
echo > /var/log/btmp
cat /dev/null > /var/log/secure

# 删除所有匹配到字符串的行,比如以当天日期或者自己的登录ip
sed -i '/自己的ip/'d /var/log/messages

# 全局替换登录IP地址:
sed -i 's/192.168.166.85/192.168.1.1/g' secure

清除web日志入侵痕迹

# 直接替换日志ip地址
sed -i 's/192.168.166.85/192.168.1.1/g' access.log

# 清除部分相关日志
cat /var/log/nginx/access.log | grep -v evil.php > tmp.log

# 把修改过的日志覆盖到原日志文件
cat tmp.log > /var/log/nginx/access.log/

文件安全删除工具

# shred 命令 安全的从硬盘上擦除数据,默认覆盖3次,通过 -n指定数据覆盖次数
[root@centos]# shred -f -u -z -v -n 8 1.txt

# wipe 使用特殊的模式来重复地写文件,从磁性介质中安全擦除文件
[root@centos]# wipe filename

标签:文件,log,记录,清除,命令,Linux,var,日志,php
From: https://www.cnblogs.com/websec80/p/18126384

相关文章

  • linux服务器 tcp高并发压测需要设置项
    linux服务器部署了一个tcp服务,需要进行并发压力测试 看看服务器能支持多少个tcp长连接  预计会有50w个连接需要设置linux不然是无法支持这么多连接的  如果达到这个值是无法建立新连接的 报错信息一般为 toomanyopenfiles 1, fs.file-max li......
  • 采用自定义注解 和 AOP 完成日志记录
    1、声明一个自定义注解@Retention注解包含一个RetentionPolicy类型的属性value,用于指定注解的保留策略,常用的保留策略包括:RetentionPolicy.SOURCE:表示注解仅在源代码中保留,编译器编译时会将其忽略,不会保存在编译后的字节码中。RetentionPolicy.CLASS:表示注解在编译后的......
  • 关于需要root权限启动图形应用记录
    关于需要root权限启动图形应用记录环境Kernel:6.8.4-arch1-1OS:ArchLinuxx86_64DE:hyprland问题来源在vmware中安装win11,想更改Edit>Preferences>Memory到"FitallvirtualmachinememoryintoreservedhostRAM"来提高访问内存效率,但必须用root运行vmware才能改变......
  • Linux网络命名空间命令实操
    背景之前在《Linux系统的网络命名空间那些事》一文中分享了关于网络命名空间的名称的介绍,了解了系统的网络命名空间名称和网络命名空间标识符以及容器的网络命令空间标识符的事情。本文分享一下Linux网络命名空间的实际操作。分析Linux的网络命名空间提供了隔离的网络环境,......
  • 4、Linux 网络基础
    1.基础命令hostname:查看或设置当前主机名route[-n]:查看或设置主机中路由表信息netstat:查看系统的网络连接状态、路由表、接口统计等信息常用选项-a:显示所有-n:以数字输出-p:带端口-t:TCP协议-u:UDP协议-r:查路由表traceroute:测试从当前主机到目标主机之间经过的网络节点nsl......
  • Burp Suite Professional 2024.3.1 (macOS, Linux, Windows) - Web 应用安全、测试和
    BurpSuiteProfessional2024.3.1(macOS,Linux,Windows)-Web应用安全、测试和扫描BurpSuiteProfessional,Test,find,andexploitvulnerabilities.请访问原文链接:BurpSuiteProfessional2024.3.1(macOS,Linux,Windows)-Web应用安全、测试和扫描,查看最新版。......
  • Metasploit Pro 4.22.3-2024040301 (Linux, Windows) - 专业渗透测试框架
    MetasploitPro4.22.3-2024040301(Linux,Windows)-专业渗透测试框架Rapid7Penetrationtesting,ReleaseApr03,2024请访问原文链接:MetasploitPro4.22.3-2024040301(Linux,Windows)-专业渗透测试框架,查看最新版。原创作品,转载请保留出处。作者主页:sysin.org无......
  • Nexpose v6.6.245 for Linux & Windows - 漏洞扫描
    Nexposev6.6.245forLinux&Windows-漏洞扫描Rapid7VulnerabilityManagement,ReleaseApr03,2024请访问原文链接:Nexposev6.6.245forLinux&Windows-漏洞扫描,查看最新版。原创作品,转载请保留出处。作者主页:sysin.org您的本地漏洞扫描程序搜集通过实时......
  • Linux文件权限进阶:在Linux中,文件权限进阶包括特殊权限和粘着位等
    Linux文件权限进阶前言在Linux系统中,文件权限是非常重要的概念之一。除了基本的读(r)、写(w)、执行(x)权限外,Linux还提供了一些特殊权限和标志位,用于进一步控制文件或目录的访问方式。本文将介绍Linux文件权限进阶的内容,包括特殊权限和粘着位。摘要本文将详细介绍Linux文件权......
  • Linux系统下的HOOK
    HOOK通过在系统调用或函数调用前以替换的方式改变程序中原有的函数功能,实现更改原有函数的功能。利用LD_PRELOAD进行HOOKLinux提供了一个名为LD_PRELOAD的环境变量。这个环境变量允许用户指定一个或多个共享链接库文件的路径。当程序启动时,动态加载器会在加载C语言运行库之......