Skip to content

Security: Krosebrook/interact

Security

SECURITY.md

Security Policy

Last Updated: January 21, 2026 Version: 1.0.0

Supported Versions

We actively support the following versions of Interact with security updates:

Version Supported
0.1.x (alpha)
< 0.1.0

Security Status

Current security posture:

  • Vulnerabilities: 0 known vulnerabilities ✅
  • Security Score: 100/100 (View Audit)
  • Last Security Audit: January 21, 2026
  • Next Scheduled Audit: April 2026

Reporting a Vulnerability

We take security seriously. If you discover a security vulnerability, please report it responsibly.

How to Report

DO NOT create a public GitHub issue for security vulnerabilities.

Instead, please use one of the following methods:

  1. Email: security@krosebrook.com (Preferred)
  2. GitHub Security Advisory: Use GitHub's private vulnerability reporting

What to Include

Please provide as much information as possible:

  • Type of vulnerability (e.g., XSS, SQL injection, authentication bypass)
  • Affected component (e.g., specific page, API endpoint, component)
  • Steps to reproduce (detailed reproduction steps)
  • Proof of concept (code snippet, screenshot, or video)
  • Impact assessment (what could an attacker do?)
  • Suggested fix (if you have one)
  • Your contact information (for follow-up questions)

What to Expect

When you report a vulnerability:

  1. Acknowledgment: We will acknowledge receipt within 24 hours
  2. Initial Assessment: We will provide an initial assessment within 72 hours
  3. Updates: We will keep you informed of our progress
  4. Resolution: We aim to resolve critical vulnerabilities within 7 days
  5. Disclosure: We will coordinate public disclosure with you
  6. Credit: We will credit you in our security advisories (unless you prefer to remain anonymous)

Our Commitment

  • We will respond promptly and professionally
  • We will keep you updated on our progress
  • We will work with you to understand and resolve the issue
  • We will credit you for your responsible disclosure (if desired)
  • We will not take legal action against researchers who follow responsible disclosure

Security Measures

Interact implements multiple layers of security:

Application Security

  • Input Validation: All user inputs validated using Zod schemas
  • Output Encoding: React's built-in XSS protection + DOMPurify
  • Authentication: Secure session management via Base44 SDK
  • Authorization: Role-based access control (RBAC)
  • HTTPS Enforcement: All traffic encrypted in transit
  • Security Headers: CSP, HSTS, X-Frame-Options, etc.

Dependency Security

  • Zero Known Vulnerabilities: All dependencies up to date
  • Automated Scanning: Dependabot enabled for continuous monitoring
  • Regular Audits: npm audit run before every release
  • Version Pinning: Critical dependencies pinned to secure versions

Data Protection

  • Encryption at Rest: Handled by Base44 platform
  • Encryption in Transit: TLS 1.3 for all communications
  • Data Minimization: Collect only necessary information
  • Access Controls: Principle of least privilege
  • Audit Logging: All sensitive operations logged

Compliance

  • GDPR: Compliance framework established (View Checklist)
  • CCPA: California privacy law compliance
  • 🔜 SOC 2: Audit planned for Q4 2026
  • 🔜 ISO 27001: Future consideration

Security Best Practices for Contributors

When contributing to Interact:

Before Every Commit

  • Run npm audit and resolve any vulnerabilities
  • Run npm run lint and fix security-related warnings
  • Never commit secrets, API keys, or credentials
  • Validate all user inputs
  • Encode all user-generated output
  • Review code for security implications

Secure Coding Guidelines

Input Validation:

import { z } from 'zod';

const schema = z.object({
  name: z.string().min(1).max(100),
  email: z.string().email()
});

const result = schema.safeParse(userInput);

Output Encoding:

// React automatically escapes JSX
<div>{userInput}</div>  // ✅ Safe

// For HTML content, use DOMPurify
import DOMPurify from 'dompurify';
const clean = DOMPurify.sanitize(userHTML);

Authentication:

// Use Base44 SDK for all auth operations
import { useAuth } from '@/hooks/useAuth';

const { user, isAuthenticated } = useAuth();

Security Advisories

We publish security advisories for all confirmed vulnerabilities:

  • Location: GitHub Security Advisories
  • Format: CVE when assigned, GHSA otherwise
  • Notification: GitHub Security Alerts + Email to watchers

Recent Security Fixes

January 2026:

  • ✅ Fixed 3 HIGH severity React Router XSS vulnerabilities
  • ✅ Updated all dependencies to secure versions

December 2025:

  • ✅ Fixed 8 npm security vulnerabilities (2 HIGH, 6 MODERATE)
  • ✅ Migrated from react-quill to react-quill-new (XSS fix)
  • ✅ Updated jspdf to v4.0.0 (DOMPurify XSS fix)

See CHANGELOG.md for complete history.

Security Resources

Documentation:

External Resources:

Contact

Security Team: security@krosebrook.com General Inquiries: engineering@krosebrook.com


Thank you for helping keep Interact and our users safe! 🔒


Document Owner: Security Team Next Review: April 21, 2026

There aren’t any published security advisories