Windows API Families for Malware Analysis

Concept

Windows API Families for Malware Analysis

Process APIs

APIPurposeSuspicious Use
CreateProcessStart new processSpawning cmd/powershell
OpenProcessGet process handleTargeting other processes
VirtualAllocExAllocate remote memoryProcess injection
WriteProcessMemoryWrite to remote processCode injection
CreateRemoteThreadRun thread in remote processClassic injection

File APIs

APIPurposeSuspicious Use
CreateFileOpen/create filesDropping payloads
WriteFileWrite dataWriting malicious files
DeleteFileDelete filesSelf-deletion
CopyFileCopy filesSpreading
FindFirstFileEnumerate filesReconnaissance

Registry APIs

APIPurposeSuspicious Use
RegOpenKeyExOpen registry keyReading config
RegSetValueExSet registry valuePersistence
RegCreateKeyExCreate keyNew persistence entry
RegDeleteKeyDelete keyCovering tracks

Network APIs

APIPurposeSuspicious Use
InternetOpenInit WinINetHTTP C2
URLDownloadToFileDownload filePayload delivery
WSAStartupInit WinsockRaw socket C2
connect/send/recvSocket operationsCustom protocols

Evasion APIs

APIPurposeSuspicious Use
IsDebuggerPresentCheck debuggerAnti-analysis
VirtualProtectChange memory permsUnpacking
GetTickCountTiming checkAnti-sandbox
SleepDelay executionSandbox evasion
Windows API Families for Malware Analysis | Malware Analysis Academy