iamcj 发表于 2007-6-13 17:44

【原创】Make a anti-autorun batch

http://www.iamcj.net/blog/2007/06/13/make-a-anti-autorun-batch/

http://www.iamcj.net/blog/wp-content/uploads/2007/06/061307-0936-makeaantiau1.jpg现在木马/病毒的传播方式,比较有”特色”的,是通过可移动磁盘(优盘、移动硬盘、MP3、存储卡+读卡器),以及通过arp欺骗重定向所有局域网内电脑的www访问,我们今天讨论前者。
可移动磁盘的”自动运行”功能,应该是从Windows 95开始的,我的印象中,Win31的时代,似乎没有听说过这个东西。出来了那么多年了,似乎也没有听说有什么问题,最常见的就是软件的安装光盘放进去会自动开始安装,音乐CD放进去会自动开始播放,如果装了什么超级解霸之类的软件,VCD/DVD放进去也会自动播放。安全方面的,我就听说过一个利用这个来破解屏幕保护密码的,后来也没有关心,想来这个bug也应该修复了吧。
现在影响最大的,应该就是n多的病毒,都利用这个来传播了。优盘插上,没有任何动静的,就把你的系统感染了,然后再插上的任何优盘,都又成了传播的中介,不声不响之间,危害巨大。看到优盘的根目录下,有什么OSO啊,美女游戏啊,就是这些病毒了。
实现的原理很简单,关键就是autorun.inf文件,在默认情况下,这个文件会自动被加载,然后按照里面定义,可以启动一个可执行程序。autorun.inf的格式大致是下面这样:

open=autorun.exe
icon=autorun.exe,0
相当一目了然,第一行定义了自动运行的程序(如果是病毒,就可能是open=oso.exe了),第二行定义了显示的图标。
禁用自动运行的办法有很多,大致有服务、注册表、组策略三种(可能还有更多,欢迎补充),我这儿介绍最简单的一种,就是禁用Shell Hardware Detection服务,对于这个服务,微软自己的解释是”Provides notifications for AutoPlay hardware events”,也就是”为自动播放硬件事件提供通知”,把这个服务设置为Disabled(禁用),重新启动,自动运行功能就算是废掉了。
但是这依然是不安全的,原因是很多朋友(我觉得至少有50%),最习惯的方式就是打开电脑,然后不断的双击,进入驱动器,进入目录……),对于驱动器,默认的双击,在有autorun.inf存在的时候,就是运行里面定义的程序(在不存在autorun.inf的时候,才是打开),结果大家都能想到,就是相当于手动运行了病毒,自作孽啊……
如何彻底禁用这个功能,目前似乎没有直接的办法(希望过几天能够更新这个),所以我们就只能另辟蹊径,想办法如何不让病毒建立autorun.inf,虽然病毒母体依然会传播,但至少不会如此不明不白的扩散,以至于自己当了帮凶还不知道了。
[*]最原始的办法自然是自己建立autorun.inf,但是马上病毒就开始删除或者覆盖了;[*]接下来是加上只读属性,这个也很容易破解,替换属性即可;[*]再接下来是建立同名目录,因为按照目前的定义,在存在同名目录的情况下,文件无法建立,然后病毒开始删除目录了;http://www.iamcj.net/blog/wp-content/uploads/2007/06/061307-0936-makeaantiau2.png
今天这儿介绍的办法,是利用带点的目录,具体的技术文章大家可以Google到,具体流程是:
[*]在磁盘根目录下建立autorun.inf目录;[*]进入autorun.inf目录;[*]建立autorun.inf.目录(注意这个.);第三步是关键,因为在通常情况下,在有非空子目录的情况下,目录无法被删除(可惜的是这儿也有个办法……)。
我做了一个简单的bat文件,偷懒的朋友可以用用,呵呵,用法就是antiU 盘符,比如要处理f盘,就是antiU f:(注意冒号要带上)。
有什么意见,欢迎反馈。
页: [1]
查看完整版本: 【原创】Make a anti-autorun batch