Lifetime Access
Quick Facts
Mode of Delivery
Video and Text Based
|
Mode of learning
Self study, Virtual Classroom
|
About this course
· 3-Days hands-on Application security training covering the most common application security vulnerabilities and how to build secure applications that avoid these issues. Finding security vulnerabilities at the end of the SDLC is often too late to influence fundamental changes in the way the code is written, and many security issues could be avoided from the outset.
· This class has been written by developers turned pen testers who can help developers to code in a secure manner and introduce security into the development cycle. Throughout this class, developers will be able to get on the same page with security professionals, understand how exploitable vulnerabilities are created in code, learn how to fix or mitigate vulnerabilities and get acquainted with the root causes behind some real-world breaches. Various bug bounty case studies from popular websites like Facebook, Google, Shopify, PayPal, Twitter etc will be discussed explaining the financial repercussions of application security vulnerabilities like SSRF, XXE, SQL Injection, Authentication issues etc.
· The techniques discussed in this class are generic and developers from any language background can easily grasp and implement the knowledge learned within their own environments. In the class, .NET, Java and NodeJS are used in the workshop examples as this range provide lessons that can be used in a wide range of applications.
1. Understanding the HTTP Protocol
- Understanding
HTTP/HTTPS protocol
- Lab: Configure Burpsuite to intercept HTTP/HTTPS traffic
- Understanding Requests
and Responses
- Lab: Manipulating HTTP headers
- Demo: Host Header Injection
- Mitigation Techniques
- Attack Surface detection
2. Security Misconfigurations
- Common misconfigurations in Web Applications
- Sensitive Information exposure and how to avoid it
- Using Softwares with
known vulnerabilities
- Demo : Struts2 RCE
3. Insufficient Logging and Monitoring
- Types of Logging
- Introduction to F-ELK
4. Authentication Flaws
- Password Complexity
- Lab: Bruteforce using Burpsuite Intruder
- Anti-Automation
Techniques
- Mitigating brute-force attacks
- Password Storage
- Crash Course on Cryptography
- Introduction to HashiCorp Vault
- Password Recovery – Best Practices
- NoSQL Security
- Lab: Bypass NoSQL Authentication
- Mitigating NoSQL Injections
- Understanding WebAuthn – Passwordless Authentication Framework
5. Authorization Bypass Techniques
- Parameter Manipulation
- Common Pitfalls and Mitigations
- API Authentication –
JWT
- Introduction to JWT
- Lab : Cracking JWT tokens
- Common JWT Attacks
- Mitigating JWT Attacks
- SSO Authentication –
OAuth
- Introduction to OAuth
- OAuth Flow
- Lab: Bypass OAuth
- Common OAuth Attacks
- Mitigating OAuth Attacks
- RBAC Bypasses and mitigations
- Mass Assignment
Vulnerability
- Understanding Mass Assigning/Auto binding
- Lab: Exploiting Mass Assignment
- Mitigating Mass Assignment vulnerability
- Insecure Direct Object
References (IDOR)
- Mitigating IDORs
- Local file Inclusion
(LFI)
- Lab: Download internal files
- Mitigating LFI
6. Cross-Site Scripting (XSS)
- Understanding XSS
- Reflected XSS
- Lab: Exploiting Reflected XSS
- Demo: Session Hijacking
- Stored XSS
- Lab: Exploiting Stored XSS
- How not to Mitigate
XSS
- Lab: Pitfalls in XSS Defenses
- Mitigating XSS
7. Cross-Site Request Forgery Scripting
- Understanding CSRF
- Lab: Exploiting CSRF
- Mitigating CSRF
8. Server-Side Request Forgery (SSRF)
- Understanding SSRF
- Lab: Exploiting SSRF
- SSRF in Cloud
- Mitigating SSRF
9. SQL Injection
- Understanding SQL
Injection
- Lab: Error-Based SQL Injection
- Lab: Blind SQL Injection
- Mitigating SQL Injection
- ORM Frameworks
XML External Entity (XXE) Attacks
- Understanding XML Entities
- Understanding XXE
Vulnerability
- Lab: Exploiting XXE Vulnerability
- Mitigating XXE
Unrestricted File Uploads
- File Upload
functionality
- Lab: Uploading webshells
- Mitigating File upload vulnerability
10. Deserialization Vulnerabilities
- What is Serialization?
- PHP Object
Serialization
- Demo: PHP Object Deserialization
- Lab: Exploit PHP Deserialization
- Java Object
Serialization
- Demo: Java Binary Deserialization
- Other Java Deserialization
- Detecting deserialization functions
- Mitigation for deserialization vulnerabilities
11. Client-Side Security Concerns
- Understanding Same Origin Policy
- Understanding CORS
(Cross-Origin Resource Sharing)
- Demo: CORS
- Excessive CORS
- Transport Layer Protection: HSTS
- Securing Cookies
- Iframe Security
- Demo: Clickjacking
- Content-Security Policy
- Referrer Policy
12. Source Code Review
- Manual Code Review
- SQL Injection
- Identify vulnerable libraries
- Identify Authorization Flaws
- Log Injections
- File Handling
- Insecure Cryptography
- Automated Code Review
- Demo: FindSecBugs/CAT.NET
- Secure Code Review CTF
13. DevSecOps
- DevSecOps - What Why and How?
- DevSecOps Sample Implementation