{
  "$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-40-gcp_service_account",
              "name": "GcpServiceAccount",
              "shortDescription": {
                "text": "GCP service account credentials"
              },
              "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/gcp_service_account",
              "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": "error"
              },
              "properties": {
                "tags": [
                  "security",
                  "CWE-798",
                  "MASVS-STORAGE-1"
                ],
                "security-severity": "9.5",
                "cwe": [
                  "CWE-798"
                ],
                "masvs": [
                  "MASVS-STORAGE-1"
                ]
              }
            },
            {
              "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-6-private_key",
              "name": "PrivateKey",
              "shortDescription": {
                "text": "Private key material"
              },
              "fullDescription": {
                "text": "Never ship private-key material in a client. Revoke/rotate the compromised key and hold it server-side or in a hardware-backed store."
              },
              "helpUri": "https://apk-scanner.com/finding/private_key",
              "help": {
                "text": "Never ship private-key material in a client. Revoke/rotate the compromised key and hold it server-side or in a hardware-backed store."
              },
              "defaultConfiguration": {
                "level": "note"
              },
              "properties": {
                "tags": [
                  "security",
                  "CWE-321",
                  "MASVS-CRYPTO-2"
                ],
                "security-severity": "2.0",
                "cwe": [
                  "CWE-321"
                ],
                "masvs": [
                  "MASVS-CRYPTO-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-27-github_pat",
              "name": "GithubPat",
              "shortDescription": {
                "text": "GitHub personal access token"
              },
              "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/github_pat",
              "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"
                ]
              }
            },
            {
              "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-77-ds_underdeclare",
              "name": "DsUnderdeclare",
              "shortDescription": {
                "text": "Data Safety label omits an observed data category"
              },
              "fullDescription": {
                "text": "Update the Play Data Safety form to declare the observed data category, or remove the capability if the data is not actually collected."
              },
              "helpUri": "https://apk-scanner.com/finding/ds_underdeclare",
              "help": {
                "text": "Update the Play Data Safety form to declare the observed data category, or remove the capability if the data is not actually collected."
              },
              "defaultConfiguration": {
                "level": "note"
              },
              "properties": {
                "tags": [
                  "security",
                  "CWE-359",
                  "MASVS-PRIVACY-3"
                ],
                "security-severity": "2.0",
                "cwe": [
                  "CWE-359"
                ],
                "masvs": [
                  "MASVS-PRIVACY-3"
                ]
              }
            },
            {
              "id": "APKSCAN-57-short_key",
              "name": "ShortKey",
              "shortDescription": {
                "text": "Short signing key"
              },
              "fullDescription": {
                "text": "Use an RSA key of at least 2048 bits or an EC P-256 key for signing."
              },
              "helpUri": "https://apk-scanner.com/finding/short_key",
              "help": {
                "text": "Use an RSA key of at least 2048 bits or an EC P-256 key for signing."
              },
              "defaultConfiguration": {
                "level": "warning"
              },
              "properties": {
                "tags": [
                  "security",
                  "CWE-326",
                  "MASVS-CRYPTO-1"
                ],
                "security-severity": "5.0",
                "cwe": [
                  "CWE-326"
                ],
                "masvs": [
                  "MASVS-CRYPTO-1"
                ]
              }
            }
          ]
        }
      },
      "automationDetails": {
        "id": "apk-scanner/com.ticktalk.cameratranslator/4af423fa-40f9-4a03-b294-b27f9bb459e7"
      },
      "invocations": [
        {
          "executionSuccessful": true
        }
      ],
      "results": [
        {
          "ruleId": "APKSCAN-40-gcp_service_account",
          "level": "error",
          "message": {
            "text": "GCP service account credentials"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "res/raw/credential.json"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "221bf2e2436b46a36e68e9b1a53ed9a724f5dab000ed80bd40d18fb572921abf"
          },
          "properties": {
            "severity": "critical",
            "verified": false,
            "relationship": "gap-confirmed"
          }
        },
        {
          "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-6-private_key",
          "level": "note",
          "message": {
            "text": "Private key material (third-party library artifact, shared across 185 unrelated developers)"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "classes8.dex"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "62a91e02911570689478feddb8e4a248b9f061c782ed638a6f16cd7234cf99d3"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "gap-confirmed"
          }
        },
        {
          "ruleId": "APKSCAN-6-private_key",
          "level": "note",
          "message": {
            "text": "Private key material (third-party library artifact, shared across 185 unrelated developers)"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "classes8.dex"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "b3a7390831348120a1fa906e96355885d14f7987e784904a539fe5b3582cdb20"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "gap-confirmed"
          }
        },
        {
          "ruleId": "APKSCAN-20-google_api_key",
          "level": "note",
          "message": {
            "text": "Google API key (client-shipped; restriction unverified)"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "classes13.dex"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "1ff1dc8bd83178e62033dbf1771e7caefc9b5d952cce5a53f7ab8c7e66aa260f"
          },
          "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": "60d11809f8fc0ec22f3f12fac177f845f455285f9e929a2d65707d79aabe7f0c"
          },
          "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": "classes13.dex"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "87039a0821ef129dbc55054437e394b23e350f31d6ac0db074dc8c36665941ec"
          },
          "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": "classes13.dex"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "686853de4de7a53664060afb9437b573c1037755a8144cf0c2c73f4ff425bdcd"
          },
          "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": "classes13.dex"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "05087b01073ffd1b7dbe1ce3f315cd5172c38eea5841ad4dba43c84933039e6d"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "gap-signal"
          }
        },
        {
          "ruleId": "APKSCAN-27-github_pat",
          "level": "note",
          "message": {
            "text": "GitHub personal access token (third-party library artifact, shared across 19 unrelated developers)"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "assets/mlkit_label_default_model/mobile_ica_8bit_with_metadata_tflite"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "ea0b1ad15a7f18b3e189f591e05a2b42b6e8b59621cf5f24c4cb76f31f242bc9"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "gap-confirmed"
          }
        },
        {
          "ruleId": "APKSCAN-53-firebase_storage",
          "level": "note",
          "message": {
            "text": "Firebase Storage bucket reference"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "resources.arsc"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "186ef90751a8ff186126fc2e30d03558ed3fbb6e1f99d666b8450fa678fa8865"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "gap-signal"
          }
        },
        {
          "ruleId": "APKSCAN-77-ds_underdeclare",
          "level": "note",
          "message": {
            "text": "Data Safety label omits Location"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "data-safety:Location"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "cacfd47daa7d0aafb7cbd1791f3964ef2850687203797b5e24429c41acdf7290"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "gap-signal"
          }
        },
        {
          "ruleId": "APKSCAN-57-short_key",
          "level": "warning",
          "message": {
            "text": "Short signing key (RSA 1024-bit)"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "META-INF/signing:key"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "eff7d2f7607ae274d531546d1e828faf234bca919325efac0bbe80b2f250d041"
          },
          "properties": {
            "severity": "medium",
            "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": 25470.722,
            "harvest": 6971.195999999993,
            "detectors": 17108.98600000004
          },
          "bytes_total": 153202723,
          "bytes_scanned": 153202723,
          "bytes_skipped": 0,
          "files_processed": 2891,
          "coverage_version": 2,
          "string_encodings": [
            "ascii",
            "utf16le"
          ],
          "signature_validation": "not_performed"
        },
        "provenance": {
          "mode": "static",
          "artifacts": [
            {
              "name": "base.apk",
              "sha256": "ee2cabf3a62a173f2d96a40d1329446dfeec4c086ea26fb650f5386ea8d622cf"
            },
            {
              "name": "config.arm64_v8a.apk",
              "sha256": "6b4610fef35885cd08d220f6d4d298d20b7033b3fad633b4eebd8ccc102613e9"
            },
            {
              "name": "config.xxhdpi.apk",
              "sha256": "b96bb670bf4dac6ae1a2de364b1f6778bea47f150ac5d3ca69711f546bee975e"
            }
          ],
          "ruleset_sha256": "3bb79cc3710b0fb021feaa322578f4cffe08396a97c51b34df092b5a05891d5e"
        },
        "apk_sha256": "ee2cabf3a62a173f2d96a40d1329446dfeec4c086ea26fb650f5386ea8d622cf",
        "app_id": "com.ticktalk.cameratranslator",
        "app_title": "AR Camera Translator - Scanner",
        "app_version": "265.0",
        "scan_id": "4af423fa-40f9-4a03-b294-b27f9bb459e7",
        "scanned_at": "2026-10-03T22:40:16.680Z"
      }
    }
  ]
}