AES免杀几个姿势

极客

本文目录导读:

AES免杀几个姿势

  1. 姿势一:别把钥匙挂脖子上,动态生成才聪明
  2. 姿势二:内存里翻江倒海,别在硬盘上留下“案底”
  3. 姿势三:混淆与加密双管齐下,让特征码“见鬼”去
  4. 最后,咱得说点掏心窝子的话

AES免杀几个姿势?别急,我这就把压箱底的经验掏给你!

哎,兄弟们,最近后台好多人在问AES免杀的事儿,搞得我好像什么隐藏大佬一样,其实吧,我也就比你们多踩了几个坑,多熬了几个夜,黑眼圈都重了两斤(笑),既然大家这么捧场,今天我就豁出去了,把平时自己折腾的AES免杀几个姿势,用最“人话”的方式跟你唠唠。先说好,这玩意儿纯属技术研究,别拿去做坏事啊,不然我连夜删除文章跑路,不带商量的!

别把钥匙挂脖子上,动态生成才聪明

咱先聊第一个,也是最基础的姿势——密钥别硬编码,你说你写个程序,把AES的Key和IV(初始化向量)大摇大摆写成全局变量,这跟把家门钥匙藏在门口地垫下有什么区别?杀软一扫,直接命中特征码,脸都给你打肿。

我之前就干过这傻事,结果被杀软按在地上摩擦,后来学聪明了,咱用动态生成密钥,比如根据机器码、用户名,或者干脆每次运行都随机生成,然后再把密钥塞进程序里,哎呀妈呀,效果立竿见影!这样一来,静态扫描基本废了,因为你每台机器上的“钥匙”都不一样,这就像一个动态的暗号,他自己都不知道下一秒该对上什么词儿。

关键点: 这个姿势的核心是“变化”,让杀软觉得你不是个静态的、可预测的家伙,咱得像个滑不溜秋的泥鳅,让他抓不住。

内存里翻江倒海,别在硬盘上留下“案底”

第二个姿势,可以说是我个人最喜欢的,那就是AES解密过程全内存化,你想想,如果你把加密的Payload(恶意代码)放在本地文件里,运行时候再读出来解密,这不就明摆着告诉杀软“我这儿有鬼”吗?尤其是那些文件落地扫描,你连跑都跑不掉。

我的做法是什么呢?我根本不让密文彻底落地,或者让它以图片、资源文件这种“人畜无害”的形态待着,等程序跑起来,咱在内存里把这段“人畜无害”的数据捞出来,用AES一顿操作解密成Shellcode,直接扔进内存执行区。

这过程啊,就像你朋友在你耳边说了一句悄悄话(密文),你大脑(内存)里瞬间反应过来他什么意思(解密),然后转身就去干事儿了(执行)。硬盘上干干净净,没留下任何蛛丝马迹,只有内存里有一瞬间的“风起云涌”,但杀软去扫描文件的时候,早就晚了!这种“瞬爆”的感觉,别提多带劲了。

混淆与加密双管齐下,让特征码“见鬼”去

第三个姿势,我得给你们整点“花活”了,光AES加密本身就够挡一阵子了,但你得知道,有些杀软是“行为检测”的,你AES解密出来那一下,他可能盯上了。咱得把AES和小技巧混合一下

咱们可以对Payload做二次处理,像是Base64编码、异或运算,或者塞进去一堆垃圾指令(花指令),这就好比,咱把要传递的情报(Payload)先用AES锁进保险箱,然后给保险箱外面再涂上一层迷彩(Base64+花指令),或者伪装成一个垃圾堆里的破箱子,杀软就算看见了,第一反应是:“这是啥玩意儿?怎么一堆乱码?”,等他反应过来,咱都已经运行完了。

特别提示: 这个姿势的精髓在于“藏匿”,AES负责加密内容的机密性,混淆负责隐藏加密过程或者解密后的数据特征,你说这俩兄弟一结合,咱的免杀效果是不是咔咔往上涨?我试过,这种方式生成的样本,过主流杀软的静态检测基本没压力,舒服得一批。

咱得说点掏心窝子的话

好了,以上就是我实战里常用的AES免杀几个姿势,说实在的,免杀这东西,就是一场猫鼠游戏,永远没有一劳永逸的神器,今天你用的姿势,明天可能就被针对了,所以啊,思路得活,姿势得新

我还记得我第一次用AES做免杀,成功绕过360的时候,那感觉,比喝了冰可乐还爽!但千万记住了,咱们做技术研究,图一乐,提升一下自己的安全知识可以,千万别用来干坏事,不然,就算你免杀做得再好,也逃不过法律的“AES密钥”给你强制解密。

行了,今天唠得差不多了,我得去补觉了,昨晚又折腾到大半夜,你要是也喜欢捣鼓这些技术,或者有什么新姿势,欢迎在评论区跟我唠唠!咱们下回见!

文章版权声明:除非注明,否则均为极客网安-咸鱼原创文章,转载或复制请以超链接形式并注明出处。

目录[+]