命令行下用暴力法杀、删除灰鸽子dllhost.exe

本文介绍了一种在远程控制环境下手动清除灰鸽子病毒的方法。利用两个DOS批处理命令,在两个命令行窗口中同时运行,实现快速杀死病毒进程并删除病毒文件的目的。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天逛WZ,看到这个,比较有意思的是那两个久违的DOS批处理命令.
今天通过远程连接帮一个不太懂电脑的朋友清病毒。看到一堆runauto..目录,再看进程中有c:/windows/dllhost.exe,确定是灰鸽子07.
查到的手动清除方法很多要求安装iceswords或者到安全模式。但远程控制下做这些都很不方便(网络也比较慢)。先尝试了在命令行把taskkill和delete写在一行的方式杀掉dllhost进程并删除文件,结果发现dllhost很快就重建进程并锁定dllhost.exe,造成删除总是失败。
后来发现一个以暴制暴的办法,很简单,开两个命令行窗口,分别执行:
第一个cmd窗口中执行:for /l %a in (1,0,2) do taskkill /f /im dllhost.exe
第二个cmd窗口中执行:for /l %a in (1,0,2) do attrib -h -s -r c:/windows/dllhost.exe & del c:/windows/dllhost.exe

刚开始还会看到文件删除不了的错误。等几秒就发现已成功删除,表现为taskkill报告找不到进程;attrib和del报告找不到文件。这时用ctrl+c中止这两个死循环即可。
原理很简单,这两个都是死循环(从1循环到2,但步长为0),一个拼命杀,一个拼命删。总会遇到那么一个时间点,刚好del可以在进程重建前杀掉。
目前朋友的三台机器都这样成功清除。当然在这之后要记得把setuprs1.pif删除,并把注册表中cmd.exe, regedit.exe的IFEO劫持删除。
本文来自: 脚本之家(www.jb51.net) 详细出处参考:http://www.jb51.net/article/10088.htm

<think>嗯,用户的问题是关于dllhost.exe进程导致高CPU使用率的原因和解决方案。这个问题在Windows系统中比较常见,特别是服务器环境。用户可能正在经历系统卡顿或服务器性能下降的问题,显得比较着急。从引用资料来看,dllhost.exe确实是系统核心进程,但高占用通常由特定原因触发。引用[4]提供了详细的技术分析,指出最常见的原因是损坏的Access数据库文件导致IIS死锁。这个解释很专业,值得重点参考。用户可能不太熟悉服务器管理,所以解决方案需要分层次说明:1.先说最直接的应急处理:重启IIS服务。这在引用[4]提到过,是临时解决方。2.然后分析根本原因,引用[1][4]都指向文件损坏问题,需要教用户如何定位问题文件。3.引用[2][3]提到的病毒可能性也要覆盖,虽然概率较低但需要排查。技术细节上要注意:-解释dllhost.exe的合性时,要区分32位和64位系统的路径差异-文件医生工具在引用[4]有提及,但要注意该链接可能已失效,所以补充了手动排查方-数据库修复步骤要具体,特别是Access文件的操作要点安全方面特别提醒:-强调不要直接结束进程,引用[2]说明这是核心进程-病毒检查步骤要放在前面,因为引用[2]提到病毒可能伪装考虑到用户可能是服务器管理员,最后补充了预防措施:-定期数据库维护(引用[4]的延伸建议)-性能监控设置(结合引用[3]的硬件监控思路)相关问题设计覆盖了:1.进程验证(解决用户对进程性质的疑惑)2.数据库维护(预防问题复发)3.替代方案(用户可能想彻底规避此问题)</think>dllhost.exe 是 Windows 系统中用于承载 COM+ 组件(如 IIS 应用程序池)的核心进程。其高 CPU 使用率通常由以下原因及解决方案引起: --- ### **常见原因与解决方案** #### **1. 损坏的 Access 数据库文件(IIS 环境常见)** * **原因**: IIS 在读写损坏的 Access 数据库(`.mdb`/`.accdb`)时,线程会被阻塞,导致 `dllhost.exe` 死锁并持续占用 CPU [^4]。 * **解决方案**: - **定位损坏文件**: 使用日志工具(如"首席文件检查官")监控写入操作,记录最后访问的文件(尤其是计数器类文件如 `**COUNT.MDB`)[^4]。 - **修复或替换**: ① 将疑似文件移出目录测试; ② 用 Access 软件打开并选择 **"修复数据库"**; ③ 替换为备份文件。 #### **2. COM+ 组件或 IIS 应用程序故障** * **原因**: 托管在 COM+ 中的组件(如 ASP 脚本、第三方 DLL)存在逻辑错误或资源泄漏。 * **解决方案**: - **重启 IIS 服务**(临时缓解): 命令提示符运行: ```bash iisreset /restart ``` - **隔离问题组件**: ① 在 **IIS 管理器** 中逐一停止应用程序池,观察 CPU 变化; ② 检查应用程序事件日志(`eventvwr.msc`)中的错误记录。 #### **3. 病毒或恶意软件伪装** * **原因**: 病毒可能劫持或伪装成 `dllhost.exe`(尤其当路径非 `C:\Windows\System32` 时)[^2]。 * **解决方案**: - **验证进程路径**: 任务管理器 → 右键进程 → "打开文件位置",确认路径为系统目录。 - **全盘毒**: 使用 Windows Defender 或第三方工具(如 Malwarebytes)深度扫描。 #### **4. 系统文件损坏** * **原因**: 关键 DLL 或系统组件损坏。 * **解决方案**: - **修复系统文件**: 管理员身份运行命令提示符: ```bash sfc /scannow DISM /Online /Cleanup-Image /RestoreHealth ``` #### **5. 其他可能原因** - **过时的驱动程序/系统补丁**:更新至最新版本。 - **资源冲突**:禁用非必要启动项(`msconfig` → "服务"标签页勾选"隐藏 Microsoft 服务"后禁用剩余项)。 --- ### **操作流程总结** 1. **紧急处理**:重启 IIS 或系统(临时恢复)。 2. **检查进程路径**:排除病毒伪装。 3. **隔离问题源**:通过停止 IIS 应用池定位故障组件。 4. **修复数据库/组件**:重点排查 Access 文件及 COM+ 组件。 5. **系统维护**:运行 `sfc` 扫描、更新补丁。 > **预防建议**: > - 定期备份 Access 数据库并压缩修复 [^4]。 > - 为 IIS 应用程序池设置 **CPU 限制**(IIS 管理器 → 应用池 → "高级设置" → "CPU 限制")。 > - 部署监控工具(如 Performance Monitor)追踪资源占用峰值。 --- ### **相关问题** 1. **如何区分正常的 `dllhost.exe` 和病毒伪装的进程?** 2. **除了 Access 数据库,还有哪些文件类型可能导致 IIS 死锁?** 3. **如何为 IIS 应用程序池设置自动回收机制以防止资源泄漏?** [^1]: dllhost.exe进程占用CPU很高怎么解决? [^2]: CPU使用率高的原因和解决方以及案例分析 [^3]: 服务器CPU使用率达到80%以上的排查方向 [^4]: 如何解决dllhost进程消耗CPU100%的问题
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值