Board logo

标题: [安全相关] 双子病毒批处理清理辅助工具 [打印本页]

作者: youxi01    时间: 2009-2-3 16:12     标题: 双子病毒批处理清理辅助工具

现在的许多病毒往往产生多个进程,当我们结束其中的一个病毒进程,其它的病毒进程马上会再次调用它,从而达到杀而不死,死而不僵的目的。这些病毒进程存在互生关系,故此本人称它们为“双子病毒”。

在前些日子,老是碰到这些病毒,如:global、acer等,很是麻烦,杀不死,杀不尽,让人头疼不已。后来被逼没办法,想了个“偏门”,在结束病毒进程的同时删除病毒体,不曾想,还真的凑效了,于是,后来就专门写了这个辅助工具,专门在结束进程的同时删除相关进程文件体。

注意:千万不要拿正常进程来测试!否则,后果自负!
程序代码:
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. ::'/*code by youxi01@bbs.bathome.net 2009-2-3
  4. ::作用:结束进程的同时删除相关文件体,主要针对进程相互检测病毒程序;支持处理多个进程。
  5. set "CMD_Line=wmic process where "name"
  6. set "Space=                         "
  7. tasklist /FO TABLE>ProcList.txt
  8. :Start
  9. cls
  10. echo 已将当前进程保存到当前目录ProcList.txt中,请查看。&echo.
  11. echo 请输入你要处理的进程名称,多个进程请用空格分隔开
  12. echo ------------------------------------------------------
  13. set "EProc="         %'/*保存有效进程变量%
  14. set "EN="
  15. set /p EN=进程名:
  16. echo.&echo 进程名                路径                           
  17. echo ───────────────────────────
  18. for %%i in (%EN%) do call :GetOBJPath "%%i"
  19. echo ───────────────────────────
  20. if not "%EProc%"=="" (
  21. echo 确认后,将会结束进程并删除文件体
  22. echo.&set /p CF=确认删除[Y/N]?
  23. if /i not "!CF!"=="Y" (echo.&echo 您选择了退出!&pause>nul&goto :Start) else (
  24.   ::'*/结束相关进程、删除病毒文件;
  25.   for %%i in (%EProc%) do (
  26.    echo taskkill /f /im %%i>nul 2>nul
  27.    echo attrib -s -h -a -r "!%%i!"
  28.    echo del /f /q "!%%i!"
  29.   )
  30. )
  31. ) else echo 进程输入错误!
  32. pause>nul
  33. goto :Start
  34. :GetOBJPath 目标进程   '/*获取目标进程的路径
  35. set "EXEPath="
  36. set "var=%~1:%Space%"
  37. set var=!var:~0,20!
  38. for /f "skip=1 delims=" %%i in ('%CMD_Line%='%~1'" get executablepath 2^>nul') do set EXEPath=%%i
  39. if defined EXEPath (
  40. set "EProc=!EProc! %~1"
  41. set "%~1=!EXEPath!"
  42. echo !var!!EXEPath!
  43. ) else echo !var! 没发现相关进程!
  44. goto :EOF
复制代码

作者: sjminh    时间: 2009-2-3 16:42

顶,得拿回去好好看看!!!




欢迎光临 批处理之家 (http://bathome.net./) Powered by Discuz! 7.2