代码被误杀(毒霸,DEV C++不容?!)

padiu01 2009-08-07 10:19:50
开发工具:Dev c++
版本:4.9.9.2
平台:WinXP sp3

杀毒工具:金山毒霸2009
病毒库版本:2009.8.6.18

程序:

#include<iostream>
using namespace std;

int main()
{
cout<<"this is a test"<<endl;
return 0;
}


错误:
编译时,毒霸会提示病毒文件,并删除

问题排解:
依据提示,源码编译后产生的可执行exe文件为病毒,并删除,因此,无可执行文件。进入相关目录下查看,无可
执行exe文件
解决方案:
关闭毒霸,重新编译,产生可以执行文件,运行此文件,正确执行代码。

疑惑:
问题应该是发生在代码编译成可执行文件的时候,生成的可执行文件,某些可执行部分和毒霸病毒库文件匹配上了,
因此被认为是病毒文件,可执行文件是2进制码,我查看不了
请问:杀毒软件杀毒的依据是什么呢?他凭什么判定一个可执行文件是安全还是不安全?亦或者我的推论是错误的
这种编译本身就是可能产生病毒文件的?请了解杀毒原理的高手解惑
...全文
264 21 打赏 收藏 转发到动态 举报
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhunanhui 2010-10-11
  • 打赏
  • 举报
回复
现在杀毒软件都TMD的垃圾,随便写简单代码都会报病毒
Vicent20138888 2010-09-22
  • 打赏
  • 举报
回复
[Quote=引用 17 楼 padiu01 的回复:]

其实吧....和别的杀毒软件没关系,我只要把毒霸停掉,程序是可以正常执行的
这样的小程序,我在BCB,VC6.0.VS2008中分别执行(金山毒霸开启的情况下),都不会出现问题
所以,结论只可能是((DEV C++) && 毒霸)==false 恒成立
我就是好奇....一款杀毒软件,凭什么确定一个可执行文件是病毒?又或者,从源代码->可执行文件,这
两者之间有什么变故吗……
[/Quote]
江民杀毒的情况和楼主的毒霸类似,也误报为病毒。
padiu01 2009-08-11
  • 打赏
  • 举报
