AES免杀了解吗

极客

《AES免杀了解吗?聊聊我踩过的那些坑,说实话真没那么玄乎!》

哎,兄弟们,最近后台好多朋友私信问我:“AES免杀了解吗?” 说实话,看到这个问题我嘴角一歪,心里五味杂陈啊,今天咱们就掏心窝子聊点实在的,不整那些虚头巴脑的理论,就说说我一个普通安全爱好者,是怎么从“一听免杀就头大”到“用AES加解密溜得飞起”的心路历程。

AES免杀了解吗

最开始那会儿,我真是被“免杀”俩字整破防了

你们知道吗?我刚开始接触这个领域时,满脑子想的都是“这东西是不是得写汇编啊?”“会不会要用驱动啊?” 结果查了一圈资料,好家伙,越看越懵,什么混淆、分离、加壳……看得我直呼“打扰了”,直到有一天,一个老哥甩给我一句:“你先搞懂AES加解密,再说免杀的事儿。” 我这才恍然大悟,敢情AES就是那个基础中的基础啊!

AES免杀是啥?说白了就是给Payload“穿马甲”

得嘞,咱用大白话讲,你想啊,杀毒软件就像小区里的保安,它认脸(特征码),你平时出门老穿同一件衣服(原始Payload),保安一眼就认出来了,肯定把你拦下,那咋办?换个衣服呗!AES免杀,就是你手里有个神奇的“变装盒”,把原来的Payload加密成一堆乱码(密文),保安瞅半天,“这啥玩意儿?不认识,放行!” 等到要在目标机器上执行时,再通过你的解密程序,把这堆乱码还原成原来的样子,嘿,这不就成了嘛!

说到这儿,肯定有兄弟要问:“那这不就是个加密算法吗?” 对喽!但关键在于执行时机密钥存储,你说你把解密钥匙(Key)就挂在嘴边(硬编码在代码里),保安凑近一闻,还是能闻出味儿啊,所以啊,真正的高手玩AES免杀,玩的是灵活性,是内存加载,是动态生成密钥,那感觉,就像你不仅换了衣服,还换了张脸,甚至走路姿势都变了,保安想破脑袋也想不到是你!

我自己的实操感受:爽是真爽,坑也是真多

第一次我把一段简单的Shellcode用AES加密,然后写了个本地加载器,当时编译完,兴冲冲丢到虚拟机里一跑,嘿!没报毒!我当时那个激动啊,差点原地跳起来,感觉自己就是天选之子,可还没爽过三分钟,我又换了个在线扫描网站,结果好几个引擎都亮红灯,我擦,当时就感觉一盆冷水从头浇到脚,透心凉啊!

怎么说呢,静态查杀是好过了,但动态行为检测你绕不过去啊! 你以为你加密了就万事大吉?程序一运行,它要在内存里解密吧?要在内存里申请可执行权限吧?这些动作在某些犀利的EDR眼里,那都是“标准反派入场动作”啊!所以说,AES免杀只是第一步,后面还有一大堆活儿要干,但你要是连这一步都走不稳,后面全是空中楼阁。

我的真心话:别迷信“银弹”,知行合一才是王道

现在市面上有些朋友,一开口就是“我有个免杀马,过360过火绒”,我听了只想笑,兄弟,免杀不是一个点,而是一个系统工程,AES免杀了解吗?了解肯定是了解的,它是门槛,是基础,是你学会数据分析、内存操作、甚至Windows API调用的启蒙老师。

说句掏心窝子的话,学这个不是为了去搞破坏,而是为了明白攻防本质。 我学完AES免杀后,回过头去看杀毒软件的原理,真的有种“一览众山小”的感觉,明白了它们怎么查,才知道怎么防,这就好比你知道小偷爱怎么撬锁,你才懂得怎么加固家门,对不对?

最后再啰嗦一句,如果你也想试试水,别光看我写,一定要动起手来,把那一百来行的Python脚本或者C代码敲一遍,看着密文生成、解密、执行成功,那种成就感,是看一百篇文章都换不来的,到时候你再回头看这篇文章,估计就会笑着说:“嗨,这哥们儿说得还挺实在!” 好啦,今天就唠到这儿,我是你们爱踩坑又会爬出来的老朋友,咱们下一篇接着聊!对了,有什么心得,随时回来找我交流啊!

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

目录[+]