{
  "$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-1-s3_bucket",
              "name": "S3Bucket",
              "shortDescription": {
                "text": "Amazon S3 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/s3_bucket",
              "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": "error"
              },
              "properties": {
                "tags": [
                  "security",
                  "CWE-200",
                  "CWE-284",
                  "MASVS-STORAGE-2"
                ],
                "security-severity": "9.5",
                "cwe": [
                  "CWE-200",
                  "CWE-284"
                ],
                "masvs": [
                  "MASVS-STORAGE-2"
                ]
              }
            },
            {
              "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-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-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-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"
                ]
              }
            },
            {
              "id": "APKSCAN-34-cleartext_traffic",
              "name": "CleartextTraffic",
              "shortDescription": {
                "text": "Cleartext (HTTP) traffic permitted"
              },
              "fullDescription": {
                "text": "Set android:usesCleartextTraffic=false and/or a networkSecurityConfig that forbids cleartext; serve all endpoints over HTTPS."
              },
              "helpUri": "https://apk-scanner.com/finding/cleartext_traffic",
              "help": {
                "text": "Set android:usesCleartextTraffic=false and/or a networkSecurityConfig that forbids cleartext; serve all endpoints over HTTPS."
              },
              "defaultConfiguration": {
                "level": "warning"
              },
              "properties": {
                "tags": [
                  "security",
                  "CWE-319",
                  "MASVS-NETWORK-1"
                ],
                "security-severity": "5.0",
                "cwe": [
                  "CWE-319"
                ],
                "masvs": [
                  "MASVS-NETWORK-1"
                ]
              }
            },
            {
              "id": "APKSCAN-52-mailgun_key",
              "name": "MailgunKey",
              "shortDescription": {
                "text": "Mailgun API 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/mailgun_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": "warning"
              },
              "properties": {
                "tags": [
                  "security",
                  "CWE-798",
                  "MASVS-STORAGE-1"
                ],
                "security-severity": "5.0",
                "cwe": [
                  "CWE-798"
                ],
                "masvs": [
                  "MASVS-STORAGE-1"
                ]
              }
            }
          ]
        }
      },
      "automationDetails": {
        "id": "apk-scanner/com.affirm.central/ce81b55b-e062-40f0-880d-ee3038a8a378"
      },
      "invocations": [
        {
          "executionSuccessful": true
        }
      ],
      "results": [
        {
          "ruleId": "APKSCAN-1-s3_bucket",
          "level": "error",
          "message": {
            "text": "Amazon S3 bucket reference — confirmed publicly readable [live-verified]"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "assets/index.android.bundle"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "a02790f3adef5ebff29839aaac387b37f6b3860bd2c2415f0f43866764c9c079"
          },
          "properties": {
            "severity": "critical",
            "verified": true,
            "relationship": "verified-exposure"
          }
        },
        {
          "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-1-s3_bucket",
          "level": "note",
          "message": {
            "text": "Amazon S3 bucket reference"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "res/raw/aboutlibraries.json"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "c8f91881897a555d2e6f0c943e7814a75c1c521ebb5aeaf23fdcbeec2d16ea27"
          },
          "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": "958ccdac3e37956a5a6299be70ac2d665dfdb0e2e51cdd9cb61b5a5e3905436f"
          },
          "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": "d0e35d3097febccdf768684eb823d928794f973e987613d78b3c7e398c3f1416"
          },
          "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 93 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-72-sentry_dsn",
          "level": "note",
          "message": {
            "text": "Sentry DSN"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "assets/sentry.options.json"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "cd3cab8b3cf4c1d8e90b1fe2d5ab86a511e0fcdb4c8ed3e15693c8c2d5c6d350"
          },
          "properties": {
            "severity": "low",
            "verified": false,
            "relationship": "informational"
          }
        },
        {
          "ruleId": "APKSCAN-34-cleartext_traffic",
          "level": "warning",
          "message": {
            "text": "Cleartext (HTTP) traffic permitted"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "AndroidManifest.xml"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "94025ca91177232efea2d52d976e37f967866402c6e01f481a8de610b8e478e7"
          },
          "properties": {
            "severity": "medium",
            "verified": false,
            "relationship": "gap-confirmed"
          }
        },
        {
          "ruleId": "APKSCAN-52-mailgun_key",
          "level": "warning",
          "message": {
            "text": "Mailgun API key"
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "assets/index.android.bundle"
                }
              }
            }
          ],
          "partialFingerprints": {
            "apkscanFingerprint": "58433360e28f4c44e31b078f22aff54f2db2de7b5b82472ebf6e84b77eaef09a"
          },
          "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": 17444.135,
            "harvest": 5843.865000000005,
            "detectors": 10655.368999999959
          },
          "bytes_total": 122651099,
          "bytes_scanned": 122651099,
          "bytes_skipped": 0,
          "files_processed": 1651,
          "coverage_version": 2,
          "string_encodings": [
            "ascii",
            "utf16le"
          ],
          "signature_validation": "not_performed"
        },
        "provenance": {
          "mode": "static",
          "artifacts": [
            {
              "name": "base.apk",
              "sha256": "755de0458dc1e26071cc69ea64e9942240f0d20be86ad644ef275b0d6b75f2eb"
            },
            {
              "name": "config.arm64_v8a.apk",
              "sha256": "a94f035b6bbb5331c3b576bd9eacafa1ffddf572e0e1433652eaba2a83312bd3"
            },
            {
              "name": "config.xxhdpi.apk",
              "sha256": "9c7b1f52fec7b318f5d8a0060e7e8d23c62bee9a2c775b515049e12d748eef4c"
            }
          ],
          "ruleset_sha256": "3bb79cc3710b0fb021feaa322578f4cffe08396a97c51b34df092b5a05891d5e"
        },
        "apk_sha256": "755de0458dc1e26071cc69ea64e9942240f0d20be86ad644ef275b0d6b75f2eb",
        "app_id": "com.affirm.central",
        "app_title": "Affirm: Buy now, pay over time",
        "app_version": "4.101.3",
        "scan_id": "ce81b55b-e062-40f0-880d-ee3038a8a378",
        "scanned_at": "2026-10-08T06:30:50.226Z"
      }
    }
  ]
}