From 75d31572bbcaecb84f61aef9cb9fef2136418f4b Mon Sep 17 00:00:00 2001 From: Romeo Rosete Date: Tue, 20 May 2025 11:31:03 -0400 Subject: [PATCH] Potential fix for code scanning alert no. 6: Clear-text logging of sensitive information Romeo Rosete Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> --- cmd/clef/main.go | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/cmd/clef/main.go b/cmd/clef/main.go index 4a74e3a724..575b6598f6 100644 --- a/cmd/clef/main.go +++ b/cmd/clef/main.go @@ -1086,8 +1086,20 @@ func GenDoc(ctx *cli.Context) error { output []string add = func(name, desc string, v interface{}) { // Sanitize sensitive fields before logging - if req, ok := v.(*core.UserInputRequest); ok && req.IsPassword { - req.IsPassword = false // Obfuscate sensitive metadata + switch req := v.(type) { + case *core.UserInputRequest: + if req.IsPassword { + req.IsPassword = false // Obfuscate sensitive metadata + } + case *core.SignDataRequest: + req.Rawdata = nil // Remove raw data to avoid logging sensitive information + for i := range req.Messages { + req.Messages[i].Value = "[REDACTED]" // Obfuscate message content + } + case *core.ListRequest: + for i := range req.Accounts { + req.Accounts[i].URL.Path = "[REDACTED]" // Obfuscate account paths + } } if data, err := json.MarshalIndent(v, "", " "); err == nil { output = append(output, fmt.Sprintf("### %s\n\n%s\n\nExample:\n```json\n%s\n```", name, desc, data))