“RavMonE.exe"、"rose.exe"、"sxs.exe"、"copy.exe"、"setup.exe"...根目录下的神秘幽灵,系统安全的杀手,它们被称作“U盘病毒”。无数Windows用户,都在为它们而焦头烂额。这一篇文章是一篇对自己对U盘病毒的研究和与U盘病毒斗争的经验教训的总结。

Windows 95以后的系统都有一个“自动运行”的功能。通过在卷插入时读取磁盘卷上的Autorun.inf文件来获得Explorer中卷的自定义图标和对卷图标的上下文菜单进行修改,并对某些媒体自动运行Autorun.inf中定义的可执行文件。05年以后,随着各种可移动存储设备的普及,国内有些黑客制作了盗取U盘内容并将自身复制到U盘利用Autorun.inf传播的病毒。著名的伪ravmon、copy+host、sxs、Viking、熊猫烧香等著名病毒都有这种传播方式。它们有时是根目录下的神秘幽灵,有时是出现在不应该出现的地方的回收站,总之,它们是系统安全的严重威胁。

Autorun.inf被病毒利用一般有4种方式:

1.
OPEN=filename.exe
自动运行。但是对于很多XPSP2用户和Vista用户,Autorun已经变成了AutoPlay,不会自动运行它,会弹出窗口说要你干什么。

2.
shellAutocommand=filename.exe
shell=Auto
修改上下文菜单。把默认项改为病毒的启动项。但此时只要用户在图标上点击右键,马上发现破绽。精明点的病毒会改默认项的名字,但如果你在非中文的系统下发现右键菜单里多出了乱码或者中文,你会认为是什么呢?

3.
shellexecute=filename.exe
ShellExecute=....只要调用ShellExecuteA/W函数试图打开U盘根目录,病毒就会自动运行。这种是对付那些用Win+R输盘符开盘的人。

4.
shellopen=打开(&O)
shellopenCommand=filename.EXE
shellopenDefault=1
shellexplore=资源管理器(&X)

这种迷惑性较大,是新出现的一种形式。右键菜单一眼也看不出问题,但是在非中文的系统下,原形毕露。突然出现的乱码、中文当然难逃法眼。
面对这种危险,尤其是第四种,仅仅依靠Explorer本身,已经很难判断可移动磁盘是否已经中毒。而在这种情况下,一部分人也根据自己的经验,做出了“免疫”工具。

免疫的办法,对可移动磁盘和硬盘:

1、同名目录

目录在Windows下是一种特殊的文件,而两个同一目录下的文件不能同名。于是,新建一个目录“autorun.inf"在可移动磁盘的根目录,可以防止早期未考虑这种情况存在的病毒创建autorun.inf,减少传播成功的概率。

2、autorun.inf下的非法文件名目录

有些病毒加入了容错处理代码,在生成autorun.inf之前先试图删除autorun.inf目录。
在Windows NT Win32子系统下,诸如"filename."这样的目录名是允许存在的,但是为了保持和DOS/Win9x的8.3文件系统的兼容性(.后为空非法),直接调用标准Win32 API中的目录查询函数是无法查询这类目录中的内容的,会返回错误。但是,删除目录必须要逐级删除其下的整个树形结构,因此必须查询其下每个子目录的内容。因此,在“autorun.inf"目录建一个此类特殊目录,方法如"MD x:autorun.infyksoft..",可以防止autorun.inf目录轻易被删除。类似的还有利用Native API创建使用DOS保留名的目录(如con、lpt1、prn等)也能达到相似的目的。

3、NTFS权限控制

病毒制造者也是黑客,知道Windows的这几个可算是Bug的功能。他们可以做一个程序,扫描目录时发现某目录名最后一个字节为'.'则通过访问"dirfullname.."、或者通过利用Windows NT的Native API中的文件系统函数直接插手,删除该特殊目录。

因此,基于更低层的文件系统权限控制的办法出现了。将U盘、移动硬盘格式化为NTFS文件系统,创建Autorun.inf目录,设置该目录对任何用户都没有任何权限,病毒不仅无法删除,甚至无法列出该目录内容。

但是,该办法不适合于音乐播放器之类通常不支持NTFS的设备。

这三步可谓是一步比一步精彩。但是,最大的问题不在怎么防止生成这个autorun.inf上,而是系统本身、Explorer的脆弱性。病毒作者很快就会做出更强大的方案。这是我的预想。

1、结合ANI漏洞,在autorun.inf里将icon设成一个ANI漏洞的Exploit文件(经过我的实验,发现Windows有一种特性,就算把ani扩展名改为ico,还是可以解析出图标),这样只要一打开“我的电脑”,未打补丁、无杀软的系统就会直接遭殃。这样的东西还可以放到网上的各种资源ISO中。

2、提高病毒的整体编程水平,综合以上各种反免疫方式,另外利用多数国内windows用户常以高权限登录系统的特点,自动将没有权限的Autorun.inf目录获得所有权、加读写删除权限,击破这最坚固的堡垒。

面对如此恐怖的东西,对付的办法已经不多了。但是它们其实是一切windows安全问题的基本解决方案,

1、一定要将系统和安全软件保持在最新状态。即使是盗版用户,微软也不会不给重要级别的安全更新,也从来没有过在重要级别安全更新中加入反盗版程序的记录。

2、尽量以受限制的帐户使用系统和上网,这样可以减少病毒进入系统的概率。Vista之所以加入UAC功能,正是因为它能够使用户在尽量方便的同时,享受到受限用户的安全。

3、某种程度上,可以说QQ、IE和某些装备能换真钱、什么都要真钱的网游是导致大量病毒木马编写者出现的“万恶之源”。通过IE漏洞,制作网页木马,安装盗号程序,盗取账号,获得人民币。这条黑色产业链中,IE其实是最容易剪断的一环。珍爱系统,系统一定要更新,要有能防止网页木马的杀毒软件,用IE不要乱上各种小型下载站、色情网站等高危站点,如果有可能,使用非IE引擎的浏览器。

4、恶意捆绑软件,现在越来越和病毒木马接近。部分恶意软件的FSD HOOK自我防御程序可能被病毒利用来保护自己(如SONY XCP事件),而一些恶意软件本身就是一个病毒木马的下载器。因此,不要让流氓接近你的机器。

Autorun.inf的攻防战还在继续,只会变得越来越精彩,网民的安全意识会在攻与防的对立与统一中获得突破性的进展。

文章整理:cnbeta.com    作者:yksoft1

对Autorun.inf类U盘病毒的攻防相关推荐

  1. 对Autorun.inf类U盘病毒的攻防经验总结

    "RavMonE.exe"."rose.exe"."sxs.exe"."copy.exe"."setup.ex ...

  2. U盘防毒最强方案(创建删不掉的autorun.inf文件夹)

    病毒,每个人都深受其害,痛恨不已,特别是现在移动设备MP3.MP4.手机.U盘.移动硬盘飞速发展的时代,病毒也随着这些移动设备和网络快速蔓延和滋生,所以如何防止病毒入侵到自己的爱机和移动设备上就太重要 ...

  3. U盘中的autorun.inf

    怎么删除u盘里的autorun.inf 如果U盘中毒,刚插进机子时按住SHIFT五秒,这样就可以跳过预读,这样防止了预读时把病毒感染到机子上,在U盘盘符上点右键,看看有没有"Auto&quo ...

  4. 如何防止U盘病毒入侵方法

    如何防止U盘病毒入侵方法 来源:鲁大师下载 作者:鲁大师官方网站  打印 一,U盘病毒感染机理: 对于大多数U盘病毒来说他们都是通过系统的自动播放功能以及AUTORUN文件实现打开U盘时自动运行病毒程 ...

  5. c语言编写u盘杀毒软件,一个简单的C++编写的u盘病毒代码

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 一个简单的C++编写的u盘病毒代码 一个win32下能用的U盘病毒 研究原理可以 别编译拿去害人就行 (ring3的病毒貌似也害不了人) 前久用IDA逆向 ...

  6. autorun.inf 配置说明

    autorun.inf是我们电脑使用中比较常见的文件之一 ,其作用是允许在双击磁盘时自动运行指定的某个文件.但是近几年出现了用autorun.inf文件传播木马或病毒,它通过使用者的误操作让目标程序执 ...

  7. U盘病毒GHO.exe

    U盘病毒GHO.exe(兼答rav*mon.exe,rav*mon.dat等***群的清除) 此病毒是原来分析过的niu.exe的变种 具体分析如下: File: GHO.exe Size: 2795 ...

  8. 非常规手段免疫U盘病毒(Autorun.inf)

    Autorun.inf是windows下操纵光盘行为的一个文件,需要放在光盘根目录下,部分操作对于硬盘或U盘也适用. 一般情况出现除光盘外的其他存储介质分区下十有八九不正常,很有可能是设了陷阱,让你打 ...

  9. 优盘中发现计算机病毒怎么办,U盘插入电脑中发现autorun.inf病毒怎么删除

    ‍‍ U盘以及成为大家生活中不可缺少的一部分了,我们在使用电脑过程中经常会浏览或下载文件,这样很容易让U盘感染病毒,其中有一种就是autorun.inf,它能通过U盘给电脑中的其他磁盘带来病毒,从而破 ...

最新文章

  1. 愤怒的小鸟素材包_点映预售开启|愤怒的小鸟2搞笑升级,萌贱无敌!
  2. python中datetime中now和utcnow的区别
  3. 链接器ld程序的脚本文件u-boot.lds(二)
  4. 利用等积变换巧解三角形面积问题
  5. 使用CRT调试内存分配堆来找出未释放的内存空间
  6. oracle 优化分组 sql语句,Oracle SQL语句之常见优化方法 五
  7. 橘子游戏平台_apex英雄_游戏快速下载_雷神加速器全网最快
  8. 网络github_GitHub项目awesome-latex-drawing新增内容(四):绘制贝叶斯网络
  9. Spark源码系列(二)RDD详解
  10. 算法设计思维导图(算法设计与分析第二版)
  11. 各种卫星产品数据总结
  12. OTL音频功率放大器
  13. C语言运算符优先级(超级详细)
  14. 高项部分重点记忆口诀
  15. 欢迎使用CSDN-markdown编辑器萨达所大所大所大所
  16. 【HTML】使用Vscode快速书写HTML
  17. 雕虫小技也重要--数据处理中的电子表格技巧
  18. vue3使用笛卡尔积算法生成sku表格
  19. 牛投客- 最新热门炒股讲解分享
  20. 互怼、IPO、雷潮、寒冬,2018 互联网圈的那些事儿

热门文章

  1. 学会使用Composer
  2. Https原理及实践
  3. android sdk目录缺少uiautomatorviewer,解决Android8.0以上运行不了uiautomatorviewer的办法...
  4. 石油石化物资采购杂志石油石化物资采购杂志社石油石化物资采购编辑部2022年第16期目录
  5. 身份证复印件的正确写法
  6. TCP 与 UDP 的异同
  7. GPU架构与管线总结
  8. 怎么把PS界面语言变成英文方法教程
  9. Creo Illustrate动画制作视频教程
  10. WebView加载String字符串