当前位置: 首页 > article >正文

免杀对抗—内存加载UUID标识IPV4地址MAC地址

前言

试想我们开辟一块内存,然后直接将shellcode写入到对应的内存中并且该内存是可读可写可执行的状态,那么这种方式太容易被AV所查杀,因此当我们如果是利用Windows自身提供的API来将加密或者封装好的shellcode写入到内存执行的话,将会大大增加查杀的难度。

参考文章:CS shellcode内存加载器免杀及实现-安全客 - 安全资讯平台

UUID内存加载

通用唯一识别码(UUID),是用于计算机体系中以识别信息数目的一个128位标识符,根据标准方法生成,不依赖中央机构的注册和分配,UUID具有唯一性。也就是说我们把shellcode封装成UUID,然后再去执行它。

C/C++

代码没特别的网上找的,封装成C/C++的格式,先把shellcode封装成UUID。

大概就是这个样子。

C/C++语言的加载代码也是网上找的,或者我上面引用的文章有。

接着再去执行它,成功上线。

编译成exe测试一下,火绒没查杀到。

但是VT上面火绒又能查杀到,奇怪。

360落地就杀。

WD也是落地就杀,WD都查杀到了,火绒居然没查杀到???

C#

我们来试试用C#去把shellcode封装为UUID,封装代码和C/C++差不多,但是这里要用64位的shellcode。

生成的和上面的也差不多。

再利用一个C#的加载器去执行它.

生成exe看看效果,火绒能查杀到。

WD查杀能到。

360也能查杀到,看起来效果不太好。

python

试试python语言,同理先把shellcode转为UUID地址,这里用32位的shellcode。

转换后是这样子滴。

网上找的python加载器,直接把UUID参数换成上面我们生成的,注意这里要用python2去执行,因为UuidFromStringA这个函数只有python才有。

用pyinstaller编译成exe测试一下免杀性,火绒能过。

360查杀到。

WD也能过。

VT报9九个,中规中矩。

GOlang

再试试go语言,同样的道理,先把shellcode转为UUID地址,也是要用64位的shellcode,因为我只找到64位转化的脚本。

go语言的加载器脚本。

编译成exe,火绒没过。

go build 文件名

WD也没过。

360不用说啦,肯定也是不过滴。

如果结合我们前面说过的分离免杀或者加壳,可能效果会更好,这里我就不演示了。

MAC地址

除了封住成为UUID,还可以把shellcode封装成MAC地址。

python

shellcode用64位的,转换脚本不用多说,也是网上找的,我自己写不出来。

生成的Mac地址,这里如果python3不行就换python2。

接着用加载器去执行,还是那句话网上找的,自己写不出来。

编译成exe,火绒静态能过,但是执行起来就被杀,根据提示是检测了内存行为。

360可以查杀到。

WD没问题滴。

GOlang

再试试go语言。

转换为Mac地址。

加载器加载地址,由于我在运行的时候一直在报错,所以就没能上线,估计是环境出了问题。

有懂的师傅可以指教一下,或者找我拿源码测试。

IPV4地址

最后把shellcode封装成IPV4地址效果会不会更好。

GOlang

利用脚本把shellcode转换成IPV4地址。

转换后看起来有点奇怪。

同上,环境问题没能运行脚本,就不测试了,有兴趣的可以找我拿源码。

总结

原理其实不难,就是把shellcode变成地址,根本原理还是混淆。这个go的环境太搞了,老是报错,qnm的。

最后,以上仅为个人的拙见,如何有不对的地方,欢迎各位师傅指正与补充,有兴趣的师傅可以一起交流学习。


http://www.kler.cn/news/356861.html

相关文章:

  • webpack自定义插件 ChangeScriptSrcPlugin
  • 结合seata和2PC,简单聊聊seata源码
  • 暴雨讲堂:AI已成为交叉学科科研工具
  • 监督学习、无监督学习、半监督学习、强化学习、迁移学习、集成学习分别是什么对应什么应用场景
  • Facebook Marketplace无法使用的原因
  • 【Bootstrap】bootstrap-table 的打印按钮功能正常但缺失图标
  • python爬虫加解密分析及实现
  • OSI参考模型与TCP/IP模型
  • 《深空彼岸》TXT完整版下载,知轩藏书校对版!
  • QGIS的入门(实习指导)
  • Android SELinux——其他常见策略⽂件(十一)
  • Go语言基础学习(Go安装配置、基础语法)
  • SpringBoot实现桂林旅游的智能推荐
  • LED显示屏与手机连接:简单便捷的操作指南
  • Apache Seatunnel Zeta引擎-启动脚本分析
  • 【Hive】6-Hive函数、运算符使用
  • [mysql]mysql的全部单行函数
  • TCP 全连接队列与 tcpdump 抓包
  • JAVA学习-练习试用Java实现“成绩归类”
  • 前端考试总结