From 075cf4c800063e3cc65c3d41a9c23222e8ebb554 Mon Sep 17 00:00:00 2001 From: Alexandre Alapetite Date: Wed, 11 Jan 2023 23:27:14 +0100 Subject: API avoid logging passwords (#5001) * API avoid logging passwords * Strip passwords and tokens from API logs * Only log failed requests information when in debug mode * Remove debug SHA * Clean also Apache logs * Better comments * Redact also token parameters * shfmt * Simplify whitespace * redacted --- cli/sensitive-log.sh | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100755 cli/sensitive-log.sh (limited to 'cli') diff --git a/cli/sensitive-log.sh b/cli/sensitive-log.sh new file mode 100755 index 000000000..40309b0db --- /dev/null +++ b/cli/sensitive-log.sh @@ -0,0 +1,9 @@ +#!/bin/sh +# Strips sensitive passwords from (Apache) logs + +# For e.g. GNU systems such as Debian +# N.B.: `sed -u` is not available in BusyBox and without it there are buffering delays (even with stdbuf) +sed -Eu 's/([?&])(Passwd|token)=[^& \t]+/\1\2=redacted/ig' 2>/dev/null || + + # For systems with gawk (not available by default in Docker of Debian or Alpine) or with BuzyBox such as Alpine + $(which gawk || which awk) -v IGNORECASE=1 '{ print gensub(/([?&])(Passwd|token)=[^& \t]+/, "\\1\\2=redacted", "g") }' -- cgit v1.2.3