StackStorm / StackStorm/st2

WebUI shows secrets in plain text on Rules/Enforcements section

Open
#4,802 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug component:st2web security
Dominant language
Python
Stars
6.5k
Forks
787
PR merge metrics
No merged PRs in 30d

Description

SUMMARY

Web UI shows variables marked as secret: true in plain text on Rules/Enforcements.

st2 CLI correctly masks it.

STACKSTORM VERSION

st2 3.1.0 running on Python 2.7

OS, environment, install method

Docker

Steps to reproduce the problem

---
name: full_backup
pack: mongodb
enabled: true
description: Performs a backup of MongoDB
runner_type: orquesta
entry_point: workflows/full_backup.yaml
parameters:
  mongodb_password:
    default: "{{ st2kv.system.mongodb_admin_password | decrypt_kv }}"
    type: string
    secret: true
version: 1.0
description: A workflow that backs up Mongo
input:
  - mongodb_password
vars:
  - stdout: null
  - stderr: null

tasks:
  run_backup_playbook:
    action: core.noop
output:
  - stdout: <% ctx(stdout) %>

Expected Results

For the Web UI to mask the password. But it shows on Web UI shows the password in Rules/Enforcements tab.

Using the st2 CLI execution get correctly masks the secrets.

Actual Results

Web UI shows the password in Rules/Enforcements tab. Open an execution and the password is shown in ACTION INPUT.

Contributor guide

Open the contributing guide

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 with the Rules/Enforcements Web UI and execution ACTION INPUT views described in the report. Reproduce the issue with the supplied secret parameter and compare the Web UI with the st2 CLI execution get behavior. Done means secret values are masked in both Web UI locations.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
frontend, security
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.