Security

Real offensive depth

Testing and defence led by a published security researcher with five CVEs, including a CVSS 9.1 Mirai botnet kill-switch.

All security →
Compliance

Audit-ready, fixed scope

SOC 2, ISO, and the Canadian privacy stack, run end to end with an independent auditor.

All frameworks →
Resources

Learn the space

Original research, free tools, and plain-language guides on security and compliance, from a published security researcher.

Read the blog →
Security

Cloud Security for B2B SaaS

If you run a B2B SaaS company, your cloud environment is your product. There is no factory floor, no warehouse, no physical office that holds your customer data. It all lives in AWS, GCP, or Azure, and the way that environment is configured determines whether your customers' data stays private or ends up in a breach disclosure. That is why cloud security keeps showing up on enterprise security questionnaires, in SOC 2 audits, and in the diligence checklists of every prospect who is about to sign a six-figure contract.

Why cloud security matters more for SaaS than almost any other business

A retailer with a cloud breach loses some customer records. A SaaS company with a cloud breach loses the thing it sells: trust that its platform can hold other companies' data safely. Your buyers are not evaluating your product in isolation. They are evaluating whether putting their own customer data, financial records, or intellectual property inside your platform creates risk for them. Security and procurement teams at your prospects will ask direct questions about how your cloud environment is configured, who can access production, and whether you have ever had an incident.

The stakes compound with scale. A misconfigured storage bucket or an overly permissive IAM role that goes unnoticed for a year in a five-person startup becomes a very different problem once that startup has enterprise customers, sensitive data flowing through the platform, and a board asking what happens if it gets exploited. Cloud environments grow faster than the security review process that is supposed to keep up with them, and that gap is where breaches happen.

Misconfiguration is the problem, not exotic attacks

Most cloud breaches are not the result of a sophisticated zero-day exploit. They come from configuration mistakes: a storage bucket left publicly readable, an IAM role with far more permissions than the service account actually needs, a security group open to the internet on a port that should be internal-only, logging that was never turned on, or credentials sitting in a repository instead of a secrets manager. These are the kinds of issues that accumulate quietly as engineering teams move fast, spin up new services, and reuse old templates without revisiting the permissions attached to them.

This is exactly why a structured cloud security assessment matters more than another layer of tooling. Most SaaS companies already run a cloud provider's native security dashboard and maybe a third-party scanner. Those tools generate alerts, but alerts are not the same as a prioritized, expert-reviewed picture of where your actual exposure is. An assessment done by someone who understands both cloud architecture and how attackers actually operate finds the handful of misconfigurations that matter, distinguishes them from noise, and gives your engineering team a concrete remediation path instead of a dashboard full of unranked findings.

Want this handled? Tell us what your buyer is asking for and we will tell you what the work involves, what it costs, and what you can do yourself. Talk to us

What a cloud posture review actually looks for

A proper review of an AWS, GCP, or Azure environment covers identity and access management first, since permission sprawl is the most common root cause of cloud incidents. That means checking who has administrative access, whether service accounts and roles follow least privilege, and whether multi-factor authentication is enforced everywhere it should be. From there, the review moves to network configuration: security groups, firewall rules, and whether anything that should be internal is reachable from the public internet.

Storage and data handling come next, since public or misconfigured storage buckets remain one of the most common ways sensitive data leaks. Encryption at rest and in transit, key management practices, logging and monitoring coverage, and whether you would actually detect an intrusion if one happened all get evaluated. For SaaS companies specifically, this also means looking at how customer data is isolated between tenants, since a multi-tenant architecture with weak isolation controls is a serious finding on its own.

The output is not a generic checklist. It is a prioritized list of findings, ranked by actual risk to your business, with specific remediation steps your engineering team can act on. Some findings get fixed in an afternoon. Others require architectural changes and get scoped into a longer-term roadmap. Either way, you end up with a clear picture instead of a vague sense that "cloud security is probably fine."

How traztech scopes this work

We start by understanding your architecture, not by running a generic scanner and handing you the output. That means a conversation about how your platform is built, which cloud provider or providers you use, how your engineering team ships changes, and what compliance or contractual obligations are driving the review, whether that is an upcoming SOC 2 audit, a specific enterprise deal, or your own internal risk management. From there, we scope the assessment to your actual environment rather than a one-size-fits-all template.

For companies that are also working toward a certification, cloud posture is one piece of a larger picture. If SOC 2 is the driver, the cloud review feeds directly into the broader compliance work, since access control, logging, and encryption findings map straight onto the controls an auditor will test. If the immediate concern is closing a specific enterprise deal or responding to a security questionnaire, we scope the engagement around what that prospect is actually asking for, so you are not paying for work that does not move the deal forward.

