We reviewed 26 code repositories and pushed 17 security fixes in one review. The goal was to close weak points before an attacker finds them. The work covered client products and our own internal tools.

| Review detail | Summary |
|---|---|
| Review date | October 26, 2026 |
| Scope | 26 repositories: client products and internal AurixLab tools |
| Project types | Operations platform, Shopify integrations, therapy intake, clinic sites, careers form, automation tools |
| Tech covered | Next.js, Fastify, Vite, Shopify, Supabase, Google Sheets, PHP, Python |
| Output | 17 pushed patch commits across 117 changed file entries |
AurixLab's web development and SEO teams worked on this project together. The web development and cybersecurity team reviewed the code and wrote the fixes. The SEO team documented the work in this case study.
Code that works can still trust the wrong things. A form can accept a dangerous value, and a webhook can accept a fake message. A secret can sit in a file anyone with repository access can read.
Our other 2 case studies cover attacks already in progress. One stopped spam bots on quote forms, and one recovered a hacked clinic website. This review shows the preventive side.
A breach can also cost a business its search visibility. Secure code protects the rankings that our SEO services in Calgary work to build.
The team followed 5 steps: discover, prioritize, fix, verify and maintain.
The team picked controls to fit each product. A static site and an app that stores client data need different protection.
The 17 fixes fall into 6 themes, each aimed at a different attack.
Sensitive actions now check permission on the server as well as in the interface. Someone can still call a hidden page directly.
Connected services now prove who they are before the code acts.
The code now checks or encodes outside data before using it.
User-supplied values now face limits before the server acts on them.
Outdated packages and loose build steps now get the same attention as app code.
Limits now stop uploads and background jobs from overloading a system.
Dependency audit findings dropped on 2 projects and reached 0 on a third. These counts come from package audits run during the review.
| Project | Findings before | Findings after |
|---|---|---|
| One platform | 20 | 12 |
| Script automation engine | 17 | 7 |
| Shopify quote API | Not recorded | 0 known findings |
These counts cover known package advisories at one point in time. They are not a full security score for each product.
The review also changed 117 file entries, with 2,396 lines added and 1,970 removed. Regenerated lockfiles make up much of that, so it overstates the hand-written fixes.
The 17 patch commits spread across client products, clinic work and our own tools. Projects appear by function, not by client name or repository.
| Project | Security changes |
|---|---|
| Agency operations hub | Report and scheduled-task permission checks; session checks; URL-fetch controls; security headers; package updates |
| Client dashboard | Safer post-login redirects; package updates; pinned CI actions; new regression tests |
| Content and script automation engine | Escaped database-filter values; restricted stored links; response headers; package patches |
| Commerce integration service | Webhook signature checks; credentials moved out of code; guarded utility endpoints; fewer error details |
| Purchase-order search tool | Derived cookie token; login throttling; safer comparisons; response headers; updated packages |
| Shopify quote API | Cleaned attachment names and subjects; file limits; no public error detail; patched packages |
| Clinic public pages | Hardened PHP contact email fields and error display; integrity checks on pinned assets |
| Therapy matching and intake | Audio content checks; bounded reads; container ownership fix; Python package updates |
| Agency careers form | Spreadsheet formula input neutralized; field length limits; protected role lookup |
| Clinic education microsite | Path containment; local-only dev server; escaped animated text; package cleanup |
| Agency Webflow components | Safe page construction instead of risky HTML insertion; updated packages |
| Routing configuration utility | Untrusted project settings blocked from privileged paths and endpoints |
| Ad research utility | Preview URLs and file IDs validated before image downloads |
| Campaign order webhook | Less sensitive third-party error logging |
| Commerce review refresh | Job concurrency and timeout controls |
| Archived commerce proxy | Credentials moved out of code; limited methods and endpoints; stronger webhook checks |
| Retired commerce theme | Hardcoded image API key removed; third-party review text encoded |
The team also reviewed 9 repositories without making commits. Some needed decisions from their owners, such as a privacy choice about a public file. Others showed little exposure, such as a static asset project.
A pushed patch is not the same as a tested, deployed fix. The review records changes in source control. Each live product still needs its own deployment and testing.
| Proof type | What it shows | What it does not prove |
|---|---|---|
| Source-control commits | 17 security fixes written and pushed | That each fix is live in production |
| Syntax and dependency checks | Code parses; known package advisories dropped | That every feature still works end to end |
| Manual code tracing | Login, webhook, URL and settings paths reviewed by hand | Full exploit coverage or independent certification |
The team uses 3 levels of "done":
Not every project in this review has reached the third level yet.
Security is a maintained condition, so every open item has a next step.
Four lessons from this review apply to any business that runs custom web software.
We can build security checks into design, development and maintenance. This work is part of AurixLab's web design and development services in Calgary. Book a free 30-minute growth mapping call to start.
A code security review checks an app's source code for weak points attackers could use. Reviewers look at logins, permissions, inputs, secrets, integrations and outdated packages. In our reviews, every finding gets either a fix or a logged follow-up. The review covers client products and internal tools alike.
A code review reads the source to find and fix weak points from the inside. A penetration test attacks a running system to show what an attacker can exploit. This project was a code review, so it makes no penetration test claims.
Webhook signature verification confirms that a message really came from its claimed sender. Shopify signs each webhook with an HMAC signature. The receiving code recalculates that signature and rejects any message that does not match. That check blocks fake orders and events.
A version tag on a GitHub Action can change after you start using it. If someone tampers with that tag, your workflow runs the new code. An exact revision hash locks the action to one reviewed version. That step reduces supply-chain risk.
No. A secret deleted from the latest code still sits in the repository's Git history. Anyone with access to that history can still find and use it. The fix is to move it into environment settings and rotate the old one.