postgres password appears in process table
@fila43 已经在做这个了。
开始于 2024年4月24日。
评估
这个 Issue 还没有评估数据。
描述
Container platform
OCP 4
Version
quay.io/sclorg/postgresql-15-c9s:latest from awx-operator
OS version of the container image
CentOS Stream 9
Bugzilla, Jira
No response
Description
this image runs psql with the password set on the command line. As a result it appears in the process table and is recorded by auditing tools.
as deployed by awx-operator, the postgres container will execute a
psql --set ON_ERROR_STOP=1 --set=username=awx --set=password=ZTH7V8R1wg2GwI..
Reproducer
cd 16 && ; podman build -t db -f ./Dockerfile.c9s
sudo auditctl -a exit,always -F arch=x86_64 -S execve
podman run -ti -v /var/lib/pgsql/data --name db -e POSTGRESQL_USER=awx -e POSTGRESQL_PASSWORD=lepassword -e POSTGRESQL_DATABASE=awx -e POSTGRESQL_MASTER_USER=lemaster -e POSTGRESQL_MASTER_PASSWORD=lemaster -e POSTGRESQL_ADMIN_PASSWORD=more --rm db
sudo grep psql /var/log/audit/audit.log | grep lepassword
type=EXECVE msg=audit(1713081027.200:82065): argc=5 a0="psql" a1="--set" a2="ON_ERROR_STOP=1" a3="--set=username=awx" a4="--set=password=lepassword"
something in this fashion would work
--- a/16/root/usr/share/container-scripts/postgresql/start/set_passwords.sh
+++ b/16/root/usr/share/container-scripts/postgresql/start/set_passwords.sh
@@ -1,23 +1,21 @@
#!/bin/bash
-_psql () { psql --set ON_ERROR_STOP=1 "$@" ; }
+_psql () { setsid psql --set ON_ERROR_STOP=1 "$@" ; }
if [[ ",$postinitdb_actions," = *,simple_db,* ]]; then
-_psql --set=username="$POSTGRESQL_USER" \
- --set=password="$POSTGRESQL_PASSWORD" \
-<<< "ALTER USER :\"username\" WITH ENCRYPTED PASSWORD :'password';"
+(echo "${POSTGRESQL_PASSWORD}" ; echo "${POSTGRESQL_PASSWORD}"
+) | _psql --set=username="$POSTGRESQL_USER" \
+ -f <(echo '\password :username')
fi
- 主要语言
- PLpgSQL
- 星标
- 178
- 派生
- 220
- PR 合并指标
- 30 天内没有已合并 PR
环境准备
这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
sclorg/postgresql-container 的其他 Issue
-
PostgreSQL 16 images based on EL10 have an incorrect POSTGRESQL_PREV_VERSION set可能已有人在做 @ShimShtein 于 116 天前认领。 未关闭
难度 2/5 1-2 天 新手友好度 72/100
sclorg/postgresql-container#661 ·
-
难度 3/5 1-2 天 新手友好度 68/100
sclorg/postgresql-container#669 · 1 条评论 ·
-
c10s images are not multi-arch while their corresponding c9s images are.可能已有人在做 @kkyrazis 于 76 天前认领。 未关闭
难度 3/5 1-2 天 新手友好度 52/100
sclorg/postgresql-container#668 ·
-
难度 2/5 1-3 小时 新手友好度 55/100
sclorg/postgresql-container#656 ·
-
难度 3/5 1-2 天 新手友好度 50/100
sclorg/postgresql-container#654 ·