免杀对抗-C2远控篇&C&C++&EXE处理&减少熵值&加自签名&详细信息&特征码源码定位

熵和恶意软件(针对360比较有效 )

恶意软件会采取许多策略和技巧来从 AV 引擎的扫描中隐藏恶意软件。像shellcode加密,函数调用混淆之类的东西,像这种技术本质上是在加密和压缩数据,因此提高了数据的不可预测性/无序性,也就是提高了熵。所以我们可以根据熵值捕获文件,熵越大,数据就越有可能被混淆或加密,文件也就越有可能是恶意的,熵是一种简单有效的检测技术,但并不能完全识别所有恶意代码。因此,杀毒软件通常使用熵作为其他技术的补充,以更好地识别潜在的威胁。

-识别项目:
https://github.com/langsasec/File-Entropy-Calculator

-如何降低熵值:

Restorator-添加常用软件光标

自签名、详细信息

详细信息:Restorator添加版本

自签名项目:

https://github.com/secretsquirrel/SigThief
https://github.com/thelostworldFree/Sign-Sacker

特征码定位

找到杀毒软件判断恶意的地方,代码修改或汇编修改进行突破

使用工具VirTest.exe进行自动定位

第三部点击定位特征码前先开启杀软

找到杀毒的函数 可以使用函数平移 或者函数回调

动态API回调

typedef BOOL(WINAPI* ESL)(

LOCALE_ENUMPROCW lpLocaleEnumProc,

DWORD dwFlags

);

ESL eslw = (ESL)GetProcAddress(

GetModuleHandleA("Kernel32.dll"),

"EnumSystemLocalesW"

);
HMODULE hModule = LoadLibraryA("rpcrt4.dll") ;

typedef RPC_STATUS(WINAPI* UFS)(

RPC_CSTR StringUuid,

UUID *Uuid

);

UFS ufsa = (UFS)GetProcAddress(

GetModuleHandleA("rpcrt4.dll"),

"UuidFromStringA"

);

相关推荐
七七&5561 小时前
2024年08月13日 Go生态洞察:Go 1.23 发布与全面深度解读
开发语言·网络·golang
java坤坤1 小时前
GoLand 项目从 0 到 1:第八天 ——GORM 命名策略陷阱与 Go 项目启动慢问题攻坚
开发语言·后端·golang
元清加油1 小时前
【Golang】:函数和包
服务器·开发语言·网络·后端·网络协议·golang
健康平安的活着2 小时前
java之 junit4单元测试Mockito的使用
java·开发语言·单元测试
No0d1es2 小时前
电子学会青少年软件编程(C/C++)5级等级考试真题试卷(2024年6月)
c语言·c++·算法·青少年编程·电子学会·五级
DjangoJason3 小时前
C++ 仿RabbitMQ实现消息队列项目
开发语言·c++·rabbitmq
m0_480502644 小时前
Rust 入门 KV存储HashMap (十七)
java·开发语言·rust
大阳1234 小时前
线程(基本概念和相关命令)
开发语言·数据结构·经验分享·算法·线程·学习经验
YA3334 小时前
java基础(九)sql基础及索引
java·开发语言·sql
奇树谦5 小时前
QT|windwos桌面端应用程序开发,当连接多个显示器的时候,如何获取屏幕编号?
开发语言·qt