ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

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

2020-04-28 12:38:29  阅读:284  来源: 互联网

标签:sy service 应用程序 systemctl 服务器 test home 隐藏 nice


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创建定时任务

 

标签:sy,service,应用程序,systemctl,服务器,test,home,隐藏,nice
来源: https://blog.csdn.net/qq_38403590/article/details/105770681

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有