Talk:Shellcode
Mayor overhaul
I've rewritten the page and adding more information about alphanumer/printable/unicode shellcode. I'd like to see more information on:
- Shellcode writting for different processors/operating systems/service packs.
(I can add a lot about win32 shellcode, but my *nix shellcode is a bit rusty and I've never done anything other than IA32)
- Platform spanning shellcode
(Runs on multiple OSes/processor types).
- Egghunt shellcode
(Shellcode exists of small code that scans the process' memory (hunt) for a larger shellcode (egg) that does the actual work. When found, the egg is executed. This is often used when a larger shellcode can be injected, but is hard to execute immediately and a smaller shellcode would be easier to inject and execute as well.)
- Omelette shellcode
(Shellcode exists of small code that scans the process' memory for more small pieces of shellcode (eggs) that are combined to form the original shellcode (omelette), which is executed. This can be used when a large shellcode cannot be injected as a whole, but can be injected in multiple smaller parts.)
- Multi-stage shellcode
(Shellcode downloads and executes a larger second stage shellcode - used when second stage shellcode itself is too large to be injected immediately.)