Share
## https://sploitus.com/exploit?id=B66B62CB-53D1-5B08-854C-42FB23A55F76
# MalwareAnalysisProject
Introduction to exploit development with windows based stack overflow

This is the main project behind one of my college internships and it aims to teach people about exploit analysis and development using the Seattle Lab Mail (SLmail) 5.5 - POP3 'PASS' Remote Buffer Overflow (1)
https://www.exploit-db.com/exploits/638


Requirements to perform this activity:


- 2x Pre configured windows xp virtual machine with immunity debugger and Sl mail 5.5 vulnerable application
- Preconfigured Kali linux machine
- VMware virtual workstation 14
- Computer with 8-12 gigabytes of RAM and any quad core cpu.

Prerequisite knowledge needed:
- Cts 242 and 240
- Programing languages or programing logic
- 32 bit assembly knowledge(provided prior to this lab)
- Using immunity debugger to debug application(provided prior to this lab) 
- Metasploit auxiliary modules for pattern generation and offset(provided prior to this lab)
- Generation shellcode on kali linux(provided prior to this lab)
NOTE:THIS KNOWLEDGE IS NOT ENTIRELY REQUIRED BUT WILL FACILITATE THE UNDERSTANDING OF THIS MATERIAL



steps:
- Setup virtual environment and enable network communications between 3 pre configured vms
- Learning about what a buffer overflow is
- How to setup a debugging environment and use immunity debugger with an application
- How to use python to create a proof of concept script to fuzz the application
- Analyze the crash in immunity debugger
- Replicate the crash, using a msf ruby pattern offset to find out where EIP gets changed
- Testing EIP with a random address , adding a breakpoint to prove successful jmp to new memory address
- Explaining ASLR and DEP and how it can be bypassed by redirecting execution flow, modules that are loaded with the program can be used as an execution pivot
- Use mona once again to locate the jmp instruction into the stack
- Generate a reverse shell shellcode with msfvenom to use in the program
- Explain NOPs and NOP sleds
- Setup a listener with netcat
- Exploit the vulnerability and show successful compromise