{
  "$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-2-firebase_rtdb",
              "name": "FirebaseRtdb",
              "shortDescription": {
                "text": "Firebase Realtime Database 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/firebase_rtdb",
              "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-20-google_api_key",
              "name": "GoogleApiKey",
              "shortDescription": {
                "text": "Google API key (client-shipped; restriction unverified)"
              },
              "fullDescription": {
                "text": "Restrict the API key (application + API restrictions in Google Cloud Console); a client-shipped key is public, so restriction is the control."
              },
              "helpUri": "https://apk-scanner.com/finding/google_api_key",
              "help": {
                "text": "Restrict the API key (application + API restrictions in Google Cloud Console); a client-shipped key is public, so restriction is the control."
              },
              "defaultConfiguration": {
                "level": "note"
              },
              "properties": {
                "tags": [
                  "security",
                  "CWE-798",
                  "MASVS-STORAGE-1"
                ],
                "security-severity": "2.0",
                "cwe": [
                  "CWE-798"
                ],
                "masvs": [
                  "MASVS-STORAGE-1"
                ]
              }
            },
            {
              "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-53-firebase_storage",
              "name": "FirebaseStorage",
              "shortDescription": {
                "text": "Firebase Storage bucket 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/firebase_storage",
              "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-60-bg_location",
              "name": "BgLocation",
              "shortDescription": {
                "text": "Background location access"
              },
              "fullDescription": {
                "text": "Justify background location; request foreground-only where possible and disclose the use in the Play Data Safety form."
              },
              "helpUri": "https://apk-scanner.com/finding/bg_location",
              "help": {
                "text": "Justify background location; request foreground-only where possible and disclose the use in the Play Data Safety form."
              },
              "defaultConfiguration": {
                "level": "note"
              },
              "properties": {
                "tags": [
                  "security",
                  "CWE-359",
                  "MASVS-PRIVACY-1"
                ],
                "security-severity": "2.0",
                "cwe": [
                  "CWE-359"
                ],
                "masvs": [
                  "MASVS-PRIVACY-1"
                ]
              }
            },
            {
              "id": "APKSCAN-72-sentry_dsn",
              "name": "SentryDsn",
              "shortDescription": {
                "text": "Sentry DSN"
              },
              "fullDescription": {
                "text": "A client DSN is low-risk but confirm it is a client (not internal) DSN and cannot be abused to spoof events."
              },
              "helpUri": "https://apk-scanner.com/finding/sentry_dsn",
              "help": {
                "text": "A client DSN is low-risk but confirm it is a client (not internal) DSN and cannot be abused to spoof events."
              },
              "defaultConfiguration": {
                "level": "note"
              },
              "properties": {
                "tags": [
                  "security",
                  "CWE-200",
                  "MASVS-STORAGE-2"
                ],
                "security-severity": "2.0",
                "cwe": [
                  "CWE-200"
                ],
                "masvs": [
                  "MASVS-STORAGE-2"
                ]
              }
            }
          ]
        }
      },
      "automationDetails": {
        "id": "apk-scanner/co.unstatic.habitify/23eb540b-7246-4204-ac9a-823ec9cfcff7"
      },
      "invocations": [
        {
          "executionSuccessful": true
        }
      ],
      "results": [
        {
          "ruleId": "APKSCAN-2-firebase_rtdb",
          "level": "note",
          "message": {
            "text": "Firebase Realtime Database reference"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "classes.dex"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "022daa7db42a5e06b4029121fd109917a0bb0c59765d597e4eccc4a26c4c4594"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "gap-signal"
          }
        },
        {
          "ruleId": "APKSCAN-2-firebase_rtdb",
          "level": "note",
          "message": {
            "text": "Firebase Realtime Database reference"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "resources.arsc"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "2e5058f41e827bf1d2c9d7f595519f49bea6210adece45f103defa2cb700465f"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "gap-signal"
          }
        },
        {
          "ruleId": "APKSCAN-20-google_api_key",
          "level": "note",
          "message": {
            "text": "Google API key (client-shipped; restriction unverified)"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "resources.arsc"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "29c21a17de2fe183d1364b448db05a422d9f420fc4e2d830d59ae88452ce3700"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "gap-signal"
          }
        },
        {
          "ruleId": "APKSCAN-20-google_api_key",
          "level": "note",
          "message": {
            "text": "Google API key (client-shipped; restriction unverified)"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "resources.arsc"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "62515bae2414e9892e4dcf60360818764c034292cc52983d3f3fb1dec3c777bd"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "gap-signal"
          }
        },
        {
          "ruleId": "APKSCAN-23-do_spaces",
          "level": "note",
          "message": {
            "text": "DigitalOcean Spaces reference"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "res/raw/default_challenge_template.json"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "fd0ba751c332b46e3227f32f0c77ac53626a34682d3a4748813b76649b84886e"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "gap-signal"
          }
        },
        {
          "ruleId": "APKSCAN-23-do_spaces",
          "level": "note",
          "message": {
            "text": "DigitalOcean Spaces reference"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "res/raw/default_challenge_template.json"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "64e0c8279c97a2b9b2ac80e242b63db5a9230838835c86db91b8359bc7866ed7"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "gap-signal"
          }
        },
        {
          "ruleId": "APKSCAN-23-do_spaces",
          "level": "note",
          "message": {
            "text": "DigitalOcean Spaces reference"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "res/raw/default_challenge_template.json"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "383a9583dd16483f818ea1689901a61fa09d96563bb15af9b4d9831f55255ac7"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "gap-signal"
          }
        },
        {
          "ruleId": "APKSCAN-23-do_spaces",
          "level": "note",
          "message": {
            "text": "DigitalOcean Spaces reference"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "res/raw/default_challenge_template.json"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "d423a1e0520cc21c47170ab2681539d6d488e439adcb713bef98bbf25d59e286"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "gap-signal"
          }
        },
        {
          "ruleId": "APKSCAN-23-do_spaces",
          "level": "note",
          "message": {
            "text": "DigitalOcean Spaces reference"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "res/raw/default_challenge_template.json"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "45c2c35a498ebc6f9fc469006580e1c3a32b02bb7d356db0ba8624fe8b7a2753"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "gap-signal"
          }
        },
        {
          "ruleId": "APKSCAN-23-do_spaces",
          "level": "note",
          "message": {
            "text": "DigitalOcean Spaces reference"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "res/raw/default_challenge_template.json"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "cd8d5aae0d4e19caf7c4720db23726cfa1de4704e8125b801e6f1f87ce245813"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "gap-signal"
          }
        },
        {
          "ruleId": "APKSCAN-23-do_spaces",
          "level": "note",
          "message": {
            "text": "DigitalOcean Spaces reference"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "res/raw/default_challenge_template.json"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "70e9f3ac1c901a6f4aea435bb1e7b187f96b3b191c8ca83d7c2149d8d6a26eaf"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "gap-signal"
          }
        },
        {
          "ruleId": "APKSCAN-23-do_spaces",
          "level": "note",
          "message": {
            "text": "DigitalOcean Spaces reference"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "res/raw/default_challenge_config.json"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "ef08e91fb6f630955a5f720f4aac6595cb1885b3b9d2f01bf4437d5076310bd3"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "gap-signal"
          }
        },
        {
          "ruleId": "APKSCAN-23-do_spaces",
          "level": "note",
          "message": {
            "text": "DigitalOcean Spaces reference"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "res/raw/default_challenge_config.json"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "8ce730facf112a66a17ecbd8502d1e2b9a378355acbdbc741ac9b24e3e4ff195"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "gap-signal"
          }
        },
        {
          "ruleId": "APKSCAN-23-do_spaces",
          "level": "note",
          "message": {
            "text": "DigitalOcean Spaces reference"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "res/raw/default_challenge_config.json"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "83b6bb0664643333a15e9bdd0935b4e9167d4db3f78950cdfaf580cc1f8eef71"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "gap-signal"
          }
        },
        {
          "ruleId": "APKSCAN-23-do_spaces",
          "level": "note",
          "message": {
            "text": "DigitalOcean Spaces reference"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "res/raw/default_challenge_config.json"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "d3591da539a497031197167578c83045f6697141247ca19a04d8d3a0bee5c1a8"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "gap-signal"
          }
        },
        {
          "ruleId": "APKSCAN-23-do_spaces",
          "level": "note",
          "message": {
            "text": "DigitalOcean Spaces reference"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "res/raw/default_challenge_template.json"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "10c56898686a2980e1c30566f96f6cd4131739ed618a4a7b697d39421ed50fcb"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "gap-signal"
          }
        },
        {
          "ruleId": "APKSCAN-23-do_spaces",
          "level": "note",
          "message": {
            "text": "DigitalOcean Spaces reference"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "res/raw/default_challenge_template.json"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "2f63a4c9455f7c129a7de1f2062cb9ee789d552773946c69bd26f8f10195d69f"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "gap-signal"
          }
        },
        {
          "ruleId": "APKSCAN-23-do_spaces",
          "level": "note",
          "message": {
            "text": "DigitalOcean Spaces reference"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "res/raw/default_challenge_template.json"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "a8b5400831ec72762d306bb5d8e3bbb35515afe44424dab60c1e1829b56784b7"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "gap-signal"
          }
        },
        {
          "ruleId": "APKSCAN-23-do_spaces",
          "level": "note",
          "message": {
            "text": "DigitalOcean Spaces reference"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "res/raw/default_challenge_template.json"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "2ba0724a8a6c8b93523ae96bf4813ae72a2df0b1f00a5f50243f8abbe37bd3f9"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "gap-signal"
          }
        },
        {
          "ruleId": "APKSCAN-23-do_spaces",
          "level": "note",
          "message": {
            "text": "DigitalOcean Spaces reference"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "res/raw/default_challenge_template.json"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "ee7535d8d5c4e229e634dad38513fb7e023346b106814236886377abc38e0e0d"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "gap-signal"
          }
        },
        {
          "ruleId": "APKSCAN-53-firebase_storage",
          "level": "note",
          "message": {
            "text": "Firebase Storage bucket reference"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "google/api/backend.proto"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "b6e2cb8eb4bf3d0a7bcb1c02e7aaa6b80181f3fefcd2655ab608c7c76f9d6977"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "gap-signal"
          }
        },
        {
          "ruleId": "APKSCAN-53-firebase_storage",
          "level": "note",
          "message": {
            "text": "Firebase Storage bucket reference"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "resources.arsc"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "40cdda8fb8d31fed5915bf2760dd58d53a6f37092f970031de2db29b79526e8c"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "gap-signal"
          }
        },
        {
          "ruleId": "APKSCAN-53-firebase_storage",
          "level": "note",
          "message": {
            "text": "Firebase Storage bucket reference"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "res/raw/default_habit_icon_config.json"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "b83217b13b278b2d487c4b1e78a4e1464a98a02b342d7088d8d511f1ca210cba"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "gap-signal"
          }
        },
        {
          "ruleId": "APKSCAN-53-firebase_storage",
          "level": "note",
          "message": {
            "text": "Firebase Storage bucket reference"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "google/api/endpoint.proto"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "6da605c01a32d6178ae1e6876876e3de02277efaeb0bf30b781056b6efdcc7a8"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "gap-signal"
          }
        },
        {
          "ruleId": "APKSCAN-60-bg_location",
          "level": "note",
          "message": {
            "text": "Background location access with advertising SDKs present"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "pii:bgloc"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "0c010d775be9542eee48043eb496c06888f9b8e8fcdf3af66a6b84e99192f6ce"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "gap-confirmed"
          }
        },
        {
          "ruleId": "APKSCAN-72-sentry_dsn",
          "level": "note",
          "message": {
            "text": "Sentry DSN"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "classes.dex"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "cd83bec4d512433d22a1ac163a5a64402a7ebcd5d9ac8aacc167284455bef324"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "informational"
          }
        }
      ],
      "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": 17140.879,
            "harvest": 4749.006999999982,
            "detectors": 10767.408000000014
          },
          "bytes_total": 93971822,
          "bytes_scanned": 93971822,
          "bytes_skipped": 0,
          "files_processed": 3776,
          "coverage_version": 2,
          "string_encodings": [
            "ascii",
            "utf16le"
          ],
          "signature_validation": "not_performed"
        },
        "provenance": {
          "mode": "static",
          "artifacts": [
            {
              "name": "base.apk",
              "sha256": "b0fc26e59a17d88431bd3ae41cc2757d511662ac133947d1dc7f14c358d6ccfa"
            },
            {
              "name": "config.arm64_v8a.apk",
              "sha256": "fcae1e6aebe7feef5d5c5f52036d5c22ee0515474d0df8ed32d4fc5c8d257be1"
            },
            {
              "name": "config.en.apk",
              "sha256": "f253980e3a31e5702bc0ac187f7b6451a4e10457724f0c32d87ecae1897fa4d4"
            },
            {
              "name": "config.xxhdpi.apk",
              "sha256": "ed0e686efec5029a869c1fd96030b62d380414760961651b7bf8b67610a7ee03"
            }
          ],
          "ruleset_sha256": "3bb79cc3710b0fb021feaa322578f4cffe08396a97c51b34df092b5a05891d5e"
        },
        "apk_sha256": "b0fc26e59a17d88431bd3ae41cc2757d511662ac133947d1dc7f14c358d6ccfa",
        "app_id": "co.unstatic.habitify",
        "app_title": "Habitify: Habit Tracker",
        "app_version": "49.0.0",
        "scan_id": "23eb540b-7246-4204-ac9a-823ec9cfcff7",
        "scanned_at": "2026-10-10T17:06:17.624Z"
      }
    }
  ]
}