我正在尝试了解堆栈基溢出并编写一个简单的代码来利用堆栈。但不知何故,它根本不起作用,只在我的机器上显示中止陷阱(mac os leopard)
我猜Mac os对溢出的处理方式不同,它不允许我通过c代码覆盖内存。例如,
strcpy(buffer, input) // lets say char buffer[6] but input is 7 bytes
在 Linux 机器上,此代码成功覆盖下一个堆栈,但在 mac os 上阻止(中止陷阱)
有人知道如何在 mac 机器上执行简单的基于堆栈的溢出吗?