Skip to content

Credentials accepted via GET and merged into the request URL #872

Description

@ngosang

Labels: security · Severity: Medium

Location:

  • src/webserver/src/WebServer.cpp:1880wxString PwStr(Data.parsedURL.Param("pass"));
  • src/webserver/src/WebSocket.cpp:186-197 — POST body is appended to the URL string and
    then parsed identically to a GET query string.

Description: Login reads the password from the parsed URL parameters, and the POST body
is concatenated onto the URL before parsing. As a result the password can be supplied as a
GET query parameter (/?pass=...). Passwords in URLs leak into server logs, browser
history, Referer headers, and proxy/cache logs.

Impact: Credential disclosure through logs and history.

Suggested fix: Accept credentials over POST only; keep the POST body separate from the
URL/query parsing path so the password never becomes part of a URL string. At minimum,
ensure the login password is never logged.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions