Skip to content

Optional LiteLLM deployment publishes services with public default credentials #603

Open

Description

@carfeii

Affected versions: confirmed on main at commit d92819a (the project publishes no tagged release).

Summary

The supplied docker-compose-litellm.yml profile publishes PostgreSQL (port 5432) and the LiteLLM proxy (port 4000) on host ports, falling back to the fixed, documented credentials litellm_password and sk-1234 when LITELLM_DB_PASSWORD/LITELLM_MASTER_KEY are not set.

Details

POSTGRES_PASSWORD: ${LITELLM_DB_PASSWORD:-litellm_password}
ports:
  - "5432:5432"
...
environment:
  - LITELLM_MASTER_KEY=${LITELLM_MASTER_KEY:-sk-1234}
ports:
  - "4000:4000"
# litellm-config.yml
general_settings:
  database_url: postgres://litellm:litellm_password@db:5432/litellm

POC

(available upon request)

Impact

An operator who starts this optional compose profile without supplying overrides exposes a database and an LLM-proxy admin API, reachable by anyone who can reach those ports, using credentials already published in this repository.

Suggested fix: remove the fallbacks (fail startup unless strong secrets are supplied) and keep both ports off the public interface. A fix is included in the linked PR.

Fix: #598

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    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