Every engagement ends with a report your engineering team can act on directly, not a slide deck full of jargon. Findings are ranked by real-world risk, tied to specific resources in your environment, and paired with remediation guidance that accounts for how your team actually ships code. We also flag which findings matter most if you are heading toward an audit, so you are not fixing things twice.

The cost of getting this wrong

A cloud breach at a SaaS company does not stay contained to a technical incident. It shows up in customer contracts as a breach clause trigger, in renewal conversations as a reason to walk, and in the sales pipeline as a question every future prospect's security team will ask. Compare that to the cost of a posture review: a defined engagement, a clear scope, and a report that either confirms your environment is solid or gives you a prioritized path to fix what is not. For a company whose entire product lives in the cloud, that is not optional diligence. It is table stakes for staying in business with enterprise customers.

If your SaaS platform runs on AWS, GCP, or Azure and you want a clear, expert-reviewed picture of your actual exposure, get in touch through our contact page and we will scope an assessment around your environment and your timeline.

The shared responsibility line is where most arguments start

Every cloud provider publishes a shared responsibility model, and almost every SaaS team reads it once and then forgets which side of the line their own obligations sit on. AWS, GCP, and Azure secure the hypervisor, the physical facilities, and the managed service internals. You are responsible for identity, network policy, data classification, encryption key decisions, patching anything you run on a virtual machine, and every configuration choice in between. The confusion gets expensive when a buyer's security team asks a question that assumes you know the boundary. If a prospect asks how you protect data at rest and your answer is that the provider encrypts everything by default, you have described the provider's control, not yours, and a competent reviewer will follow up by asking who holds the keys and who can read the plaintext.

The line shifts as you adopt more managed services. A team running containers on managed Kubernetes owns node configuration, workload identity, network policy, and image provenance. A team running the same workload on a serverless platform sheds much of that and picks up different concerns around function permissions and event source configuration. When your architecture changes, the set of controls you personally have to evidence changes with it, and the policy document written eighteen months ago usually does not reflect that. Auditors notice. So do buyers who have run the same review at forty other vendors.

Identity is the whole game, and it fails in specific ways

Permission sprawl is easy to describe and hard to fix, because the failure modes are individually reasonable. An engineer needs to debug a production issue at speed, so someone attaches a broad managed policy rather than writing a scoped one. A CI pipeline needs to deploy, so it gets a role that can create and delete almost anything in the account. A third-party monitoring tool asks for read access, and read access in a cloud account frequently means the ability to read secrets, snapshots, and object storage containing customer data. None of these decisions look wrong on the day they are made. Together they mean that a single leaked CI token gives an attacker the same reach as a stolen founder laptop.

The specific things worth checking are unglamorous. Whether any human user still has long-lived access keys rather than federated short-lived credentials. Whether the root or global administrator account has hardware-backed multi-factor authentication and is genuinely unused day to day. Whether your break-glass account exists, is documented, and alerts loudly when used, because a break-glass path nobody monitors is just an extra administrator. Whether service roles can assume other roles in a chain that ends somewhere nobody intended. And whether your identity provider is the single source of truth, or whether local accounts have quietly accumulated in the cloud console alongside it.

Cross-account and cross-project structure matters as well. Running production and non-production in the same account is one of the most common findings in early-stage SaaS environments, and it is the one that most often turns a minor staging compromise into a customer data incident. Separating them is usually a weekend of work before you have real traffic and a multi-quarter migration afterwards, which is a good argument for doing it early rather than after an auditor writes it up.

Tenant isolation: the finding buyers care about most

For a multi-tenant SaaS platform, the question that decides enterprise deals is whether one customer can reach another customer's data. Most teams answer by describing a tenant identifier column and application-level filtering, which is a real control but a fragile one, because it depends on every query in the codebase applying the filter correctly forever. Stronger positions layer something structural underneath: row-level security enforced by the database, separate schemas or databases per tenant, or scoped credentials issued per tenant so that a missing filter fails closed rather than open.

What separates a strong answer from a weak one is evidence rather than architecture. Can you show an automated test that attempts a cross-tenant read and asserts a failure. Does that test run on every deploy. Has anyone tried it by hand from an authenticated session with a modified identifier, and is that attempt documented in a report. Object storage deserves the same scrutiny, since customer file uploads are frequently the part of the system where isolation was implemented last and reviewed least. A signed URL with an over-broad prefix or an unexpectedly long expiry is a quiet way to leak files across accounts.

Secrets, pipelines, and the parts of the environment nobody calls infrastructure

Your build system is production. It holds deployment credentials, it can push code to running services, and in most SaaS companies it has looser access controls than the cloud console it deploys into. Third-party actions and plugins pulled from public registries run inside that trusted context, often pinned to a mutable tag rather than a commit hash. If you want one afternoon of work with an outsized payoff, pin your pipeline dependencies, scope deployment credentials to the specific resources they touch, and require review on changes to pipeline configuration itself.

