PMP®-certified GRC Analyst and Risk Practitioner. ISO 27001 · NIST CSF · AI Governance · OSFI B-13 · FAIR.
GRC programs structured for audit from day one — policies, risk registers, SOAs, and evidence packs that hold up under scrutiny, not just on paper.
FAIR-based risk quantification delivered in language boards act on — not heat maps that sit in a drawer.
AI governance that satisfies regulators and enables business — ISO 42001 aligned, operationally grounded, not just checkbox compliance.
Business continuity and crisis governance built on operational experience — BCP and incident response that functions under pressure, not just in the plan.
Every module demonstrates a real GRC capability — risk quantification, framework assessment, evidence management, business continuity — structured the way a practitioner would deploy it in an enterprise environment.
14 pre-loaded risks with FAIR quantification, likelihood × impact scoring, treatment decisions, justifications, owner assignment, and remediation due dates. Fully editable.
Live Chart.js risk matrix, trend graphs, ROSI calculator, MTTD/MTTR tracking, and board-ready KPI metrics. All calculated dynamically from your register data.
Full gap assessments across 9 frameworks — ISO 27001, NIST CSF, SOC 2, GDPR, CIS Controls, HIPAA, ISO 42001 (AI), OSFI B-13, and PIPEDA/C-27 — each with control-by-control scoring, notes, and exportable PDF reports.
Implemented, in-progress, and planned controls with framework references, effectiveness ratings, test dates, owner assignment, and linked risk mapping.
Evidence repository linked to controls, asset inventory with classification and criticality ratings, and a statement of applicability for ISO 27001 Annex A.
10 guided missions and 6 enterprise-scale practice projects — each in an isolated workspace with progress tracking, JSON export, and PDF completion report generation.
A fully interactive GRC command centre. Risk Register with FAIR quantification, 9 framework assessments (ISO 27001, NIST CSF, SOC 2, GDPR, CIS, HIPAA, ISO 42001, OSFI B-13, PIPEDA/C-27), Evidence repository, Statement of Applicability, Incident tracking, Business Continuity BIA, KPI & ROI calculator, and a Reporting Hub generating board-ready PDF exports.
Launch Platform →Guided missions and enterprise-scale practice projects inside the live platform. Complete full projects in isolated workspaces with JSON export and PDF completion reports.
Open Lab →Live BCP and incident management module — Business Impact Analysis with RTO/RPO/Max Tolerance, criticality ratings, dependency mapping, and annual impact costing. Full incident lifecycle tracking from detection through root cause and lessons learned.
View BCP →Risk framework for enterprise AI deployments — model security, regulatory mapping, and governance controls aligned to ISO 42001.
View AI Framework →Centralised toolkit for regulatory compliance audits — evidence collection, control testing, and audit-ready reporting across frameworks.
Open Toolkit →Five production-grade GRC tools built and deployed independently — each a standalone application with its own GitHub repository, Cloudflare deployment, and security architecture. No login required. All data stays in your browser.
Interactive vendor onboarding and ongoing security assessment tool. 29 weighted questions across 6 security domains — Data Security, Access Controls, Incident Response, Business Continuity, Compliance, and Sub-processors. Generates a risk-rated report (Critical/High/Medium/Low) with prioritized risk treatments and ISO 27001 control references.
Quarterly user access review and certification workflow with an automated Segregation of Duties (SoD) conflict matrix. Add users, assign roles, certify or revoke access, and detect SoD conflicts across 11 role combinations. Generates a quarterly UAR report with risk ratings, SoD flags, and ISO 27001 / NIST CSF control references.
Complete evidence collection tracker for SOC 2 Type II audits. Covers all 37 Trust Service Criteria controls across 12 TSC categories. Assign evidence owners, track due dates, monitor collection status, and generate a live Audit Readiness Score. Load all 37 TSC controls as placeholders instantly and export a board-ready audit report.
Interactive AI governance maturity assessment across all four NIST AI RMF 1.0 core functions — Govern, Map, Measure, Manage. Rates 59 practices on a 0–4 maturity scale, identifies gaps against target state, and generates a prioritized remediation roadmap with ISO 42001:2023 and EU AI Act 2024 control references per gap.
Structured library of 30+ pre-written, audit-quality responses to the most common enterprise security questionnaire categories. Every response maps to ISO 27001, SOC 2, NIST CSF, GDPR, and PIPEDA with evidence suggestions. Search by keyword, filter by framework or category, and copy any response to clipboard instantly.
Two structured 12-week curricula — one for beginners entering GRC, one for practitioners deepening their expertise. Every week links directly to real exercises inside the live ShomriTech GRC Platform and the 5 standalone tools. Sign in with Google or GitHub and your progress is saved to the cloud — pick up exactly where you left off from any device.
Security controls on this platform are implemented where the static architecture permits and documented honestly where they are not — including known limitations and accepted risks.
Deployed on Cloudflare Pages with HTTPS enforced. No server-side runtime eliminates the infrastructure-layer attack surface — no SQL injection, no RCE, no auth bypass possible at the server level.
A Content Security Policy is enforced on every page via Cloudflare Pages HTTP response headers — not meta tags. Restricts script execution to self and trusted CDNs only. Inline styles are scoped; connect-src is restricted to trusted endpoints only — Anthropic API (AI-powered Consulting Brief Generator) and Google Analytics (privacy-respecting visitor analytics).
All external scripts (Chart.js) are loaded from cdnjs with Subresource Integrity (SRI) hashes, ensuring tampered CDN files are blocked by the browser before execution.
All user-supplied data is HTML-encoded via a purpose-built esc() sanitizer before any DOM insertion. URL inputs are validated to block javascript: and data: URI injection.
The GRC Platform stores all data in browser localStorage only — scoped entirely to the user's own session. Exports are rate-limited (5/min) and audit-logged. Internal platform datasets are never included in user exports.
Repository is configured for secret scanning (GitHub Advanced Security). All commits are reviewed for accidental credential exposure. Security headers, responsible disclosure policy (security.txt), and clickjacking prevention (X-Frame-Options: DENY) are implemented.
Methodology: STRIDE (Microsoft SDL) · Assets in scope: portfolio source code, GitHub repository, CDN dependencies, client browser session · Review date: March 2026
Portfolio security controls mapped to NIST Cybersecurity Framework and ISO/IEC 27001:2022 Annex A. Methodology aligns with NIST SP 800-30.
| Control | NIST CSF Ref | ISO 27001 Ref | Implementation | Evidence | Status |
|---|---|---|---|---|---|
HTTPS Enforcement |
PR.DS-02 | A.8.24 | GitHub Pages HTTPS enforced (infrastructure level) · Cloudflare Always Use HTTPS enabled · HSTS header set by GitHub Pages infrastructure | Browser padlock · HSTS header | Implemented |
XSS Prevention |
PR.DS-02 | A.8.28 | HTML encoding via esc() · URL validation via escUrl() · CSP script-src | Source code review · HTTP response header via Cloudflare Pages | Implemented |
Clickjacking Prevention |
PR.AC-04 | A.8.28 | X-Frame-Options: DENY · CSP frame-ancestors: none | X-Frame-Options: DENY + CSP frame-ancestors: 'none' delivered as HTTP response headers via Cloudflare Pages _headers file · Verified: securityheaders.com Grade A · DevTools Network tab | Implemented |
Dependency Integrity |
ID.SC-04 | A.12.6 | SRI sha512 hash on Chart.js CDN · Version pinned to 4.4.4 | integrity= attribute in source | Implemented |
Content Security Policy |
PR.AC-04 | A.8.28 | CSP Level 3 · script-src, style-src, connect-src: api.anthropic.com, base-uri, form-action | HTTP response header via Cloudflare Pages _headers file · DevTools verification · securityheaders.com Grade A | Implemented |
Secure External Links |
PR.AC-04 | A.8.28 | All target=_blank links include rel="noopener noreferrer" | Source code audit · tab-nabbing test | Implemented |
Secret Scanning |
ID.SC-04 | A.12.6 | GitHub Advanced Security secret scanning enabled on repository | GitHub Security tab · gitleaks recommended | Partial |
Responsible Disclosure |
RS.CO-01 | A.6.8 | RFC 9116 security.txt published at /.well-known/security.txt | security.txt file · LinkedIn contact | Implemented |
Export Rate Limiting |
PR.AC-04 | A.8.20 | 5 exports per 60s enforced client-side · Excess blocked with user notice · localStorage-scoped; bypassable via DevTools — acceptable given no server-side attack surface | Source code · checkExportRateLimit() | Implemented (client-scoped) |
Audit Logging |
DE.CM-03 | A.8.15 | All data export events timestamped and stored in grc_export_log · localStorage-scoped; bypassable via DevTools — accepted limitation of static client-only architecture | localStorage audit trail · export functions | Implemented (client-scoped) |
Repository-level and pipeline security controls in effect for this portfolio.
No backend = no access control layer to break. All data is user-scoped to localStorage.
HTTPS enforced on all pages. No sensitive data transmitted or stored server-side.
All user input is HTML-encoded via esc(). URL inputs validated to block protocol injection.
Threat-modelled as a static portfolio — minimal attack surface by architecture. Demo banner prevents misrepresentation of capabilities.
CSP, X-Frame-Options, X-Content-Type-Options, and Referrer-Policy headers applied. HTTPS enforced.
Chart.js pinned to version 4.4.4 with sha512 SRI hash — not tracking latest. No npm runtime dependencies.
No authentication system = no session tokens to hijack. Portfolio is intentionally public-read-only.
SRI hashes on all CDN scripts. GitHub secret scanning enabled. No CI/CD pipelines with unverified dependencies.
Client-side export audit log maintained. All data export events are timestamped and stored in localStorage.
No server-side requests possible — static hosting eliminates SSRF attack surface entirely.
Every design decision in this platform maps to a production-grade equivalent. The table below documents those mappings — showing architectural awareness beyond what the demo itself can enforce.
| This Platform | Production Equivalent | GRC Consideration |
|---|---|---|
| localStorage data storage | Encrypted backend database with RBAC and access logging | Data classification · A.8.3 ISO 27001 · NIST PR.DS-01 |
| Client-side activity trace | Tamper-evident SIEM ingestion (Splunk / Microsoft Sentinel) | Log integrity · A.8.15 ISO 27001 · NIST DE.CM-03 |
| Client-side rate limiting | API gateway throttling / WAF rate rules (server-enforced) | Access control · A.8.20 ISO 27001 · NIST PR.AC-04 |
| Static hosting + CDN headers | Secure cloud architecture with WAF, runtime protection, and IDS | Network security · A.8.20–22 ISO 27001 · NIST PR.AC |
| No authentication layer | Identity provider (Okta / Entra ID) with MFA and RBAC | IAM design · A.5.15–18 ISO 27001 · NIST PR.AC-01 |
| SRI on CDN scripts | Software composition analysis (Snyk / Dependabot) + verified build pipeline | Supply chain · A.12.6 ISO 27001 · NIST ID.SC-04 |
Looking to stand up a GRC function, strengthen a compliance program, or bring structured risk management to a new initiative? I'd like to hear about the challenge.
Connect on LinkedIn → Explore the GRC Platform →