Kode-1
Code security

Fix the cloud risk where it starts, in the code that built it

Most of what goes wrong in a cloud estate was written down first: a template that opened a port, a secret committed to a repository, a dependency nobody chose, a pipeline with more permission than the thing it deploys. We put the checks where code is written and reviewed, trace every runtime finding back to the line and the team that owns it, and leave you with fixes landing in pull requests rather than tickets.

Trusted by
Westpac
Syrah Resources
Beyond Blue
BDO
Triple Zero
Praemium
Velrada
McMillan Shakespeare
Nufarm
Seek
QUT
UNE
Jim's Group

The finding is in production. The cause is in a repository.

Security finds a storage bucket open to the internet and raises a ticket. The platform team closes it in the console. The next deployment applies the same template and opens it again, and the ticket comes back with a new number. Meanwhile the developers run a static analyser that flags four hundred things with equal weight, so the pull-request comments have become background noise, and the dependency scanner reports vulnerabilities in packages nobody on the team remembers adding. Everyone is doing their job. The tools that see the code do not know whether it runs, faces the internet or touches customer data, and the tools that see the cloud do not know which commit produced the resource or who to send the fix to. The missing piece is the link between what runs and what wrote it.

What usually brings people to this page

Most code security work starts with one of these. If two are true, it is already overdue.

Fixes that do not stick

The same misconfiguration returns every deploy, because the fix went into the console and the template still says the old thing.

Secrets in the repository

Keys and tokens committed, copied into images, and found by an audit or an attacker rather than a scanner.

Dependencies nobody chose

Transitive packages, base images and open-source components the build pulled in, carrying vulnerabilities nobody on the team has heard of.

Alerts developers have tuned out

Static analysis that flags everything with equal weight, so the pull-request comment is scrolled past.

A customer or regulator asked for a bill of materials

Procurement and frameworks now ask what is in your software, and the honest answer is assembled by hand.

The pipeline holds the keys

Build systems carry credentials to everything they deploy, and are reviewed less often than the applications they build.

Six things have to be true, in this order

1. Inventory of what you build

  • Every repository, pipeline, image and registry, and the cloud resources each one produces
  • An owner recorded per repository, because a finding with no owner is a ticket nobody picks up
  • The map from a running resource back to the template and commit that created it

2. Infrastructure code

  • Templates and manifests checked before they are applied, against the same baseline as the running estate
  • Policy written as code, with exceptions recorded rather than argued about in a ticket
  • Drift between what the template says and what the console shows detected and closed at the source

3. Secrets and sensitive data

  • Hardcoded keys and tokens found in code, commit history, templates and container images
  • Every exposed secret rotated rather than only deleted, and a secret store adopted so it does not return
  • Personal and regulated data found in code and test fixtures, where nobody thought to look

4. Dependencies and images

  • Direct and transitive components inventoried, with the base images your containers are built on
  • Vulnerabilities ranked by whether the workload that carries them is reachable, so the list is short
  • Malicious packages caught before a build runner executes them

5. Pipeline hardening

  • Version control and build systems configured against insecure defaults
  • Pipeline identities cut back to the permissions a deployment needs, and no more
  • Branch protection, review requirements and signed artefacts where the risk warrants them

6. Guardrails and ownership

  • Findings delivered in the editor and the pull request, with the fix, rather than in a security console
  • A bar for production enforced in the pipeline, so a critical issue cannot be deployed by accident
  • Every cloud finding routed to the repository that created it, and a bill of materials produced by the build rather than by hand

Where we look

Where code is written

  • Repositories and branches, including the archived ones that still deploy something
  • The editor and the pull-request flow, where a finding is cheapest to fix
  • Test fixtures and sample data, a common home for real customer records

How it is built

  • Build pipelines and the runners that execute them
  • Container images and the registries they are pushed to
  • Package feeds and artefact stores, where a poisoned dependency enters

What it becomes

  • Infrastructure templates and manifests, and the cloud resources they create
  • The match between resource and source, so a runtime finding has a line number
  • The drift between the two, which is where console-only fixes go to die

Who can change it

  • Developer and service identities in version control, and who can approve a merge to the main branch
  • Pipeline credentials and everything they can reach in the cloud
  • Third-party integrations and apps granted access to your repositories

Why scanning the code on its own did not fix this

