第113天:免杀对抗-内存加载&API封装&UUID标识&MAC地址&IPV4地址&各语言

在这里插入图片描述

知识点

#知识点:
1、内存加载-UUID地址-ShellCode转换
2、内存加载-MAC地址-ShellCode转换
3、内存加载-IPV4地址-ShellCode转换

#章节点:
编译代码面-ShellCode-混淆
编译代码面-编辑执行器-编写
编译代码面-分离加载器-编写
程序文件面-特征码定位-修改
程序文件面-加壳花指令-资源
代码加载面-Dll反射劫持-加载
权限逻辑面-杀毒进程干扰-结束
工具数据面-通讯内存流量-动态

对抗目标:
X60 Defender 某绒 管家 VT等

编程语言:
C/C++ Python C# Go Powershell Ruby Java ASM NIM Vlang等。

涉及技术:
ShellCode混淆,无文件落地,分离拆分,白名单,DLL加载,Syscall,加壳加花,
资源修改,特征修改,二次开发CS,内存休眠,进程注入,反沙盒,反调试,CDN解析等

在这里插入图片描述

演示案例

1、内存加载-UUID地址-ShellCode转换
2、内存加载-MAC地址-ShellCode转换
3、内存加载-IPV4地址-ShellCode转换
文章参考:
https://www.anquanke.com/post/id/262666

#内存加载-UUID方式-ShellCode转换
通用唯一识别码(UUID),是用于计算机体系中以识别信息数目的一个128位标识符,根据标准方法生成,不依赖中央机构的注册和分配,UUID具有唯一性。
演示加载语言:C++ C# Python2 Go

#内存加载-MAC地址-ShellCode转换
MAC地址也叫物理地址、硬件地址,由网络设备制造商生产时烧录在网卡的EPROM一种闪存芯片,通常可以通过程序擦写。IP地址与MAC地址在计算机里都是以二进制表示的,IP地址是32位的,而MAC地址则是48位(6个字节)的。
演示加载语言:Python2 Go

#内存加载-IPV4方式-ShellCode转换
IPv4是一种无连接的协议,操作在使用分组交换的链路层(如以太网)上。此协议会尽最大努力交付数据包,意即它不保证任何数据包均能送达目的地,也不保证所有数据包均按照正确的顺序无重复地到达。IPv4使用32位(4字节)地址。
演示加载语言:Go

总结

这里讲的是通过UUID、MAC、Ipv4实现内存加载免杀

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

参考连接:https://www.anquanke.com/post/id/262666

以下是几种实现内存加载免杀的方式:(也就是说,我们可以将shellcode转换为UUID、MAC、Ipv4等)
1、UUID地址-ShellCode转换
2、MAC地址-ShellCode转换
3、IPV4地址-ShellCode转换

通常情况下,我们需要结合之前的内容,如shellcode混淆加密、分离免杀等
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值