rex advent——rex批量替换被篡改的文件

同事发现有部分系统的脚本执行有问题,自动清理的脚本不起作用了,后来发现是系统的find可能被替换了

登录系统发现find被替换为空文件了……

1、批量扫描有多少服务器有问题:很简单扫描远程服务目录find 如果大小为1(即使为空)。

task “find”, group => “all”, sub {
my $output= run ‘ls -al /bin/find’;
say connection->server.’:’. $output;
};

rex -qw find 1>findlist.txt

然后对findlist处理,当然是perloneline

perl -lane ‘print $F[0] if $F[5]==1’ findlist.txt|perl -pe ‘s/:$//’

获得有问题的服务器列表。

2、打印对服务器版本进行,以便找到相对应的find文件进行替换

task “issue”, group => “all”, sub {
my $output= run ‘cat /etc/issue’;
say connection->server.’:’. $output;
};

3、替换find文件,用upload上传,并改变其属主和分组,最后试着使用find命令搜索/root目录的文件,如果有输出即为替换成功。

task “findchange”, group => “all”, sub {

upload “/tmp/find”, “/bin/find”;
run ‘chown root.root /bin/find ‘;
my $output=run ‘find  /root -type f|wc -l ‘;
say connection->server.’:’. $output;

};

发表评论

邮箱地址不会被公开。 必填项已用*标注