Board logo

标题: [安全相关] 批处理版U盘清道夫 [打印本页]

作者: youxi01    时间: 2008-12-1 10:42     标题: 批处理版U盘清道夫

学校病毒横行:隐藏正常文件夹,同时还生成与文件夹同名的exe文件,给教学工作带来了非常多的不便。

鉴于此,作此批处理,逆病毒而行,名曰“清道夫”,代码初步完成功能,有待进一步完善,欢迎各位提出意见建议!
  1. @echo off
  2. mode con lines=22 cols=65
  3. Title U盘清道夫
  4. color 1f
  5. set /a Snum=0
  6. Rem '/*///////////说明展示/////////////////
  7. echo                         ╭──────╮
  8. echo   ╭──────────┤  程序功能  ├──────────╮
  9. echo   │                    ╰──────╯                    │
  10. echo   │                                                        │
  11. echo   │   1、去除U盘根目录文件夹的所有属性(包括隐藏)           │
  12. echo   │                                                        │
  13. echo   │   2、删除U盘根目录及子文件夹中与文件夹同名的           │
  14. echo   │      exe文件,需强烈注意!!!                             │
  15. echo   │                                                        │
  16. echo   │   3、本程序会处理插入的所有U盘对象                     │
  17. echo   │                                                        │
  18. echo   │────────────────────────────│
  19. echo   │                  作者:2laoshi                         │
  20. echo   │             博客:http://www.2laoshi.cn                │
  21. echo   │        ────────────────────        │
  22. echo   │        声明:使用本程序导致的损失本人概不负责!!        │
  23. echo   ╰────────────────────────────╯
  24. echo.
  25. echo       按任意键开始                     退出请按右上角"×"关闭
  26. echo    ─────────────────────────────
  27. pause>nul
  28. cls
  29. SETLOCAL ENABLEDELAYEDEXPANSION
  30. echo.&echo 正在检测磁盘驱动器,请稍等...
  31. for /f "delims=\" %%i in ('fsutil fsinfo drives^|more') do (
  32.     set DriveName=%%i
  33.     set DriveName=!DriveName:~-2!
  34.     dir /ad /b !DriveName!>nul 2>nul &&(
  35. fsutil fsinfo drivetype !DriveName!|find "可移动">nul 2>nul &&(
  36.   set /a Snum+=1
  37.          set !Snum!=!DriveName!
  38. )
  39.     )
  40. )
  41. :'*/结束相关进程、删除病毒文件;
  42. taskkill /f /im Global.exe>nul 2>nul
  43. del /f /a /q %systemroot%\system32\dllcache\Recycler.{645FF040-5081-101B-9F08-00AA002F954E}\Global.exe
  44. taskkill /f /im system.exe>nul 2>nul
  45. del /f /a /q %systemroot%\system32\dllcache\Recycler.{645FF040-5081-101B-9F08-00AA002F954E}\system.exe
  46. :'*/清理病毒文件;
  47. if !Snum! GTR 0 (
  48. mode con cols=90 lines=30
  49. for /l %%i in (1 1 %Snum%) do call :clear !%%i!) else echo.&echo 没发现U盘!!
  50. pause>nul
  51. goto :eof
  52. :Clear 磁盘名称
  53. cls
  54. set "flag="
  55. echo 正在清理 %~1 盘病毒文件,请稍等...
  56. set "DriveName=%~1"
  57. echo ===================================================&echo.
  58. for /f "delims=" %%i in ('dir /b /s /ad "%DriveName%"') do (
  59. if exist "%%~i.exe" (
  60.   echo 正在清理: %%~i.exe
  61.   attrib -r -h -s -a "%%~i.exe"
  62.   del /q /f "%%~i.exe" 2>nul
  63.   set flag=ok
  64. )
  65. )
  66. if not defined flag echo 恭喜,没发现相关病毒!
  67. echo.&echo ====================================================
  68. echo 准备改回设置,请稍等...&echo.
  69. for /f "delims=" %%i in ('dir /b /ad /ah "%DriveName%" 2^>nul') do (
  70. echo 正在去除 %DriveName%\%%i 隐藏、系统属性
  71. attrib -r -h -s -a "%DriveName%\%%i"
  72. del /q /f "MS-DOS.com" 2>nul)
  73. echo.&echo 更改完毕!
  74. goto :eof
复制代码

作者: pusofalse    时间: 2008-12-1 11:00

有youxi01这个杀毒软件呢~~~^_^
直接删除是否删除不了,可能病毒已经正在运行~
作者: youxi01    时间: 2008-12-1 12:33

呵呵,病毒进程没有定时检测这些文件
目前来说,能解决学校的问题
作者: a794685135    时间: 2008-12-1 20:46

囧 , 上次别人电脑上中了这毒, 我用类似的方法把QQ.exe删了


清完了之后应该再检测一下还有没有
作者: youxi01    时间: 2008-12-1 21:05

原帖由 a794685135 于 2008-12-1 20:46 发表
囧 , 上次别人电脑上中了这毒, 我用类似的方法把QQ.exe删了


清完了之后应该再检测一下还有没有

是的
所以这里只处理U盘,我想U盘很少出现这种情况的
作者: a794685135    时间: 2008-12-23 16:41

问题是一中毒, 其他的盘也有了哇~~~
作者: youxi01    时间: 2008-12-30 00:12

回复LS,有需要的话,可以稍做改装,即可处理其它盘
作者: youxi01    时间: 2008-12-30 00:14

考虑到有些U盘检测软件会在U盘生成autorun.inf(就目前阶段,对阻止病毒没有任何作用,早就过时),使用原代码可能无法删除相应的autorun.inf.exe文件。

现代码已做更新,可以处理autorun.inf.exe.
作者: youxi01    时间: 2009-1-4 13:58

今天在班上的时候,发现原来的代码并不能解决U盘文件夹被隐藏的问题,因为病毒进程正在运行,批处理一边改回设置,而病毒又将其改了回去。

后来通过任务管理器对病毒进程稍做分析,发现了其基本机理,再找到相应对策,更新了代码,该问题基本解决。
作者: cjiabing    时间: 2009-3-27 16:09

拜读大作1~我以前的刚好和你的相反,只杀进程和删除病毒,没有杀U盘里的病毒。
作者: BillGates    时间: 2009-4-24 21:12

这个就是我们学校的需要!
作者: BillGates    时间: 2009-4-24 21:15     标题: 回复 8楼 的帖子

autorun.inf.exe这个还是没解决。
作者: BillGates    时间: 2009-4-24 21:16     标题: 回复 1楼 的帖子

我测试了一下,为什么和文件夹名相同的EXE还是没删除呢,还有我的是Windows xp sp2 Home 版,用不了那个结束进程的东西!

[ 本帖最后由 BillGates 于 2009-4-24 21:21 编辑 ]
作者: garyng    时间: 2011-9-1 21:29

超适合我那台旧电脑~




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