Hacking Modern Web Apps: Master The Future of Attack Vectors

Download as pdf or txt
Download as pdf or txt
You are on page 1of 15
At a glance
Powered by AI
The key takeaways from this training include learning practical techniques for assessing the security of modern web applications, with a focus on Node.js and JavaScript applications. Attendees will learn hands-on methods for identifying vulnerabilities and how to secure applications.

The training will cover hacking modern web applications by example on day 1 and more advanced attacks on day 2. Specific topics include file storage, crypto, XSS, SSRF, SQLi, NoSQLi, RCE, and data exfiltration.

While no formal prerequisites are required, basic Linux command line skills and some familiarity with Node.js or JavaScript would be beneficial for attendees. However, the course is designed to accommodate all levels of experience.

Hacking Modern

Web apps: Master


the Future of Attack
Vectors
2 Day Training

7ASecurity LLLP 
[email protected] 
2 Day Training

INDEX

Section A - Personal Information 3


# Trainer: Abraham Aranguren # 3
# Trainer: Anirudh Anand # 3
# Past Training Experience - For Organizers Only # 4

Section B - Training Details - Can be Public 6


# Training Session Title # 6
# Short Abstract # 6
# Training Abstract # 7
# Training Outline # 7
## Course Objectives ## 7
## Attendees will be provided with ## 8
## Topics Included ## 8
## Why should you take this course? ## 8
## Top three takeaways ## 9
## Upon Completion of this training, attendees will know ## 9
## Course Content (ToC) ## 11
### Day 1: Hacking Modern Web apps by Example ### 11
### Day 2: Advanced Modern Web App attacks ### 12
# Prerequisite of Training Class # 12
## Hardware & Software: Attendees should bring ## 12
## Student / Prerequisites for attendees ## 12
# Who should attend # 13
# What to expect # 13
# What not to expect # 14

Section C: Additional Information - Organizers Only 14


# Keywords # 14
# Have you conducted the workshop before at any other conference? # 15

7ASecurity LLLP​ ​© 2019


2
2 Day Training

Section A - Personal Information

# Trainer: Abraham Aranguren #

Name​: Abraham Aranguren


Job Role/Handle​: CEO, Security Trainer, Director of Penetration Testing
Alias / Twitter​: ​@7asecurity​ ​@7a_
Company LinkedIn​:​ ​https://www.linkedin.com/company/7asecurity
Personal LinkedIn​:​ ​https://www.linkedin.com/in/abrahamaranguren/
Github​:​ ​https://github.com/7a
Company/Organization​: 7ASecurity ​https://7asecurity.com
Country​: Spain
Photo​: ​https://7asecurity.com/logo/profile.jpg

Short Bio​:

After 13 years in ITsec and 20 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. Security Trainer at Blackhat USA, HITB,
OWASP Global AppSec and many other events. Former senior penetration tester / team
lead at Cure53 (​cure53.de​) and Version 1 (​www.version1.com​). Creator of “Practical
Web Defense” - a hands-on eLearnSecurity attack / defense course
(​www.elearnsecurity.com/PWD​), 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

# Trainer: Anirudh Anand #

Name​: Anirudh Anand


Job Role/Handle​: Security Trainer at 7ASecurity, Security Engineer at CRED
Alias / Twitter​: ​@a0xnirudh

7ASecurity LLLP​ ​© 2019


3
2 Day Training

Company LinkedIn​:​ ​https://www.linkedin.com/company/7asecurity


Personal LinkedIn​:​ ​https://www.linkedin.com/in/anirudhanand/
Github​:​ ​https://github.com/a0xnirudh
Company/Organization​: Security Trainer at 7ASecurity, Security Engineer at CRED
Country​: India

Short Bio​:

