易语言静态编译后防误报处理办法

易语言编译后为何被误报有毒

编译:直接将代码转换为程序,程序运行时要求系统或该软件运行目录里有该程序运行时所需要的库文件!静态编译:将代码编译为程序,再将软件运行所需要的压进程序里,当程序运行时释放库文件,再从指定位置读取调用库文件,使程序运行!
“静态编译”的程序就很类似于捆绑木马:1.程序运行,2.释放文件,3.调用文件!几乎都差不多把!只是最后一步有点差别!
“静态编译”的程序里面含有程序运行所需要的库文件,运行程序后就像是捆绑了东西的文件,释放文件,并调用!使杀毒软件误以为程序是被捆绑后的的软件,所以报毒!而现在大多数人都应该用的是静态编译,所以就有了网上闹得沸沸扬扬的“易语言误报门”了!
“编译”出来的程序,直接调用库文件,类似于C++,而静态编译则需要先将库文件释放出来在加以调用,就类似于“winrar自解压”,使得杀毒软件检测到程序里包含了其他文件,而且程序里也含有将文件释放出来的命令,触动杀毒神经,所导致杀毒误认为是捆绑了木马的程序,故杀毒软件认为“静态编译”出来的程序是病毒!
其实杀软是以特征码为防杀依据,不可否认,易语言一开始被很多人用来写注入,木马的,下毒软件云库里很积累很多这样的类似病毒的特征码。

解决方案

1、加壳,使用 ASPack, upx shell
2、反编译资源工具Restorator
删除无用资源
在静态编译后,易语言不仅将一些支持库封装到了EXE中,而且还写出了一些资源,比如输入框()的窗口、一些鼠标指针样式等,但往往是这些东西导致了易语言程序被报毒,我们只需要删除用不到的资源即可。
这里使用Restorator删除。
然后开始删除无用的资源。
(1、)点击位图,然后按DEL键全部删除,位图是可以被删除的。
(2、)然后删除掉菜单
然后打开对话框,可以看到有英文的,也有一串数字的项目。
带英文的项目是你自己的窗口,不要删除他,那些带数字的项目,你可以按照需求删除,点击他们你会看到界面,一般都删除了也不碍事,免杀效果更好而已。
(3、)然后删除整个指针。
然后打开图标,可以看到有项目叫”DEFAULT_ICON”,意思是默认的图标。
点击它可以看到是你设置的默认程序图标,不要删除它。
至于另外的两个,就删除吧。(那个钥匙的图标貌似跟数据库有关,可以删)

删除到这里就结束了,按下ctrl+s存档。

3、提交360
将你的程序提交给360样本库,他们会在24小时之内解决。
在这里进入提交:http://sampleup.sd.360.cn/

4、替换链接器
现在有VC7、VC8、VC9、VC2010、VC2012,但有的链接器并不能百分百的成功编译,比如VC2012兼容性是最差的,推荐使用VC7链接器。

5、360开发模式
360 设置中心—》安全防护中心---》开发者模式

6、工具下载
链接:http://pan.baidu.com/s/1qXIPGeC 密码:jpkp


发布日期:

所属分类: 易语言