BYTE ON
Software Company
TKAMOL · Documentation
BYTE ONSOFTWARE COMPANY
TKAMOL · Legal Operations SaaS · Documentation
Part III · Technical Docs

Chapter 7 - Security Review

Scope

This is a static code/configuration inspection. No penetration testing, dynamic scanning, or runtime testing was performed. Findings are prioritized accordingly.

Observed controls (good)

Assets sensitive in project

Findings

High

  1. Database secret fallback in config/imap.php hardcodes user/password (observed in repository code).
  2. Missing .env in repo and installer expects .env.example, so secrets may be shared over channels or versioned.

Medium

  1. No tenant global scope; isolation largely app-query-level. Must audit all repositories for conditions.
  2. Payment setting table (payment_settings) appears to store values plaintext without visible encryption helper (verify row encryption).
  3. Plan and AI key stored as "value" text in settings, no visibility for encryption wrapper.
  4. Tax/financial report exported way varies CSV includes client data.
  5. Http facade used to fetch Gemini (LLM) external with API key in URL; possible query parameter leak relative.
  6. Automatic 37 keyboard shortcuts, modal stacks (likely safe).
  7. CORS policy inherited from config/cors.php not fully read; default doesn't support native API.

Low

  1. No password MFA/CAPTCHA on local login. (optional)
  2. No HTTPS enforcement in code (deployment-side).
  3. DemoModeMiddleware gives potential bypass only selectively for POSTs; standard only and testing use by default.
  4. User password nullable means quick user creation row; product should govern.
  5. Rate limiting only Login and AI limited.
  6. vendor not updated maybe aging 2026 year; queue options need.

Operational recommendations

← Testing Guide Developer Handover Checklist →