Anirudh Anand is a security researcher with a primary focus on Web and Mobile
Application Security. He is currently working as a Senior Security Engineer at ​CRED​ and
also Security Trainer at ​7asecurity​. He has been submitting bugs and contributing to
security tools for over 7 years. In his free time, he participates in CTF competitions along
with ​Team bi0s​ (#1 security team in India according to CTFtime). His bounties involve
vulnerabilities in Google, Microsoft, LinkedIn, Zendesk, Sendgrid, Gitlab, Gratipay and
Flipboard.

Anirudh is an open source enthusiast and has contributed to several OWASP projects
with notable contributions being in OWTF and Hackademic Challenges Project. He has
presented/trained in a multitude of conferences including c0c0n 2019, BlackHat Arsenal
2019, BlackHat Europe Arsenal 2018, HITB Dubai 2018, Offzone Moscow 2018, Ground
Zero Summit Delhi 2015 and Xorconf 2015.

# Past Training Experience - ​For Organizers Only​ #

The proposed trainers have provided IT training during multiple years in their careers. In
addition to this, various courses have been taught by these trainers at multiple
conferences with excellent attendant feedback, a list of upcoming and past public
trainings can be found in the following link:

https://7asecurity.com/training

Some public attendant feedback:


https://twitter.com/popSh3lls/status/1187379564747677696
https://twitter.com/dmann2265/status/1176751055419392000
https://twitter.com/ITGirl_MsCJ/status/1186706011689758721
https://twitter.com/G1nGe98/status/1230875759591526400
https://twitter.com/wrickdev/status/1227104599259004928
https://twitter.com/dmann2265/status/1186380962940231680

7ASecurity LLLP​ ​© 2019


4
2 Day Training

Multiple presentations, recordings and published pentest reports can be found at:
https://7asecurity.com/publications​.

More recorded talks and additional background information can be found here:
https://7asecurity.com/blog/tag/public-speaking/

Additional References:
Evidence of the course author being part of the team in a number of engagements is
available via public pentest reports (i.e. the course author name appears in all of these
reports):
- Smart Sheriff: Round #1 -
https://7asecurity.com/reports/pentest-report_smartsheriff.pdf
- Smart Sheriff: Round #2 -
https://7asecurity.com/reports/pentest-report_smartsheriff-2.pdf
NOTE: Smart Sheriff is a mobile app that was mandated by the South Korean
government, for more information please see our presentation: “Smart Sheriff, Dumb
Idea, the wild west of government assisted parenting”

Slides​:
https://www.slideshare.net/abrahamaranguren/smart-sheriff-dumb-idea-the-wild-west-of-
government-assisted-parenting
Video​: ​https://www.youtube.com/watch?v=AbGX67CuVBQ

- Exodus iOS Mobile App - ​https://7asecurity.com/reports/pentest-report_exodus.pdf


- Open Policy Agent - ​https://7asecurity.com/reports/pentest-report_opa.pdf
- imToken Wallet - ​https://7asecurity.com/reports/pentest-report_imtoken.pdf
- Gravitational Teleport - ​https://7asecurity.com/reports/pentest-report_teleport_2.pdf
- Whistler Apps - ​https://7asecurity.com/reports/pentest-report_whistler.pdf
- Psiphon - ​https://7asecurity.com/reports/pentest-report_psiphon.pdf
- Briar - ​https://7asecurity.com/reports/pentest-report_briar.pdf
- Padlock - ​https://7asecurity.com/reports/pentest-report_padlock.pdf
- Peerio - ​https://7asecurity.com/reports/pentest-report_peerio.pdf
- OpenKeyChain - ​https://7asecurity.com/reports/pentest-report_openkeychain.pdf
- F-Droid / Baazar - ​https://7asecurity.com/reports/pentest-report_fdroid.pdf
- Onion Browser - ​https://7asecurity.com/reports/pentest-report_onion-browser.pdf
- Globaleaks - ​https://7asecurity.com/reports/pentest-report_globaleaks.pdf

NOTE: Name removed for safety in the following reports, participation can be confirmed
emailing ​[email protected]

7ASecurity LLLP​ ​© 2019


5
2 Day Training

- "Study the Great Nation" App ​https://7asecurity.com/reports/analysis-report_sgn.pdf


- Chinese Police App "BXAQ" - ​https://7asecurity.com/reports/analysis-report_bxaq.pdf
- Analysis-Report Chinese Police App "IJOP" -
https://7asecurity.com/reports/analysis-report_ijop.pdf

Section B - Training Details - Can be Public

# Training Session Title #

Hacking Modern Web apps: Master the Future of Attack Vectors

# Short Abstract #

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 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.

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

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.

7ASecurity LLLP​ ​© 2019


6
2 Day Training

# Training Abstract #

This course is the culmination of years of experience gained via practical penetration
testing of Modern Web applications as well as 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 apps. This course
provides participants with actionable skills that can be applied immediately 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. 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) for that day
and then continues with a look at static analysis, moves on to dynamic checks finishing
off 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​: Dedicated to Advanced Modern Web App Attacks: We cover advanced attacks
specifically targeting the Modern Web App and other platforms such as dumping
memory, prototype pollution, deserialization attacks, OAuth, JWT flaws and more. The
day is full of hands-on exercises and ends with CTF-style open challenges for additional
practice.

