apk-scanner.com

PhotoSolve: AI Homework Helper

com.gansoft.photosolve · Build 5.3.0

Analysis: complete. Static analysis completed for this build. A grade is not a guarantee of safety. Historical verification does not establish current reachability.

Grade / score
B · 78/100
Finding categories
6
Occurrences
28
Scanned
2026-10-08T17:04:24.271Z
Document issued
2026-10-13T17:12:33.735Z
Historical verifications
0

Finding evidence

Open a category to review its occurrences. Printing includes all categories and occurrences.

Database connection string with credentials · high · 1 occurrence

Remove the embedded username:password, rotate the credential, and authenticate to the endpoint with short-lived per-user tokens instead.

CWE-798 · CWE-312 · MASVS-STORAGE-1 · MASVS-AUTH-1

  • •••••••• (40+ chars, redacted)
Application data is backup-enabled · info · 1 occurrence

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.

CWE-530 · CWE-312 · MASVS-STORAGE-1 · MASVS-STORAGE-2

  • android:allowBackup="true"
Firebase Realtime Database reference · low · 1 occurrence

Confirm the bucket/database denies anonymous read (enable auth / storage rules / RLS), then audit its contents for data already exposed while it was open.

CWE-200 · CWE-284 · MASVS-STORAGE-2

  • https://██████████████████████████████.firebaseio.com/███
Google API key (client-shipped; restriction unverified) · low · 1 occurrence

Restrict the API key (application + API restrictions in Google Cloud Console); a client-shipped key is public, so restriction is the control.

CWE-798 · MASVS-STORAGE-1

  • AIza•••••••• (21–40 chars, redacted)
Firebase Storage bucket reference · low · 23 occurrences

Confirm the bucket/database denies anonymous read (enable auth / storage rules / RLS), then audit its contents for data already exposed while it was open.

CWE-200 · CWE-284 · MASVS-STORAGE-2

  • https://███████████████.googleapis.com/███
  • https://███████████████.googleapis.com/███
  • https://███████████████.googleapis.com/███
  • https://███████████████.googleapis.com/███
  • https://███████████████.googleapis.com/███
  • https://███████████████.googleapis.com/███
  • https://███████████████.googleapis.com/███
  • https://███████████████.googleapis.com/███
  • https://███████████████.googleapis.com/███
  • https://███████████████.googleapis.com/███
  • https://███████████████.googleapis.com/███
  • https://███████████████.googleapis.com/███
  • https://███████████████.googleapis.com/███
  • https://███████████████.googleapis.com/███
  • https://███████████████.googleapis.com/███
  • https://███████████████.googleapis.com/███
  • https://███████████████.googleapis.com/███
  • https://███████████████.googleapis.com/███
  • https://███████████████.googleapis.com/███
  • https://███████████████.googleapis.com/███
  • ████████████
  • ████████████
  • ████████████
Sentry DSN · low · 1 occurrence

A client DSN is low-risk but confirm it is a client (not internal) DSN and cannot be abused to spoof events.

CWE-200 · MASVS-STORAGE-2

  • https://█████████████████.ingest.us.sentry.io/███

Control coverage

Mapped static evidence does not establish a control pass. Manual assessment remains separate.

ControlRequirementRecorded status
MASVS-STORAGE-1The app securely stores sensitive data.Review signal
MASVS-STORAGE-2The app prevents leakage of sensitive data.Review signal
MASVS-CRYPTO-1The app employs current strong cryptography and uses it according to best practices.No static findings · not a pass
MASVS-CRYPTO-2The app performs key management according to best practices.No static findings · not a pass
MASVS-AUTH-1The app uses secure authentication and authorization protocols.Review signal
MASVS-AUTH-2The app performs local authentication securely.Manual assessment
MASVS-AUTH-3The app secures sensitive operations with additional authentication.Manual assessment
MASVS-NETWORK-1The app secures all network traffic according to current best practices.No static findings · not a pass
MASVS-NETWORK-2The app verifies the identity of the remote endpoint (e.g. certificate pinning).No static findings · not a pass
MASVS-PLATFORM-1The app uses IPC mechanisms securely.No static findings · not a pass
MASVS-PLATFORM-2The app uses WebViews securely.No static findings · not a pass
MASVS-PLATFORM-3The app uses the user interface securely.Manual assessment
MASVS-CODE-1The app requires an up-to-date platform version.No static findings · not a pass
MASVS-CODE-2The app has a mechanism for enforcing updates.Manual assessment
MASVS-CODE-3The app only uses software components without known vulnerabilities.No static findings · not a pass
MASVS-CODE-4The app validates and sanitizes all untrusted inputs and follows secure-coding practice.No static findings · not a pass
MASVS-RESILIENCE-1The app validates the integrity of the platform.Manual assessment
MASVS-RESILIENCE-2The app implements anti-tampering mechanisms.Manual assessment
MASVS-RESILIENCE-3The app implements anti-static-analysis mechanisms.Manual assessment
MASVS-RESILIENCE-4The app implements anti-dynamic-analysis techniques.Manual assessment
MASVS-PRIVACY-1The app minimizes access to sensitive data and resources.No static findings · not a pass
MASVS-PRIVACY-2The app prevents identification of the user.No static findings · not a pass
MASVS-PRIVACY-3The app is transparent about data collection and usage.No static findings · not a pass
MASVS-PRIVACY-4The app offers user control over their data.Manual assessment
Build identity and signature
Scan ID
99cf5e6f-6ec5-4d15-9b07-250a013a199f
APK SHA-256
5c361b305e61587c3f4d7bcf7f43b4f1eefb927b72089e1ac81c57bb1856b8a2
Capsule SHA-256
de024c3e95c4b563516c0c44abd6f0b6682a97c57de08fc99e061e6990570ca6
Signing key
IE6LeZNX4dAAPLGr

Verify the signed JSON at apk-scanner.com/verify. This printed view is a presentation of the signed record; the JSON is the verification artifact.