耗尽CPU资源的Explored病毒清除法

  昨天单位这好几台机器病毒大爆发,因为都不是专家高手,折腾了很久才清理掉,过程中有些体会,觉得可以写下来,跟大家作一番交流。

  首先是病毒的发现。昨天出现了两个症状。

  一、在局域网上出现广播包(ARP)暴增,甚至把出口堵死。

  二、机器CPU资源耗尽。

  用任务管理器可以看到可疑的进程explored.exe和services.exe一起占用CPU近100%(后来才知道,这是因为该病毒是通过服务启动的),该进程无法停止,注册表键值:

  HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run

  这里有该项存在,即使将该项删除,重启后仍如原样。这个文件是存在在WINDOWS的SYSTEM32目录下,未中毒机器没有该文件。因此可基本确认该进程是病毒。

  然后是病毒的查杀。这过程中出现两个问题,一是瑞星开始无法升级,这是因为病毒本身把出口堵塞,TCP流无法正常传输。

  我们尝试了一下,发现可以用防火墙(例如天网)将病毒程序隔离,然后再连网进行升级。第二个问题是瑞星查毒过程缓慢(查毒前已经将网卡先禁用了),这是因为病毒程序explored占用CPU太狠,在无法设置删除该进程的情况下,可以用任务管理器提高瑞星进程的优先级(比如实时),这样瑞星从病毒手中抢过CPU资源来正常地运行。

  不过,这次瑞星只查杀了伪装成svchost.exe的蠕虫病毒,explored仍然存在。

  我们无可奈何下只好采用很笨的方法删除explored,就是进入安全模式,到Windows的System32目录下直接把该文件删除掉。顺便也把注册表中启动运行那项也删掉了。

  重启后,提示有服务出错,到管理工具下的“服务”一看,才终于发现了该病毒的真实面目:原来“服务”里面有一栏“Windows Login”,属性显示服务名称是“MpR”,可执行文件路径正是“C:\WINNT\SYSTEM32\explored.exe -services”。

  这就说明了为什么进程中止不了,删掉注册表中系统启动项也没用。也就是说,当初应该到服务里将该服务停止,而不是在任务管理器试图将其删除。

  最后就病毒查杀的心得作一点小结:上述病毒发作都有一定迹象,例如CPU占满,网络带宽占满(可以通过网络连接状态看,如果后台没有运行什么进程,网络接口上收/发包数激增,就很可能是中毒或是连接的网络上有机器中毒),因为平时要保持警惕,发现异常就赶紧查毒。

  最好是用查毒软件,用任务管理器有时被骗,现在的病毒起名往往跟系统程序相似甚至相同,例如explored, smsss(smss是系统程序),svchost等等。最好知道真正的系统程序所在目录,例如系统svchost.exe应该在system32下,而病毒可能藏在system32\drivers下。

  病毒的自启动可能通过很多途径:注册表,INI文件,甚至——象explored这样——通过服务启动。

  与其中了毒再查再杀,不如切实做好防护措施——补丁,病毒保护,防火墙,一个都不能少啊!

(0)