回复
我尝试的排查过程...请大侠帮忙看看....
1.杀毒软件的原理:匹配病毒特征码,病毒码的版本来自于杀毒软件的版本库
2.代码的编译过程:两个步骤
一:预处理器对预处理指令(#include、#define和#if)进行处理,在内存中输出翻译单元(一种临时文件)。这一步是没有问题的
二:编译器接受预处理的输出,将源代码转换成包含机器语言指令的目标文件。问题出在这个地方,因为在转换成机器语言的时候,会同时转换C++的标准类库(就是iostream库出的问题)

结论只能是,金山的病毒库版本真的很菜....

lyl_98 2009-08-10
  • 打赏
  • 举报
回复
任何事情都有可能发生,
就像楼主,写的,如此简单的代码一样,
看来楼主可以开发病毒了,好好
zgjxwl 2009-08-08
  • 打赏
  • 举报
回复
呵呵。。。上次写的一个程序,瑞星也当病毒杀呢。。禁用瑞星就OK了。。这样的事常有。
  • 打赏
  • 举报
回复
毒霸误杀不是他的错,是你的错,谁让你装的。
padiu01 2009-08-07
  • 打赏
  • 举报
回复
进程名: winlogon.exe
可信认证: 安全
PID: 1380
CPU: 00
内存使用: 1.46 MB
进程模块路径: C:\WINDOWS\system32\winlogon.exe
描述: 这是 Windows 系统的用户登陆程序,管理用户登录和退出。该进程的正常路径应是 C:\Windows\System32 且是以 SYSTEM 用户运行。

进程名: services.exe
可信认证: 安全
PID: 1424
CPU: 00
内存使用: 8.71 MB
进程模块路径: C:\WINDOWS\system32\services.exe
描述: 该进程是多个 Windows 系统服务的宿主。在事件查看器查看系统程序和组件颁发的事件日志消息,使计算机能识别并适应硬件的更改。

进程名: lsass.exe
可信认证: 安全
PID: 1436
CPU: 00
内存使用: 800 KB
进程模块路径: C:\WINDOWS\system32\lsass.exe
描述: 管理 IP 安全策略以及启动 ISAKMP/Oakley (IKE) 和 IP 安全驱动程序。 产生会话密钥以及授予用于交互式客户/服务器验证的服务凭据(ticket)。

进程名: explorer.exe
可信认证: 安全
PID: 1440
CPU: 00
内存使用: 16.15 MB
进程模块路径: C:\WINDOWS\Explorer.EXE
描述: Windows 资源管理器程序。

进程名: conime.exe
可信认证: 安全
PID: 1484
CPU: 00
内存使用: 4.08 MB
进程模块路径: C:\WINDOWS\system32\conime.exe
描述: Console IME (IME控制台) 是输入法编辑器,允许用户使用标准键盘输入复杂的字符与符号。但如果其的路径不是系统目录,则可能是某病毒的伪装。

进程名: TPONSCR.exe
可信认证: 安全
PID: 1540
CPU: 00
内存使用: 3.39 MB
进程模块路径: C:\Program Files\Lenovo\HOTKEY\TPONSCR.exe
描述: 联想笔记本键盘快捷键/功能键相关程序,用于按键结果状态的显示。

进程名: procmgrex.exe
可信认证: 安全
PID: 1548
CPU: 01
内存使用: 12.80 MB
进程模块路径: C:\Program Files\Kingsoft\Kingsoft Internet Security\procmgrex.exe
描述: Kingsoft AntiVirus Process Manager Plus
padiu01 2009-08-07
  • 打赏
  • 举报
回复
进程名: kpfwsvc.exe
可信认证: 安全
PID: 864
CPU: 00
内存使用: 5.14 MB
进程模块路径: C:\Program Files\Kingsoft\Kingsoft Internet Security\KPfwSvc.EXE
描述: 金山网镖的网络防火墙相关进程。它集成了防火墙、ASIC VPN、入侵检测、防拒绝服务网关、多媒体通信安全、ADSL/ISDN接入安全等众多安全功能。

进程名: ati2evxx.exe
可信认证: 安全
PID: 908
CPU: 00
内存使用: 5.71 MB
进程模块路径: C:\WINDOWS\system32\Ati2evxx.exe
描述: ATI 显卡热键管理服务。

进程名: kwatch.exe
可信认证: 安全
PID: 1008
CPU: 00
内存使用: 46.79 MB
进程模块路径: C:\Program Files\Kingsoft\Kingsoft Internet Security\KWatch.EXE
描述: 这是金山毒霸的实时监控服务程序。它可对电脑中的文件进行实时监控,确保系统安全不受威胁。

进程名: kxeserv.exe
可信认证: 安全
PID: 1056
CPU: 00
内存使用: 9.06 MB
进程模块路径: C:\Program Files\Common Files\Kingsoft\CommonService\kxeserv.exe
描述: Kingsoft Antivirus Service Manager

进程名: smss.exe
可信认证: 安全
PID: 1268
CPU: 00
内存使用: 444 KB
进程模块路径: C:\WINDOWS\System32\smss.exe
描述: 这是Session Manager Subsystem(会话管理子系统)的进程,它用以初始化系统变量。

进程名: SynTPEnh.exe
可信认证: 安全
PID: 1280
CPU: 00
内存使用: 7.69 MB
进程模块路径: C:\Program Files\Synaptics\SynTP\SynTPEnh.exe
描述: Synaptics 触摸板托盘程序。 Synaptics 触摸版在笔记本电脑上作为内建鼠标。

进程名: csrss.exe
可信认证: 安全
PID: 1344
CPU: 00
内存使用: 10.70 MB
进程模块路径: C:\WINDOWS\system32\csrss.exe
描述: 这是Windows 图形相关控制的客户端服务子系统。正常情况 Windows NT/2000/XP/2003 中只有一个 csrss.exe 进程,位于 System32 文件夹。
padiu01 2009-08-07
  • 打赏
  • 举报
回复
其实,我只是想知道从源码到可执行文件中,经历了什么?添加了什么可能会被认为是病毒的东西?
或者杀毒软件在这个过程中,凭什么判断病毒的标准...而不是换个杀毒软件去解决问题
进程如下,因为用的IBM本本,系统进程太多,希望大家帮忙看看吧,我本人倒不认为电脑感染病毒。
进程名: System
可信认证: 安全
PID: 4
CPU: 00
内存使用: 316 KB
进程模块路径:
描述: Microsoft Windows 系统核心进程。Microsoft Windows(微软视窗)是一个为个人电脑和服务器用户设计的操作系统。

进程名: tpfnf7sp.exe
可信认证: 安全
PID: 512
CPU: 00
内存使用: 3.90 MB
进程模块路径: C:\Program Files\Lenovo\NPDIRECT\TPFNF7SP.exe
描述: Presentation Director Fn+F7 handler

进程名: svchost.exe
可信认证: 安全
PID: 392
CPU: 00
内存使用: 3.91 MB
进程模块路径: C:\WINDOWS\system32\svchost.exe
描述: Service Host Process 是一个标准的动态连接库主机处理服务。它包含很多系统服务。

进程名: wmiprvse.exe
可信认证: 安全
PID: 688
CPU: 00
内存使用: 5.44 MB
进程模块路径: C:\WINDOWS\system32\wbem\wmiprvse.exe
描述: WMI 包括对象储备库和 CIM 对象管理器。其中对象储备库是包含对象定义的数据库,对象管理器负责处理储备库中对象的收集和操作并从 WMI 提供程序(WMI Provider)收集信息。

进程名: TpShocks.exe
可信认证: 安全
PID: 760
CPU: 00
内存使用: 3.38 MB
进程模块路径: C:\WINDOWS\system32\TpShocks.exe
描述: ThinkVantage Active Protection System,IBM 动态保护系统。

进程名: kswebshield.exe
可信认证: 安全
PID: 840
CPU: 00
内存使用: 4.95 MB
进程模块路径: C:\Program Files\Kingsoft\Kingsoft Internet Security\webshield\KSWebShield.exe
描述: 金山网盾 金山安全实验室出品
至善者善之敌 2009-08-07
  • 打赏
  • 举报
回复
用NOD32吧,短小精悍!
rendao0563 2009-08-07
  • 打赏
  • 举报
回复
毒霸是低端杀毒软件。误报很正常。病毒库靠数量取胜。
Vegertar 2009-08-07
  • 打赏
  • 举报
回复
以前遇到好几次这样的问题,情况与楼主类似,然后我解决方案是

再也不用IDE,再不装杀毒软件,本子里的Windows也改成Vista,呵呵,现在Vista是用来玩游戏的。
我啃 2009-08-07
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 padiu01 的回复:]
谢谢2楼的回答
不是想用换杀毒软件的办法来解决问题,
只是奇怪产生这个问题的原因
杀毒软件凭什么去判定一个正确的代码编译成可执行文件就成了病毒?
或者从代码到可执行文件的过程,到底经历了什么?
我的电脑应该没有感染任何病毒,在运行此程序前,
刚买的本本,只装了必要的工具软件
[/Quote]
找到了所谓的特征码~
无码的就不会报,赫赫
老邓 2009-08-07
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 padiu01 的回复:]
谢谢2楼的回答
不是想用换杀毒软件的办法来解决问题,
只是奇怪产生这个问题的原因
杀毒软件凭什么去判定一个正确的代码编译成可执行文件就成了病毒?
或者从代码到可执行文件的过程,到底经历了什么?
我的电脑应该没有感染任何病毒,在运行此程序前,
刚买的本本,只装了必要的工具软件
[/Quote]
看任务管理器的进程列表,看有没有可疑的进程?
或者用优化大师的进程管理器将进程导出来让大伙看看。
padiu01 2009-08-07
  • 打赏
  • 举报
