DeepSec 2024 Training: Hacking Modern Web & Desktop Apps: Master the Future of Attack Vectors – Abraham Aranguren
This course is the culmination of years of experience gained via practical penetration testing of Modern Web and Desktop applications and countless hours spent doing research. We have structured this course around the OWASP Security Testing Guide. It covers the OWASP Top Ten and specific attack vectors against Modern Web and Desktop apps. Participants in this course can immediately apply actionable skills from day 1.
Please note our courses are 100% hands-on. We do not lecture students with boring bullet points and theories, instead we give you practical challenges and help you solve them, teaching you how to troubleshoot common issues and get the most out of this training. The training then continues after the course through our frequently updated training portal, for which you keep lifetime access, as well as unlimited email support.
Each day starts with a brief introduction to the modern platform (i.e. Node.js, Electron) for that day and then continues with a look at static analysis, moves on to dynamic checks, finishing with a nice CTF session to test the skills gained.
Day 1: Focused specifically on Hacking Modern Web Apps: We start with understanding Modern Web Apps and then deep dive into static and dynamic analysis of the applications at hand. This day is packed with hands-on exercises and CTF-style challenges.
Day 2: Focused on Hacking JavaScript Desktop Apps: We start with understanding JavaScript Desktop apps and various security considerations. We then focus on static and dynamic analysis of the applications at hand. The day is filled with hands-on exercises ending with a CTF for more practical fun.
Training Outline
Course Objectives
This course will take any student and make sure that:
- The general level of proficiency is much higher than when they came
- The skills acquired can be immediately applied to modern Web and Desktop app security assessments
- Skills can be sharpened via continued education in our training portal for free
- The student is equipped to defeat common Web and Desktop app assessment challenges
- Everybody will learn a lot in this training.
- Advanced students will come out with enhanced skills and more efficient workflows
- The skills gained are highly practical and applicable to real-world assessments
Attendees will be provided with
- Lifetime access to training portal, with all course materials
- Unlimited access to future updates and step-by-step video recordings
- Unlimited email support, if you need help while you practice at home later
- Interesting vulnerable apps to practice
- Digital copies of all training material
- Custom Build Lab VMs
- Purpose Build Vulnerable Test apps
- Source code for test apps
- A USB pen drive with materials
Topics Included
- Review of Common Flaws in Source Code and at Runtime
- Desktop App Modification of Behavior Through Code/Configuration Changes
- Web & Desktop – Interception of Network Communication and MitM-proxy techniques to find security flaws in these platforms
- Platform-specific attack vectors against Modern Web apps & mitigation
- Platform-specific attack vectors against JavaScript Desktop apps & mitigation
- CTF Challenges for attendants to test their skills
Why should you take this course?
This is more than a physical attendance course: You get the physical course but also lifetime access to a training portal with step-by-step video recordings, slides and lab exercises, including all future updates for free.
The training portal access ensures that students can review topics on an ad-hoc basis online after the course, while they can also take the course at their own pace.
This training has been built from actual issues seen in real applications, not fabricated vulnerabilities you will never see in practice.
The goal is to start from the basics and ensure that each student comes out of the training with a significantly higher level of proficiency in the artistry of pentesting.
The course will teach students ways to identify the attack surface of Modern Web and Desktop apps, exploit interesting vulnerabilities, and means to fix them. Students are guided through the process of performing security audits of modern apps in the course. The training also covers effective identification, exploitation, and mitigation of common vulnerability patterns against these platforms.
As the course has been written and carefully created by professional penetration testers, after many years of experience, many practical tips will be shared to leverage automation and make penetration testing more efficient as soon as the student goes back to their workplace.
Top three takeaways
- Learn how to find Modern Web and Desktop App vulnerabilities because of common misconfiguration and typical mistakes in framework setup
- Identify and exploit Modern Web and Desktop App security vulnerabilities as efficiently as possible
- Improve your Modern Application Security Testing process by leveraging several open source tools, as well as lots of tips and tricks shared by the instructors after years of Modern Web and Desktop App penetration testing.
Upon Completion of this training, attendees will know
Completing this training ensures attendees will be competent and able to:
- Review and tamper network communications to exploit security vulnerabilities
- Bypass certificate and public key pinning protections on Desktop apps
- Bypass inadequate Modern Web and Desktop App defences
- Analyze Modern Web and Desktop Apps from a blackbox perspective
- Review Modern Web and Desktop App source code to identify security flaws
- Perform Modern Web and Desktop App security reviews
Course Content (ToC)
Day 1: Hacking Modern Web apps by Example
Part 0
- Modern Web App Security Crash Course
- The state of Modern Web App Security
- Modern Web App architecture
- Introduction to Modern Web App apps
- Modern Web App apps the filesystem
- JavaScript prototypes
- Recommended lab setup tips
Part 1
- Static Analysis, Modern Web App frameworks and Tools
- Modern Web App frameworks and their components
- Finding vulnerabilities in Modern Web App dependencies
- Common misconfiguration / flaws in Modern Web App applications and frameworks
- Tools and techniques to find security flaws in Modern Web App apps
Part 2
- Finding and fixing Modern Web App vulnerabilities
- Identification of the attack surface of Modern Web App apps and general information gathering
- Identification of common vulnerability patterns in Modern Web App apps:
- CSRF
- XSS
- Access control flaws
- NOSQL Injection, MongoDB attacks
- SQL Injection
- RCE
- Crypto
- Monitoring data: Logs, Insecure file storage, etc.
Part 3
Test Your Skills – CTF time.
Day 2: Hacking JavaScript Desktop apps by Example
Part 0
- JavaScript Desktop App Security Crash Course
- The state of JavaScript Desktop App Security
- JavaScript app security architecture and its components
- JavaScript Desktop apps and the filesystem
- Recommended lab setup tips
Part 1
- Static Analysis and Tools
- Tools and techniques to reverse and review JavaScript apps
- Finding vulnerabilities in JavaScript app dependencies
- Identification of the attack surface of JavaScript apps & information gathering
- Static modification of JavaScript apps for analysis and debugging
- Identification of common vulnerability patterns in JavaScript apps:
- Common misconfigurations
- Hardcoded secrets
- Logic bugs
- Access control flaws
- URL handlers
- XSS, Injection attacks and more
- Modifying Modern apps to alter behavior and debug issues
Part 2
- Dynamic Analysis
- Monitoring data: caching, logs, app files, insecure file storage, unsafe storage of app secrets, etc.
- Crypto flaws
- The art of MitM: Intercepting Network Communications
- Defeating certificate pinning at runtime
- The art of Instrumentation: Introduction to Frida
- App behavior monitoring at runtime
- Modifying app behavior at runtime
Part 3
Test your Skills – CTF time.
Who should attend
Any Web or Desktop App developer, penetration tester or person interested in Modern Web and Desktop apps, Node.js, Electron or JavaScript security will benefit from attending this training regardless of the initial skill level:
This course is for beginners, intermediate and advanced level students. While beginners are introduced to the nuances of Modern Web and Desktop App security from scratch, intermediate and advanced level learners get to perfect both their knowledge and skills on the subject. Extra mile challenges are available in every module to help more advanced students polish their skills.
The course is crafted in a way that, regardless of your skill level, you will significantly improve your Modern App security auditing skills:
If you are new and cannot complete the labs during the class, that is OK, as you keep training portal access, you will learn a lot in the class but can continue from home with the training portal.
If you are more advanced, you can try to complete the labs in full and then take the CTF challenges we have for each day. You will probably also attempt to complete some exercises from home later 🙂
What to expect
Lifetime access to training portal (including all future updates), unlimited email support, access to private groups to communicate with other students, access to interesting apps from various countries.
A fully practical class that will seriously improve your Modern Web and Desktop App security knowledge and skills, regardless of the skill level you come in with. Battle-tested tips and tricks that take your abilities to the next level and that you can apply as soon as you go back to your workplace, making security testing of Modern Web and Desktop apps as efficient as possible. Intensive hands-on exercises that challenge you to deep dive into the world of Modern App security.
What not to expect
This is more than a physical attendance course: You get the physical course but also lifetime access to a training portal with step-by-step video recordings, slides and lab exercises, including all future updates for free.
The course does not cover: 0-days, Windows/Linux/Mac OS exploits, x86 exploit writing, writing buffer or heap overflows.
Do not expect the teachers to be talking through slides most of the time: This class is practical not theoretical, the teachers don’t bore you with slides all the time, instead you do exercises and the teachers help you solve the challenges you face as you complete them.
We asked Abraham a few more questions about his training.
Please tell us the top 5 facts about your talk.
- Modern web and desktop applications present a significantly expanded attack surface compared to traditional applications.
- The rapid pace of technological advancement introduces new vulnerabilities and attack vectors at an unprecedented rate.
- A strong understanding of both client-side and server-side security is essential for effective defense.
- The human element remains a critical factor in cybersecurity, with social engineering and phishing attacks continuing to be prevalent.
- Continuous learning and adaptation are vital for staying ahead of cyber threats.
How did you come up with it? Was there something like an initial spark that set your mind on creating this training?
The increasing frequency and sophistication of cyberattacks against web and desktop applications, coupled with the growing reliance on these applications in our daily lives, have created a pressing need for skilled security professionals.
Why do you think this is an important topic?
Protecting sensitive data, maintaining system integrity, and ensuring business continuity depends on a robust understanding of web and desktop application security.
Is there something you want everybody to know – some good advice for our readers maybe?
Foster a security-first mindset throughout the development lifecycle. Stay informed about the latest threats and vulnerabilities. Encourage a culture of collaboration between development, security, and operations teams.
A prediction for the future – what do you think will be the next innovations or future downfalls when it comes to your field of expertise/ the topic of your talk in particular?
Advancements in artificial intelligence and machine learning will probably lead to both new attack methods and improved defense mechanisms. The increasing complexity of software systems will create challenges in identifying and mitigating vulnerabilities.
After 17 years in itsec and 24 in IT Abraham is now the CEO of 7ASecurity (7asecurity.com), a company specializing in penetration testing of web/mobile apps, infrastructure, code reviews and training. Co-Author of the Mobile, Web and Desktop (Electron) app 7ASecurity courses. Security Trainer at Blackhat USA, HITB, OWASP Global AppSec and many other events. OWASP OWTF project leader, an OWASP flagship project (owtf.org), Major degree and Diploma in Computer Science, some certs: CISSP, OSCP, GWEB, OSWP, CPTS, CEH, MCSE:Security, MCSA:Security, Security+. As a shell scripting fan trained by unix dinosaurs, Abraham wears a proud manly beard. He writes on Twitter as @7asecurity @7a_ @owtfp or https://7asecurity.com/blog. Multiple presentations, pentest reports and recordings can be found at https://7asecurity.com/publications