← All courses
12 lessons · 1.8 hoursSelf-paced trainingLimited-time discount

XSSing JS-MVC Applications - XJA

Find and exploit XSS in JavaScript MVC apps such as AngularJS and Backbone by understanding framework architecture and templating engines.

Offered by OpSecX

Course Overview

What this course covers

Cross Site Scripting right from its days of inception has always been one of the most popular client side vulnerabilities. With the recent increase in usage of JavaScript Model-View-Controller Frameworks (like AngularJS, BackboneJS etc..) for building single page web applications, the search for XSS is more challenging but rewarding if done carefully. The main objective of this course is to bring students up to speed with various security aspects of testing these interfaces developed using multitude of JS-MVC ideology. This course is in no way related to finding bypasses in the core frameworks, but more related to finding vulnerabilities in the applications developed by improper usage of these otherwise perfect frameworks. This is a deep dive course where the students will be walked through the basic architecture of these frameworks and their inbuilt protection mechanisms. Knowledge of building userscripts for dynamic hooking of different templating engines to fuzz for XSS vulnerabilities is practiced over real world applications. The course starts from absolute basics of JavaScript and builds to a point where the student will be able to write static and dynamic analyzers for JS templating engines.

What are the requirements?

What am I going to get from this course?

  • Over 12 lectures and 1 hour 50 minutes of content
  • Learn how to find XSS vulnerabilities in modern templating engines and MVC frameworks
  • Learn how to fuzz for XSS using Static and Dynamic Analysis methods
  • Certificate of Appreciation upon successful course completion.

What is the target audience?

  • Application Security Professionals interested in Client Side JavaScript/Frontend Framework Security.
  • Pentesters, Front-End developers and anyone who are unable to find reflected XSS with the help of “View Source”.
  • Developers who want to catch insecure coding practices and security issues while they are developing the apps.
  • If you want to learn the basics of Client Side JavaScript Security, this course is probably not for you.

Curriculum

Section 1: Introduction

  1. Introduction to the Course

Section 2: JavaScript Refresher

  1. Basics of JavaScript
  2. Object Proxying and Function Hooking.

Section 3: Developer tools

  1. Developer Tools & UserScripts

Section 4: MVC frameworks

  1. Architecture Analysis
  2. Templating Engines

Section 5: Ways of XSS detection

  1. Static Source Code Analysis
  2. Dynamic Analysis

Section 6: Case Studies of JS MVC Frameworks

  1. HandlebarsJS
  2. DustJS
  3. AngularJS

Section 7: Conclusion

  1. Quick Recap & Conclusion
  2. Course Slides

Syllabus

What you will learn

Javascript Refresher

  1. Basics of JavaScript

    11 min

  2. Object Proxying and Function Hooking

    15 min

Developer Tools

  1. Developer Tools & UserScripts

    10 min

MVC Frameworks

  1. Basic Architecture

    10 min

  2. Template Engines

    13 min

XSS Detection

  1. Ways of XSS Detection

    20 min

Case Studies

  1. HandlebarsJS

    12 min

  2. DustJS

    2 min

  3. AngularJS

    14 min

Conclusion

  1. Quick Recap & Conclusion

    3 min

  2. Course Slides

    Lesson

Introduction

  1. Introduction to the Course

    Lesson

Frequently asked questions

What is XSSing JS-MVC Applications - XJA?

Find and exploit XSS in JavaScript MVC apps such as AngularJS and Backbone by understanding framework architecture and templating engines. Offered by OpSecX as self-paced application security training.

Who is this training for?

This course is for pentesters, developers, and security practitioners who want hands-on application security skills they can use on real systems.

How long is the training?

The course includes 12 lessons · 1.8 hours. You work through it at your own pace.

Do I get a certificate?

Yes. Completing a course issues a verifiable OpSecX certificate with a public verification link. You control whether your name is shown on that page.

How do I access the lessons?

After purchase, lessons are available self-paced in your OpSecX dashboard. Preview lessons on this page do not require enrollment.