Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
en:it-security:blog:buffer_overflow_x64-2 [2024/03/05 16:05] – created psycore | en:it-security:blog:buffer_overflow_x64-2 [2024/09/11 22:36] (current) – Discussion status changed psycore | ||
---|---|---|---|
Line 2: | Line 2: | ||
====== Buffer overflow in the 64-bit stack - Part 2 ====== | ====== Buffer overflow in the 64-bit stack - Part 2 ====== | ||
- | {{page> | + | In the second part, we activate the NX bit, which is intended to protect us from buffer overflows. To keep things fun, we will of course override this protection directly. We achieve this by passing the command to be executed to the [[https:// |
===== Introduction ===== | ===== Introduction ===== | ||
- | In the second part, we activate the NX bit, which is intended to protect us from buffer overflows. To keep things fun, we will of course override this protection directly. We achieve this by passing the command to be executed to the [[https:// | + | {{page> |
Further information on ROP (Return Oriented Programming) and the basics of buffer overflows can be found in the link collection at the end. ((https:// | Further information on ROP (Return Oriented Programming) and the basics of buffer overflows can be found in the link collection at the end. ((https:// | ||
Line 12: | Line 12: | ||
\\ | \\ | ||
==== Theory ==== | ==== Theory ==== | ||
+ | |||
+ | {{page> | ||
The tutorial by superkojiman shows how the registers are overwritten step by step. To understand the process, we can debug the [[https:// | The tutorial by superkojiman shows how the registers are overwritten step by step. To understand the process, we can debug the [[https:// | ||
Line 203: | Line 205: | ||
^ Size | 4.00 KB | | ^ Size | 4.00 KB | | ||
^ Checksum (SHA256) | 88bda11b4652344bb9113a400b79e78abf028ef5eb89a74538061c96e2d306e5 | | ^ Checksum (SHA256) | 88bda11b4652344bb9113a400b79e78abf028ef5eb89a74538061c96e2d306e5 | | ||
+ | |||
+ | ~~DISCUSSION~~ |