SecuAAS Docs

SecuScan Platform Overview

SecuScan — SecuScan Platform Overview

SecuScan Platform Overview

<h2 id="bkmrk-secuscan-v0.28.0-%E2%80%94-s">SecuScan v0.28.0 — SaaS Vulnerability Scanning Platform</h2>

<p id="bkmrk-secuscan-is-a-compre">SecuScan is a comprehensive SaaS platform for External Attack Surface Management (EASM) designed for Quebec SMBs, with Law 25 compliance. It enables scanning, analyzing, and remediating security vulnerabilities across network infrastructure, source code, and deployed systems.</p>

<h3 id="bkmrk-key-features">Key Features</h3> <table id="bkmrk-categorydetails-netw"> <thead><tr><th>Category</th><th>Details</th></tr></thead> <tbody> <tr><td><strong>Network/Infrastructure scanning</strong></td><td>22 scanning tools (Nmap, Nuclei, TestSSL, DNS, Email Security, WAF Detection, etc.)</td></tr> <tr><td><strong>Code analysis</strong></td><td>8 scan phases, 103 functions (SAST, secrets, dependencies, containers, IaC, licenses, quality, AI)</td></tr> <tr><td><strong>AI Pentest</strong></td><td>AI-powered penetration testing agent using Claude AI with Temporal orchestration</td></tr> <tr><td><strong>AI Analysis</strong></td><td>Automatic finding classification (real/false positive/accepted risk), AI remediation reports</td></tr> <tr><td><strong>Multi-tenant</strong></td><td>Complete tenant isolation (PostgreSQL RLS), plans and quotas, Stripe billing</td></tr> <tr><td><strong>Web interface</strong></td><td>Bilingual FR/EN SaaS dashboard, 59+ routes, dark/light mode, command palette</td></tr> <tr><td><strong>Agents</strong></td><td>Deployable agents with system inventory and vulnerability analysis</td></tr> <tr><td><strong>Reporting</strong></td><td>PDF reports, CSV export, AI remediation reports in markdown</td></tr> <tr><td><strong>Administration</strong></td><td>Complete admin portal: users, tenants, statistics, audit logs</td></tr> <tr><td><strong>False positive management</strong></td><td>SHA256 fingerprint-based suppression system with cross-scan persistence (v0.28.0)</td></tr> <tr><td><strong>Version tracking</strong></td><td>Automatic app version detection via git describe + VERSION.md/package.json (v0.28.0)</td></tr> </tbody> </table>

<h3 id="bkmrk-architecture-compone">Architecture Components</h3> <table id="bkmrk-componenttechnologyr"> <thead><tr><th>Component</th><th>Technology</th><th>Role</th></tr></thead> <tbody> <tr><td><strong>Backend API</strong></td><td>Go (Chi router)</td><td>Multi-tenant REST API, JWT + API keys, 100+ endpoints</td></tr> <tr><td><strong>Frontend</strong></td><td>Next.js 14, TypeScript, React</td><td>Complete bilingual FR/EN SaaS dashboard</td></tr> <tr><td><strong>Worker</strong></td><td>Go</td><td>22 network/infrastructure scanning tools</td></tr> <tr><td><strong>Codeworker</strong></td><td>Go</td><td>Code security scanner with 8 phases, 103 functions</td></tr> <tr><td><strong>Pentest Agent</strong></td><td>Go + Claude AI</td><td>AI-assisted penetration testing</td></tr> <tr><td><strong>Pentest Worker</strong></td><td>Go + Temporal</td><td>Pentest workflow orchestration</td></tr> <tr><td><strong>PostgreSQL</strong></td><td>PostgreSQL 15</td><td>Multi-tenant database with RLS, 26 migrations</td></tr> <tr><td><strong>Redis</strong></td><td>Redis 7</td><td>Cache, job queue, rate limiting, API tracking</td></tr> <tr><td><strong>Temporal</strong></td><td>Temporal Server</td><td>Pentest workflow orchestration engine</td></tr> </tbody> </table>

<h3 id="bkmrk-deployment-urls">Deployment URLs</h3> <table id="bkmrk-environmentfrontenda"> <thead><tr><th>Environment</th><th>Frontend</th><th>API</th></tr></thead> <tbody> <tr><td>k8s-dev</td><td><a href="https://secuscan.secuaas.dev">https://secuscan.secuaas.dev&lt;/a>&lt;/td>&lt;td>&lt;a href="https://api.secuscan.secuaas.dev">https://api.secuscan.secuaas.dev&lt;/a>&lt;/td>&lt;/tr> <tr><td>k8s-prod</td><td><a href="https://secuscan.secuaas.ovh">https://secuscan.secuaas.ovh&lt;/a>&lt;/td>&lt;td>&lt;a href="https://api.secuscan.secuaas.ovh">https://api.secuscan.secuaas.ovh&lt;/a>&lt;/td>&lt;/tr> </tbody> </table>

<h3 id="bkmrk-project-status">Project Status</h3> <ul id="bkmrk-version%3A-0.28.0-stat"> <li><strong>Version</strong>: 0.28.0</li> <li><strong>State</strong>: Advanced development (pre-v1.0)</li> <li><strong>k8s-dev</strong>: 11/11 pods running</li> <li><strong>Docker images</strong>: 6 images on Harbor (secuscan-backend, secuscan-frontend, secuscan-worker, secuscan-codeworker, secuscan-pentest-worker, secuscan-pentest-agent)</li> <li><strong>Repository</strong>: <a href="https://github.com/secuaas/secuscan">https://github.com/secuaas/secuscan&lt;/a>&lt;/li> </ul>

<h3 id="bkmrk-what%27s-new-in-v0.28.">What's New in v0.28.0</h3> <h4 id="bkmrk-false-positive-suppr">False Positive Suppression System</h4> <ul id="bkmrk-code_issue_suppressi"> <li><code>code_issue_suppressions</code> table with SHA256 fingerprint</li> <li>Fingerprint = SHA256(repository_id|tool|rule_id|category|title|file_path)</li> <li>Statuses: <code>false_positive</code>, <code>accepted_risk</code>, <code>wont_fix</code></li> <li>4 API endpoints for managing suppressions</li> <li>AI report integration: accepted issues separated in Claude AI prompt</li> <li>Auto-application: existing suppressions automatically applied to new scans</li> </ul>

<h4 id="bkmrk-application-version-">Application Version Display</h4> <ul id="bkmrk-app_version-and-vers"> <li><code>app_version</code> and <code>version_tag</code> columns on <code>code_scans</code></li> <li>Automatic detection by codeworker after git clone</li> <li><code>git describe --tags --always</code> for version_tag</li> <li>Parses VERSION.md or package.json for app_version</li> <li>Frontend: version column in scan list, gap indicator in scan detail</li> </ul>

On this page