{"id":461,"date":"2018-06-03T10:22:57","date_gmt":"2018-06-03T10:22:57","guid":{"rendered":"https:\/\/www-new.brucon.org\/2018\/?page_id=461"},"modified":"2023-12-28T21:58:34","modified_gmt":"2023-12-28T19:58:34","slug":"corelan-stack-based-exploit-development-for-windows-bootcamp","status":"publish","type":"page","link":"https:\/\/archive.brucon.org\/2024\/brucon-2024-training\/corelan-stack-based-exploit-development-for-windows-bootcamp\/","title":{"rendered":"Corelan Stack-based exploit development for Windows \u201cBOOTCAMP&#8221;"},"content":{"rendered":"<div class=\"wpb-content-wrapper\"><p>[vc_row][vc_column width=&#8221;5\/6&#8243;][vc_column_text]<\/p>\n<h2><span id=\"Course_Description\" class=\"mw-headline\">Course Description<\/span><\/h2>\n<p>The Corelan \u201cBOOTCAMP\u201d is a truly unique opportunity to learn both basic &amp; advanced techniques from an experienced exploit developer. During these \u201clong\u201d days, students will be able to learn all ins and outs about writing reliable stack based exploits for the Windows (x86) platform.\u00a0 The trainer will share his \u201cnotes from the field\u201d and various tips &amp; tricks to become more effective at writing exploits.<\/p>\n<p>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 \u201cyour average\u201d 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.<\/p>\n<p>This hardcore hands-on course will provide students with solid understanding of current stack based exploitation techniques and memory protection bypass techniques.\u00a0 We make sure the course material is kept updated with current techniques, includes previously undocumented tricks and techniques, and details about research we performed ourselves.\u00a0 Combined with the way the course is built up, this will turn this class into a truly unique experience.\u00a0<em>Sign up for this class and learn directly from the author of mona.py<\/em><\/p>\n<p><strong>The current edition of the course is 100% based on Windows 11 \/ Windows 10 and contains an introduction to x64 stack-based exploitation.<\/strong><\/p>\n<p>During all of our courses, we don\u2019t 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\u2019t work.<\/p>\n<p>We believe those are just a few arguments that makes this training stand out between other exploit development training offerings. We encourage you to check our <a href=\"https:\/\/www.corelan-training.com\/index.php\/testimonial-category\/corelan-bootcamp\/\" target=\"_blank\" rel=\"noopener noreferrer nofollow\" class=\"broken_link\">testimonials<\/a>\u00a0page if you want to see real, voluntary, unmodified and uncensored reactions by some of our students.<\/p>\n<h3>Investment protection<\/h3>\n<p>Our courses are packed with years and years of knowledge, experience, and tons of exercises. We spare no efforts to make sure our students can get the most out of the class\u2026 but we also realize that there is only so much a human being can absorb in just a few days. Furthermore, it\u2019s not realistic to expect to be an expert at exploit development after this class ends. You\u2019ll 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.<\/p>\n<p>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.<\/p>\n<p><strong>WARNING:<\/strong> We do\u00a0not\u00a0provide 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)[\/vc_column_text][\/vc_column][vc_column width=&#8221;1\/6&#8243; css=&#8221;.vc_custom_1528310734661{margin-top: 50% !important;}&#8221;][vc_single_image image=&#8221;3644&#8243; img_size=&#8221;full&#8221; alignment=&#8221;center&#8221; css=&#8221;.vc_custom_1703793305124{margin-top: 50% !important;}&#8221;][\/vc_column][\/vc_row][vc_row][vc_column][vc_column_text]<\/p>\n<h2><span id=\"Course_contents\" class=\"mw-headline\">Course contents<\/span><\/h2>\n<h4>The x86 environment<\/h4>\n<ul>\n<li>System Architecture<\/li>\n<li>Windows Memory Management<\/li>\n<li>Registers<\/li>\n<li>Introduction to Assembly<\/li>\n<li>The stack<\/li>\n<li>Running 32bit applications on a 64bit OS (wow64)<\/li>\n<\/ul>\n<h4>The exploit development lab environment<\/h4>\n<ul>\n<li>Setting up the exploit developer lab<\/li>\n<li>Using debuggers and debugger plugins to gather primitives<\/li>\n<li>Learn how to use mona.py directly from the author of mona.py<\/li>\n<\/ul>\n<h4>Stack Buffer Overflows<\/h4>\n<ul>\n<li>Stack Buffers<\/li>\n<li>Functions<\/li>\n<li>Saved return pointer overwrites<\/li>\n<li>Stack cookies<\/li>\n<li>Structured Exception Handlers<\/li>\n<li>etc<\/li>\n<\/ul>\n<h4>Egg hunters<\/h4>\n<ul>\n<li>Using egghunters<\/li>\n<li>Egg hunters in a WoW64 environment<\/li>\n<\/ul>\n<h4>Reliability++ &amp; Reusability++<\/h4>\n<ul>\n<li>Finding and avoiding bad characters<\/li>\n<li>Creative ways to deal with character set limitations<\/li>\n<\/ul>\n<h4>Metasploit framework Exploit Modules<\/h4>\n<ul>\n<li>Writing exploits for the Metasploit Framework<\/li>\n<li>Porting exploits to the Metasploit Framework<\/li>\n<\/ul>\n<h4>ASLR<\/h4>\n<ul>\n<li>Bypassing ASLR<\/li>\n<\/ul>\n<h4>DEP<\/h4>\n<ul>\n<li>Bypassing NX\/DEP<\/li>\n<li>Return Oriented Programming \/ Code Reuse (ROP)<\/li>\n<\/ul>\n<h4>Intro to x64 stack based exploitation<\/h4>\n<ul>\n<li>x64 processes, memory map, registers<\/li>\n<li>Functions &amp; calling conventions<\/li>\n<li>Structured Exception Handling<\/li>\n<li>Stack buffer overflows<\/li>\n<li>ROP<\/li>\n<li>Shellcode<\/li>\n<\/ul>\n<p>For an up-to-date description of the course, please visit\u00a0<a href=\"https:\/\/www.corelan-training.com\/index.php\/bootcamp\" target=\"_blank\" rel=\"noopener nofollow\" class=\"broken_link\">https:\/\/www.corelan-training.com\/index.php\/bootcamp<\/a><\/p>\n<p>During the course, students will get the opportunity to work on real vulnerabilities in real applications and use exploitation techniques that work on default installation of Operating Systems (<em>Windows 11\/Windows 10\/Windows 7<\/em>).<\/p>\n<p>Make no mistake.\u00a0 Although this course will explain the basics of exploit development, students will need to be able to transition to more complex theory and exercises quickly. <strong>We\u2019ve 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.<\/strong><\/p>\n<p><em>The \u201cCourse Contents\u201d on this page is subject to change without prior notice &amp; can be updated between the moment of registration and the actual course. \u00a0We will try to cover as much as we can from the \u201cCourse Contents\u201d, based on the overall ability to absorb knowledge and time needed to complete the exercises, but Corelan cannot ever guarantee that we will be able to cover everything.<\/em>[\/vc_column_text][\/vc_column][\/vc_row][vc_row][vc_column][vc_column_text]<\/p>\n<h2><span id=\"Target_audience\" class=\"mw-headline\">Target audience<\/span><\/h2>\n<p>Pentesters, auditors, network\/system administrators, reverse engineers, malware analysts, developers, members of a security department, security enthusiasts, or anyone interested in exploit development.<\/p>\n<p>Why take this course\u00a0?<\/p>\n<ul>\n<li>Are you interested in the process of turning a proof-of-concept into a working exploit ?<\/li>\n<li>Do you want to figure out if a given security patch\/hotfix should be applied immediately or not ?<\/li>\n<li>Do you want to learn how to read and understand existing exploits?<\/li>\n<li>Have you ever found yourself in a position where you have to change an existing exploit but failed to make it work?<\/li>\n<li>Do you want to write reliable exploits and integrate them into Metasploit?<\/li>\n<li>Do you want to know what shellcode is, how Metasploit shellcode works and how to make shellcode work reliably in your exploit?<\/li>\n<li>Do you have some basic knowledge about win32 exploit development already, and do you want to a good refresher and learn more advanced topcis?<\/li>\n<li>Have you read the Corelan exploit development tutorials, but still want to take the classes to fully understand and master the concepts?<\/li>\n<li>Are you involved in malware research or do Incident Response &amp; interested in understanding how exploits work?<\/li>\n<li>Would you like to understand better how to detect exploits and how to protect against them?<\/li>\n<li>Would you like to get a basic view on common development mistakes, how to avoid them and how compiler\/linker options can help?<\/li>\n<li>Do you have other reasons to learn how to write exploits for the Win32 platform ?<\/li>\n<li>Do you feel online resources and other classes still leave you unsatisfied, somewhat confused, not fully understanding all ins-and-outs?<\/li>\n<li>Are you willing to suffer and bleed a bit, learn fast and not intimidated by debuggers and assembly instructions\u2026<\/li>\n<\/ul>\n<p><b>\u2026then this course is exactly what you need\u00a0!<\/b>[\/vc_column_text][\/vc_column][\/vc_row][vc_row][vc_column][vc_column_text]<\/p>\n<h2><span id=\"Requirements\" class=\"mw-headline\">Requirements<\/span><\/h2>\n<p>Students should\u00a0:<\/p>\n<ul>\n<li>be able to read simple C++ code and simple scripts<\/li>\n<li>be familiar with writing basic scripts using python\/ruby\/\u2026<\/li>\n<li>be ready to dive into a debugger and read asm for hours and hours and hours<\/li>\n<li>be ready to think out of the box and have a strong desire to learn<\/li>\n<li>be\u00a0<em>fluent\u00a0<\/em>with managing Windows \/ Linux operating system and with using vmware workstation\/virtualbox<\/li>\n<li>be familiar with using Metasploit (msfconsole, msfvenom, meterpreter)<\/li>\n<\/ul>\n<p>No prior knowledge of assembly is required, but it will certainly help if you have some basic knowledge \ud83d\ude42<\/p>\n<p>(In case you\u2019re wondering: if you took OSCP\/OSCE, and understood the exploitation part of the courses, then you are probably ready for the course)[\/vc_column_text][\/vc_column][\/vc_row][vc_row][vc_column][vc_column_text]<\/p>\n<h2><span id=\"Hardware.2Fsoftware_Requirements\" class=\"mw-headline\">Hardware\/Software Requirements<\/span><\/h2>\n<p>Unless specified otherwise, students are required to bring the following :<\/p>\n<ul>\n<li>A laptop (no netbook) with vmware workstation\/fusion\/virtualbox and enough processing power and RAM (we recommend a minimum of 8Gb of RAM) to run up to 2 virtual machines at the same time. \u00a0The use of a 64bit processor and a 64bit operating system on the laptop will make the exercises more realistic.<\/li>\n<li>2 Virtual machines installed (Windows 11\/Windows 10 (or Windows 7 SP1) no patches), Kali Linux (fully up-to-date))<\/li>\n<\/ul>\n<p><strong>Note\u00a0: you will receive the exact installation instructions after registration, about a week before class begins, so\u00a0don\u2019t start installling the VMs yet.<\/strong><\/p>\n<p>All required tools and applications will be provided during the training or will be downloaded from the internet during the training.<\/p>\n<p>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\/\u2026 when necessary.<\/p>\n<h2><span id=\"Testimonials\" class=\"mw-headline\">Testimonials<\/span><\/h2>\n<p>In case you still need it\u00a0;-), you can find a large amount of testimonials on this\u00a0<a class=\"external text\" href=\"https:\/\/www.corelan-training.com\/index.php\/testimonials\/\" target=\"_blank\" rel=\"nofollow noreferrer noopener\">page<\/a> of the Corelan Training website.[\/vc_column_text][\/vc_column][\/vc_row][vc_row][vc_column]<div   class=\"gem-quote gem-quote-style-1 gem-quote-no-paddings\" ><blockquote  >This was my first exploit dev course and before entering the room on the first day I thought I already knew a bit about how stack buffer overflow worked. The truth is : I didn\u2019t. With Peter\u2019s training you don\u2019t only write exploits, you understand all the underlying mechanisms. II\u2019m now able to say that I know what a stack buffer overflow is, I know what happens when a shell pops in metasploit. After taking Peter\u2019s bootcamp, NOP sleds won\u2019t be part of your life anymore !<\/p>\n<p>&nbsp;<\/p>\n<p>Julien (Randorisec)<\/blockquote><\/div>[\/vc_column][\/vc_row][vc_row][vc_column]<div   class=\"gem-quote gem-quote-style-1 gem-quote-no-paddings\" ><blockquote  >I\u2019ve been to various trainings until now and always left disappointed in the lack of technical depth. Peter is what I call a master of his domain. In bootcamp he teaches you how the OS works, how memory works, and all other inner workings of a computer (relevant to Exploit development), then and only then he goes into exploitation. Be comfortable with Assembly, python and prepare for a hardcore training if you are a beginner.<\/p>\n<p>&nbsp;<\/p>\n<p>Peter is 1\/ an expert in communication, 2\/an expert in exploitation and 3\/ an expert in teaching skills.\u00a0He loves what he does and you can see it clearly. I would give him 10 stars if I could.<\/p>\n<p>&nbsp;<\/p>\n<p>As an advice, if you are a beginner in exploitation and want to learn as much as possible, do at least 5-10 simple exploits before coming to the training, the pace is brutal.\u00a0 \u00a0Thank you for a great training Peter<\/p>\n<p>&nbsp;<\/p>\n<p>Madalin<\/blockquote><\/div>[\/vc_column][\/vc_row][vc_row][vc_column][vc_column_text]<\/p>\n<h2><span id=\"Legal_Prerequisites\" class=\"mw-headline\">Legal Prerequisites<\/span><\/h2>\n<p>It will be required to sign a confidentiality agreement at the start of the course. \u00a0You will not be admitted to the course without signing this document. \u00a0You can find a copy of the document\u00a0<a href=\"https:\/\/www.corelan-training.com\/Confidentiality%20Agreement%20Courseware.pdf\" target=\"_blank\" rel=\"noopener noreferrer\">here<\/a>.[\/vc_column_text][\/vc_column][\/vc_row][vc_row][vc_column][vc_column_text]<\/p>\n<h2><span id=\"Trainer_Biography\" class=\"mw-headline\">Trainer Biography<\/span><\/h2>\n<p>[\/vc_column_text][\/vc_column][\/vc_row][vc_row][vc_column width=&#8221;5\/6&#8243;][vc_column_text]<strong>Peter Van Eeckhoutte<\/strong> is the founder of Corelan Team and the author of the well-known tutorials on Win32 Exploit Development Training, available at\u00a0<a href=\"https:\/\/www.corelan.be\/\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/www.corelan.be<\/a>. The team gathers a group of IT Security enthusiasts and researchers from around the world, who all share common interests : doing research, gather &amp; share knowledge, and perform responsible\/coordination disclosure. Above all, the team is well known for their ethics and their dedication to helping other people in the community. Together with the team, he has developed and published numerous tools that will assist pentesters and exploit developers, and published whitepapers\/video\u2019s on a wide range of IT Security related topics (pentesting tools, (malware) reverse engineering, etc).<\/p>\n<p>You can find some of the tools on the Corelan github page:\u00a0<a href=\"https:\/\/github.com\/corelan\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/github.com\/corelan<\/a><\/p>\n<p>The team also moderates a Slack workplace (with various channels) that provides a platform for people who want to talk about exploit development or discuss wider IT Security topics. \u00a0Follow us on Twitter (<a href=\"https:\/\/www.twitter.com\/corelanconsult\" target=\"_blank\" rel=\"noopener noreferrer\">@corelanconsult<\/a>) and Facebook (<a href=\"https:\/\/www.facebook.com\/corelanconsulting\" target=\"_blank\" rel=\"noopener noreferrer nofollow\" class=\"broken_link\">corelanconsulting<\/a>) to get a Slack invite.<\/p>\n<p>Peter is reachable on Twitter via\u00a0<a href=\"https:\/\/www.twitter.com\/corelanc0d3r\" target=\"_blank\" rel=\"noopener noreferrer\">@corelanc0d3r<\/a><\/p>\n<p>Peter has been an active member of the IT Security community since 2000 and has been working on exploit development since 2006.\u00a0He presented at various international security conferences (Athcon, Hack In Paris, DerbyCon, ISSA Belgium) and taught various Win32 Exploit Development courses at numerous places around the globe. He trained security enthusiasts &amp; professionals from private companies, government agencies and military organizations.<\/p>\n<p>You can read more about their experiences here:\u00a0<a href=\"https:\/\/www.corelan-training.com\/index.php\/testimonials\/\" target=\"_blank\" rel=\"noopener\">https:\/\/www.corelan-training.com\/index.php\/testimonials\/<\/a>[\/vc_column_text][\/vc_column][vc_column width=&#8221;1\/6&#8243;][vc_single_image image=&#8221;489&#8243; alignment=&#8221;center&#8221; style=&#8221;vc_box_circle&#8221; css=&#8221;.vc_custom_1608036143126{margin-top: 50% !important;}&#8221;][\/vc_column][\/vc_row][vc_row][vc_column][vc_empty_space][vc_column_text]<style type=\"text\/css\">.thegem-button-6adde1de820a52249 .gem-button svg {fill: #ffffff;}.thegem-button-6adde1de820a52249 .gem-button:hover svg {fill: #ffffff;}<\/style><div class=\"gem-button-container gem-button-position-fullwidth thegem-button-6adde1de820a52249    \"  ><a class=\"gem-button gem-button-size-giant gem-button-style-flat gem-button-text-weight-normal\" data-ll-effect=\"drop-right-without-wrap\" style=\"border-radius: 3px;background-color: #b43836;color: #ffffff;\" onmouseleave=\"this.style.backgroundColor='#b43836';this.style.color='#ffffff';\" onmouseenter=\"this.style.backgroundColor='#ef5047';this.style.color='#ffffff';\" href=\"https:\/\/brucon-0x10-spring-training.eventbrite.co.uk\" target=\"_self\">Buy Training Ticket<\/a><\/div> [\/vc_column_text][\/vc_column][\/vc_row][vc_row][vc_column][\/vc_column][\/vc_row]<\/p>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>[vc_row][vc_column width=&#8221;5\/6&#8243;][vc_column_text] Course Description The Corelan \u201cBOOTCAMP\u201d is a truly unique opportunity to learn both basic &amp; advanced techniques from an experienced exploit developer. During these \u201clong\u201d days, students will be able to learn all ins and outs about writing reliable stack based exploits for the Windows (x86) platform.\u00a0 The trainer will share his \u201cnotes from the field\u201d and various tips &amp; tricks to become more effective at writing exploits. We believe it is important&#8230;<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":75,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-461","page","type-page","status-publish"],"_links":{"self":[{"href":"https:\/\/archive.brucon.org\/2024\/wp-json\/wp\/v2\/pages\/461","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/archive.brucon.org\/2024\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/archive.brucon.org\/2024\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/archive.brucon.org\/2024\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/archive.brucon.org\/2024\/wp-json\/wp\/v2\/comments?post=461"}],"version-history":[{"count":45,"href":"https:\/\/archive.brucon.org\/2024\/wp-json\/wp\/v2\/pages\/461\/revisions"}],"predecessor-version":[{"id":3645,"href":"https:\/\/archive.brucon.org\/2024\/wp-json\/wp\/v2\/pages\/461\/revisions\/3645"}],"up":[{"embeddable":true,"href":"https:\/\/archive.brucon.org\/2024\/wp-json\/wp\/v2\/pages\/75"}],"wp:attachment":[{"href":"https:\/\/archive.brucon.org\/2024\/wp-json\/wp\/v2\/media?parent=461"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}