Skip to main content

Windows API 与编程调用

从这个章节起,我们将学习一些有关编程与二进制的技能,为下个章节的恶意软件以及安全工具开发奠定基础。学习恶意软件开发的原因有多种,从进攻型安全的角度来看,我们通常需要针对客户的环境执行某些恶意任务,当涉及到参与中使用的工具类型时,通常有三个主要选择。第 1 种是开源工具,这些工具通常由安全供应商签名甚至没有签名,并且会在安全性相对任何成熟的组织中被检测到,因此在执行攻击的时候,它们并不总是可靠的。第 2 种是购买工具,预算较大的团队通常会选择购买工具,以便在项目期间节省宝贵的时间。这些工具通常是闭源的,并且具备更加出色的免杀能力。以及,开发定制工具。因为这些工具是定制的,所以它们没有被安全供应商们分析或标记,这使得攻击者在免疫检测方面具有优势,这就是恶意软件开发知识对于更成功的红队行动至关重要的地方。

 

Windows 架构

Windows 架构
函数调用


Windows 内存管理

内存与分页
内存保护
内存操作


Windows API

介绍
数据类型
指针
A 与 W
In 和 Out


调用 API

在 C 中调用 MessageBox
在 C# 中使用 P/Invoke中 调用 MessageBox
在 C# 中使用 D/Invoke 调用 MessageBox