PWN是一个黑客之间使用的词语,通常指攻破装备或体系。发音类似“砰”,对黑客而言,这象征着成功实行黑客攻击的声音——砰的一声,被“黑”的电脑或手机就被操纵了。在网络安全语境中,PWN通常指的是通过差别的攻击手段如使用毛病、举行社会工程学攻击等方法成功地获得了一个装备、体系或网络的未授权控制权。一旦攻击者“PWN了”一个体系,他们就可以执行各种恶意活动,如窃取数据、安装恶意软件或制造更广泛的粉碎。
在CTF(Capture The Flag)等黑客竞赛中,PWN任务常常涉及在一个受限制的环境中寻找和使用毛病来访问受掩护的资源或体系。具体来说,PWN标题通常会提供一个用C或C++编写的步伐,该步伐运行在目标服务器上,参赛者需要通过网络与服务器举行交互,使用步伐中的毛病(如栈溢出、堆溢出、整数溢出、格式化字符串毛病等)来造成内存粉碎,进而获取远程盘算机的shell,并最终获得flag。
二、常见PWN毛病
栈是一种数据布局,遵循后进先出的原则(Last in First Out),主要有压栈(push)与出栈(pop)两种操纵eax, ebx, ecx, edx, esi, edi, ebp, esp等都是X86 汇编语言中CPU上的通用寄存器的名称,是32位的寄存器。假如用C语言来表明,可以把这些寄存器看成变量对待。在栈中,esp生存栈帧的栈顶地点,ebp生存栈帧的栈底地点。步伐的栈是从进程地点空间的高地点向低地点增长的。
2.2. 栈溢出原理