Martina Kraus
Cross Site Scripting is yesterday's news, isn't it?
#1about 2 minutes
Demonstrating a persistent cross-site scripting attack
A live demo shows how malicious JavaScript can be injected into an input field and stored in a database, executing on every page load.
#2about 3 minutes
Why built-in framework sanitizers are not enough
Framework sanitizers can be bypassed by using native DOM APIs directly, and the vast majority of application code comes from third-party NPM packages.
#3about 4 minutes
Introducing the Content Security Policy http header
The Content Security Policy (CSP) is an HTTP header that controls which resources can be loaded and executed by the browser using directives for scripts, styles, and API connections.
#4about 4 minutes
Implementing and refining a basic content security policy
A live demo shows how to add a CSP via a meta tag and then iteratively fix broken styles and API calls by adjusting the `style-src` and `connect-src` directives.
#5about 3 minutes
Safely executing inline scripts with hashes and nonces
CSP Level 2 provides hashes and nonces as secure alternatives to `unsafe-inline` for whitelisting specific inline scripts for execution.
#6about 7 minutes
Using CSP nonces with server-side rendering
Nonces must be unique and randomly generated on the server for each request to be secure, and the `strict-dynamic` directive allows trusted scripts to load other scripts.
#7about 3 minutes
Introducing trusted types to secure dangerous dom sinks
Trusted Types is a new CSP directive that locks down dangerous DOM APIs, requiring that any data passed to them must first be sanitized and wrapped in a special trusted object.
#8about 3 minutes
Implementing trusted types with the dompurify library
Instead of writing custom sanitization logic, you can use a library like DOMPurify with its `RETURN_TRUSTED_TYPE` option to easily create secure, trusted HTML objects.
#9about 1 minute
Browser support and final recommendations for trusted types
Trusted Types are currently supported by all Chromium-based browsers, making it a viable defense-in-depth strategy for a significant portion of web users.
Related jobs
Jobs that call for the skills explored in this talk.
Hubert Burda Media
München, Germany
€80-95K
Intermediate
Senior
JavaScript
Node.js
+1
Douglas GmbH
Düsseldorf, Germany
Intermediate
Senior
TypeScript
React
MARKT-PILOT GmbH
Stuttgart, Germany
Remote
€75-90K
Senior
Java
TypeScript
+1
Matching moments
02:33 MIN
Why you might not need JavaScript for everything
WeAreDevelopers LIVE – You Don’t Need JavaScript, Modern CSS and More
03:31 MIN
The value of progressive enhancement and semantic HTML
WeAreDevelopers LIVE – You Don’t Need JavaScript, Modern CSS and More
11:32 MIN
The industry's focus on frameworks over web fundamentals
WeAreDevelopers LIVE – Frontend Inspirations, Web Standards and more
09:00 MIN
Navigating the growing complexity of modern CSS
WeAreDevelopers LIVE – You Don’t Need JavaScript, Modern CSS and More
05:01 MIN
Comparing the security models of browsers and native apps
Developer Time Is Valuable - Use the Right Tools - Kilian Valkhof
06:33 MIN
The security challenges of building AI browser agents
AI in the Open and in Browsers - Tarek Ziadé
08:07 MIN
Exploring modern JavaScript performance and new CSS features
WeAreDevelopers LIVE – AI, Freelancing, Keeping Up with Tech and More
01:06 MIN
Malware campaigns, cloud latency, and government IT theft
Fake or News: Self-Driving Cars on Subscription, Crypto Attacks Rising and Working While You Sleep - Théodore Lefèvre
Featured Partners
Related Videos
Securing Frontend Applications with Trusted Types
Philippe De Ryck
A Primer in Single Page Application Security (Angular, React, Vue.js)
Thomas Konrad
101 Typical Security Pitfalls
Alexander Pirker
Security in modern Web Applications - OWASP to the rescue!
Jakub Andrzejewski
You click, you lose: a practical look at VSCode's security
Thomas Chauchefoin & Paul Gerste
Hack-Proof The Node.js runtime: The Mechanics and Defense of Path Traversal Attacks
Sonya Moisset
Friend or Foe? TypeScript Security Fallacies
Liran Tal
Vulnerable VS Code extensions are now at your front door
Raul Onitza-Klugman & Kirill Efimov
Related Articles
View all articles



From learning to earning
Jobs that call for the skills explored in this talk.

Visonum GmbH
Remote
Junior
Intermediate
React
Redux
TypeScript

aXite Security Tools
Amsterdam, Netherlands
Node.js
Angular
JavaScript


Mendix
Rotterdam, Netherlands
Remote
Intermediate
CSS
HTML
TypeScript
Continuous Integration


Brantner Digital Solutions
Charing Cross, United Kingdom
Remote
£45-65K
Senior
CSS
GIT
AJAX
+14
![01 / 11 / 25 - 01 / 01 / 30 ActiveXchange Sport Data - Full Stack Developer (Angular / .NET / SQL) | Remote[...]](https://wearedevelopers.imgix.net/public/default-job-listing-cover.png?w=400&ar=3.55&fit=crop&crop=entropy&auto=compress,format)
Protospace
Remote
£50-70K
Intermediate
API
GIT
.NET
+6

X-on Health
Eaton, United Kingdom
£50K
Senior
CSS
SASS
Scrum
React
+3

Jordan Martorell S.L.
Municipality of Madrid, Spain
API
REST
JavaScript
Continuous Integration