Secrets management follows the same pattern. Moving credentials out of repositories into a managed secret store is the visible half of the job. The invisible half is rotation, and the honest state of most environments is that nothing has been rotated since it was created. When an engineer leaves, a well-run team disables their identity provider account, revokes their cloud sessions, and rotates any shared secret they could have read. Most teams do the first, sometimes the second, rarely the third, which is worth knowing before a customer asks you to describe your offboarding process in writing.

Would you actually detect it

Logging is a control every SaaS company claims and few can demonstrate under pressure. Provider audit logs should be enabled in every region and account, written to storage the account's own administrators cannot quietly delete, and retained long enough to be useful. Retention is the recurring failure: incidents are frequently discovered months after the initial access, and a thirty day window means the interesting part of the story is already gone. Whatever number you pick, pick it deliberately and be able to say why.

Beyond retention, ask what you would notice. A useful test costs nothing: have an engineer create a new administrative user in a non-production account on a Tuesday afternoon and see whether anyone is alerted, who receives it, and how long it takes for a human to respond. Teams are routinely surprised. A handful of high-signal alerts that someone actually reads beats a comprehensive detection stack that fires into an unmonitored channel, and a buyer's security reviewer will take the first answer over the second every time.

When you should not buy an assessment from us

There are several honest cases where paying for a review is the wrong call. If you have never run the free tooling your provider already gives you, start there. The built-in security posture dashboards, the identity access analyzers, and the published CIS benchmark for your platform will surface the obvious problems at no cost, and a competent senior engineer with a week of focus can close most of them. Paying an outside firm to tell you that public storage is public is not a good use of money.

If you are pre-launch with no customer data and no signed security commitments, spend on the product and set up the boring foundations properly instead: an identity provider with enforced multi-factor authentication, separate production and non-production accounts, infrastructure as code, and audit logging turned on from day one. If your driver is a single questionnaire from a single prospect, answer the questionnaire honestly and see what they actually push back on, because the answer is often narrower than a full posture review. And if your environment changes weekly because you are still rewriting the architecture, a point-in-time assessment will be stale before the report is read, so wait until the shape settles.

The case for bringing someone in is narrower and clearer than most vendors admit: an audit is coming and you need the cloud controls to hold up under testing, a named enterprise buyer has escalated past the questionnaire to a technical review, your environment has grown past what any one person on the team can hold in their head, or you have had an incident and need an independent read on how far it reached.

Fixing findings in a useful order

A report with forty findings creates its own paralysis, so the ordering matters as much as the list. Anything reachable from the public internet without credentials goes first, because exposure is not theoretical. Next comes anything that would let an attacker who has one credential become an administrator, since that step converts a nuisance into a breach. Then the detection gaps, because until logging works you cannot tell whether the first two categories were already exploited. Structural work such as account separation or a tenant isolation redesign lands last on the calendar and first in the roadmap document, with a dated plan, because auditors and buyers both accept a credible schedule for a known architectural gap far more readily than they accept silence about it.

Whichever order you choose, write the decision down with the reasoning and the date. Cloud posture drifts, people leave, and the value of the review a year later is not the findings list but the record of what you decided and why. If the review is feeding an audit, keeping that record alongside your control evidence in one place saves you assembling it twice, which is most of the argument for running the work through a compliance program rather than as an isolated technical exercise. If you would rather have the ongoing version, where posture drift gets caught between audits instead of during them, that is what a continuous engagement is for.

Want this handled? Tell us what your buyer is asking for and we will tell you what the work involves, what it costs, and what you can do yourself.

Talk to usOr talk about a retainer

Before you go

Want the rest of this by email?

If this was useful, I send a few short notes on security posture. Unsubscribe in one click, and replies reach me directly.

From Jacob Masse, principal of traztech. No spam, unsubscribe in one click.

Want a second opinion on where you stand?

We run SOC 2, ISO 27001 and the rest of the compliance stack for startups and SMEs, and the security testing that sits behind it. The first call is free, and we will tell you if you are not ready to start yet.

Book a free call

Track record

Who is actually doing the work

5
Published CVEs, including a CVSS 9.1
76
Controls taken from nothing to a passed SOC 2 Type II
Zero
Exceptions on that Type II report
20+
Penetration testing engagements delivered

Published vulnerability research

Five published CVEs. CVE-2024-45163 (CVSS 9.1) is a flaw in the Mirai botnet itself, which gave defenders a way to shut down attacker infrastructure. CVE-2026-42626 takes HP ENVY 5000 printers offline from any unauthenticated device on the same network.

A SOC 2 Type II built from nothing

At Humera, a venture-backed US security company, Jacob built the compliance programme in-house from nothing: no report, no policies, no documented controls. It ended in a Type II attestation across 76 controls with zero exceptions, on a team of 15.