一种新奇的反向Shell实现思路

本人一直在从事运维方面工作,虽然对安全行业接触较少,但也会偶尔迸出一些新奇的思路,今天在散心时,突然想到了一种比较有趣的免杀思路,于是乎,决定将思路整理出来,供大家实现。

服务端发送组合器到客户端,组合其运行后等待接收数据。

当需要时,客户端会自动在服务端接收【组合器模块】并在需要时合并为一个组合器程序,此时组合器则通过【进程通信】直接与客户端通信,获取到shellcode代码。

而执行器的作用是自身执行恶意代码,当需要执行恶意代码时,【执行器】会通过【进程通信】直接在【组合器】中获取shellcode残片,并在自身内存中完成组装任务。

当组合完毕后,会直接自身执行恶意代码,此时我们只需要在服务端,防止侦听器等待肉鸡上线即可。


【实现优势】

杀软查杀时,一定会杀掉我们的【组合器】和【执行器】,但只要我们的客户端一直没有恶意行为,那么只要我们需要,随时可以下载一套新的全家桶。

此时此刻,杀软就会有永远杀不完的【组合器】和【执行器】,越杀越多的无效启动项。

由于【组合器】和【执行器】两者直接使用了进程间通信,那么,在杀软眼里,这俩东西就是狼狈为奸,很可能被杀掉,但想要顺着这条线索找到母体程序,相对来说困难很多。

就算被杀其实也不怕,因为只要我们跑的足够快,提前加载到内存中,杀不杀我,意义不是太大,我已经先干为敬了。

需要注意,在实现应该,注重 【客户端与组合器】之间的通信,必须要以最快的速度断开连接,与组合器【撇清关系】,做好无罪声明。


这边我提到了,子弹上膛,这个子弹,就是我们后台的一个个独立的【组合器】和【执行器】模块,子弹出堂就是所谓的下载更多载荷。

那,对于杀软来说,如何查杀这些木马呢?其实应该会这样,杀软发现组合器+执行器 很可疑,那么很有可能会杀掉我们的这两个程序,因为客户端和执行模块早就断了联系,所以,发现客户端并不是那么容易。

打个比方:子弹一旦飞出枪膛,那么子弹是依靠自身动能运动的,所以与枪无关,只与子弹有关系,当今杀软没有那么智能,还做不到发现客户端。


许可协议: 文章中的代码均为学习时整理的笔记,博客中除去明确标注有参考文献的文章,其他文章【均为原创】作品,转载请务必【添加出处】,您添加出处是我创作的动力!
反制措施: 《点我预览协议》
原文地址:https://www.cnblogs.com/LyShark/p/14950204.html