PWN的一些前置知识

PWN的一些前置知识点

虽然我超想打web方向,但是其实感觉每个方向都一窍不通555,算了先学学pwn和misc再说吧

大致流程

查看文件

使用checksec命令,查看是否开启PIE,ASLR等,查看是否有canary(栈保护的机制)

静态分析

使用IDA pro或者其他静态分析软件,获取软件逆向代码

动态调试

使用gdbdbg来对程序执行流程中的内存进行查看和调试

栈溢出

什么是栈溢出

栈是一种后进先出的数据结构

image-20240512152742685

栈溢出指的是向栈中某个变量写入的字节数超过了这个变量本身所申请的字节数,因而导致与其相邻的栈中变量的值被改变。是一种特定的缓冲区溢出漏洞,类似的还有堆溢出、bss段溢出等溢出方式。

栈溢出的前提是:

·程序必须向栈上写入数据

·写入数据大小没有被良好地控制

posted @ 2024-05-12 16:02  ‰1  阅读(19)  评论(0)    收藏  举报