{
  "$schema": "https://raw.githubusercontent.com/oasis-tcs/sarif-spec/master/Schemata/sarif-schema-2.1.0.json",
  "version": "2.1.0",
  "runs": [
    {
      "tool": {
        "driver": {
          "name": "apk-scanner.com",
          "informationUri": "https://apk-scanner.com",
          "version": "1.0.0",
          "rules": [
            {
              "id": "APKSCAN-37-allow_backup",
              "name": "AllowBackup",
              "shortDescription": {
                "text": "android:allowBackup=\"true\""
              },
              "fullDescription": {
                "text": "Backup is on by default on Android; this manifest states it explicitly. If the app stores sensitive local data, define dataExtractionRules/fullBackupContent to exclude it, or set android:allowBackup=false."
              },
              "helpUri": "https://apk-scanner.com/finding/allow_backup",
              "help": {
                "text": "Backup is on by default on Android; this manifest states it explicitly. If the app stores sensitive local data, define dataExtractionRules/fullBackupContent to exclude it, or set android:allowBackup=false."
              },
              "defaultConfiguration": {
                "level": "note"
              },
              "properties": {
                "tags": [
                  "security",
                  "CWE-530",
                  "CWE-312",
                  "MASVS-STORAGE-1",
                  "MASVS-STORAGE-2"
                ],
                "security-severity": "2.0",
                "cwe": [
                  "CWE-530",
                  "CWE-312"
                ],
                "masvs": [
                  "MASVS-STORAGE-1",
                  "MASVS-STORAGE-2"
                ]
              }
            },
            {
              "id": "APKSCAN-23-do_spaces",
              "name": "DoSpaces",
              "shortDescription": {
                "text": "DigitalOcean Spaces reference"
              },
              "fullDescription": {
                "text": "Confirm the bucket/database denies anonymous read (enable auth / storage rules / RLS), then audit its contents for data already exposed while it was open."
              },
              "helpUri": "https://apk-scanner.com/finding/do_spaces",
              "help": {
                "text": "Confirm the bucket/database denies anonymous read (enable auth / storage rules / RLS), then audit its contents for data already exposed while it was open."
              },
              "defaultConfiguration": {
                "level": "note"
              },
              "properties": {
                "tags": [
                  "security",
                  "CWE-200",
                  "CWE-284",
                  "MASVS-STORAGE-2"
                ],
                "security-severity": "2.0",
                "cwe": [
                  "CWE-200",
                  "CWE-284"
                ],
                "masvs": [
                  "MASVS-STORAGE-2"
                ]
              }
            },
            {
              "id": "APKSCAN-35-exported_provider",
              "name": "ExportedProvider",
              "shortDescription": {
                "text": "Exported ContentProvider without permission"
              },
              "fullDescription": {
                "text": "Set android:exported=false, or require a signature-level android:permission, and scope grantUriPermissions narrowly."
              },
              "helpUri": "https://apk-scanner.com/finding/exported_provider",
              "help": {
                "text": "Set android:exported=false, or require a signature-level android:permission, and scope grantUriPermissions narrowly."
              },
              "defaultConfiguration": {
                "level": "note"
              },
              "properties": {
                "tags": [
                  "security",
                  "CWE-926",
                  "CWE-284",
                  "MASVS-PLATFORM-1"
                ],
                "security-severity": "2.0",
                "cwe": [
                  "CWE-926",
                  "CWE-284"
                ],
                "masvs": [
                  "MASVS-PLATFORM-1"
                ]
              }
            },
            {
              "id": "APKSCAN-85-supabase_anon_key",
              "name": "SupabaseAnonKey",
              "shortDescription": {
                "text": "Supabase anon key"
              },
              "fullDescription": {
                "text": "Remove the hard-coded credential from the app package, rotate/revoke it immediately, and move the secret to a backend the app calls with per-user authentication."
              },
              "helpUri": "https://apk-scanner.com/finding/supabase_anon_key",
              "help": {
                "text": "Remove the hard-coded credential from the app package, rotate/revoke it immediately, and move the secret to a backend the app calls with per-user authentication."
              },
              "defaultConfiguration": {
                "level": "note"
              },
              "properties": {
                "tags": [
                  "security",
                  "CWE-798",
                  "MASVS-STORAGE-1"
                ],
                "security-severity": "2.0",
                "cwe": [
                  "CWE-798"
                ],
                "masvs": [
                  "MASVS-STORAGE-1"
                ]
              }
            }
          ]
        }
      },
      "automationDetails": {
        "id": "apk-scanner/com.kekka.plantflow/587aa2be-4f36-4376-9585-2e2787b3a76a"
      },
      "invocations": [
        {
          "executionSuccessful": true
        }
      ],
      "results": [
        {
          "ruleId": "APKSCAN-37-allow_backup",
          "level": "note",
          "message": {
            "text": "Application data is backup-enabled"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "AndroidManifest.xml"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "68d134f0bcd98a9559d6dd5275f80a3928e4a6490ac4a0f1bd16f87683bd49f8"
          },
          "properties": {
            "severity": "info",
            "verified": false,
            "relationship": "gap-signal"
          }
        },
        {
          "ruleId": "APKSCAN-23-do_spaces",
          "level": "note",
          "message": {
            "text": "DigitalOcean Spaces reference"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "assets/index.android.bundle"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "19266836628431e85c15865aa19d18a9a12f315cd195cd6639582d26248b9ea5"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "gap-signal"
          }
        },
        {
          "ruleId": "APKSCAN-23-do_spaces",
          "level": "note",
          "message": {
            "text": "DigitalOcean Spaces reference"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "assets/index.android.bundle"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "93bcff6c32d94df6a31720781f7ae52d6f020d4aa8db1ffc2ca9c8d47ccff962"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "gap-signal"
          }
        },
        {
          "ruleId": "APKSCAN-23-do_spaces",
          "level": "note",
          "message": {
            "text": "DigitalOcean Spaces reference"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "assets/index.android.bundle"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "e414674aecfbf3d12719b963e72b91c8f0b802b00b3eb989893d403fff338805"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "gap-signal"
          }
        },
        {
          "ruleId": "APKSCAN-23-do_spaces",
          "level": "note",
          "message": {
            "text": "DigitalOcean Spaces reference"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "assets/index.android.bundle"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "db3089cd13636658424bb14422af3124e9f0145479f3e910d4b82f27dc1ec012"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "gap-signal"
          }
        },
        {
          "ruleId": "APKSCAN-23-do_spaces",
          "level": "note",
          "message": {
            "text": "DigitalOcean Spaces reference"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "assets/index.android.bundle"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "e9445a32d6323b7a582e0102369bebb0aa33a428d02ddc47a27fe826424d4771"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "gap-signal"
          }
        },
        {
          "ruleId": "APKSCAN-23-do_spaces",
          "level": "note",
          "message": {
            "text": "DigitalOcean Spaces reference"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "assets/index.android.bundle"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "e8ad3eac3a7197bc178d13c6eb5890579a9b8faa6b073ec82ee5c53066a53f4a"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "gap-signal"
          }
        },
        {
          "ruleId": "APKSCAN-23-do_spaces",
          "level": "note",
          "message": {
            "text": "DigitalOcean Spaces reference"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "assets/index.android.bundle"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "d36fc16c67a10a917b70b6892f6488cc3a5182548d3deb69e80e7042dba4426e"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "gap-signal"
          }
        },
        {
          "ruleId": "APKSCAN-23-do_spaces",
          "level": "note",
          "message": {
            "text": "DigitalOcean Spaces reference"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "assets/index.android.bundle"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "cc233f1c4e681e6f05b42f9e38aa6b3bb51797d45d1008c30542b69ee9230986"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "gap-signal"
          }
        },
        {
          "ruleId": "APKSCAN-23-do_spaces",
          "level": "note",
          "message": {
            "text": "DigitalOcean Spaces reference"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "assets/index.android.bundle"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "6c4b7d8dd1eb595897030bd8f818a8f162c2db17de143c43c99e9f329cd73f75"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "gap-signal"
          }
        },
        {
          "ruleId": "APKSCAN-23-do_spaces",
          "level": "note",
          "message": {
            "text": "DigitalOcean Spaces reference"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "assets/index.android.bundle"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "f2549df3a9af0e78504801593a1d313a2e53a7a15cfed81a63ecf0aac110b5b7"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "gap-signal"
          }
        },
        {
          "ruleId": "APKSCAN-23-do_spaces",
          "level": "note",
          "message": {
            "text": "DigitalOcean Spaces reference"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "assets/index.android.bundle"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "0d20bfc863a7d0df677f3bf7f8986f5c3b5cccd37f112cc69a41bcd1c1275995"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "gap-signal"
          }
        },
        {
          "ruleId": "APKSCAN-23-do_spaces",
          "level": "note",
          "message": {
            "text": "DigitalOcean Spaces reference"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "assets/index.android.bundle"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "a832a6be6fdd90402e4e03268712c4ca2a28fd47358aa34a8e8f50b9c0de2e26"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "gap-signal"
          }
        },
        {
          "ruleId": "APKSCAN-23-do_spaces",
          "level": "note",
          "message": {
            "text": "DigitalOcean Spaces reference"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "assets/index.android.bundle"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "237db1fdafb30932d2b043c555cf5ae68f7aa900262aa945892d4e764785af1b"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "gap-signal"
          }
        },
        {
          "ruleId": "APKSCAN-23-do_spaces",
          "level": "note",
          "message": {
            "text": "DigitalOcean Spaces reference"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "assets/index.android.bundle"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "0aaf58e890aeae1bff24ae5b2d60f95b644714453298cb93428aab567d561a98"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "gap-signal"
          }
        },
        {
          "ruleId": "APKSCAN-35-exported_provider",
          "level": "note",
          "message": {
            "text": "Exported content provider without permission (third-party library artifact, shared across 94 unrelated developers)"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "AndroidManifest.xml:expo.modules.clipboard.ClipboardFileProvider"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "16174738eecdf29a91b3eee50e26c4a1f48c411654c5978e8e441f026a27c0de"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "gap-confirmed"
          }
        },
        {
          "ruleId": "APKSCAN-85-supabase_anon_key",
          "level": "note",
          "message": {
            "text": "Supabase anon key (public client key)"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "assets/index.android.bundle"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "df5ba199441c3179e48e4d9ac2e3b2f094e389dd198df30382dd66f78f66da2c"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "gap-confirmed"
          }
        }
      ],
      "properties": {
        "analysis": {
          "issues": [],
          "stages": {
            "pii": "complete",
            "sbom": "complete",
            "signing": "certificate_parsed",
            "strings": "complete",
            "manifest": "complete"
          },
          "status": "complete",
          "grading": {
            "policy": "static-coverage-v1",
            "blockers": [],
            "eligible": true
          },
          "timings_ms": {
            "total": 23070.619,
            "harvest": 5726.632,
            "detectors": 16407.648000000052
          },
          "bytes_total": 113005653,
          "bytes_scanned": 113005653,
          "bytes_skipped": 0,
          "files_processed": 1350,
          "coverage_version": 2,
          "string_encodings": [
            "ascii",
            "utf16le"
          ],
          "signature_validation": "not_performed"
        },
        "provenance": {
          "mode": "static",
          "artifacts": [
            {
              "name": "base.apk",
              "sha256": "213df41e993abf497723a6d6f3ced3f62dec9b4193fe615c01dfc513f1207f48"
            },
            {
              "name": "config.arm64_v8a.apk",
              "sha256": "566d4f004a3b74f0ed35faaad8c85c85d8307523fd074b27313238a04565cc83"
            },
            {
              "name": "config.en.apk",
              "sha256": "7099f49c184cda6146cea7e2ad43bffffed13df5a0a95b47e268f3bfd672785f"
            },
            {
              "name": "config.xxhdpi.apk",
              "sha256": "1bc408a2fe7bae143a6d3ea7a9c1a487c5764a44c1adc7e70fd52150bb0e1ea5"
            }
          ],
          "ruleset_sha256": "3bb79cc3710b0fb021feaa322578f4cffe08396a97c51b34df092b5a05891d5e"
        },
        "apk_sha256": "213df41e993abf497723a6d6f3ced3f62dec9b4193fe615c01dfc513f1207f48",
        "app_id": "com.kekka.plantflow",
        "app_title": "Plant Flow: Identify & Care",
        "app_version": "1.1.3",
        "scan_id": "587aa2be-4f36-4376-9585-2e2787b3a76a",
        "scanned_at": "2026-10-08T08:01:33.887Z"
      }
    }
  ]
}