每天拿出一分钟来学习,你的生命会更加精彩。

易语言 免杀360心得总结。

发布:洪雨2019-6-3 9:16分类: 编程相关 标签: 易语言 编程

    我不是一个专业程序员,只是一个易语言爱好者,没事喜欢写点东西。

    作为一个杀毒软件必杀的冷门语言,我真是很无奈,一个空程序编译出来,360都要报毒,实在无语。

    论起杀毒软件,现在最狠的还是360,当你写了一个东西,其他杀毒软件都不杀的时候,360还是要杀。无论你写什么东西,反正就是杀你。

    以我微薄的技术与之抗衡很多年,做一下总结。

    360杀毒有五大引擎,一是小红伞,二是qvm人工智能,三是qex脚本查杀,四是启发式引擎,五是云查杀。

    一,360杀易语言的特征。也就是说,只要你用易语言写的,就杀。

    这个处理方法比较简单,用易语言自带的加花就能过,不过过的时间不久,特征还是在的,最好是用传统的去特征的方法。

    在不同版本中,特征不同,多数情况稍加修改即可,比如配置中填写软件名,去掉写入版权内容的对勾,添加或者替换资源等等。

    二,特征定位修改

    具体的方法我不啰嗦,用软件定位特征反编译修改即可,该删的删该替换的替换。当年非常盛行,而且效果极好,然后加花加壳就能过卡巴一年多。但是对于360云查杀,还是不行……360云查杀的白名单机制,简直变态。只要不在它安全名单里的,全部认为是病毒……

    特征定位可以过小红伞,qex和qvm,但是过一段时间qvm就过不了了,因为“人工智能”嘛,说白了就是白名单系统,需要一定的匹配时间。

    三,加壳加花

    其实加壳加花是有用的,先说说市面上的花,大多都是个人高手自创的工具,知名的大多成为了历史,不再更新了。在当下,市面上几乎找不到新的,能够加花的工具。

    壳工具还是很多的,像四大神壳一直在更新,免费版就很好使。套上就能过360,傻瓜又立竿见影。

    但是,过的时间不长,半个月。    

    四,源码花

    这个很容易理解,就是在程序写完以后,再添加大量无用逻辑运算和判断跳转。这样做是有效果的,尤其在敏感代码前后使用,或者直接在“花”中判断运行。可以将平时写的逻辑判断运算等,编辑成模块,每次写程序直接调用模块来加花。

    这里洪雨多嘴说个组件花,什么是组件花?比如按钮,我们来50个,比如编辑框,我们来100个,而且这些组件下都有运算命令,但都是无意义的。同样能起到很好的混淆效果。

    五,压缩壳

    目前为止,各种压缩壳貌似效果不行,因为360有启发式,只要你运行了敏感动作,它都可以杀内存。不过我们讲的是没有敏感动作,它还要杀的解决办法。很早以前用win自带的iexpress捆绑压缩就可以过,现在不行了,被玩烂了。


    说说方法

     一,源码定位,首先删减源码,然后编译,如果报毒,继续删减,直到不报毒为止,定位出报毒的子程序。然后删减子程序的命令,进行编译,最终定位出报毒的命令。(大型软件就算了,代码太多,太费事)

     二,在敏感代码前后,子程序前后,添加大量无意义的不报毒命令。例如循环1000次判断计算加减乘除运算。跳来跳去,就是上面提到的源码花
     三,编译后替换资源,建议替换360相关产品(非杀毒卫士)下带证书的资源,最好是dll文件。越大越好。
    四,压缩壳或者加密壳,建议upx压缩壳最高压缩。因为upx比较好脱壳,所以不容易报毒。加密壳推荐Themida 强壳暂时可以直接过。以前se壳比较牛,因为太牛了,所以360直接报,其实四大神壳都可以的,只是tmd和se用的人多,被和谐的比较快。
    五,体积膨大,这个比较有意思,在一定程度上可以阻止360上传检测。如果不介意,最好把自身膨大到1G以上。
