{
  "capsule": {
    "schema": "apk-scanner.proof/v2",
    "issuer": "apk-scanner.com",
    "issued_at": "2026-10-14T16:46:16.885Z",
    "app": {
      "app_id": "com.fortnofffinancial.dealcheck_rentals",
      "title": "DealCheck: Analyze Real Estate",
      "version": "4.41.1"
    },
    "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": 56979.757,
        "harvest": 5065.021999999995,
        "detectors": 50223.29099999999
      },
      "bytes_total": 112718532,
      "bytes_scanned": 112718532,
      "bytes_skipped": 0,
      "files_processed": 2574,
      "coverage_version": 2,
      "string_encodings": [
        "ascii",
        "utf16le"
      ],
      "signature_validation": "not_performed"
    },
    "provenance": {
      "mode": "static",
      "artifacts": [
        {
          "name": "base.apk",
          "sha256": "eb7eced4d0384aef379feae54eaff1572d0942c814866361456377901dfd3094"
        },
        {
          "name": "config.arm64_v8a.apk",
          "sha256": "85b65b1387c7abece87ea5a4bf40881593801a5b2eb480d34ab8184bd09fa703"
        },
        {
          "name": "config.en.apk",
          "sha256": "2b37f7fce32d82b964c1e2249151b3f32b73db280dbdc30b5dc9949fc33b8786"
        },
        {
          "name": "config.xxhdpi.apk",
          "sha256": "6a8acf5ea5b4734214e18b4ca5fe0c659c6bbee5312d716b8f235406baaf2e0d"
        }
      ],
      "ruleset_sha256": "3bb79cc3710b0fb021feaa322578f4cffe08396a97c51b34df092b5a05891d5e"
    },
    "apk_sha256": "eb7eced4d0384aef379feae54eaff1572d0942c814866361456377901dfd3094",
    "scan": {
      "scan_id": "52404bfb-d9a6-4a07-8ad2-bc52c6898444",
      "scanned_at": "2026-10-08T01:00:43.771Z",
      "grade": "A",
      "score": 93
    },
    "apk_signer": {
      "scheme": "v3",
      "subject_o": "Fortnoff Financial LLC",
      "subject_cn": "Anton Ivanov",
      "sha256": "e92b9a849f5de29dd592d809450612d35e42ae4c9ae4e8ff837542daf6002551",
      "not_after": "2042-10-19T17:55:09+00:00"
    },
    "counts": {
      "critical": 0,
      "high": 0,
      "medium": 0,
      "low": 17
    },
    "findings": [
      {
        "finding_type": 1,
        "severity": "low",
        "title": "Amazon S3 bucket reference",
        "redacted_display": "http://██████████████.com.s3.amazonaws.com/███",
        "fingerprint": "c5dd8a3d73fce730bacf72de5bc3863d77d7f2abc5d84e443a6133a06e8f54de",
        "verified": false,
        "cwe": [
          "CWE-200",
          "CWE-284"
        ],
        "masvs": [
          "MASVS-STORAGE-2"
        ],
        "remediation": "Confirm the bucket/database denies anonymous read (enable auth / storage rules / RLS), then audit its contents for data already exposed while it was open."
      },
      {
        "finding_type": 1,
        "severity": "low",
        "title": "Amazon S3 bucket reference",
        "redacted_display": "http://██████████████.com.s3.amazonaws.com/███",
        "fingerprint": "301a80ae7b1d9befb86ce139e8c2070dab2f3eb49434451a2139f3c50a6af618",
        "verified": false,
        "cwe": [
          "CWE-200",
          "CWE-284"
        ],
        "masvs": [
          "MASVS-STORAGE-2"
        ],
        "remediation": "Confirm the bucket/database denies anonymous read (enable auth / storage rules / RLS), then audit its contents for data already exposed while it was open."
      },
      {
        "finding_type": 1,
        "severity": "low",
        "title": "Amazon S3 bucket reference",
        "redacted_display": "http://██████████████.com.s3.amazonaws.com/███",
        "fingerprint": "597b5c7aa5b69e9e43cc74bf88e23d61fb55bf8e21155dd8b5c5b0709e28682f",
        "verified": false,
        "cwe": [
          "CWE-200",
          "CWE-284"
        ],
        "masvs": [
          "MASVS-STORAGE-2"
        ],
        "remediation": "Confirm the bucket/database denies anonymous read (enable auth / storage rules / RLS), then audit its contents for data already exposed while it was open."
      },
      {
        "finding_type": 2,
        "severity": "low",
        "title": "Firebase Realtime Database reference",
        "redacted_display": "https://█████████████.firebaseio.com/███",
        "fingerprint": "435ee1844f50e96e835fcdcf6f75bb02f7add0228621d274bf9b908baf680b23",
        "verified": false,
        "cwe": [
          "CWE-200",
          "CWE-284"
        ],
        "masvs": [
          "MASVS-STORAGE-2"
        ],
        "remediation": "Confirm the bucket/database denies anonymous read (enable auth / storage rules / RLS), then audit its contents for data already exposed while it was open."
      },
      {
        "finding_type": 2,
        "severity": "low",
        "title": "Firebase Realtime Database reference",
        "redacted_display": "https://███████████████████████████.firebaseio.com/███",
        "fingerprint": "8d1a09f942d73760d6bd40e2171674e36aec2a4e9ec3bbfa7a4240541afb548e",
        "verified": false,
        "cwe": [
          "CWE-200",
          "CWE-284"
        ],
        "masvs": [
          "MASVS-STORAGE-2"
        ],
        "remediation": "Confirm the bucket/database denies anonymous read (enable auth / storage rules / RLS), then audit its contents for data already exposed while it was open."
      },
      {
        "finding_type": 3,
        "severity": "low",
        "title": "Google Cloud Storage reference",
        "redacted_display": "https://███████.googleapis.com/███",
        "fingerprint": "52ae1f7a670f2c7c208cd9c09cb94d7acc4ec2e79071825db71595fce4f3075d",
        "verified": false,
        "cwe": [
          "CWE-200",
          "CWE-284"
        ],
        "masvs": [
          "MASVS-STORAGE-2"
        ],
        "remediation": "Confirm the bucket/database denies anonymous read (enable auth / storage rules / RLS), then audit its contents for data already exposed while it was open."
      },
      {
        "finding_type": 20,
        "severity": "low",
        "title": "Google API key (client-shipped; restriction unverified)",
        "redacted_display": "AIza•••••••• (21–40 chars, redacted)",
        "fingerprint": "8a8ee392d69aee1e505aba8ecf7a12ea12d64f575a4f0b2720fcea2d5ade2b00",
        "verified": false,
        "cwe": [
          "CWE-798"
        ],
        "masvs": [
          "MASVS-STORAGE-1"
        ],
        "remediation": "Restrict the API key (application + API restrictions in Google Cloud Console); a client-shipped key is public, so restriction is the control."
      },
      {
        "finding_type": 20,
        "severity": "low",
        "title": "Google API key (client-shipped; restriction unverified)",
        "redacted_display": "AIza•••••••• (21–40 chars, redacted)",
        "fingerprint": "10a894f26afef81cf1aa668d4c15c8e36db231ee4f2e226c2a8af4394b9d17a0",
        "verified": false,
        "cwe": [
          "CWE-798"
        ],
        "masvs": [
          "MASVS-STORAGE-1"
        ],
        "remediation": "Restrict the API key (application + API restrictions in Google Cloud Console); a client-shipped key is public, so restriction is the control."
      },
      {
        "finding_type": 20,
        "severity": "low",
        "title": "Google API key (client-shipped; restriction unverified)",
        "redacted_display": "AIza•••••••• (21–40 chars, redacted)",
        "fingerprint": "fe34bc5d60d6b7810606eed17a44179d0071e347edb577382bb5334a6ded7a9d",
        "verified": false,
        "cwe": [
          "CWE-798"
        ],
        "masvs": [
          "MASVS-STORAGE-1"
        ],
        "remediation": "Restrict the API key (application + API restrictions in Google Cloud Console); a client-shipped key is public, so restriction is the control."
      },
      {
        "finding_type": 20,
        "severity": "low",
        "title": "Google API key (client-shipped; restriction unverified)",
        "redacted_display": "AIza•••••••• (21–40 chars, redacted)",
        "fingerprint": "c6f4285c35c8edb91de126e4d350e77ab4c70065c1001986f46409b3ddbd74e0",
        "verified": false,
        "cwe": [
          "CWE-798"
        ],
        "masvs": [
          "MASVS-STORAGE-1"
        ],
        "remediation": "Restrict the API key (application + API restrictions in Google Cloud Console); a client-shipped key is public, so restriction is the control."
      },
      {
        "finding_type": 20,
        "severity": "low",
        "title": "Google API key (client-shipped; restriction unverified)",
        "redacted_display": "AIza•••••••• (21–40 chars, redacted)",
        "fingerprint": "3b7f1551125311d198661335dfcbc18816810fb58d13f93e493b257a7d2a8b6a",
        "verified": false,
        "cwe": [
          "CWE-798"
        ],
        "masvs": [
          "MASVS-STORAGE-1"
        ],
        "remediation": "Restrict the API key (application + API restrictions in Google Cloud Console); a client-shipped key is public, so restriction is the control."
      },
      {
        "finding_type": 53,
        "severity": "low",
        "title": "Firebase Storage bucket reference",
        "redacted_display": "████████████",
        "fingerprint": "f89adfc5b2494ed1fcef067c465b6f85b89a0bf4b2c08f4e7b124ea64ae5083f",
        "verified": false,
        "cwe": [
          "CWE-200",
          "CWE-284"
        ],
        "masvs": [
          "MASVS-STORAGE-2"
        ],
        "remediation": "Confirm the bucket/database denies anonymous read (enable auth / storage rules / RLS), then audit its contents for data already exposed while it was open."
      },
      {
        "finding_type": 53,
        "severity": "low",
        "title": "Firebase Storage bucket reference",
        "redacted_display": "████████████",
        "fingerprint": "8c15b740f28236b2b5dce84f944d650ae68ad60477854a53bf34ebfef432ac10",
        "verified": false,
        "cwe": [
          "CWE-200",
          "CWE-284"
        ],
        "masvs": [
          "MASVS-STORAGE-2"
        ],
        "remediation": "Confirm the bucket/database denies anonymous read (enable auth / storage rules / RLS), then audit its contents for data already exposed while it was open."
      },
      {
        "finding_type": 53,
        "severity": "low",
        "title": "Firebase Storage bucket reference",
        "redacted_display": "████████████",
        "fingerprint": "dfa881f54405a8255debe47d316f543737d861dd4907793538755a70c880a10a",
        "verified": false,
        "cwe": [
          "CWE-200",
          "CWE-284"
        ],
        "masvs": [
          "MASVS-STORAGE-2"
        ],
        "remediation": "Confirm the bucket/database denies anonymous read (enable auth / storage rules / RLS), then audit its contents for data already exposed while it was open."
      },
      {
        "finding_type": 53,
        "severity": "low",
        "title": "Firebase Storage bucket reference",
        "redacted_display": "████████████",
        "fingerprint": "b30e1258f1726c11905af5a30c5535c8d3fc4e847fb627986477a6193331c5c9",
        "verified": false,
        "cwe": [
          "CWE-200",
          "CWE-284"
        ],
        "masvs": [
          "MASVS-STORAGE-2"
        ],
        "remediation": "Confirm the bucket/database denies anonymous read (enable auth / storage rules / RLS), then audit its contents for data already exposed while it was open."
      },
      {
        "finding_type": 77,
        "severity": "low",
        "title": "Data Safety label omits Location",
        "redacted_display": "app can access location (Approximate location); not in the declaration",
        "fingerprint": "cacfd47daa7d0aafb7cbd1791f3964ef2850687203797b5e24429c41acdf7290",
        "verified": false,
        "cwe": [
          "CWE-359"
        ],
        "masvs": [
          "MASVS-PRIVACY-3"
        ],
        "remediation": "Update the Play Data Safety form to declare the observed data category, or remove the capability if the data is not actually collected."
      },
      {
        "finding_type": 79,
        "severity": "low",
        "title": "Hardcoded credentials in a URL (third-party library artifact, shared across 6 unrelated developers)",
        "redacted_display": "•••••••• (21–40 chars, redacted)",
        "fingerprint": "342cdede3c04d1dd83f4eac7b0ba4c9d6f9f7e5cedeacaecb73d0533c3f15578",
        "verified": false,
        "cwe": [
          "CWE-798"
        ],
        "masvs": [
          "MASVS-STORAGE-1",
          "MASVS-AUTH-1"
        ],
        "remediation": "Remove the embedded username:password, rotate the credential, and authenticate to the endpoint with short-lived per-user tokens instead."
      }
    ],
    "live_verification": {
      "verified_count": 0,
      "items": []
    },
    "trackers_count": 1,
    "pii": {
      "sources": 5,
      "identifiers": [
        "Android ID",
        "Device ID / IMEI"
      ],
      "destinations": 1
    },
    "sbom": {
      "component_count": 97,
      "vuln_count": 0,
      "components": [
        {
          "name": "androidx.activity:activity",
          "version": "1.13.0",
          "cves": []
        },
        {
          "name": "androidx.activity:activity-compose",
          "version": "1.13.0",
          "cves": []
        },
        {
          "name": "androidx.activity:activity-ktx",
          "version": "1.13.0",
          "cves": []
        },
        {
          "name": "androidx.annotation:annotation-experimental",
          "version": "1.4.1",
          "cves": []
        },
        {
          "name": "androidx.appcompat:appcompat",
          "version": "1.8.0",
          "cves": []
        },
        {
          "name": "androidx.appcompat:appcompat-resources",
          "version": "1.8.0",
          "cves": []
        },
        {
          "name": "androidx.asynclayoutinflater:asynclayoutinflater",
          "version": "1.0.0",
          "cves": []
        },
        {
          "name": "androidx.autofill:autofill",
          "version": "1.0.0",
          "cves": []
        },
        {
          "name": "androidx.compose.animation:animation",
          "version": "1.11.4",
          "cves": []
        },
        {
          "name": "androidx.compose.animation:animation-core",
          "version": "1.11.4",
          "cves": []
        },
        {
          "name": "androidx.compose.foundation:foundation",
          "version": "1.11.4",
          "cves": []
        },
        {
          "name": "androidx.compose.foundation:foundation-layout",
          "version": "1.11.4",
          "cves": []
        },
        {
          "name": "androidx.compose.material3:material3",
          "version": "1.4.0",
          "cves": []
        },
        {
          "name": "androidx.compose.material:material-ripple",
          "version": "1.11.4",
          "cves": []
        },
        {
          "name": "androidx.compose.runtime:runtime",
          "version": "1.11.4",
          "cves": []
        },
        {
          "name": "androidx.compose.runtime:runtime-annotation",
          "version": "1.11.4",
          "cves": []
        },
        {
          "name": "androidx.compose.runtime:runtime-retain",
          "version": "1.11.4",
          "cves": []
        },
        {
          "name": "androidx.compose.runtime:runtime-saveable",
          "version": "1.11.4",
          "cves": []
        },
        {
          "name": "androidx.compose.ui:ui",
          "version": "1.11.4",
          "cves": []
        },
        {
          "name": "androidx.compose.ui:ui-geometry",
          "version": "1.11.4",
          "cves": []
        },
        {
          "name": "androidx.compose.ui:ui-graphics",
          "version": "1.11.4",
          "cves": []
        },
        {
          "name": "androidx.compose.ui:ui-text",
          "version": "1.11.4",
          "cves": []
        },
        {
          "name": "androidx.compose.ui:ui-tooling-preview",
          "version": "1.11.4",
          "cves": []
        },
        {
          "name": "androidx.compose.ui:ui-unit",
          "version": "1.11.4",
          "cves": []
        },
        {
          "name": "androidx.compose.ui:ui-util",
          "version": "1.11.4",
          "cves": []
        },
        {
          "name": "androidx.constraintlayout:constraintlayout",
          "version": "2.2.2",
          "cves": []
        },
        {
          "name": "androidx.coordinatorlayout:coordinatorlayout",
          "version": "1.0.0",
          "cves": []
        },
        {
          "name": "androidx.core:core",
          "version": "1.18.0",
          "cves": []
        },
        {
          "name": "androidx.core:core-ktx",
          "version": "1.18.0",
          "cves": []
        },
        {
          "name": "androidx.core:core-splashscreen",
          "version": "1.0.1",
          "cves": []
        },
        {
          "name": "androidx.core:core-viewtree",
          "version": "1.0.0",
          "cves": []
        },
        {
          "name": "androidx.cursoradapter:cursoradapter",
          "version": "1.0.0",
          "cves": []
        },
        {
          "name": "androidx.customview:customview",
          "version": "1.0.0",
          "cves": []
        },
        {
          "name": "androidx.customview:customview-poolingcontainer",
          "version": "1.0.0",
          "cves": []
        },
        {
          "name": "androidx.databinding:viewbinding",
          "version": "8.10.1",
          "cves": []
        },
        {
          "name": "androidx.datastore:datastore",
          "version": "1.2.1",
          "cves": []
        },
        {
          "name": "androidx.datastore:datastore-core",
          "version": "1.2.1",
          "cves": []
        },
        {
          "name": "androidx.datastore:datastore-preferences",
          "version": "1.2.1",
          "cves": []
        },
        {
          "name": "androidx.datastore:datastore-preferences-core",
          "version": "1.2.1",
          "cves": []
        },
        {
          "name": "androidx.documentfile:documentfile",
          "version": "1.0.0",
          "cves": []
        },
        {
          "name": "androidx.drawerlayout:drawerlayout",
          "version": "1.0.0",
          "cves": []
        },
        {
          "name": "androidx.dynamicanimation:dynamicanimation",
          "version": "1.0.0",
          "cves": []
        },
        {
          "name": "androidx.emoji2:emoji2",
          "version": "1.4.0",
          "cves": []
        },
        {
          "name": "androidx.emoji2:emoji2-views-helper",
          "version": "1.4.0",
          "cves": []
        },
        {
          "name": "androidx.exifinterface:exifinterface",
          "version": "1.4.2",
          "cves": []
        },
        {
          "name": "androidx.fragment:fragment",
          "version": "1.9.0",
          "cves": []
        },
        {
          "name": "androidx.fragment:fragment-ktx",
          "version": "1.9.0",
          "cves": []
        },
        {
          "name": "androidx.graphics:graphics-path",
          "version": "1.0.1",
          "cves": []
        },
        {
          "name": "androidx.interpolator:interpolator",
          "version": "1.0.0",
          "cves": []
        },
        {
          "name": "androidx.legacy:legacy-support-core-ui",
          "version": "1.0.0",
          "cves": []
        },
        {
          "name": "androidx.legacy:legacy-support-core-utils",
          "version": "1.0.0",
          "cves": []
        },
        {
          "name": "androidx.legacy:legacy-support-v4",
          "version": "1.0.0",
          "cves": []
        },
        {
          "name": "androidx.lifecycle:lifecycle-livedata",
          "version": "2.10.0",
          "cves": []
        },
        {
          "name": "androidx.lifecycle:lifecycle-livedata-core",
          "version": "2.10.0",
          "cves": []
        },
        {
          "name": "androidx.lifecycle:lifecycle-livedata-core-ktx",
          "version": "2.10.0",
          "cves": []
        },
        {
          "name": "androidx.lifecycle:lifecycle-livedata-ktx",
          "version": "2.10.0",
          "cves": []
        },
        {
          "name": "androidx.lifecycle:lifecycle-process",
          "version": "2.10.0",
          "cves": []
        },
        {
          "name": "androidx.lifecycle:lifecycle-runtime",
          "version": "2.10.0",
          "cves": []
        },
        {
          "name": "androidx.lifecycle:lifecycle-runtime-compose",
          "version": "2.10.0",
          "cves": []
        },
        {
          "name": "androidx.lifecycle:lifecycle-runtime-ktx",
          "version": "2.10.0",
          "cves": []
        },
        {
          "name": "androidx.lifecycle:lifecycle-viewmodel",
          "version": "2.10.0",
          "cves": []
        },
        {
          "name": "androidx.lifecycle:lifecycle-viewmodel-compose",
          "version": "2.10.0",
          "cves": []
        },
        {
          "name": "androidx.lifecycle:lifecycle-viewmodel-ktx",
          "version": "2.10.0",
          "cves": []
        },
        {
          "name": "androidx.lifecycle:lifecycle-viewmodel-savedstate",
          "version": "2.10.0",
          "cves": []
        },
        {
          "name": "androidx.loader:loader",
          "version": "1.0.0",
          "cves": []
        },
        {
          "name": "androidx.localbroadcastmanager:localbroadcastmanager",
          "version": "1.0.0",
          "cves": []
        },
        {
          "name": "androidx.media:media",
          "version": "1.0.0",
          "cves": []
        },
        {
          "name": "androidx.navigation:navigation-common",
          "version": "2.9.8",
          "cves": []
        },
        {
          "name": "androidx.navigation:navigation-compose",
          "version": "2.9.8",
          "cves": []
        },
        {
          "name": "androidx.navigation:navigation-runtime",
          "version": "2.9.8",
          "cves": []
        },
        {
          "name": "androidx.navigationevent:navigationevent",
          "version": "1.0.0",
          "cves": []
        },
        {
          "name": "androidx.navigationevent:navigationevent-compose",
          "version": "1.0.0",
          "cves": []
        },
        {
          "name": "androidx.paging:paging-common",
          "version": "3.4.1",
          "cves": []
        },
        {
          "name": "androidx.paging:paging-compose",
          "version": "3.4.1",
          "cves": []
        },
        {
          "name": "androidx.paging:paging-runtime",
          "version": "3.4.1",
          "cves": []
        },
        {
          "name": "androidx.paging:paging-runtime-ktx",
          "version": "3.4.1",
          "cves": []
        },
        {
          "name": "androidx.print:print",
          "version": "1.0.0",
          "cves": []
        },
        {
          "name": "androidx.profileinstaller:profileinstaller",
          "version": "1.4.0",
          "cves": []
        },
        {
          "name": "androidx.recyclerview:recyclerview",
          "version": "1.3.0",
          "cves": []
        },
        {
          "name": "androidx.savedstate:savedstate",
          "version": "1.4.0",
          "cves": []
        },
        {
          "name": "androidx.savedstate:savedstate-compose",
          "version": "1.4.0",
          "cves": []
        },
        {
          "name": "androidx.savedstate:savedstate-ktx",
          "version": "1.4.0",
          "cves": []
        },
        {
          "name": "androidx.slidingpanelayout:slidingpanelayout",
          "version": "1.0.0",
          "cves": []
        },
        {
          "name": "androidx.startup:startup-runtime",
          "version": "1.1.1",
          "cves": []
        },
        {
          "name": "androidx.swiperefreshlayout:swiperefreshlayout",
          "version": "1.0.0",
          "cves": []
        },
        {
          "name": "androidx.tracing:tracing",
          "version": "2.0.0",
          "cves": []
        },
        {
          "name": "androidx.transition:transition",
          "version": "1.6.0",
          "cves": []
        },
        {
          "name": "androidx.vectordrawable:vectordrawable",
          "version": "1.1.0",
          "cves": []
        },
        {
          "name": "androidx.vectordrawable:vectordrawable-animated",
          "version": "1.1.0",
          "cves": []
        },
        {
          "name": "androidx.versionedparcelable:versionedparcelable",
          "version": "1.1.1",
          "cves": []
        },
        {
          "name": "androidx.viewpager:viewpager",
          "version": "1.0.0",
          "cves": []
        },
        {
          "name": "androidx.webkit:webkit",
          "version": "1.14.0",
          "cves": []
        },
        {
          "name": "androidx.window:window",
          "version": "1.5.0",
          "cves": []
        },
        {
          "name": "androidx.window:window-core",
          "version": "1.5.0",
          "cves": []
        },
        {
          "name": "com.squareup.okhttp3:okhttp",
          "version": "4.12.0",
          "cves": []
        },
        {
          "name": "kotlinx:coroutines_android",
          "version": "1.9.0",
          "cves": []
        },
        {
          "name": "kotlinx:coroutines_core",
          "version": "1.9.0",
          "cves": []
        }
      ]
    },
    "control_coverage": {
      "schema": "apk-scanner.coverage/v1",
      "framework": "OWASP MASVS v2",
      "disclaimer": "Static, metadata-only analysis. Each control is scored evidence-for / gap-signal / requires-manual-testing. This is evidence toward a MASVS assessment, NOT a certification — apk-scanner.com is not an authorized assessment lab. Absence of a static finding does not prove a control passes.",
      "rows": [
        {
          "control": "MASVS-STORAGE-1",
          "category": "STORAGE",
          "title": "The app securely stores sensitive data.",
          "static": "partial",
          "status": "gap-detected",
          "count": 6,
          "findings": [
            {
              "finding_type": 20,
              "key": "google_api_key",
              "title": "Google API key (client-shipped; restriction unverified)",
              "severity": "low",
              "verified": false,
              "relationship": "gap-signal",
              "cwe": [
                798
              ]
            },
            {
              "finding_type": 20,
              "key": "google_api_key",
              "title": "Google API key (client-shipped; restriction unverified)",
              "severity": "low",
              "verified": false,
              "relationship": "gap-signal",
              "cwe": [
                798
              ]
            },
            {
              "finding_type": 20,
              "key": "google_api_key",
              "title": "Google API key (client-shipped; restriction unverified)",
              "severity": "low",
              "verified": false,
              "relationship": "gap-signal",
              "cwe": [
                798
              ]
            },
            {
              "finding_type": 20,
              "key": "google_api_key",
              "title": "Google API key (client-shipped; restriction unverified)",
              "severity": "low",
              "verified": false,
              "relationship": "gap-signal",
              "cwe": [
                798
              ]
            },
            {
              "finding_type": 20,
              "key": "google_api_key",
              "title": "Google API key (client-shipped; restriction unverified)",
              "severity": "low",
              "verified": false,
              "relationship": "gap-signal",
              "cwe": [
                798
              ]
            },
            {
              "finding_type": 79,
              "key": "basic_auth_url",
              "title": "Hardcoded credentials in a URL (third-party library artifact, shared across 6 unrelated developers)",
              "severity": "low",
              "verified": false,
              "relationship": "gap-confirmed",
              "cwe": [
                798
              ]
            }
          ]
        },
        {
          "control": "MASVS-STORAGE-2",
          "category": "STORAGE",
          "title": "The app prevents leakage of sensitive data.",
          "static": "partial",
          "status": "gap-detected",
          "count": 10,
          "findings": [
            {
              "finding_type": 1,
              "key": "s3_bucket",
              "title": "Amazon S3 bucket reference",
              "severity": "low",
              "verified": false,
              "relationship": "gap-signal",
              "cwe": [
                200,
                284
              ]
            },
            {
              "finding_type": 1,
              "key": "s3_bucket",
              "title": "Amazon S3 bucket reference",
              "severity": "low",
              "verified": false,
              "relationship": "gap-signal",
              "cwe": [
                200,
                284
              ]
            },
            {
              "finding_type": 1,
              "key": "s3_bucket",
              "title": "Amazon S3 bucket reference",
              "severity": "low",
              "verified": false,
              "relationship": "gap-signal",
              "cwe": [
                200,
                284
              ]
            },
            {
              "finding_type": 2,
              "key": "firebase_rtdb",
              "title": "Firebase Realtime Database reference",
              "severity": "low",
              "verified": false,
              "relationship": "gap-signal",
              "cwe": [
                200,
                284
              ]
            },
            {
              "finding_type": 2,
              "key": "firebase_rtdb",
              "title": "Firebase Realtime Database reference",
              "severity": "low",
              "verified": false,
              "relationship": "gap-signal",
              "cwe": [
                200,
                284
              ]
            },
            {
              "finding_type": 3,
              "key": "gcs_bucket",
              "title": "Google Cloud Storage reference",
              "severity": "low",
              "verified": false,
              "relationship": "gap-signal",
              "cwe": [
                200,
                284
              ]
            },
            {
              "finding_type": 53,
              "key": "firebase_storage",
              "title": "Firebase Storage bucket reference",
              "severity": "low",
              "verified": false,
              "relationship": "gap-signal",
              "cwe": [
                200,
                284
              ]
            },
            {
              "finding_type": 53,
              "key": "firebase_storage",
              "title": "Firebase Storage bucket reference",
              "severity": "low",
              "verified": false,
              "relationship": "gap-signal",
              "cwe": [
                200,
                284
              ]
            },
            {
              "finding_type": 53,
              "key": "firebase_storage",
              "title": "Firebase Storage bucket reference",
              "severity": "low",
              "verified": false,
              "relationship": "gap-signal",
              "cwe": [
                200,
                284
              ]
            },
            {
              "finding_type": 53,
              "key": "firebase_storage",
              "title": "Firebase Storage bucket reference",
              "severity": "low",
              "verified": false,
              "relationship": "gap-signal",
              "cwe": [
                200,
                284
              ]
            }
          ]
        },
        {
          "control": "MASVS-CRYPTO-1",
          "category": "CRYPTO",
          "title": "The app employs current strong cryptography and uses it according to best practices.",
          "static": "partial",
          "status": "no-static-findings",
          "count": 0,
          "findings": []
        },
        {
          "control": "MASVS-CRYPTO-2",
          "category": "CRYPTO",
          "title": "The app performs key management according to best practices.",
          "static": "partial",
          "status": "no-static-findings",
          "count": 0,
          "findings": []
        },
        {
          "control": "MASVS-AUTH-1",
          "category": "AUTH",
          "title": "The app uses secure authentication and authorization protocols.",
          "static": "manual",
          "status": "gap-detected",
          "count": 1,
          "findings": [
            {
              "finding_type": 79,
              "key": "basic_auth_url",
              "title": "Hardcoded credentials in a URL (third-party library artifact, shared across 6 unrelated developers)",
              "severity": "low",
              "verified": false,
              "relationship": "gap-confirmed",
              "cwe": [
                798
              ]
            }
          ]
        },
        {
          "control": "MASVS-AUTH-2",
          "category": "AUTH",
          "title": "The app performs local authentication securely.",
          "static": "manual",
          "status": "requires-manual-testing",
          "count": 0,
          "findings": []
        },
        {
          "control": "MASVS-AUTH-3",
          "category": "AUTH",
          "title": "The app secures sensitive operations with additional authentication.",
          "static": "manual",
          "status": "requires-manual-testing",
          "count": 0,
          "findings": []
        },
        {
          "control": "MASVS-NETWORK-1",
          "category": "NETWORK",
          "title": "The app secures all network traffic according to current best practices.",
          "static": "yes",
          "status": "no-static-findings",
          "count": 0,
          "findings": []
        },
        {
          "control": "MASVS-NETWORK-2",
          "category": "NETWORK",
          "title": "The app verifies the identity of the remote endpoint (e.g. certificate pinning).",
          "static": "partial",
          "status": "no-static-findings",
          "count": 0,
          "findings": []
        },
        {
          "control": "MASVS-PLATFORM-1",
          "category": "PLATFORM",
          "title": "The app uses IPC mechanisms securely.",
          "static": "yes",
          "status": "no-static-findings",
          "count": 0,
          "findings": []
        },
        {
          "control": "MASVS-PLATFORM-2",
          "category": "PLATFORM",
          "title": "The app uses WebViews securely.",
          "static": "partial",
          "status": "no-static-findings",
          "count": 0,
          "findings": []
        },
        {
          "control": "MASVS-PLATFORM-3",
          "category": "PLATFORM",
          "title": "The app uses the user interface securely.",
          "static": "manual",
          "status": "requires-manual-testing",
          "count": 0,
          "findings": []
        },
        {
          "control": "MASVS-CODE-1",
          "category": "CODE",
          "title": "The app requires an up-to-date platform version.",
          "static": "yes",
          "status": "no-static-findings",
          "count": 0,
          "findings": []
        },
        {
          "control": "MASVS-CODE-2",
          "category": "CODE",
          "title": "The app has a mechanism for enforcing updates.",
          "static": "manual",
          "status": "requires-manual-testing",
          "count": 0,
          "findings": []
        },
        {
          "control": "MASVS-CODE-3",
          "category": "CODE",
          "title": "The app only uses software components without known vulnerabilities.",
          "static": "yes",
          "status": "no-static-findings",
          "count": 0,
          "findings": []
        },
        {
          "control": "MASVS-CODE-4",
          "category": "CODE",
          "title": "The app validates and sanitizes all untrusted inputs and follows secure-coding practice.",
          "static": "partial",
          "status": "no-static-findings",
          "count": 0,
          "findings": []
        },
        {
          "control": "MASVS-RESILIENCE-1",
          "category": "RESILIENCE",
          "title": "The app validates the integrity of the platform.",
          "static": "manual",
          "status": "requires-manual-testing",
          "count": 0,
          "findings": []
        },
        {
          "control": "MASVS-RESILIENCE-2",
          "category": "RESILIENCE",
          "title": "The app implements anti-tampering mechanisms.",
          "static": "manual",
          "status": "requires-manual-testing",
          "count": 0,
          "findings": []
        },
        {
          "control": "MASVS-RESILIENCE-3",
          "category": "RESILIENCE",
          "title": "The app implements anti-static-analysis mechanisms.",
          "static": "manual",
          "status": "requires-manual-testing",
          "count": 0,
          "findings": []
        },
        {
          "control": "MASVS-RESILIENCE-4",
          "category": "RESILIENCE",
          "title": "The app implements anti-dynamic-analysis techniques.",
          "static": "manual",
          "status": "requires-manual-testing",
          "count": 0,
          "findings": []
        },
        {
          "control": "MASVS-PRIVACY-1",
          "category": "PRIVACY",
          "title": "The app minimizes access to sensitive data and resources.",
          "static": "yes",
          "status": "no-static-findings",
          "count": 0,
          "findings": []
        },
        {
          "control": "MASVS-PRIVACY-2",
          "category": "PRIVACY",
          "title": "The app prevents identification of the user.",
          "static": "yes",
          "status": "no-static-findings",
          "count": 0,
          "findings": []
        },
        {
          "control": "MASVS-PRIVACY-3",
          "category": "PRIVACY",
          "title": "The app is transparent about data collection and usage.",
          "static": "yes",
          "status": "gap-detected",
          "count": 1,
          "findings": [
            {
              "finding_type": 77,
              "key": "ds_underdeclare",
              "title": "Data Safety label omits Location",
              "severity": "low",
              "verified": false,
              "relationship": "gap-signal",
              "cwe": [
                359
              ]
            }
          ]
        },
        {
          "control": "MASVS-PRIVACY-4",
          "category": "PRIVACY",
          "title": "The app offers user control over their data.",
          "static": "manual",
          "status": "requires-manual-testing",
          "count": 0,
          "findings": []
        }
      ],
      "categories": [
        {
          "category": "STORAGE",
          "controls": 2,
          "gaps": 2,
          "verified": 0,
          "manual": 0
        },
        {
          "category": "CRYPTO",
          "controls": 2,
          "gaps": 0,
          "verified": 0,
          "manual": 0
        },
        {
          "category": "AUTH",
          "controls": 3,
          "gaps": 1,
          "verified": 0,
          "manual": 2
        },
        {
          "category": "NETWORK",
          "controls": 2,
          "gaps": 0,
          "verified": 0,
          "manual": 0
        },
        {
          "category": "PLATFORM",
          "controls": 3,
          "gaps": 0,
          "verified": 0,
          "manual": 1
        },
        {
          "category": "CODE",
          "controls": 4,
          "gaps": 0,
          "verified": 0,
          "manual": 1
        },
        {
          "category": "RESILIENCE",
          "controls": 4,
          "gaps": 0,
          "verified": 0,
          "manual": 4
        },
        {
          "category": "PRIVACY",
          "controls": 4,
          "gaps": 1,
          "verified": 0,
          "manual": 1
        }
      ]
    }
  },
  "proof": {
    "alg": "ed25519",
    "key_id": "IE6LeZNX4dAAPLGr",
    "digest_sha256": "441f78be5459fad105941512fb30a22e54ae9a78543fd3c898c3c8ea4cbb12f7",
    "signature": "30vzGrTIhqICZNCJmjKsjH0DLNEfcmYfrKC1Jbiy69e+PYBIGbS091HzZSycRrRVoFpv1ALPkvCTeDQyRcBgAg==",
    "public_key_pem": "-----BEGIN PUBLIC KEY-----\nMCowBQYDK2VwAyEAwH2fYdYB5nD0CQslDtG3FgafcJBoOX2OGoT80Woksrk=\n-----END PUBLIC KEY-----\n",
    "verify_url": "https://apk-scanner.com/verify"
  }
}