Zbyszek Tenerowicz
Oops! Stories of supply chain shenanigans
#1about 4 minutes
Understanding software supply chain security in JavaScript
Software supply chain security involves managing the risks from third-party code you import, such as NPM packages.
#2about 1 minute
Using npm audit to find known package vulnerabilities
The `npm audit` command helps identify known vulnerabilities, like prototype pollution in older versions of packages like Lodash.
#3about 3 minutes
Overcoming the challenges of running npm audit in CI
Running `npm audit` in CI can lead to frequent build failures from low-risk issues like ReDoS in dev dependencies, causing audit fatigue.
#4about 4 minutes
Managing security alerts with the npm-audit-resolver tool
The `npm-audit-resolver` tool provides an interactive way to review, ignore, or postpone vulnerability alerts from `npm audit`.
#5about 6 minutes
How malicious packages use postinstall scripts to attack
Malicious NPM packages can execute arbitrary code during installation using lifecycle `postinstall` scripts, even if they are never imported in your code.
#6about 4 minutes
How a malicious package can compromise build tools
A malicious package can modify build tools like the TypeScript compiler during installation, causing it to inject malicious code into your application's final output.
#7about 3 minutes
Defending against malicious scripts with --ignore-scripts
Using the `--ignore-scripts` flag during `npm install` prevents `postinstall` scripts from running, but it can break legitimate packages that require them.
#8about 3 minutes
Identifying which package scripts are safe to ignore
The `can-i-ignore-scripts` tool analyzes your dependencies and checks against a community-maintained list to see which packages require their scripts to run.
#9about 1 minute
A secure workflow for installing NPM dependencies in CI
A secure installation process involves using a disposable container, running `npm ci --ignore-scripts`, and then selectively re-running only trusted scripts.
#10about 15 minutes
Q&A on package-lock, CSP, and dependency updates
The Q&A covers the role of `package-lock.json` for reproducible builds, using Content Security Policy (CSP) as a defense, and strategies for updating dependencies.
Related jobs
Jobs that call for the skills explored in this talk.
Matching moments
10:37 MIN
Demonstrating a supply chain attack using NPM hooks
Hacking Kubernetes: Live Demo Marathon
08:22 MIN
How attackers exploit developers and packages
Vue3 practical development
11:13 MIN
The danger of dependency confusion in NPM packages
Security in modern Web Applications - OWASP to the rescue!
08:16 MIN
Common attacks targeting software developers
Vulnerable VS Code extensions are now at your front door
05:28 MIN
A historical parallel with the event-stream NPM hack
Coffee with Developers with Feross Aboukhadijeh of Socket about the xz backdoor
30:19 MIN
Managing security risks in third-party dependencies
A Primer in Single Page Application Security (Angular, React, Vue.js)
06:19 MIN
The hidden risks of transitive dependencies
Vue3 practical development
04:23 MIN
How malicious actors infiltrate open source projects
Reviewing 3rd party library security easily using OpenSSF Scorecard
Featured Partners
Related Videos
Hack-Proof The Node.js runtime: The Mechanics and Defense of Path Traversal Attacks
Sonya Moisset
Friend or Foe? TypeScript Security Fallacies
Liran Tal
Coffee with Developers with Feross Aboukhadijeh of Socket about the xz backdoor
Feross Aboukhadijeh
Walking into the era of Supply Chain Risks
Vandana Verma
Security in modern Web Applications - OWASP to the rescue!
Jakub Andrzejewski
Supply Chain Security and the Real World: Lessons From Incidents
Adrian Mouat
Vulnerable VS Code extensions are now at your front door
Raul Onitza-Klugman & Kirill Efimov
Cross Site Scripting is yesterday's news, isn't it?
Martina Kraus
From learning to earning
Jobs that call for the skills explored in this talk.

Angular Developer
Picnic Technologies B.V.
Amsterdam, Netherlands
Intermediate
Senior
RxJS
Angular
TypeScript

Senior PHP Developer (NL based only)
Online Payment Platform
Delft, Netherlands
€75-95K
Senior
PHP
MySQL
Laravel
![Senior Software Engineer [TypeScript] (Prisma Postgres)](https://wearedevelopers.imgix.net/company/283ba9dbbab3649de02b9b49e6284fd9/cover/oKWz2s90Z218LE8pFthP.png?w=400&ar=3.55&fit=crop&crop=entropy&auto=compress,format)
Senior Software Engineer [TypeScript] (Prisma Postgres)
Prisma
Remote
Senior
Node.js
TypeScript
PostgreSQL





