我收到了某个家伙做的一个项目,它正处于生产阶段。但那个人与项目经理和其他团队成员之间存在一些问题(态度恶劣,是个混蛋……等等)。他故意记录了错误的应用程序、错误的路径、隐藏的文件夹等。然后就离开了公司。
在研究时,我发现进程列表上有一个 .sh 正在执行。但是该 .sh 在指定路径(甚至文件系统中的另一个路径)中不再存在。
查看 .bash_history 我发现他执行了 .sh,然后删除了该文件(故意)...
为了让项目继续进行,我需要知道该文件的内容。据我了解,这个 shell 仍然存在于 RAM 中,因为它正在执行。
有机会从 RAM 中读取该文件吗?或者将其内容写入新文件?
亲切的问候。
编辑: @Artem S. Tashkinov 和@Gilles。谢谢您的回答。但这只会转储进程的输出。我需要的是 .sh 包含的代码 ando 生成该输出。
答案1
首先,请尝试通过以下方式查找脚本
sudo lsof -n | grep deleted
如果你以这种方式找到它,你可以轻松地从 /proc 转储它
如果它没有帮助参考这些答案如何将 shell 进程内存转储到磁盘: