# Insertion of Sensitive Information into Log File (CWE-532) Information written to log files can be of a sensitive nature and give valuable guidance to an attacker or expose sensitive user information. **Stack:** Go - Prevalence: 中 3 言語をカバー - Impact: ハイ 1 件の重大度ハイのルール - Prevention: 文書化済み 3 件の修正例 **OWASP:** Security Logging and Monitoring Failures (A09:2021-Security Logging and Monitoring Failures) - #9 ## Description When sensitive information like passwords, tokens, or personal data is logged, it becomes accessible to anyone with access to the logs. Log files are often stored with less security than the data they contain. ## Prevention 1 件の Shoulder 検出ルールに基づく Information Exposure Through Logs の予防策。 ### Go Never log passwords, tokens, or PII; log presence/absence instead ## Consequences - アプリケーションデータの読み取り - 権限の取得 ## Mitigations - パスワードやトークンなどの機密情報はログに記録しない - ログデータの分類とフィルタリングを実装する - ログに記録する前に機密データをマスクまたは伏字化する ## Detection - Total rules: 3 - Languages: go, javascript, typescript, python ## Rules by Language ### Go (1 rules) - **Logging Sensitive Data** [MEDIUM]: Passwords, tokens, or PII logged via log.Printf or similar functions. - Remediation: Never log sensitive values. Log presence/absence instead of actual values. ```go // Log only that API key is configured, not the value if apiKey != "" { log.Println("API key configured") } ``` Learn more: https://shoulder.dev/learn/go/cwe-532/sensitive-data-logging