相关推荐

  • 耗尽CPU资源的Explored病毒清除法

    昨天单位这好几台机器病毒大爆发,因为都不是专家高手,折腾了很久才清理掉,过程中有些体会,觉得可以写下来,跟大家作一番交流. 首先是病毒的发现.昨天出现了两个症状. 一.在局域网上出现广播包(ARP)暴增,甚至把出口堵死. 二.机器CPU资源耗尽. 用任务管理器可以看到可疑的进程explored.exe和services.exe一起占用CPU近100%(后来才知道,这是因为该病毒是通过服务启动的),该进程无法停止,注册表键值: HKEY_LOCAL_MACHINE\SOFTWARE\Microso

  • 消耗CPU资源的shell脚本

    复制代码 代码如下: #! /bin/sh  # filename killcpu.sh if [ $# != 1 ] ; then   echo "USAGE: $0 <CPUs>"  exit 1; fifor i in `seq $1` do  echo -ne "  i=0;  while true do i=i+1;  done" | /bin/sh &   pid_array[$i]=$! ; done for i in "

  • 自动杀掉占用较多CPU资源的Shell脚本

    复制代码 代码如下: #!/bin/bash # March-13-2006# CPUuse trigger script by Noel## bash code to watch a running program's CPU usage.# if it's above a set value, it will auto send an email.# You will need to set a Cron job to run this script every xx minutes## S

  • win2003中的w3wp.exe进程大量占用cpu资源的各种问题解决方法

    1:使用 MicrosoftJet 数据库引擎 Web 应用程序可能停止响应负载,造成假死: 原因:发生此问题是因为 Jet 数据库引擎中存在缺陷. Microsoft Windows Server 2003 上只会出现此问题. 在 Windows Server 2003, COM+ 更改频率 CoFreeUnusedLibraries 函数被调用. 此更改导致 Jet 驱动程序以初始化频繁. 此行为可能导致死锁条件. Web 服务器负载时最常出现此问题. 补丁下载: chs:WindowsSe

  • Java多线程之悲观锁与乐观锁

    目录 1. 悲观锁存在的问题 2. 通过CAS实现乐观锁 3. 不可重入的自旋锁 4. 可重入的自旋锁 总结 问题: 1.乐观锁和悲观锁的理解及如何实现,有哪些实现方式? 2.什么是乐观锁和悲观锁? 3.乐观锁可以重入吗? 1. 悲观锁存在的问题 独占锁其实就是一种悲观锁,java的synchronized是悲观锁.悲观锁可以确保无论哪个线程持有锁,都能独占式访问临界区.虽然悲观锁的逻辑非常简单,但是存在不少问题. 悲观锁总是假设会发生最坏的情况,每次线程读取数据时,也会上锁.这样其他线程在读取

  • Oracle捕获问题SQL解决CPU过渡消耗

    正在看的ORACLE教程是:Oracle捕获问题SQL解决CPU过渡消耗.本文通过实际业务系统中调整的一个案例,试图给出一个常见CPU消耗问题的一个诊断方法.大多数情况下,系统的性能问题都是由不良SQL代码引起的,那么作为DBA,怎样发现和解决这些SQL问题就显得尤为重要. 本案例平台为UNIX,所以不可避免的应用了一些Unix下常用的工具.如vmstat,top等. 本文适宜读者范围:中高级. 系统环境: OS: Solaris8 Oracle: 8.1.7.4 问题描述: 开发人员报告系统运

  • docker容器资源配额控制详解

    docker通过cgroup来控制容器使用的资源配额,包括CPU.内存.磁盘三大方面,基本覆盖了常见的资源配额和使用量控制. cgroup简介 cgroup是Control Groups的缩写,是Linux 内核提供的一种可以限制.记录.隔离进程组所使用的物理资源(如 cpu.memory.磁盘IO等等) 的机制,被LXC.docker等很多项目用于实现进程资源控制.cgroup将任意进程进行分组化管理的 Linux 内核功能.cgroup本身是提供将进程进行分组化管理的功能和接口的基础结构,I

  • Docker 限制容器可用的CPU的方式

    默认情况下容器可以使用的主机 CPU 资源是不受限制的.和内存资源的使用一样,如果不对容器可以使用的 CPU 资源进行限制,一旦发生容器内程序异常使用 CPU 的情况,很可能把整个主机的 CPU 资源耗尽,从而导致更大的灾难.本文将介绍如何限制容器可以使用的 CPU 资源. 本文的 demo 中会继续使用<Docker: 限制容器可用的内存>一文中创建的 docker 镜像 u-stress 进行压力测试,文中就不再过多的解释了. 限制可用的 CPU 个数 在 docker 1.13 及更高的

  • 浅谈内存耗尽后Redis会发生什么

    前言 作为一台服务器来说,内存并不是无限的,所以总会存在内存耗尽的情况,那么当 Redis 服务器的内存耗尽后,如果继续执行请求命令,Redis 会如何处理呢? 内存回收 使用Redis 服务时,很多情况下某些键值对只会在特定的时间内有效,为了防止这种类型的数据一直占有内存,我们可以给键值对设置有效期.Redis 中可以通过 4 个独立的命令来给一个键设置过期时间: expire key ttl:将 key 值的过期时间设置为 ttl 秒. pexpire key ttl:将 key 值的过期时

  • docker资源限制和compose部署详解

    目录 一.私有仓库建立 二.Cgroup 资源配置方法 三.CPU使用率控制 使用 stress 工具测试 CPU 和内存 四. CPU 周期限制 五. CPU Core 控制 六. CPU 配额控制参数的混合使用 七. 内存限额 八.Block IO 的限制 九. bps 和 iops 的限制 十. 构建镜像(docker build)时指定资源限制 十一. compose部署 十二. consul部署 总结 一.私有仓库建立 docker pull registry 在docker 引擎终端

随机推荐