I love myself and love all love self's people

}

如何隐藏自己的应用程序在服务器上不被发现?

i pensier stretti&il viso sciolto.   -----------Hemy Wootton《黑客与画家》

守口如瓶,笑脸相迎               

 

 

 

目录

序

1.0 创建单调定时器

1.1 创建单元文件

1.2创建python脚本

1.3执行脚本

1.4通过定时器启动任务

文档编写目的


 

序

          用来保护公司机密的监控小进程,并且防止黑客盗用,以及获取员工的登录日志信息,防止有人恶意搞,或者当员工使用rm -rf等误删时禁止,并向主管部门发送邮件。

伪装系统文件使用定时任务执行python脚本

ps:技术都有两面性,大家都明白。

 

此时用到的工具是systemd,下面是具体步骤


 

 

1.0 创建单调定时器

 


创建一个文件夹用于存放测试使用的单元数据

   mkdir /home/sy_test

mkdir /home/sy_test

在此目录下创建定时器

cd /home/sy_test

vim nice.timer

cd /home/sy_test
vim nice.timer

编写单元文件内容

[Timer]
OnBootSec=1h
OnUnitActiveSec=1d

1h代表开机1小时后启动

1d代表1day 也就是1天执行一次

[Timer]
OnBootSec=1h
OnUnitActiveSec=1d

1.1 创建单元文件


创建文件

cd /home/sy_test

vim nice.service

cd /home/sy_test
vim nice.service

编写文件内容

[Unit]

Description = myScript  #描述#

[Service]

ExecStart = /usr/bin/python3 -u mypython.py

WorkingDirectory = /home/sy_test  #脚本所在目录#

[Unit]

Description = myScript  #描述#

[Service]

ExecStart = /usr/bin/python3 -u mypython.py
WorkingDirectory = /home  #脚本所在目录#

放入系统可识别的优先级目录下(具体优先级问题请参照第三篇参考博客)

mv /home/sy_test/nice.service /lib/systemd/system

mv /home/sy_test/nice.service /lib/systemd/system

1.2创建python脚本


vim /home/sy_test/mypython.py

vim /home/sy_test/mypython.py

编写文件内容

print('you are nice!')

1.3执行脚本


由于是linux系统服务,和配置环境变量一样有效,能够在任意目录执行

sudo systemctl start nice.service

sudo systemctl start nice.service

启动服务后查看状态(它这里是状态其实代表日志)

sudo systemctl status nice.service

sudo systemctl status nice.service

​

成功运行!接下来停掉服务,然后通过定时器启动

sudo systemctl stop nice.service

sudo systemctl stop nice.service

当然我们这种小程序,打印跑完就代表程序就结束了,所以你不stop也可以,但是如果是持久性的程序(比如tomcat,nginx,自定义的接口之类的服务),停止才可以在启动

1.4通过定时器启动任务


为了更加明显我这里把之前的nice.timer设置为1m,也就是1分钟执行一次,并且配置定时任务执行那个服务

vim /home/sy_test/nice.timer

vim /home/sy_test/nice.timer

​

转移与关联

很多小宝贝会好奇,那么定时任务和单元服务文件没有配置,他们怎么关联的呢,别慌看↓↓↓↓↓↓↓

定时器单元文件和服务单元文件必须在同一个目录下,且文件名相同,只是后缀不同一个为.timer,一个为.service

mv /home/sy_test/nice.timer /lib/systemd/system

mv /home/sy_test/nice.timer /lib/systemd/system

启动定时器

systemctl start nice.timer

systemctl start nice.timer

查看定时器状态

systemctl status nice.timer

systemctl status nice.timer

​

定时器启动成功,接下来咱们来验证一下是否让那个python执行了多次

查看服务状态

sudo systemctl status nice.service

sudo systemctl status nice.service

​

我没有手动运行任何关于这个服务的命令,仅仅是看它的状态,2次都在每分钟重新执行了,说明很成功

成功!


结语:你规避了你隐藏的服务,无法发现,但是软件行业没有银弹,没有完美的东西,如果别人也知道这个systemctl可以隐藏服务的话,其实也是可以通过这个找到你的命令的,不过它得查看你的输入日志。

所以你还得来一步,删除这区间内的输入日志

还是那句没有银弹,这样虽然别人不知道你启动了什么服务,但是还是有问题的,如果别人超级厉害的那种,那这个版本的文件和当前版本的系统命令,以及搭建的所有环境服务所有版本文件进行比对,然后在以超级耐心,一个个比对,放心吧,绝对要花几个月专注这一件事情,才能把你给找出来。


参考博客:

https://blog.csdn.net/weixin_37766296/article/details/80192633 最简明扼要的 Systemd 教程

systemctl isolate emergency.target 千万不要执行,上一篇文章中的开始与执行前面的代码。我服务器直接ping不通了。

https://www.cnblogs.com/zhaoweihang/p/12102386.html 在linux 用systemctl 执行python脚本

https://my.oschina.net/u/2539854/blog/857219 systemd创建定时任务

 

posted @ 2020-04-26 23:30  强行快乐~  阅读(1045)  评论(1)    收藏  举报

联系qq:1035133465