Skip to content

NULL byte in request path kills server #502

Closed
@vvanpo

Description

@vvanpo

Version 0.11.1.

[Mon Feb 04 2019 09:30:16 GMT-0800 (Pacific Standard Time)] "GET /<...>%00" "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0)"                                                                         
internal/fs/utils.js:453
    throw err;
    ^

TypeError [ERR_INVALID_ARG_VALUE]: The argument 'path' must be a string or Uint8Array without null bytes. Received '<...>\u0000'                                                
    at Object.stat (fs.js:821:3)
    at statFile (<...>/yarn/global/node_modules/ecstatic/lib/ecstatic.js:350:10)
    at Array.middleware (<...>/yarn/global/node_modules/ecstatic/lib/ecstatic.js:459:7)
    at dispatch (<...>/yarn/global/node_modules/union/lib/routing-stream.js:110:21)
    at Object.onceWrapper (events.js:273:13)
    at module.exports.emit (events.js:182:13)
    at Array.<anonymous> (<...>/yarn/global/node_modules/http-server/lib/http-server.js:66:9)
    at dispatch (<...>/yarn/global/node_modules/union/lib/routing-stream.js:119:21)
    at module.exports.RoutingStream.route (<...>/yarn/global/node_modules/union/lib/routing-stream.js:121:5)
    at Object.onceWrapper (events.js:273:13)

It seems that external requests can kill the server if it passes NULL bytes in the request path.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions