Securing Applications in Node.js

Securing Applications in Node.js

English | MP4 | AVC 1920×1080 | AAC 48KHz 2ch | 3h 26m | 510 MB

Protect your Node.js application data from common attacks

Everyone agrees that web application security is very important but there are very few to take it seriously. There have been lots of high-profile instances of websites having their password databases exposed to the World (e.g. Ashley Madison and Adobe). You don’t want the application you are building to be the next big security horror story. This course will get you up-to-speed on the key attack vectors, quickly covering issues such as cross-site scripting, CSRF, and SQL injection. It will provide you with clear, practical approaches to mitigating these problems. It will show you how to implement OAuth and two-factor authentication for the additional protection of users who need it. Further, we will delve into the critical process of adding secured, well-thought-out authentication and authorization to a Node.js application. After completing this course, you should be confident in your ability to make an application secure with Node.js and keep your data protected.

This course provides step-by-step instructions along with the required implementations showcasing various security issues and ways to mitigate them. The author also highlights some practical examples wherever applicable during the course.

What You Will Learn

  • Discover common attacks on web applications such as XSS and CSRF and ways to mitigate them.
  • Rate-limit your APIs to prevent abuse.
  • Build a user registration, login, and password reset flow.
  • Add two-factor authentication to let security conscious users further protect themselves.
  • How to do passwordless authentication via magic links in emails.
  • How OAuth and OpenID allow you to authenticate users via third-party services.
Table of Contents

Introduction
1 The Course Overview
2 The Importance of Security in Web Applications
3 Express Is Not Secure by Default
4 Set Up the Demo Project

Cross-Site Request Forgery
5 How to Break the Security of an Application That’s Vulnerable to Cross-Site Request Forgery
6 Protecting a Site Using CSRF Tokens
7 Protecting a Site Using Headers
8 Same-Site Policies on Cookies

SQL Injection and Cross-Site Scripting
9 SQL Injection in Action
10 Preventing SQL Injection with Template Literals
11 Cross-Site Scripting in Action
12 Preventing Cross-Site Scripting

Passwords and Passwordless
13 Password User Experience
14 Securely Storing and Verifying Passwords
15 Password Reset Flows
16 Passwordless Authentication

Two-Factor Authentication
17 Why Is Two-Factor Authentication Important
18 SMS-Based Two-Factor Authentication
19 Google Authenticator

OAuth
20 Facebook Login
21 Google Identity

Authorization, Deployment and Managing Secret Keys
22 Authorization in General
23 Authorization in REST APIs
24 Authorization in GraphQL
25 Deployment and Managing Secret Keys