回复
谢谢2楼的回答
不是想用换杀毒软件的办法来解决问题,
只是奇怪产生这个问题的原因
杀毒软件凭什么去判定一个正确的代码编译成可执行文件就成了病毒?
或者从代码到可执行文件的过程,到底经历了什么?
我的电脑应该没有感染任何病毒,在运行此程序前,
刚买的本本,只装了必要的工具软件
lzy0001sl 2009-08-07
  • 打赏
  • 举报
回复
代码肯定没有病毒,是机子上的病毒。毒霸怎么这回厉害起来了,我用的时候从来查不出来的。
老邓 2009-08-07
  • 打赏
  • 举报
回复
这个程序本身是没有病毒的。
是你计算机有病毒了,感染PE文件,所以重装机器吧。
老邓 2009-08-07
  • 打赏
  • 举报
回复
卸载毒霸,换成卡巴!
padiu01 2009-08-07
  • 打赏
  • 举报
回复
其实吧....和别的杀毒软件没关系,我只要把毒霸停掉,程序是可以正常执行的
这样的小程序,我在BCB,VC6.0.VS2008中分别执行(金山毒霸开启的情况下),都不会出现问题
所以,结论只可能是((DEV C++) && 毒霸)==false 恒成立
我就是好奇....一款杀毒软件,凭什么确定一个可执行文件是病毒?又或者,从源代码->可执行文件,这
两者之间有什么变故吗?
老邓 2009-08-07
  • 打赏
  • 举报
回复
哦,看来进程里没有问题。
换卡巴试过了?
加载更多回复(1)

24,854

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 工具平台和程序库
社区管理员
  • 工具平台和程序库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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