Hacking Modern Web & Desktop apps: Master the Future of Attack Vectors

Course Description

This course is a 100% hands-on deep dive into the OWASP Security Testing Guide and relevant items of the OWASP Application Security Verification Standard (ASVS), so this course covers and goes beyond the OWASP Top Ten.

Long are the days since web servers were run by perl scripts and desktop apps written in Delphi. What is common between Walmart, eBay, PayPal, Microsoft, LinkedIn, Google and Netflix? They all use Node.js: JavaScript on the server. What is common between Microsoft Teams, Skype, Bitwarden, Slack and Discord? All of them are written in Electron: JavaScript on the client.

Modern Web and Desktop apps share traditional attack vectors and also introduce new opportunities to threat actors. This course will teach you how to review modern web and desktop apps, showcasing Node.js and Electron but using techniques that will also work against any other web or desktop app platform. Ideal for Penetration Testers, Web and Desktop app Developers as well as everybody interested in JavaScript/Node.js/Electron app security.

Get a FREE taste for this training, including access to video recording, slides and vulnerable apps to play with:

All action, no fluff, improve your security analysis workflow and immediately apply these gained skills in your workplace, packed with exercises, extra mile challenges and CTF, self-paced and suitable for all skill levels, with continued education via unlimited email support and lifetime access to training portal with step-by-step video recordings and interesting apps to practice, including all future updates for free.

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

Course contents

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 misconfigurations / 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: Advanced Modern Web App attacks

Part 0 – Advanced Attacks on Modern Web Apps

  • Leaking data from memory at runtime
  • Prototype Pollution Attack
  • From deserialization to RCE
  • Server Side Template Injection
  • OAuth attacks
  • JWT attacks
  • Scenarios with CSP
  • Scenarios with Angular.js
  • Race conditions
  • Sandbox related security
  • Real world case studies

Part 1 – Advanced Modern Web & Desktop Apps CTF

  • Challenges to practice advanced attacks

Day 3: Hacking JavaScript Desktop apps by Example

Part 0 – JavaScript Desktop App Security Crash Course

  • The state of JavaScript Desktop App Security
  • Modern 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 Modern apps
  • Finding vulnerabilities in Modern app dependencies
  • Identification of the attack surface of Modern apps & information gathering
  • Static modification of Modern apps for analysis and debugging
  • Identification of common vulnerability patterns in Modern apps:
    • Common misconfigurations
    • Hardcoded secrets
    • Logic bugs
    • Access control flaws
    • URL handlers
    • XSS, Injection attacks and more
  • Modifying Modern apps to alter behaviour 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 behaviour monitoring at runtime
  • Modifying app behaviour at runtime

Part 3 – Test your Skills

  • CTF time

What would the attendees gain

  • 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

WHY SHOULD YOU TAKE THIS COURSE?

This is more than a live online attendance course: You get the live online 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.
Students can take the course at their own pace and training portal access ensures topics can be reviewed on an ad-hoc basis as required by the student online after the course.

This training has been built from real issues seen in real applications, not fabricated vulnerabilities that 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. Students will be taught ways to identify the attack surface of Modern Web and Desktop apps, exploit interesting vulnerabilities and means to fix them.

The course  talks students through the process of performing security audits of Modern apps. 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.

Requirements

This course has no prerequisites as it is designed to accommodate students  with different skills:

  • Advanced students will enjoy comprehensive labs, extra miles and CTF challenges
  • Less experienced students complete what they can during the class, and can continue at their own pace from home using the training portal.

This said, the more you learn about the following ahead of the course, the more you will get out of the course:

  • Linux command line basics
  • Basic knowledge of Node.js, Electron or JavaScript is not required, but would help.

System Requirements

A laptop with the following specifications:

  • Ability to connect to wireless and wired networks.
  • Ability to read PDF files
  • Administrative rights: USB allowed, the ability to deactivate AV, firewall, install tools, etc
  • Knowledge of the BIOS password, in case VT is disabled.
  • Minimum 8GB of RAM (recommended: 16GB+)
  • 60GB+ of free disk space (to copy a lab VM and other goodies)
  • VirtualBox 6.0 or greater, including the “VirtualBox Extension Pack” [ VMWare also works ]

Trainer Biography

After 15 years in itsec and 22 in IT Abraham Aranguren 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. Former senior  Penetration tester / team lead at Cure53 and Version 1. Creator of “Practical Web Defense”, a hands-on eLearnSecurity attack / defense course, 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

Privacy Preferences
When you visit our website, it may store information through your browser from specific services, usually in form of cookies. Here you can change your privacy preferences. Please note that blocking some types of cookies may impact your experience on our website and the services we offer.