服务器之家

服务器之家 > 正文

Linux系统被入侵后使用lsof命令恢复被删除日志的方法

时间:2019-10-12 13:45     来源/作者:Linux教程网

Linux系统是服务器最常见的操作系统,当然也面临着非常多的安全事件,相较Windows操作系统,Linux采用了明确的访问权限控制和全面的管理工具,具有非常高的安全性和稳定性。Linux系统被入侵后,攻击者为了掩盖踪迹,经常会清除系统中的各种日志,包括Web的access和error日志、last日志、message日志、secure日志等,给我们后期应急响应和取证分析带来了非常大的阻力。所以,恢复被清除的日志是非常重要的取证和分析环节,一下是使用lsof命令恢复日志文件的案例,适用于常见的日志恢复工作。

Linux系统被入侵后使用lsof命令恢复被删除日志的方法

一、前提条件

不能关闭服务器,不能关闭相关服务或进程,如恢复apache的访问日志 /var/log/httpd/access_log ,不能关闭或者重启服务器系统,也不能重启httpd服务。

二、实施过程

1. 找到相关进程pid
 

复制代码

代码如下:


[root@localhost ~]# lsof | grep access_log
httpd 1392 root 7w REG 253,0 0 263802 /var/log/httpd/access_log
httpd 7330 apache 7w REG 253,0 0 263802 /var/log/httpd/access_log
httpd 7331 apache 7w REG 253,0 0 263802 /var/log/httpd/access_log
httpd 7332 apache 7w REG 253,0 0 263802 /var/log/httpd/access_log
httpd 7333 apache 7w REG 253,0 0 263802 /var/log/httpd/access_log
httpd 7334 apache 7w REG 253,0 0 263802 /var/log/httpd/access_log
httpd 7335 apache 7w REG 253,0 0 263802 /var/log/httpd/access_log
httpd 7336 apache 7w REG 253,0 0 263802 /var/log/httpd/access_log
httpd 7337 apache 7w REG 253,0 0 263802 /var/log/httpd/access_log


这里我们重点关注一下第一、第二、第三、第四列,分别表示进程名、pid、用户、文件描述符,我们看到这里的文件描述符是7w,所以我们在下一步操作过程要记住这个7.

 

2. 找回日志

 

复制代码

代码如下:


[root@localhost ~]# wc -l /proc/1392/fd/7
55 /proc/1392/fd/7
[root@localhost ~]# cat /proc/1392/fd/7 > /var/log/httpd/access_log


我们先通过wc或者tail命令查看日志信息,然后再将日志重写到access_log中即可。

 

三、总结

在Linux系统的/proc 分区下保存着进程的目录和名字,包含fd(文件描述符)和其下的子目录(进程打开文件的链接),那么如果删除了一个文件,还存在一个 inode的引用:/proc/进程号/fd/文件描述符。我们只要知道当前打开文件的进程pid和文件描述符fd就能利用lsof工具列出进程打开的文件。通过lsof我们就可以进行简单的文件恢复工作,当然这里不局限于日志文件,只要是存在引用的文件。

标签:

相关文章

热门资讯

2022年最旺的微信头像大全 微信头像2022年最新版图片
2022年最旺的微信头像大全 微信头像2022年最新版图片 2022-01-10
蜘蛛侠3英雄无归3正片免费播放 蜘蛛侠3在线观看免费高清完整
蜘蛛侠3英雄无归3正片免费播放 蜘蛛侠3在线观看免费高清完整 2021-08-24
背刺什么意思 网络词语背刺是什么梗
背刺什么意思 网络词语背刺是什么梗 2020-05-22
yue是什么意思 网络流行语yue了是什么梗
yue是什么意思 网络流行语yue了是什么梗 2020-10-11
暖暖日本高清免费中文 暖暖在线观看免费完整版韩国
暖暖日本高清免费中文 暖暖在线观看免费完整版韩国 2021-05-08
返回顶部