from http://netsec.ws/?p=180
Step 1. Typical memory
layout.
Step 2. Attackers input
exceeds user buffer. Test it manually or create pattern for specific size using pattern_create.rb
or one line python script to test with alphabets A, b & C
Step 3a. Correctly
handled – Attackers input get truncated to the buffer and can’t overwrite
anything.
Step 3b. Incorrectly Handled – Attackers input
overwrites the buffer and EIP, causing it to jump to an invalid memory address
and crash: & create pattern using pattern_offeset to find offset
Step 4. Attacker creates tailored input : create
shellcode may be using msfvenom
Step 5. Attackers input overwrites EIP with their
own address pointing to the start of their shellcode: script using buffer, nops and return address
Comments
Post a Comment