程序中写入自我膨胀最好。膨胀还有一个好处,就是能够改变自身md5值,最好设置成随机体积。
    六,先膨胀再压缩,也就是上面4和5颠倒一下。换完资源就膨胀,然后再压缩。七,敏感命令dll化,把敏感的命令,比如运行,比如文件读写,这样的命令封装在dll里,调用运行。在dll中也加入源码花,效果更佳。    

    七,封装打包,上面提到,把敏感命令都编译到dll文件中,每个命令封装一个dll,每个dll加源码花,然后再加密壳,最后打包到一起,变成一个程序。市面上打包程序很多,都试试,效果不同,有的打包软件就带免杀效果,打包后就免杀了。

    八,7-zip捆绑,这款软件是一个压缩工具,本来是和winrar等一样的压缩打包软件,但它独特的压缩算法,免杀效果不错。之前我们大量使用winrar的自解压运行功能进行捆绑免杀,和网赚静默安装。所以winrar报毒严重。但是7-zip却少有人使用,所以无论是捆绑,还是静默安装,免杀效果都不错。

    九,敏感命令巧用bat,bat批处理很大程度是不报毒的,像运行文件这样的命令,用批处理来就不会报毒。所以,有些能过被动防御的程序,结合批处理来执行,就能巧妙逃脱杀毒检测。

    说一个思路,复杂了一点,多看几遍。首先准备原文件,将原文件用zip压缩,仅仅就是压缩,这样它就能过被动防御,然后准备一个bat,bat里面的命令是,隔5秒钟后,解压刚才的zip文件,并运行原文件。好,我们手上有这样两个文件,一个zip压缩过的原文件,一个bat文件。我们再将这两个文件用winrar压缩,做成自解压文件,设置解压后自动释放两个文件,并运行bat。这样,bat会先等待5秒钟,等两个文件都释放出来以后,开始解压zip后运行原文件。

    其实把bat换成vbs也是可以的,因为都是脚本语言,多尝试,哪个效果好用哪个。

    十,再说一个dll和bat结合的例子,这个比较简单一些,就是将命令直接放到启动子程序里,然后封装。或者,启动子程序下加载一个窗口,在窗口程序集的启动窗口时运行命令然后直接结束。无论哪个,效果一样。重点是,我们用bat批处理来运行这个dll,其实就是注册它,直接regsvr32 /s xxx.dll 就能运行dll里的程序。然后呢,我们把dll该加花的加花,该加壳的加壳……

    十一,说说捆绑吧,最简单的就是winrar的自解压运行,或者更厉害一点的zip自解压。当年流行windows自带的iexpress进行捆绑免杀。那个年代我还是一个小鸟,没赶上。所以现在统统不过360,因为360的云查杀,所以只要一个病毒样本被解析,其他全部不好使。

    关于捆绑,说几个原理上的,第一个是把一个程序对接到另一个程序屁股上,运行的时候运行两个程序,一个完整的程序理论上后面可以加任何东西,所以就可以对接上。这个很low,所以没啥用。第二个,就是资源加载,程序资源区段很特别,部分包含了程序能用到不能用到的所有东西,所以就可以写进去任何东西。先写一个a程序,a程序只有一行代码,就是释放资源并运行,然后将b程序,也就是我们要运行的真正程序,写到a的资源里。我们用一个自解压来打包a程序,这样就ok了,a的资源里理论可以加载无限多的程序,也就是捆绑无限多的程序。

    先写到这吧待更新~


说说360qvm人工智能的免杀,一下资料来自互联网,我也亲测了,有效。

HEUR/Malware.QVM06.Gen    一般情况下加数字签名可过
HEUR/Malware.QVM07.Gen    一般情况下换资源
HEUR/Malware.QVM13.Gen    加壳了
HEUR/Malware.QVM19.Gen    杀壳 (lzz221089提供 )
HEUR/Malware.QVM20.Gen    改变了入口点
HEUR/Malware.QVM27.Gen    输入表
HEUR/Malware.QVM18.Gen   加花
HEUR/Malware.QVM05.Gen   加资源,改入口点
========以上网上收集的,下面是个人经验==============
QVM02 找特征
QVM07 加资源一般加到2M会报QVM06
再加数字签名,然后再慢慢减资源,这个方法对大部分木马有效果。
QVM06 加数字签名
QVM12杀壳
QVM13杀壳
QVM27杀输入表
QVM19 加aspack
QVM20就加大体积/加UPX压缩
 
QVM 18.19 解决方法 入口点加1 在合并区段
OVM 06 07 加数字签名均能过
QVM20 加3.4个资源在加数字签名
 
云引擎; 入口点变异 或者修改MD5
云引擎; 通用免杀方法加资源版本和图标 再加ASPack
 
后门程序 ; 解决方法 加PassQVM1.2 报QVM07 添加手动数字签名 就能过
 
小红伞源码免杀就杀几个下载函数
无特征码免杀直接隐藏输入表  添加空区段
特征码免杀就对定位到的主函数进行跨区段移位api函数在本区段找空白移位
记住移位后的新地址在OC转为内存地址 在修改指针 如果不行就减去镜像基址
大多都是RVA地址
定位到DLL文件上直接填充
 
加壳免杀直接加se或者穿山甲这些就过了
 
BD免杀处理; 改资源 换图标 版本 再加个强壳 最后加个签名
 
无特征免杀; PE优化 加签名DLL文件  PE头移动 小熊PE修改器
加区段小熊PE修改器 加函数跟主函数添加一样的 微软压缩永久免杀
改壳免杀 等价替换 为实现跳转NOP掉 添加空区段 clcc指令可以nop
或者打乱pE结构  PE结构打乱工具  前提做处理 加资源 打乱pE结构  在加壳

温馨提示如有转载或引用以上内容之必要,敬请将本文链接作为出处标注,谢谢合作!

已有 0/9679 人参与

发表评论:

欢迎使用手机扫描访问本站,还可以关注微信哦~