Static analysis and dependency scanning have been available for years, and many organisations already run both. They see the code and nothing else. A vulnerable function in a service that is never exposed and a vulnerable function on the internet-facing payment path get the same severity, so the developer gets a list of hundreds and treats it accordingly. At the other end, the cloud team sees the exposed resource and has no way to know which repository produced it. Two lists, two teams, and the one finding that matters sits on both without anyone joining them. Context from the running estate is what gives a code finding its weight, and the map back to source is what gives a cloud finding its owner. With both, the list is short and it lands with the person who can fix it.

From a ticket queue to a pull request

Before, security finds it, a ticket is raised, the platform team fixes it by hand, and the next deployment undoes the work. After, the template fails the check before it is applied, the secret is caught in the pull request, the dependency is flagged only when the workload carrying it is reachable, the cloud finding arrives at the repository with a line number, and the bill of materials comes out of the build. Remediation starts while the assessment is still running, because a secret in a public repository is not something to leave in a report for a month.

You already have static analysis and a dependency scanner. Why is this different?

Those are inputs, and we keep them. What changes is what happens to their output. Findings are weighted by the running estate rather than by a generic score, so the list a developer sees is the short one. They arrive in the pull request with the fix rather than in a console the developer never opens. Each one has an owner, because the resource it affects maps back to the repository that produced it. And there is a bar at the point of deployment, so the pipeline refuses what should not ship rather than relying on someone to notice. We would rather make the scanners you own earn their keep than sell you another one.

Choosing tooling, without taking anyone's word for it

We are independent of any one platform, so here is the test we apply on your behalf, and which you should apply to us. Does it map a running cloud resource back to the template and the commit that created it, or only scan the code in isolation. Does it cover templates, images, dependencies and secrets in one place, or hand you four scanners with four dashboards. Does it weight a code finding by whether the workload is reachable and what it holds, or by a severity score that knows nothing about your estate. Does it deliver the finding in the pull request and the editor, with the fix, or expect developers to log in somewhere. Can it enforce a bar at deployment on a policy you write, with exceptions recorded. Does it produce a bill of materials from the build without anyone assembling it. And what does it cost your developers in friction, because a check that slows every pull request will be disabled by the second sprint. If a platform cannot answer those plainly in a demo against your own repositories, that is the answer.

Three ways in

See it, measure it, or prove it

Demo

A working walkthrough against a scenario like yours, run by the engineer who would deploy it, not a sales team.

  • The capability shown end to end on realistic data
  • Your questions answered by the people who implement it
  • A plain view of what it would take to run in your environment
Book a demo

Cloud Risk Assessment

The size of the exposure, evidenced: what runs in your cloud estate, which findings join into a path to a breach, and who owns the fix.

  • Maturity rating against a recognised framework
  • Risk register with severity and likelihood
  • Policy and control gap assessment
  • Prioritised remediation plan
  • Board-ready summary of exposure
Request a Cloud Risk Assessment

Proof of value

Test the case before you scale it: one use case, one sponsor, a controlled environment and a fixed budget.

  • Working pilot in a controlled environment
  • Measured results against agreed success criteria
  • Data, risk and governance findings
  • Scale-up plan and cost estimate
  • A scale, adapt or stop recommendation
Start a proof of value
Code security

Start with a conversation

Choose how you want to begin. A partner replies within one business day.

Common questions

Before you enquire

If your teams write infrastructure templates, run build pipelines, or deploy code a vendor wrote for you, yes, though the scope is narrower. Most of what we find in those estates is in the templates and the pipeline credentials rather than in application code.

No. We are independent of any one product, and this page names none. Where tooling helps we bring what suits your estate, show it working against your own repositories in the demo, and leave you free to license it yourself, through us, or not at all.

It should do the opposite. A finding in the pull request with the fix beside it is faster than a ticket three weeks later, and a short list weighted by real exposure is faster than a long one weighted by a score. The bar at deployment stops the rework of fixing the same thing twice. A check that slows every pull request has failed, and we design around the flow rather than in front of it.

The same assessment, scoped to the code-to-cloud path: repositories, pipelines, templates, images and the resources they produce. It ends in a maturity rating against a recognised framework, a risk register with severity and likelihood, a policy and control gap assessment, a prioritised remediation plan, and a board-ready summary of exposure.

They are the same estate from opposite ends. The cloud security page starts from what runs and works back to the risk; this page starts from what wrote it and works forward to production. Both use the same context, and most organisations end up doing both. Start with whichever end your team owns.

The same senior people throughout. A partner stays accountable from the first conversation to the outcome, alongside the engineers doing the remediation. Afterwards you can run the operating model yourself, or we can run it with you under a managed arrangement with agreed service levels and reporting.