NginxProxyManager / NginxProxyManager/nginx-proxy-manager

Frontend is storing password in clear text

Open
#4,600 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug stale
Dominant language
TypeScript
Stars
34.2k
Forks
3.9k
Avg merge
21h 12m
Merged PRs (30d)
20

Description

Checklist

  • Have you pulled and found the error with jc21/nginx-proxy-manager:latest docker image?
    • Yes
  • Are you sure you're not using someone else's docker image?
    • Yes
  • Have you searched for similar issues (both open and closed)?
    • Yes

Describe the bug
While exploring the SQLite database, I found that passwords are stored in plain text in the"access_list_auth" table.

Nginx Proxy Manager Version
jc21/nginx-proxy-manager:latest

To Reproduce
Steps to reproduce the behavior:
1- Make a fresh install
2- Set the user and password
3- Create a new Access List

Expected behavior
Passwords or authorization details should be securely stored (e.g., hashed) in the database.

Screenshots

Image

Operating System
CachyOS (Arch Linux) and Debian 12

Additional context
Docker Version: 28.3.0, build 38b7060a21
Docker-Compose Version: version 2.37.3

The screenshot is from a Python script i wrote that displays the contents of database.sqlite.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by locating the access_list_auth table and the code paths that write and read its authorization details, then reproduce the fresh-install steps against database.sqlite. Done means stored passwords or authorization details are no longer plaintext while access-list authentication continues to work.

Written by the indexing model from the issue text.

Assessment

Tech stack
sqlite
Domain
databases, security
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.