xeex.exe 病毒引发的思考

DavidHsing 2009-07-21 11:13:27
近日为了帮人修复受损的 Word 文件(磁盘删除恢复的那种,全是乱码,为了尝试修复乱码),
于是上网上搜索,所谓病急乱投医,各种软件都试了,一点效果都没有。
还被乱下载的软件感染了,到处是 _xeex.exe,杀都杀不掉(卡巴有,但基本不开,太占资源)。
终于用了木马清道夫搞定了(360专杀的那个似乎不管用,查不出来),然后恢复了卡巴斯基保护,
升级卡巴斯基病毒库扫描之后能查出来哪些文件感染了病毒,全盘扫描,折腾了一晚上 + 一上午,终于搞定了。
被卡巴删掉了好多辛辛苦苦收集来的电子书,心疼啊!

现在的问题是:
我之前用 VS2008 写的那些程序,无一幸免,清除不了全部被卡巴删掉了,
但是为什么一些程序,像 Office、MSN,还有 IE8 的安装包,这些,同样是 exe,为什么就没有被感染?
从编程的角度来讲,难道有什么方法可以减少自身被感染的风险么?比如修改入口地址什么的?

ps: 请不要提 CRC32 自校验之类的,那个我会,而且那个也已经是事后了。我想控制的是事前。
谢谢!
...全文
4855 24 打赏 收藏 转发到动态 举报
写回复
用AI写文章
24 条回复
切换为时间正序
请发表友善的回复…
发表回复
rendao0563 2009-07-24
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 davidhsing 的回复:]
引用 2 楼 rendao0563 的回复:
从编程的角度。都可以感染。只是高手写的程序感染之后程序大小可以不变。这就要求很高了。计算该程序是否有足够的空余空间填充感染代码。如果只是普通的捆绑感染。不管你什么exe都是一样的。


我想这位仁兄你可能理解错了,卡巴斯基判断有没有被病毒感染并不是依据文件字节数。你可以试试看
[/Quote]

您理解错了。我没提及卡巴斯基的处理方式。
VistaKobe 2009-07-22
  • 打赏
  • 举报
回复
学习。
diannaomingong 2009-07-21
  • 打赏
  • 举报
回复
楼主这情况,大概那病毒是根据exe的某些特征来感染.一般要靠你赚钱的病毒,不会让病毒把你系统整瘫痪了, 而且系统文件通常有保护. 大概楼主中那病毒是看程序是否是微软出品或者其他什么类似系统程序的标示, 是则不感染.

如果病毒是有权限执行写文件数据,则exe文件,doc文件等一般在劫难逃.

防止感染的法子和处理的思路,以我经历说明

以前唯金病毒发作的时候,也是电脑里很多exe都被感染
当时也没有什么工具,杀毒厂商都是吃屎的,大概想等病毒蔓延了他们好彰显能力,我上报病毒样本几天没人管.
无奈之下自己搞
重新安装了一些程序,例如winhex和java.(VS被感染作废后,重装的成本太大了)
先用winhex研究了下感染的文件和正常的区别,发现都是在头部加固定的东西.
遂用java写了个修复程序,也就是打开文件,二进制读取,判断有没病毒特征,有就移去病毒段的程序,没什么技术含量.

但是java程序的思路值得借鉴,用java作平台,你写的程序不是exe,这样就可以一定程度上保护你的程序.所以如果类似地,你自己写的exe不是用以实现所有功能,而是载入某些数据解析执行,那么也可以一定程度上保护你的程序. 至于必须执行的那个exe,还是可能被感染,就像java.exe也可能被感染.但是假如是只感染一个exe,你的程序都可因为自定义数据格式和文件后缀逃过一劫,那么恢复工作也就是重装个java而已,不用全部扫描挨个修复.
greatws 2009-07-21
  • 打赏
  • 举报
回复
按理说安装文件更应该去感染才是,这样重装系统你总要去安装软件吧,这样病毒不会被清除,岂不是对自身更有利?估计病毒是判断exe类型比如区段之类的,以及有没有病毒需要的dll导入库,很可能那些没有被感染的exe用不到这些dll,病毒就不会感染他。

我曾发过一帖,http://topic.csdn.net/u/20090427/16/3147cd76-4d00-4298-86ed-c4b47c4bb76c.html
我想原因和这差不多,到入库的问题,如果感染了就不能运行了,暴露自身考虑,就不会感染这些文件了。
pady_pady 2009-07-21
  • 打赏
  • 举报
回复
呵呵,现在看文件是不是被修改了,直接算sha就可以,有现成的算法,所以很容易判断有没有被感染
DavidHsing 2009-07-21
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 rendao0563 的回复:]
从编程的角度。都可以感染。只是高手写的程序感染之后程序大小可以不变。这就要求很高了。计算该程序是否有足够的空余空间填充感染代码。如果只是普通的捆绑感染。不管你什么exe都是一样的。
[/Quote]

我想这位仁兄你可能理解错了,卡巴斯基判断有没有被病毒感染并不是依据文件字节数。你可以试试看
supercow 2009-07-21
  • 打赏
  • 举报
回复
我觉得可能
1.病毒是自己判断了的. 它如果按照添加空节的方式进行感染,安装包一般都是有校验的,必然无法正常运行.
2.感染方式的选择, 如果是捆绑感染,去没感染到这些文件,有一种原因就是在获取这些exE的图标资源出现问题.这个可以去考虑下.
3.一般加了壳压缩的程序, 一般不会给他机会留下空隙.所以如果病毒本身不怎么样, 就不会感染这些了.
gyk120 2009-07-21
  • 打赏
  • 举报
回复
那是PE感染,修改地址没有太大效果,因为有些只是加了一个段,数字签名是好的解决方法
oyljerry 2009-07-21
  • 打赏
  • 举报
回复
取决于病毒是否愿意去感染,像Office、MSN,还有 IE8 安装包等都有数字签名,可能安装会验证,被改了,安装估计就会退出...
killbug2004 2009-07-21
  • 打赏
  • 举报
回复
看看病毒样本,感染宿主的代码是可以控制的,比如某些文件夹下的不感染,某些特征的可执行文件不感染,
某些程序不符合病毒的感染要求等等,病毒也是程序
rendao0563 2009-07-21
  • 打赏
  • 举报
回复
从编程的角度。都可以感染。只是高手写的程序感染之后程序大小可以不变。这就要求很高了。计算该程序是否有足够的空余空间填充感染代码。如果只是普通的捆绑感染。不管你什么exe都是一样的。
aa3000 2009-07-21
  • 打赏
  • 举报
回复
关注一下
DavidHsing 2009-07-21
  • 打赏
  • 举报
回复
嗯,谢谢楼上的,我找找看先
数字签名应该是帮助验证程序有没有被修改过吧,对于被感染,应该用处不大吧?
jingzhongrong 2009-07-21
  • 打赏
  • 举报
回复
不同的病毒感染的方法不会都是一样的,针对某一病毒的防护措施可能对其他的病毒就没有效果了,不过,压缩PE文件对文件型病毒有一定的效果,至于如何生成较小的EXE文件,我记得看雪和CSDN各自有过一篇文章,lz可以搜索一下。
另外,还可以使用加壳的方法来压缩,同样可以在一定程序上抵抗病毒。
关于MS的程序病毒没有感染,可能是因为数字签名。如果想具体知道为什么,只能反汇编或调试了,可以用IDA和OllyDbg在虚拟机里面弄弄。
关于10楼的方法,很有参考价值,比如在程序中使用脚本引擎。
DavidHsing 2009-07-21
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 greatws 的回复:]
按理说安装文件更应该去感染才是,这样重装系统你总要去安装软件吧,这样病毒不会被清除,岂不是对自身更有利?估计病毒是判断exe类型比如区段之类的,以及有没有病毒需要的dll导入库,很可能那些没有被感染的exe用不到这些dll,病毒就不会感染他。

我曾发过一帖,http://topic.csdn.net/u/20090427/16/3147cd76-4d00-4298-86ed-c4b47c4bb76c.html
我想原因和这差不多,到入库的问题,如果感染了就不能运行了,暴露自身考虑,就不会感染这些文件了。
[/Quote]

嗯,这个说的也有道理。不过这只是对于显示调用的 dll 库有用,对于 LoadLibrary 动态调用的库恐怕会引起误判吧(从病毒开发的角度来讲)...
照理说,我用 VS2008 写的程序,所依赖的库(2008的运行库)肯定比 MSN 多(不考虑 MSN 自身的库的话),所以我觉得这样的话,似乎它更应该感染 MSN 呀

这是可惜我不会汇编来跟踪调试,要是会的话分析一下病毒样本就清楚多了。
DavidHsing 2009-07-21
  • 打赏
  • 举报
回复
我用 PEiD 看了一下 MSN 的主程序,也没有加壳呀,奇了怪了
DavidHsing 2009-07-21
  • 打赏
  • 举报
回复
嗯,楼上兄弟说的不错,只是想请教一下,如何才能做到这样“紧凑的”PE 结构呢?
是通过 VS 本身还是得借助于第三方工具?
KeSummer 2009-07-21
  • 打赏
  • 举报
回复
1:有些PE文件结构是“紧凑的”,没有足够的空间来存放病毒代码,例如IAT、段间空闲区等。

2:要看感染病毒的逻辑,有些病毒为了减少CPU的利用率来掩人耳目,只是随机挑几个来感染。

3:杀毒软件禁止比感染好。
DavidHsing 2009-07-21
  • 打赏
  • 举报
回复
10 楼兄弟这种精神很不错,赞一个!
jingzhongrong 2009-07-21
  • 打赏
  • 举报
回复
10楼的方法值得参考
加载更多回复(4)

15,466

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 进程/线程/DLL
社区管理员
  • 进程/线程/DLL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