-
Notifications
You must be signed in to change notification settings - Fork 14
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
1 changed file
with
12 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1,12 @@ | ||
Overflow a buffer on the stack to set trickier conditions to obtain the flag! | ||
So far, your buffer overflows have simply set variables to non-zero values. | ||
Of course, memory errors often enable significantly more advanced controls over a program's state. | ||
In this challenge, you must overflow the buffer precisely to set a win condition variable to a specific value. | ||
Some things to keep in mind: | ||
|
||
- You will need to write binary data. | ||
This can't be printed on the keyboard; we recommend that you use something like Python to produce these bytes. | ||
- Keep endianness in mind! | ||
- Depending on how you generate the input data, you might accidentally terminate it with a newline! | ||
For example, bash's `echo` will newline-terminate by default (this behavior can be disabled using the `-n` flag). | ||
These newlines can cause problems --- if you are relying on precise control of program variables (which you are, in this module), an errant newline can unexpectedly corrupt program state and break your exploit. | ||
If you have doubts about whether your input has an errant newline, save it to a file and look at it using a hex dumper such as `hd`. |