# 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
7ASecurity LLLP​ ​© 2019
7
2 Day Training

- The skills acquired can be immediately applied to modern Web app security
assessments
- Skills can be sharpened via continued education in our training portal for free
- The student is equipped to defeat common Web 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 T-shirt
- A USB pendrive with materials

## Topics Included ##

1. Review of Common Flaws in Source Code and at Runtime


2. Web - Interception of Network Communication and MitM-proxy techniques to find
security flaws in these platforms
3. Platform-specific attack vectors against Modern Web apps & mitigation
4. 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​.

7ASecurity LLLP​ ​© 2019


8
2 Day Training

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 apps, exploit
interesting vulnerabilities and means to fix them. The course walks 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.

## Top three takeaways ##

- Learn how to find Modern Web App vulnerabilities due to common misconfigurations
and typical mistakes in framework setups

- Identify and exploit Modern Web App security vulnerabilities as efficiently as possible

- Improve your Modern Application Security Testing process leveraging a number of


open source tools, as well as lots of tips and tricks shared by the instructors after years
of Modern Web 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 inadequate Modern Web App defences
- Analyze Modern Web Apps from a blackbox perspective

7ASecurity LLLP​ ​© 2019


9
2 Day Training

- Review Modern Web App source code to identify security flaws


- Perform Modern Web App security reviews

7ASecurity LLLP​ ​© 2019


10
2 Day Training

## 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 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

7ASecurity LLLP​ ​© 2019


11
2 Day Training

### 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 Apps CTF


- Challenges to practice advanced attacks

# Prerequisite of Training Class #

## Hardware & Software: Attendees should bring ##

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”

## Student / Prerequisites for attendees ##

7ASecurity LLLP​ ​© 2019


12
2 Day Training

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 or JavaScript is not required, but would help.

# Who should attend #

Any Web App developer, penetration tester or person interested in Modern Web apps,
Node.js 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 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 likely also attempt to complete some exercises
from home later :)

# What to expect #

7ASecurity LLLP​ ​© 2019


13
2 Day Training

Lifetime access to training portal (including all future updates), unlimited email support,
access to private groups to communicate with other students, interesting apps from
various countries.

A fully practical class that will seriously improve your Modern Web 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
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 all the time and the teachers help you solve the challenges you face as you
complete them.

Section C: Additional Information - Organizers Only

# Keywords #

- Web Application Security


- JavaScript security
- Node.js Security
- Static analysis
- Dynamic analysis
- File storage
- Crypto
- XSS

7ASecurity LLLP​ ​© 2019


14
2 Day Training

- SSRF
- SQLi
- NOSQLi
- RCE
- Data exfiltration

# Have you conducted the workshop before at any other


conference? #

This particular course has been taught at OWASP and Blackhat USA events, additional
conferences can be seen in the following link, similar past trainings had excellent
attendant feedback at a number of locations as well, please note our courses are
constantly updated based on student feedback:
https://7asecurity.com/training

7ASecurity LLLP​ ​© 2019


15

You might also like