by Peter Van Eeckhoutte, Corelan
Date: 14-17 February 2023
Venue: Crowne Plaza Changi Airport, 75 Airport Blvd, Singapore 819664
Super Early Bird (Sign up by 31 Oct 2019): $3,900 SGD
Early Bird (Sign up by 31 Dec 2019): $4,200 SGD
Early Standard (Sign up by 28 Feb 2022): $4,500 SGD
Standard (Sign up by 31 Jan 2023): $5,100 SGD
Late: $5,900 SGD
This is a truly unique opportunity to learn both basic and advanced techniques from an experienced exploit developer. During this 4-day course, students will be able to learn all ins and outs of writing reliable stack-based exploits for the Windows platform. The trainer will share his “notes from the field” and various tips and tricks to become more effective at writing exploits.
We believe it is important to start the course by explaining the basics of stack buffer overflows and exploit writing, but this is most certainly not “your average” entry-level course. In fact, this is a true bootcamp and one of the finest and most advanced courses you will find on Win32 stack-based exploit development.
This hardcore hands-on course will provide students with a solid understanding of current stack-based exploitation techniques and memory protection bypass techniques. We make sure the course material is kept updated with current techniques, includes previously undocumented tricks and techniques, and details about the research we performed ourselves. Combined with the way the course is built up, this will turn this class into a truly unique experience. Sign up for this class and learn directly from the author of mona.py!
The new 2021 edition of the course is 100% based on Windows 11 / Windows 10 and contains an introduction to x64 stack-based exploitation.
During all of our courses, we don’t just focus on techniques and mechanics, but we also want to make sure you understand why a given technique is used, why something works and why something doesn’t work.
We believe those are just a few arguments that make this training stand out from other exploit development training offerings. Check our testimonials page if you want to see some of our students' real, voluntary, unmodified, and uncensored reactions.
Our courses are packed with years and years of knowledge, experience, and tons of exercise. We spare no effort to make sure our students can get the most out of the class. But we also realize that there is only so much a human being can absorb in just a few days. Furthermore, it’s not realistic to expect to be an expert at exploit development after this class ends. You’ll need to put in a lot of practise to get more fluent at writing exploits. That means you may end up with questions and may need some guidance after the class ends.
We care more about quality than quantity, and we are committed to making sure our students really feel supported during class and after the class ends. This means we provide post-training support to all of our students. If you have taken the course and you still have questions afterwards, we will help. This support system is unique in the industry, and is a great way to protect your investment.
WARNING: We do not provide solutions for any of the exercises in this course, but we will help you to find the solutions yourself, either during the course or after the course (via the student-only support system).
WHY TAKE THIS COURSE?
Are you interested in the process of turning a proof-of-concept into a working exploit?
Do you want to figure out if a given security patch/hotfix should be applied immediately or not?
Do you want to learn how to read and understand existing exploits?
Have you ever found yourself in a position where you have to change an existing exploit but failed to make it work?
Do you want to write reliable exploits and integrate them into Metasploit?
Do you want to know what shellcode is, how Metasploit shellcode works and how to make shellcode work reliably in your exploit?
Do you have some basic knowledge about Win32 exploit development already, and do you want a good refresher and learn more advanced topics?
Have you read the Corelan exploit development tutorials, but still want to take the classes to fully understand and master the concepts?
Are you involved in malware research or do incident response and are interested in understanding how exploits work?
Would you like to understand better how to detect exploits and how to protect against them?
Would you like to get a basic view of common development mistakes, how to avoid them and how compiler options can help?
Do you have other reasons to learn how to write exploits for the Win32 platform?
Are you willing to suffer and bleed a bit, learn fast, and not be intimidated by debuggers and assembly instructions…
…then this course is exactly what you need!
Pentesters, auditors, network/system administrators, reverse engineers, malware analysts, developers, members of a security department, security enthusiasts, or anyone interested in exploit development.
The x86 environment
Windows Memory Management
Introduction to Assembly
Running 32-bit applications on a 64-bit OS (wow64)
The exploit development lab environment
Setting up the exploit developer lab
Using debuggers and debugger plugins to gather primitives
Learn how to use mona.py directly from the author of mona.py
Stack Buffer Overflows
Saved return pointer overwrites
Structured Exception Handlers
Egg hunters in a WoW64 environment
Reliability++ & Reusability++
Finding and avoiding bad characters
Creative ways to deal with character set limitations
Metasploit framework Exploit Modules
Writing exploits for the Metasploit Framework
Porting exploits to the Metasploit Framework
Return Oriented Programming / Code Reuse (ROP)
Intro to x64 Exploitation
x64 processes, memory map, registers
Functions and calling conventions
Structured Exception Handling
Stack buffer overflows
During the course, students will get the opportunity to work on real vulnerabilities in real applications and use exploitation techniques that work on the default installation of Operating Systems (Windows 11 / Windows 10 / Windows 7).
Make no mistake. Although this course will explain the basics of exploit development, students will need to be able to transition to more complex theories and exercises quickly. We've crammed more than a decade of experience and expertise into this class. The course has a steep learning curve and will require your full attention and focus.
The “Course Contents” on this page are subject to change without prior notice and can be updated between the moment of registration and the actual course. We will try to cover as much as we can from the “Course Contents”, based on the overall ability to absorb knowledge and time needed to complete the exercises, but Corelan GCV cannot ever guarantee that we will be able to cover everything.
KNOWLEDGE & ATTITUDE PREREQUISITES
Able to read simple C code and simple scripts
Familiar with writing basic scripts using Python/Ruby/…
Ready to dive into a debugger and read ASM for hours and hours and hours
Ready to think out of the box and have a strong desire to learn
Fluent with managing Windows/Linux OS and using VMware workstation/VirtualBox
Familiar with using Metasploit (msfconsole, msfvenom, meterpreter)
No prior knowledge of assembly is required, but it will certainly help if you have some basic knowledge.
(In case you’re wondering: if you took OSCP/OSCE, and understood the exploitation part of the courses, then you are probably ready for the course).
Unless specified otherwise, students are required to bring the following :
A laptop (no netbook) with VMware Workstation/VirtualBox and enough processing power and RAM (we recommend 4GB of RAM) to run up to 2 virtual machines at the same time. The use of a 64-bit processor and a 64-bit OS on the laptop will make the exercises more realistic.
2 virtual machines installed (Windows 11 / Windows 10 (or Windows 7 SP1) no patches), Kali Linux (fully up-to-date))
Note: You will receive the exact installation instructions after registration, about a week before class begins, so don’t start installing the VMs yet.
All required tools and applications will be provided during the training or will be downloaded from the internet during the training.
You must have full administrator access to all machines. You must be able to install and remove software, and you must be able to disable and/or remove firewall/antivirus/… when necessary.
It will be required to sign a confidentiality agreement at the start of the course. You will not be admitted to the course without signing this document. You can find a copy of the document here.