We're going to learn a technique known as the House of Orange.
It was developed in 2016 by Angelboy and it is a beautiful end-to-end heap exploitation technique. By end-
to-end
I mean that it's designed to drop a shell.
It can be broken down into three phases, which we're going to learn in reverse order. If we covered
each phase as we approached it in our exploit, then the links between them wouldn't be as clear.
So let's start with phase three, which is the part where we drop a shell.
Until now, we've been leveraging the malloc hooks to get our shells,
but the House of Orange uses something known as "file stream exploitation".
Some call it "file stream-oriented programming"
and it's just a way of taking advantage of a fundamental GLIBC feature to achieve, amongst other things,
arbitrary code execution.
So when you're ready to begin, start the next video.