Find sensitive data in log calls
Recipe ID
org.openrewrite.kotlin.security.FindSensitiveDataInLogs$KtRecipeArtifact
io.moderne.recipe:recipes-kotlinLog calls (SLF4J, println, android.util.Log) whose message string mentions password/token/secret/api_key/credit_card — each match likely renders the secret value into a log destination that isn't designed for secret storage.
Usage
This recipe has no required configuration options. You’ll need the Moderne CLI configured before running the command below.
mod run . --recipe org.openrewrite.kotlin.security.FindSensitiveDataInLogs$KtRecipeIf the recipe isn’t available locally, install it with:
mod config recipes jar install io.moderne.recipe:recipes-kotlin:0.2.0Definition
This recipe runs the following recipes in order.
- Find SLF4J log calls with sensitive field names in the format string
org.openrewrite.kotlin.security.FindSlf4jLogSensitive$KtRecipe - Find
println("... password ...")patternsorg.openrewrite.kotlin.security.FindPrintlnSensitive$KtRecipe - Find
android.util.Log.{d,i,v,w,e}calls with sensitive contentorg.openrewrite.kotlin.security.FindAndroidLogSensitive$KtRecipe
Data tables
Structured output this recipe can produce.
- Source files that had resultsSource files that were modified by the recipe run.
org.openrewrite.table.SourcesFileResults - Source files that had search resultsSearch results that were found during the recipe run.
org.openrewrite.table.SearchResults - Source files that errored on a recipeThe details of all errors produced by a recipe run.
org.openrewrite.table.SourcesFileErrors - Recipe performanceStatistics used in analyzing the performance of recipes.
org.openrewrite.table.RecipeRunStats