HexBrain

Node.js third-party modules · Report #357109

[simplehttpserver] List any file in the folder by using path traversal.

Validstatus
highseverity
11upvotes
30 Aug 2018disclosed

Summary

Vulnerability was reported and the package maintainer fixed the issue.

How it was found

I would like to report Path Traversal in simplehttpserver. It allows to list any file in another folder of web root.

Module

module name: simplehttpserver version: 0.1.1 npm page: https://www.npmjs.com/package/simplehttpserver

Module Description

'simpehttpserver' is an simple imitation of python's SimpleHTTPServer and is intended for testing, development and debugging purposes

Module Stats

[444] downloads in the last week

Vulnerability

Vulnerability Description

simpehttpserver is simply get the path name of url and add it to the web root. it means if you input ../, it will happy add it to web root and you can list the folder you choose. But the trick is web browser or curl are also to try rebuild the url containing ../. I used the burp to make a raw url and send it to server.

Steps To Reproduce:

install simplehttpserver $ npm install simplehttpserver -g

start program $ simplehttpserver ./

start burpsuite and enter the url contain ../. you should see the files in the folder. {F301226}

Patch

filter .. in the path name.

Supporting Material/References:

Configuration I've used to find this vulnerability:

  • kali linux 4.15.0
  • nodejs v8.11.2
  • npm 6.1.0
  • Burpsuite community

Wrap up

  • I contacted the maintainer to let them know: N
  • I opened an issue in the related repository: N

Impact

This vulnerability allows malicious user to list file in the folder. This might expose vectors to attack system with Remote Code Execution, reveals files with usernames and passwords and many other possibilites.

This report was disclosed publicly on HackerOne and belongs to its author and the program. See the original