Cloud security is not a product. It is a division of labour, and the whole subject turns on being able to draw the line: what the provider secures, what remains yours, and how that line moves between IaaS, PaaS and SaaS. Everything above the line is configuration, identity and data — which is where cloud incidents actually happen.
Indian obligations follow the workload, not the data centre. Direction (iv) of CERT-In’s Directions of 28 April 2022 requires logs of all ICT systems to be enabled and maintained for a rolling period of 180 days within Indian jurisdiction — a limb FAQ Q35 qualifies, since logs may sit outside India provided they can be produced to CERT-In in a reasonable time. Annexure I item (xviii) makes attacks affecting cloud computing systems mandatorily reportable within six hours. Neither duty is discharged by your provider.
Plain-English explainer · CERT-In Directions of 28 April 2022 · CERT-In FAQ, May 2022 · Comprehensive Cyber Security Audit Policy Guidelines v1.0 (25 July 2025) · Every clause locator checked 22 September 2026
What is cloud security? A boundary, not a product
Cloud security is the practice of securing the half of a cloud system that the provider does not secure for you. The provider is responsible for the cloud — the facilities, the hardware, the hypervisor, the managed services it operates. You are responsible for what you put in it and how you configure it: your identities and permissions, your network exposure, your data and your keys, your workloads, and the management plane through which all of it is created and destroyed. That division is called the shared responsibility model, and where the line sits depends on the service, not on the vendor.
The practical consequence is that cloud security is mostly a configuration and identity discipline rather than a patching one. The recurring patterns sit above the provider’s line: storage left readable, roles far broader than the job they were created for, keys that never expire, trust relationships nobody maintains, and logging that was never turned on in the region where it mattered. CERT-In’s own explanation of the cloud incident type in its FAQ of May 2022 names the same territory: “Cloud API vulnerabilities, weak cryptography, exposed data repositories and unauthorised access to victims’ cloud credentials”. Every one of those sits above the provider’s line.
For an Indian organisation there is a third thing to hold alongside the architecture and the controls: the obligations follow the workload. Moving a system into a cloud region does not move the duty to enable and retain logs, and does not move the duty to report an incident. Direction (iv) of the Directions of 28 April 2022 requires logs of all ICT systems to be maintained securely for a rolling period of 180 days within Indian jurisdiction, and item (xviii) of Annexure I makes attacks and malicious or suspicious activities affecting cloud computing systems one of the twenty types that must be reported within six hours of noticing. Those are quoted in full, with their qualifications, further down this page.
The four things people most often get wrong about cloud security
Each one is addressed in full further down, with the clause or the mechanism behind it.
Cloud security is not something the provider does for you.
Every provider publishes a model that draws a line and puts your data, your identities, your configuration and your access decisions on your side of it. The line is real, it is contractual, and it moves between IaaS, PaaS and SaaS. Being unable to state where it sits for a given service is itself the first finding.
The management plane is part of the estate, and it is usually out of scope.
The API that creates and destroys every resource you own is reachable from the internet and authenticated by credentials. It is not a server, so it is not in the inventory, so it is not in the scope of work — and a single over-permissioned principal there is worth more to an attacker than any individual host.
A cloud-hosted application test is not a cloud security review.
Testing a web application that happens to run in the cloud tells you about the application. It says nothing about the identity model, the storage policies, the network exposure of everything that is not the tested hostname, or the guardrails. CERT-In’s guidelines treat Cloud Security Testing as its own class of engagement at §6(xviii).
Your provider’s certification does not cover your tenant.
It covers their service, in the regions and for the period its scope names, and the report itself will usually say what stays with the customer. Your bucket policy, your dormant administrator, your never-expiring integration token and your unlogged region were never in it.
Key Takeaways
- Cloud security is a division of labour. The provider secures the infrastructure it operates. You secure identity, configuration, data, workloads and the management plane. The line moves between IaaS, PaaS and SaaS — and sometimes between two services from the same provider.
- Identity and data classification are yours at every service model without exception. Everything else shifts. Write the split down per service, not per vendor.
- Five control planes are worth scoping separately: identity and access, network, data and encryption, workload, and the management plane — the API that creates and destroys everything else, and the one most often forgotten.
- Cloud incidents concentrate in configuration and identity rather than in provider compromise: storage that is public by accident, roles far broader than the job, long-lived static keys, cross-account trust nobody maintains, logging that is off or partial, and a build pipeline holding estate-wide permissions.
- CERT-In’s own explanation of Annexure I type (xviii) names the same territory — “Cloud API vulnerabilities, weak cryptography, exposed data repositories and unauthorised access to victims’ cloud credentials”.
- Direction (iv) of the Directions of 28 April 2022 requires logs of all ICT systems to be enabled and maintained securely for a rolling period of 180 days, within Indian jurisdiction, and produced to CERT-In with an incident report or on demand. Read it with FAQ Q35, which states logs “may be stored outside India also as long as the obligation to produce logs to CERT-In is adhered to … in a reasonable time” — noting that the FAQ says of itself that it “is not a legal document” and is an evolving document whose version may change.
- Annexure I item (xviii) makes attacks and malicious or suspicious activities affecting cloud computing systems, servers, software and applications mandatorily reportable within six hours of noticing. FAQ Q13 states the obligation “is neither transferrable nor indemnified or dispense with”, and Q31 extends the same answer to incidents affecting your data in a third party’s systems.
- Direction (v) places five-year registration and retention duties on data centres, virtual private server providers, cloud service providers and VPN service providers. The extension order of 27 June 2022 moved the validation limbs at (v)(a) and (v)(f) to 25 September 2022, and moved general effectiveness for MSMEs to the same date.
- A personal data breach in a cloud estate engages a second duty on a second footing. s.8(6) of the Digital Personal Data Protection Act, 2023 requires the Data Fiduciary to intimate the Data Protection Board and each affected Data Principal “in such form and manner as may be prescribed” — no timeline is fixed in the Act — and it runs alongside the six-hour CERT-In duty rather than instead of it.
- The deployment model moves the line as much as the service model does. Private cloud makes you provider and tenant at once. Colocation leaves you everything above the hardware. Hybrid concentrates risk in the identity bridge and the transit link. Multi-cloud gives you N identity models, N audit trails and no single region list to answer direction (iv) with.
- Multi-account structure is a blast-radius decision: production apart from non-production, a log archive the logged identities cannot write to, guardrails a member account cannot switch off, and a region list produced from the API rather than from memory.
- We deliver CERT-In audits, end to end, with our CERT-In empanelled partners.
How the line moves between IaaS, PaaS and SaaS
What is the difference between IaaS, PaaS and SaaS for security?
The usual way to teach this is by what you operate. The more useful way, for security, is by what you have agreed to stop being able to see — because that is what decides which assurance activity replaces inspection. As you move from IaaS to SaaS you gain operational relief and lose visibility, and the discipline that has to grow to compensate is configuration review and vendor assurance rather than patching.
IaaS — infrastructure as a service
What you operate. Virtual machines, block and object storage, virtual networks, load balancers, managed databases you administer yourself.
What you gave up seeing. The hypervisor and everything below it. You cannot inspect the host, and you cannot test it — the provider’s acceptable-use terms will tell you so in writing.
What replaces inspection. The provider’s own assurance artefacts for the infrastructure layer, and your contract. Everything above the hypervisor is yours to test, and a competent cloud review will find most of its findings there.
The characteristic failure. Treating a virtual machine as though the provider hardens it. An unpatched guest operating system on a managed platform is an unpatched operating system.
PaaS — platform as a service
What you operate. Your code, your data, your service configuration, your identities. Managed runtimes, managed databases, managed queues, serverless functions.
What you gave up seeing. The runtime and its patching, and usually the operating system entirely. You often cannot run an agent, which changes what monitoring is even possible.
What replaces inspection. Configuration review and dependency management, because the two surfaces left to you are how the service is exposed and what you shipped into it.
The characteristic failure. Assuming that because the platform is managed, the deployment is private. A managed database with a public endpoint and a permissive source range is a public database.
SaaS — software as a service
What you operate. Tenant configuration, roles and permissions, sharing and external-access settings, integrations and the tokens that drive them, data retention.
What you gave up seeing. Essentially everything technical. You cannot test the vendor’s application without their written permission, and most contracts do not give it.
What replaces inspection. Vendor assurance, contractual commitments, and a configuration review of your own tenant — which is the part almost nobody does, and where the findings are.
The characteristic failure. Reading the vendor’s certification as covering your tenant. It covers their service. Your over-shared folder, your never-expiring integration token and your dormant administrator are yours.
Most real estates are all three at once, which is why the split has to be recorded per service rather than per provider. A single application commonly runs on virtual machines you patch, talks to a managed database you do not, authenticates against an identity service you configure, stores documents in object storage you own the policy for, and sends transactional mail through a SaaS product whose tenant settings nobody has looked at since it was bought. Five services, four different lines, one application. If you want a deeper treatment of the assurance side of this — what a provider’s report does and does not cover, and what a complementary user entity control is — see cloud provider SOC 2 and shared responsibility and CUECs and CSOCs.
Who operates the platform, not just what you run on it
What is the difference between public, private, hybrid and multi-cloud security?
The service-model question — IaaS, PaaS or SaaS — answers what you operate. The deployment-model question answers who operates the platform underneath it, and it moves the responsibility line in a different direction. The two are independent: you can buy IaaS from a public provider, run IaaS yourself on a private cloud, or consume SaaS that is itself hosted on somebody else’s public cloud.
This matters more in India than the public-cloud diagram suggests, because the normal shape of a regulated Indian estate is hybrid or colocated rather than purely public, and government and financial-sector procurement frequently pushes towards private and community models. An organisation that reads only the public-cloud shared-responsibility picture has read the model for the part of its estate it worries about least.
| Model | Who operates what | Where the responsibility line lands | What an Indian review has to check |
|---|---|---|---|
| Public cloud | A third-party provider operates the facility, the hardware, the hypervisor and the managed services, and sells capacity on shared infrastructure to unrelated tenants. | The line this page has drawn everywhere above. The provider’s half is real, substantial and not inspectable by you. Everything from the guest operating system or the service configuration upwards is yours. | The whole Indian checklist applies unchanged: direction (iv) logs of all ICT systems for 180 rolling days, direction (ii) with item (xviii) for six-hour reporting, direction (i) for clock source, and a region decision you can defend. |
| Private cloud on your own hardware | You. A private cloud is a cloud platform — self-service provisioning, an API, tenancy, metering — that you operate on infrastructure you own or lease outright. | There is no line. You are provider and tenant simultaneously, so every provider-side duty described on this page becomes yours as well as every tenant-side one: facility, hardware, hypervisor, host patching and the platform’s own control plane. The comfort of “the provider handles that layer” is exactly what you gave up. | Two extra things follow. The management plane is now an internal system you must audit rather than an external one you must configure. And if you sell or resell any part of that capacity to another entity, direction (v) binds you directly — validated subscriber names, period of hire, IP addresses allotted, onboarding email, IP and timestamp, purpose, validated address and contact numbers, ownership pattern, for five years. |
| Colocation | The facility operator provides space, power, cooling, physical security and network carriage. You own and operate everything from the hardware upwards. | The inverse of the first two rows of the layer table. The provider’s half stops below the hardware rather than below the guest operating system, so firmware, hypervisor, host operating system and every layer above are yours — which is more responsibility than public-cloud IaaS, not less. | Physical and environmental controls become a contractual assurance question about the facility operator, and everything logical is yours. A data centre is a named class of entity in the 2022 Directions, so the facility operator carries duties of its own. That does not move any of yours. |
| Hybrid | Split. Some workloads on your own or a colocated estate, some in a public cloud, joined by network connectivity and — the part that matters — a shared identity model. | Drawn twice, differently, with two seams between them. The two highest-value targets are not the workloads: they are the identity bridge, because a compromise there is valid in both halves at once, and the transit link, because it is usually trusted at both ends by configuration rather than by verification. | The audit trail now has two halves that do not naturally join. Producing six months of events for a single day means producing them from two systems with two clocks, which is why direction (i)’s clock-synchronisation duty stops being administrative and starts being the thing that makes the evidence correlate at all. |
| Multi-cloud | Two or more public cloud providers, usually for different workloads rather than for the same workload, whatever the resilience story says. | Drawn N times. There is no such thing as one shared-responsibility line in a multi-cloud estate, and the documents drawing them do not use the same vocabulary. | N identity models, N audit trails, N guardrail systems and no single region list to answer direction (iv) with. The practical consequence is that the region inventory has to be assembled per provider and merged by hand, and the answer to “where are our logs” has as many parts as you have providers. |
| Community cloud | A provider operates shared infrastructure for a defined set of organisations with common requirements — a sector, a group of departments, a consortium. | Public-cloud-shaped, with the tenancy boundary drawn around a community rather than around the internet. The security question that changes is who else is inside the boundary and what the operator’s separation between them actually is. | Ask for the operator’s own assurance scope and the separation model in writing, and treat the community boundary as a claim to be evidenced rather than as an assumption. If the community is a government one, the GIGW hosting-environment requirements at guideline 5.3.2 of the manual are the ones to read. |
One Indian instrument speaks to the hybrid and hosted cases directly, and it is worth reading before the architecture conversation rather than after it. §13.1.5 of the 2025 audit policy guidelines addresses the split where a website is hosted on a web server owned by another organisation: responsibility for auditing that web server, its operating system, the web hosting application software and the backend database software lies with the organisation that owns and operates the server, while the owner of the website content remains responsible for having the website data and software audited by a CERT-In empanelled information security auditing organisation. The clause also asks that the report explicitly certify that the audited web application, including backend databases and scripts, is free from vulnerabilities and malicious code that could be exploited to compromise or gain unauthorised access, including escalated privileges, to the web server hosting the website. Read that last sentence carefully in a colocated or hybrid estate: it is a certification about your application’s effect on infrastructure somebody else runs.
The word to avoid in all of this is “sovereign”. It is a marketing term with no fixed meaning across providers, and it is used to describe arrangements ranging from a region located in India to a separately operated entity with locally vetted staff. If a proposal uses it, ask which of those it means, who holds the encryption keys, who can access the control plane and from where, and which entity the contract is actually with. Those four answers are the substance, and the adjective is not.
Five places where cloud security is decided and enforced
What are the pillars of cloud security?
Five, and they are better called planes than pillars, because a pillar holds something up and a plane is somewhere a decision is made. Identity and access. Network. Data and encryption. Workload. And the management plane — the provider’s own API, through which every resource above is created, reconfigured and destroyed. Most published lists of cloud security “pillars” or “types” give the first four and omit the fifth, which is the one where a single finding has estate-wide consequences.
What does cloud security actually cover?
“Plane” rather than “control” deliberately. Each of the five below is a place where policy is decided, enforced and recorded, and each produces a different kind of evidence. A scope of work that names all five is a cloud security review, one that names the first four is an infrastructure review, and one that names none of them and says “cloud VAPT” is an application test with an ambitious title.
01 Identity and access
Who can do what, to which resource, under what conditions?
What good looks like. Federation to a single identity provider with multi-factor authentication. Roles rather than long-lived users. Short-lived credentials issued on demand. Permission boundaries and service control policies. Separation between the identity that deploys and the identity that approves. Break-glass accounts that are sealed, monitored and tested.
What the evidence is. An exported list of every principal with administrative permissions, dated. Credential age for every key that still exists. The last-used timestamp for every role and every key. Evidence that joiner-mover-leaver actually reaches the cloud directory and not only the corporate one.
How it fails. Permissions granted to unblock a deployment at eleven at night and never narrowed. Wildcard actions on wildcard resources. A role that anyone in a partner account can assume. Service accounts that outlive the humans who created them.
02 Network
What can reach what, and from where?
What good looks like. Private subnets by default and public exposure as an explicit decision. Security groups written as allow-lists rather than as wide ranges. Private endpoints for managed services. Egress control, which is the half most estates skip. A web application firewall in front of anything public. Segmentation between environments that is enforced at the network, not merely intended.
What the evidence is. The current list of every publicly reachable address and port in the account, with an owner against each. Flow logs enabled and retained. A diff between the network as designed and the network as deployed — produced from the provider’s API, not from a drawing.
How it fails. A rule opened to the world for a vendor demonstration. A management port reachable from anywhere because a bastion was inconvenient. Test environments that share a network with production because they were built first.
03 Data and encryption
Where is the data, who holds the keys, and what happens when it moves?
What good looks like. A classification that exists before the storage decision rather than after it. Encryption at rest with a recorded key-custody model. Encryption in transit enforced rather than available. Bucket and share policies that deny public access at the organisation level so an individual mistake cannot override them. Tokenisation or field-level protection for the few fields that justify it. Backup that is isolated from the credentials that could delete the primary.
What the evidence is. An inventory of data stores with classification, region, key custody and retention against each. Proof that public access is blocked at the top of the hierarchy, not only on the object. A restore that someone actually performed, with a date on it.
How it fails. Public object storage — the failure most readers will already recognise. Snapshots and backups that are public when the primary is not. Keys and connection strings in source control, in environment variables and in build logs. A copy of production in a development account because someone needed realistic test data.
04 Workload
What is running, what is it built from, and can it be changed in place?
What good looks like. Images built from a known base and scanned before deployment. Immutable deployment so that a running instance is never patched by hand. A software bill of materials for what you ship. Runtime protection where it earns its place. Orchestration hardened — no privileged containers by default, role-based access inside the cluster, network policy between namespaces. Secrets delivered from a secret manager rather than baked in.
What the evidence is. The build pipeline’s own record: which image, from which commit, scanned when, deployed by which identity. Drift detection results. A list of running workloads with an image digest against each, matched back to a pipeline run.
How it fails. A container that runs as root because the base image did. A cluster whose dashboard is reachable without authentication. Nodes on a public subnet. The long-lived cloud credential mounted into a pod so that a single application flaw becomes an account-level one.
05 Management plane
Who can create, reconfigure and destroy all of the above, and is it recorded?
What good looks like. Multi-factor authentication on every human who can call the API and on the root or global administrator especially. No static keys for humans at all. Infrastructure changed through a reviewed pipeline rather than through the console. Organisation-level guardrails that cannot be switched off by a member account. Audit logging enabled in every region and every account, delivered to an account that the logged identities cannot write to. Alerting on the small set of events that are always worth waking someone for.
What the evidence is. Audit trail enabled in every region, with the delivery destination and its access policy. The root or global administrator’s last-used date and its MFA status. A list of identities that can disable logging. Change records that tie an infrastructure change to an approval and to a pipeline run.
How it fails. Logging enabled in one region and not the others. The audit trail written into the same account it is auditing. An unused root credential with no MFA. An organisation-level guardrail that has never been tested from inside a member account, so nobody knows whether it denies anything.
CERT-In treats this as its own discipline rather than as a variety of application testing. §6(xviii) of the Comprehensive Cyber Security Audit Policy Guidelines lists Cloud Security Testing as a class of engagement in its own right, defined as “evaluating and assessing the security measures, configurations, and vulnerabilities of cloud-based systems, applications, and infrastructures”. Note the middle word: configurations. And §8(ii) names the framework to build the programme from — the CSA Cloud Controls Matrix “for Cloud Security” — in the same clause that says limited lists such as the OWASP Top 10 and SANS Top 25 “should not be considered as standards or references for audits”.
The management plane is the actual perimeter
What is the cloud management plane, and why does it matter?
The management plane is the provider’s own API: the interface through which resources are created, reconfigured, copied and destroyed, and through which permissions themselves are granted. The console is a client of it. The command-line tool is a client of it. Your infrastructure-as-code pipeline is a client of it. It is reachable from the public internet by design, because that is what makes cloud cloud.
That makes it the real perimeter, and it behaves unlike any perimeter a data-centre estate ever had. A network boundary fails gradually — an attacker lands somewhere and works outwards. The management plane fails instantly and completely: a credential with sufficient permissions does not need to traverse anything. It can read a database by taking a snapshot and restoring it elsewhere. It can reach a private subnet by creating a route to it. It can stop being observed by turning the audit trail off. None of that touches a firewall, triggers an intrusion sensor, or appears in an application log.
This is why an estate can pass an application test and a network scan and still be one leaked token away from total compromise. It is also why CERT-In’s explanation of the cloud incident type opens with “Cloud API vulnerabilities” rather than with anything about servers. The management plane is the cloud API.
Six checks that take an afternoon and change the risk picture
Every one is answerable from the provider’s own API. None of them requires a tool purchase, and each has a wrong answer that is worth knowing about today rather than during an incident.
Is the audit trail on in every account and every region?
Most audit trails are per-region unless deliberately made organisation-wide. Check the ones you do not use as well as the ones you do — an attacker will pick a region nobody watches precisely because nobody watches it.
Where is the audit trail delivered, and who can delete from it?
If the answer is “the same account” and “the administrators of that account”, then your record of an incident is writable by the identity that caused it. Separate account, restricted deletion, object lock or its equivalent, and check who can change retention as well as who can delete.
Does the root or global administrator have multi-factor authentication, and when was it last used?
Both facts are queryable. A last-used date that is recent and unexplained is an incident question. A last-used date of never, with multi-factor enabled and the credential sealed, is the answer you want.
Which identities can disable logging or change organisation guardrails?
That list is the real administrator list, whatever the role names say. It is usually longer than anyone expects, because the permission travels inside broad managed policies attached for another reason.
How does the build pipeline authenticate, and what can it do?
A static key in a repository setting means repository access equals cloud administrative access. Federated, short-lived credentials scoped per environment are the fix, and they are usually a day of work.
Can a member account switch off a guardrail?
Test it. Attempt to disable the audit trail, make a bucket public, and deploy into an unapproved region from inside a member account. Three attempts, three answers, and any “yes” is a finding with a clear remediation.
What a cloud review actually opens, service by service
What is on a cloud security checklist?
The five planes are how to think about the estate. This is what somebody opens on a Tuesday morning. Each row is written so that the middle column can be answered from the provider’s own API rather than from an opinion, which is what lets an observation be supported by objective evidence, as §18(iii) requires. The third column is the finding this surface produces when nobody has looked — stated so you can search for it yourself before anyone else does.
| Surface | What a review checks | The finding it produces |
|---|---|---|
| Object storage | Public-access block at the account or organisation level. Bucket and object policies granting a public or wildcard principal. Encryption state and key custody. Access logging for anything holding regulated data. Versioning and lifecycle rules. And — the one usually missed — the same checks against snapshots, exports and cross-account replication targets. | A bucket, a snapshot or a replica readable without credentials, or readable by every principal in the account because the policy was written to unblock a job. |
| Managed databases | Whether the endpoint is reachable from the public internet and from which source ranges. Encryption at rest and enforced in transit. Audit logging enabled and shipped off the instance. Who holds the master credential and whether it rotates. Automated backup retention and where backups live. Whether any copy of the data exists in a non-production account. | A publicly resolvable endpoint with a permissive source range, or a production copy in a development account with weaker controls and no retention rule. |
| Compute instances | Base image provenance and patch level. What listens on the instance and from where. Whether the management port is reachable outside a bastion or session service. The identity attached to the instance and what it can reach. Metadata service configuration. Whether the instance can be changed in place or is replaced by a pipeline. | A long-lived instance patched by hand, holding a role broad enough to read the estate, with a metadata endpoint reachable through an application that proxies requests. |
| Serverless functions | The execution role’s permissions per function rather than per account. The invocation path and who may call it. Environment variables checked for secrets. Dependency provenance. Concurrency and timeout as an availability control. Log retention, since function logs are frequently the only record of what happened. | A single over-broad execution role shared across every function in the account, so the least important function has the permissions of the most important one. |
| Container orchestration | Whether the API server is publicly reachable and how it authenticates. Role-based access inside the cluster and who is bound to cluster-admin. Network policy between namespaces. Privileged and host-network workloads. Node placement on private subnets. Image provenance and admission control. How the cluster’s workloads obtain cloud credentials. | A cluster where every workload inherits the node’s cloud identity, so a single application flaw becomes an account-level compromise without any lateral movement. |
| Identity and directory | Federation coverage for human access. Multi-factor enrolment per principal including the root or global administrator. Every static key with its age and last-used date. Roles with administrative permissions and their trust policies. Permission boundaries. Whether joiner-mover-leaver reaches the cloud directory rather than only the corporate one. | Active keys belonging to people who left, and a role anyone in a partner account can assume because the external identifier was left as a wildcard. |
| Secrets and keys | Where secrets are held and how workloads obtain them. Whether any secret appears in source control, build variables, container images or log output. Key policies showing who may use and who may delete each key. Rotation evidence. What happens to encrypted data if a key is disabled. | A credential in a build variable that is also in a fork of the repository, and a key policy with a delete permission nobody knew was granted. |
| Networking | The complete list of publicly reachable addresses and ports with an owner against each. Security group rules with wide source ranges. Egress control. Private endpoints for managed services. Peering and transit routes between environments. Flow log coverage. | A rule opened to the world for a vendor demonstration two years ago, and no egress control at all, so exfiltration has no obstacle and leaves no distinctive record. |
| The build and deployment pipeline | How the pipeline authenticates to the cloud. The scope of its permissions per environment. Who can modify the pipeline definition. Approval gates for production. Whether artefacts are signed. Whether the pipeline’s own logs are retained alongside the estate’s. | Unsigned artefacts and an unprotected pipeline definition: the build file sits in the same repository as the application and can be edited by anyone who can open a pull request against it, so a change to the deployment steps reviews like a change to a stylesheet — and nothing downstream verifies that the artefact being deployed is the one the pipeline produced. |
| Backup and disaster recovery | Retention period and whether backups are immutable for it. Whether the backup account’s credentials are genuinely separable from the primary account’s, or whether one administrator holds both. Snapshot sharing settings, including snapshots shared with an account identifier nobody recognises. Cross-region and cross-account copy rules and where they land. The date somebody last performed a restore rather than last tested that the job ran. | Backups an administrator of the primary account can delete, and a restore that has never been performed end to end — so the recovery objective is an intention. The second finding here is usually a snapshot made public or shared during a migration and never unshared. |
| Data warehouse and analytics | Which tables are copies of regulated primary stores. Whether classification travels with the copy or stops at the source. External table and external stage locations, which frequently point at object storage outside the warehouse’s own controls. Who holds export and unload permissions. Row and column level controls where the warehouse supports them. Query history retention. | A warehouse holding a complete copy of regulated data with none of the primary store’s classification, retention or access discipline, and an export permission granted to an analyst group because a one-off extract was needed in a quarter nobody remembers. |
| Queues, topics and event buses | Encryption at rest and whether it uses a provider-managed or a customer-managed key. Whether payloads carry regulated fields, which is the question nobody asks because a queue is thought of as transport rather than storage. Dead-letter queue retention, which is often far longer than the main queue and holds the messages that failed. Access policies allowing cross-account consumers. Whether message bodies appear in logs. | Regulated fields sitting in a dead-letter queue for fourteen days under a policy nobody set deliberately, and a cross-account consumer added for an integration that was decommissioned. |
| CDN, edge and web application firewall | Whether the origin can be reached directly, bypassing the edge entirely — origin shielding, origin access controls, or a firewall rule that only admits the edge’s address ranges. Whether the WAF is in blocking mode or counting mode, which is the single most common gap between what a diagram says and what is enforced. Log retention at the edge tier, which is usually shorter than everywhere else. Cache rules that could serve an authenticated response to an anonymous request. | A WAF that has been in counting mode since it was deployed “for a week, to tune the rules”, and an origin whose address is resolvable and accepts traffic directly, so the whole edge tier is optional from an attacker’s point of view. |
| Managed inference, models and training data | Whether the inference endpoint is publicly reachable and how it authenticates. Whether invocation logging is enabled at all, and whether prompts and completions are retained rather than only request metadata, with the retention period recorded. The classification, region and key custody of model artefacts and training data in object storage. The permissions held by any agent or tool-execution role, which is a management-plane principal driven by model output rather than by a human. Which region inference actually runs in, which is not always the region you selected when a service falls back to another for capacity. | An estate that can prove a model was called and cannot produce what it was asked or what it answered, because prompt and completion logging is off by default on most managed inference services and nobody turned it on — which is the one log a six-hour filing about an item (xx) event would need. |
| SaaS tenants | Administrative roles and their count. External sharing and guest access settings. Installed integrations and the scopes their tokens hold. Token expiry and last use. Audit log availability and export. Data retention. Whether authentication is federated with the corporate identity provider or stands alone. | A dormant administrator, an integration installed during an evaluation that still holds a read-everything token, and an audit log that only exists for thirty days on the current plan. |
Five rows deserve to be read twice, and they are the five most likely to be absent from a proposal. The build pipeline, because it is a principal with estate-wide permissions that nobody thinks of as a production system. The SaaS tenant, because the vendor’s certification was read as covering it and it does not. Backup and disaster recovery, because the controls that protect the primary store were frequently never applied to its copies. Queues and event buses, because a queue is thought of as transport and is in fact storage with a retention period. And managed inference, because it is the newest surface on the list and the one whose logs are off by default. None of the five is normally named in a scope of work unless the buyer names them, which is why they appear in the thirteen questions and in the scope-of-work block further down.
Cloud incidents concentrate in configuration and identity
What causes most cloud security breaches?
Not the provider. The recurring patterns sit above the provider’s line, in the part of the estate the customer configures, and they are structural rather than exotic. The six below are TCSA’s own reading of what a cloud review keeps finding, stated as patterns rather than as frequencies — we publish no percentage here because no defensible one exists, and a number invented for emphasis would be the least trustworthy thing on the page.
What is not our reading is the shape of the territory. CERT-In’s FAQ on the Cyber Security Directions of 28.04.2022 (May 2022) carries an Annexure-I of explanations for each of the twenty mandatorily reportable incident types, and its explanation of type (xviii) — the cloud type — names “Cloud API vulnerabilities, weak cryptography, exposed data repositories and unauthorised access to victims’ cloud credentials”, and notes that such incidents can impact confidentiality, integrity and availability. Each row below is one of those four made concrete.
The FAQ carries its own limitation, which is worth reproducing whenever it is relied on: it “is not a legal document and in no way whatsoever replaces, amends or alters any part of the IT Act, 2000” or the CERT-In Rules, 2013, and CERT-In describes it as an evolving document whose version may change. CERT-In also calls the Annexure-I explanations “illustrative” at Q9 — they explain the type, and they are not a reportability test for a particular fact pattern.
Storage that is public when nobody meant it to be
What it looks like. An object store, a file share or a snapshot readable without credentials. Often it is not the primary store but a copy: an export made for an analytics job, a backup written to a second account, a bucket created for a one-week migration in 2023.
Why it keeps happening. Public is one setting away, the setting is at the object level as well as the container level, and the person who flipped it was solving a delivery problem rather than making a security decision.
Where it sits in the Indian instruments. CERT-In’s explanation of type (xviii) names “exposed data repositories” in terms. Where the exposure has resulted in data being taken or released, types (xi) Data Breach and (xii) Data Leak would on our reading also be described, on the same six-hour clock. Which types a given incident engages is our reading of the item text, not a CERT-In determination: CERT-In calls the Annexure-I explanations illustrative at Q9, and they are not a reportability test for a fact pattern.
What actually fixes it. Deny public access at the organisation or account level so that an individual setting cannot override it, and treat every exception as a named, dated, owned decision. Then go and look at the copies, because the primary is rarely the one that is open.
Roles far broader than the job they were created for
What it looks like. A deployment role with administrative permissions. A read-only analyst role that can also read every secret. A permission granted with a wildcard action on a wildcard resource because the specific one was not known at the time.
Why it keeps happening. Least privilege is easy to state and expensive to derive. Broad permissions unblock delivery immediately and cost nothing until the day a credential attached to them is used by somebody else.
Where it sits in the Indian instruments. Type (iii) of Annexure I is “Unauthorised access of IT systems/data”, which CERT-In explains as accessing systems or data without authorisation, noting it “may involve compromising the systems, poor security controls, weak credentials and /or privilege escalation”.
What actually fixes it. Use the provider’s own last-accessed data to narrow permissions against observed behaviour rather than against a guess, put a permission boundary above every role a team can create, and review administrative principals on a schedule with a named reviewer.
Long-lived static keys
What it looks like. An access key created for a script in a previous financial year, still active, still valid, sitting in a configuration file, a build variable, a laptop, a wiki page and a vendor’s system.
Why it keeps happening. A static key is the easiest thing that works. It has no expiry by default, it survives the departure of its creator, and nothing in the platform will delete it for you.
Where it sits in the Indian instruments. CERT-In’s explanation of type (xviii) names “unauthorised access to victims’ cloud credentials” as one of the ways cloud systems are attacked. Type (vii) covers identity theft, spoofing and phishing, which is how such credentials are most often obtained.
What actually fixes it. Remove static keys for humans entirely and replace them with federation. For workloads outside the provider — a build pipeline, a partner job — the specific mechanism worth naming is OIDC workload-identity federation: the external system presents a short-lived token issued by its own identity provider, the cloud exchanges it for temporary credentials, and the trust is scoped per environment and per branch or repository so that a job in a feature branch cannot assume the production role. No secret is ever issued, so none can leak. Where a key genuinely must exist, give it an owner, an expiry and an alert on its age.
Cross-account and third-party trust that nobody maintains
What it looks like. A role a vendor’s account can assume, created during an evaluation, never revoked. A trust relationship with a wildcard external identifier. An integration installed by a team that has since been reorganised out of existence.
Why it keeps happening. Trust is granted once, at the moment of maximum goodwill, and it is nobody’s job afterwards. The vendor’s own security posture becomes part of yours the moment the role exists, and you inherit it silently.
Where it sits in the Indian instruments. FAQ Q31 answers this one directly for the reporting question: the Directions “are applicable to all entities in so far as reporting of a cyber incident is concerned”, including incidents affecting your data held in a third party’s systems.
What actually fixes it. Inventory every external trust and every installed integration with an owner and a business justification against each. Require an external identifier on assume-role trusts rather than a wildcard. Re-confirm the list when a contract renews, because that is the one moment somebody is already reading the agreement.
Logging that is off, partial, or writable by the thing it records
What it looks like. Audit logging enabled in the region the estate started in and not in the three it grew into. Flow logs never enabled. An audit trail delivered into the same account it audits, under a policy that lets an administrator there delete it.
Why it keeps happening. Logging costs money continuously and pays out once. It is the first line trimmed in a cost exercise and the last thing anyone tests, because nothing breaks when it is wrong.
Where it sits in the Indian instruments. This is where the Indian duty bites hardest. Direction (iv) of the 2022 Directions requires logs of all ICT systems to be enabled and maintained securely for a rolling period of 180 days, within Indian jurisdiction, and provided to CERT-In with an incident report or when ordered.
What actually fixes it. Enable the audit trail organisation-wide rather than per account, so a new account inherits logging at creation instead of at somebody’s discretion. Point the delivery at a log archive account whose administrators are not the identities being recorded. Set object lock or its equivalent with a retention period, and then check separately who can change that retention period, because that permission is usually held more widely than the delete permission everybody thinks to restrict.
The management plane treated as infrastructure rather than as an attack surface
What it looks like. A console session that can change organisation-level guardrails. A metadata endpoint reachable from an application that proxies requests. An account-creation path that produces accounts nobody enrols into the organisation’s logging or guardrail policy, so the estate grows faster than the controls do.
Why it keeps happening. The management plane is an API on the public internet that creates and destroys everything you own. It is not thought of as an asset because it is not a server, so it is not in the inventory and therefore not in the scope.
Where it sits in the Indian instruments. Type (xviii) covers “Attacks or malicious/suspicious activities affecting Cloud computing systems/servers/software/applications”, and CERT-In’s explanation of it names “Cloud API vulnerabilities” first. The management plane is the cloud API.
What actually fixes it. Put the management plane in the asset inventory in its own right. Require multi-factor authentication for every human principal. Move change out of the console and into a reviewed pipeline. Scope your next cloud review to include the pipeline’s own identity and permissions, not only the resources it creates.
Read as a set, the six have one thing in common: every one of them is a decision that was correct on the day it was made and was never revisited. That is the argument for cadence rather than for intensity. An estate reviewed once, thoroughly, and then left alone for two years is in worse shape than one reviewed adequately every year, because the failure mode here is drift rather than ignorance. It is also why §13.1.2 of CERT-In’s audit policy guidelines states an annual audit as a minimum and requires a further audit before any major change — with “major” defined by risk rather than by size, and expressly including “configuration adjustments that affect sensitive data or critical infrastructure”. In a cloud estate, that definition catches a one-line policy change that a release process would not even flag.
Multi-account structure is a blast-radius decision
What is a cloud landing zone?
A landing zone is a cloud environment that has been structured before workloads arrive rather than around them: the account or subscription hierarchy, the organisation-level guardrails, the identity federation and the logging destination all decided and established first. The word describes a decision, not a product — every major provider sells tooling that builds one, and an estate assembled by hand to the same design is equally a landing zone.
Why use multiple cloud accounts instead of one?
Because an account is the strongest boundary a cloud provider gives you. Inside one account, separation depends on permissions being written correctly for every principal and every resource, forever. Between accounts, separation is the default and connection is the exception — which is the right way round. A “landing zone” is simply the name for having decided this deliberately, with the accounts, the guardrails, the identity federation and the logging destination established before the first workload arrives rather than retrofitted around it.
Most estates do it retrospectively, which is normal and survivable. What matters is that each separation below is bought for a stated reason, and that each one has a check attached that someone can run this week.
| The separation | What it buys you | The check that tells you whether you have it |
|---|---|---|
| Production separate from non-production | A blast radius. A credential that leaks from a development pipeline cannot reach production data, and a load test cannot take a customer-facing service down. | Can any single identity, human or machine, reach both? If the answer is the deployment pipeline, that pipeline is now the boundary and should be defended like one. |
| Security and log archive in their own accounts | Evidence that survives the incident. An attacker with administrative rights in a workload account cannot delete the record of what they did, because the record is somewhere they have no permissions at all. | Who can delete an object from the log archive? If the answer includes any identity in a workload account, the archive is decorative. |
| Shared services — identity, networking, images — held centrally | One place to enforce a change. Federation, egress inspection and approved base images are set once, rather than negotiated per team. | When a hardening change is agreed, how many places does it have to be applied? If the answer is “every team”, it will be applied in most of them. |
| Sandbox accounts that are genuinely disposable | Somewhere to say yes. Engineers experiment inside a boundary with hard spend and permission limits instead of experimenting in production because nowhere else was available. | Does a sandbox hold any real data? The moment it does, it is a production account with a misleading name. |
| Guardrails at the organisation, not at the resource | Controls a member account cannot switch off — the deny that outranks the local administrator: no disabling the audit trail, no public object storage, no unapproved regions. | Try to break one from inside a member account as part of the review. A guardrail nobody has tested is a policy document. |
| A region decision that is written down | An answer to the residency question before a regulator or a customer asks it — including for backups, replicas, logs and the managed services that quietly ship data elsewhere. | List every region with resources in it, from the provider’s API rather than from memory. The gap between that list and the approved list is the finding. |
One warning about structure, because it is the mistake that follows from doing this well. Separating accounts moves risk into the things that cross them: the identity provider, the deployment pipeline, and the transit network. Those three become the new concentration of privilege, and they deserve the scrutiny the individual accounts no longer need. A landing zone does not remove the single point of failure. It relocates it somewhere you can defend properly and watch closely.
The obligations follow the workload, not the data centre
Is a cloud security audit mandatory in India?
The honest answer has two halves, and most summaries give only the flattering one. No Indian instrument read for this page says “every organisation must commission a cloud security audit”. What the instruments do say is narrower and, in practice, harder to get out of. §6 of CERT-In’s 2025 audit policy guidelines describes auditee organisations as “expected to ensure a comprehensive audit covering all aspects of their Information and Communication Technology (ICT) systems at least once a year”, and §13.1.2(i) says the cyber security audit “should be conducted at least once in a year”, with sectoral regulators free to increase that frequency. §4 describes the guidelines as applying to auditee organisations “required to or … seeking to evaluate their cyber security posture” — the document’s own hedge, which we do not upgrade into a mandate. §2 states that the guidelines are binding on all CERT-In empanelled auditing organisations and auditee entities covered under the relevant provisions, without enumerating what those provisions are.
What is not conditional is everything listed below. The 2022 Directions are not an audit requirement at all — they are standing obligations that apply whether or not anyone audits you, and §15.2.1(iv) then requires compliance with them to be verified in every audit assignment. So the practical position for most Indian organisations is this: the audit is expected annually and may be required by your own regulator, and the log, clock, contact and reporting duties are owed regardless. For a Government website or application the answer changes and becomes a gate: GIGW guideline 5.3.1 of the manual requires an audit clearance certificate before hosting in production.
Do CERT-In’s directions apply to systems hosted in the cloud?
Yes, and the instrument does not need a special cloud clause to make that true. The Directions of 28 April 2022 — No. 20(3)/2022-CERT-In, issued under sub-section (6) of section 70B of the Information Technology Act, 2000 — apply to service providers, intermediaries, data centres, body corporate and Government organisations, and the log duty is expressed over “all their ICT systems”. A cloud-hosted ICT system is an ICT system. Moving a workload into someone else’s data centre changes who operates the hardware. It does not change who the duty is addressed to.
Three effective dates are worth stating together, because most summaries give only the first. The Directions became effective 60 days after 28 April 2022. The extension order of 27 June 2022 then made them effective on 25 September 2022 for micro, small and medium enterprises as classified by the Ministry of Micro, Small & Medium Enterprises, and it made the validation limbs at paragraph (v)(a) and (v)(f) — validated names of subscribers, and validated address and contact numbers — effective on the same date for data centres, virtual private server providers, cloud service providers and VPN service providers.
Enable and retain logs for 180 rolling days
Directions of 28 April 2022, direction (iv)
All service providers, intermediaries, data centres, body corporate and Government organisations “shall mandatorily enable logs of all their ICT systems and maintain them securely for a rolling period of 180 days and the same shall be maintained within the Indian jurisdiction. These should be provided to CERT-In along with reporting of any incident or when ordered / directed by CERT-In.”
What it means for a cloud estate. A cloud-hosted ICT system is an ICT system. The duty travels with the workload, and the two things it tests are retention configuration and the ability to produce a specific day’s events on request. Read this limb with FAQ Q35 before making a region decision — see below.
Report a cloud incident within six hours
Direction (ii) with Annexure I item (xviii)
Cyber incidents mentioned in Annexure I must be reported to CERT-In “within 6 hours of noticing such incidents or being brought to notice about such incidents”. Item (xviii) is “Attacks or malicious/suspicious activities affecting Cloud computing systems/servers/software/applications”.
What it means for a cloud estate. The clock starts on noticing, not on confirming. Reporting channels are given in the direction itself: incident@cert-in.org.in, phone 1800-11-4949 and fax 1800-11-6969.
Designate a point of contact and keep it current
Direction (iii) with Annexure II
A point of contact must be designated in the Annexure II format and kept updated. The format asks for name, designation, organisation name, office address, email ID, mobile number, office phone and office fax.
What it means for a cloud estate. Note the asymmetry: incidents go to incident@cert-in.org.in, while the point-of-contact form goes to info@cert-in.org.in. Failure to respond when CERT-In orders information is treated as non-compliance.
Synchronise clocks to NIC or NPL
Direction (i), with FAQ Q40 to Q43
ICT system clocks must be synchronised to the NTP server of NIC or NPL, or to servers traceable to these. Entities spanning multiple geographies may use another accurate standard time source, but their time source “shall not deviate from NPL and NIC”.
What it means for a cloud estate. FAQ Q41 and Q42 address multi-geography entities and cloud customers together: customers “have an option to use the native time services offered by the Cloud … or they can also set up their own NTP server”, provided accuracy is maintained. Q40 confirms clocks need not be set to IST, but the time zone must be recorded alongside the time. Q43 gives the hostnames, with CERT-In’s own hedge “currently”: samay1.nic.in, samay2.nic.in and time.nplindia.org.
Register and retain subscriber records for five years — cloud service providers
Direction (v)
Data centres, virtual private server providers, cloud service providers and VPN service providers must register and maintain, for five years or longer as mandated by law, after any cancellation or withdrawal of registration: validated names of subscribers, the period of hire including dates, IP addresses allotted to or being used by members, email address, IP address and time stamp used at the time of registration or onboarding, the purpose for hiring services, validated address and contact numbers, and the ownership pattern of the subscriber.
What it means for a cloud estate. This one binds the provider rather than the tenant — but it is the clause that makes the Indian cloud market’s know-your-customer requests make sense, and it is worth knowing which side of it you are on if you resell capacity.
Verify compliance with the 2022 Directions in every audit
Comprehensive Cyber Security Audit Policy Guidelines, §15.2.1(iv)
§15.2.1(iv) requires that verification of compliance with the Directions of 28 April 2022 be included in every audit assignment, with findings and relevant evidence included in the audit report. The clause is written without naming which party carries the duty, and the guidelines bind empanelled auditing organisations and auditee entities alike under §2.
What it means for a cloud estate. So a cloud audit performed by a CERT-In empanelled organisation should already be checking your log retention, your clock source and your point of contact. If a delivered report is silent on all three, that is a question to ask before you accept it.
Intimate the Data Protection Board and each affected Data Principal
Digital Personal Data Protection Act, 2023, s.8(6)
“In the event of a personal data breach, the Data Fiduciary shall give the Board and each affected Data Principal, intimation of such breach in such form and manner as may be prescribed.” A personal data breach is defined at s.2(u) as “any unauthorised processing of personal data or accidental disclosure, acquisition, sharing, use, alteration, destruction or loss of access to personal data, that compromises the confidentiality, integrity or availability of personal data”.
What it means for a cloud estate. This runs alongside the six-hour CERT-In duty rather than instead of it — two notifications, to two bodies, on two different footings. The intimation is owed by the Data Fiduciary regardless of whose cloud the data sat in: s.8(1) makes the Data Fiduciary responsible for compliance “irrespective of any agreement to the contrary … in respect of any processing undertaken by it or on its behalf by a Data Processor”. Note what the Act does not say: s.8(6) fixes no deadline and no channel — both are “as may be prescribed”, and we assert nothing further than that.
All of the above sit on CERT-In’s own Directions page, which carries the Directions, the FAQ of May 2022 and the extension order of 27 June 2022 together. The Directions themselves state no quantum for non-compliance. They say it “may invite punitive action under sub-section (7) of the section 70B of the IT Act, 2000 and other laws as applicable”. The FAQ’s introduction reproduces that sub-section, which provides for imprisonment up to one year or a fine up to one lakh rupees or both, and Q23 adds that the power “will be exercised reasonably and on occasions when the non-compliance is deliberate”. For the full instrument, see the 2022 Directions explained, and for the agency itself, what CERT-In is.
180 rolling days, and the residency question
Do cloud logs have to be stored in India?
This is the question that most often sends a cloud architect to the wrong region decision, because the answer is in two documents and almost every summary quotes only the first. Direction (iv) is the obligation. FAQ Q35 is the qualification. Read together they say something narrower — and more workable — than direction (iv) alone appears to.
“All service providers, intermediaries, data centres, body corporate and Government organisations shall mandatorily enable logs of all their ICT systems and maintain them securely for a rolling period of 180 days and the same shall be maintained within the Indian jurisdiction. These should be provided to CERT-In along with reporting of any incident or when ordered / directed by CERT-In.”
“The logs may be stored outside India also as long as the obligation to produce logs to CERT-In is adhered to by the entities in a reasonable time.”
The FAQ states its own limitation, and it should be reproduced whenever it is relied on: it “is not a legal document and in no way whatsoever replaces, amends or alters any part of the IT Act, 2000” or the CERT-In Rules, 2013, and it is “an evolving document and hence, the version of this document may undergo changes”. So the sensible reading is not “residency does not matter”. It is that the duty CERT-In has said it will test is production on demand in a reasonable time, and that an architecture which can satisfy that is what the answer has to be built around. If your logs sit in another geography behind a vendor support ticket and a fourteen-day export, you have a residency problem regardless of how the clause is read.
Two more answers in the same FAQ are worth carrying into the design. Q36 states that “any service provider offering services to the users in the country needs to enable and maintain logs and records of financial transactions in Indian jurisdiction”. Q38 tells you who can ask: a requisition for logs “may be given by an officer of CERT-In not below the rank of Deputy Secretary to the Government of India”. And Q20 limits the shape of the demand — the Directions “do not envisage seeking of information by CERT-In from the service providers on continuation basis as a standing arrangement”. Information is sought case to case.
What to log — CERT-In’s own list, and what it means in a cloud estate
Q37 is the closest thing to a specification, and it is deliberately open: “The logs that should be maintained depend on the sector that the organisation is in, such as Firewall logs, Intrusion Prevention Systems logs, SIEM logs, web / database/ mail / FTP / Proxy server logs, Event logs of critical systems, Application logs, ATM switch logs, SSH logs, VPN logs etc.” CERT-In adds that the list “is not exhaustive but has been mentioned to provide flavour of logs to be maintained”, and — the sentence most worth acting on — that “from the incident response and analysis perspective both successful as well as unsuccessful events shall be recorded”.
Translate that into cloud sources and the list is short and concrete: the management-plane audit trail in every account and region, identity and authentication events including failures, network flow logs, load balancer and web application firewall logs, managed database audit logs, object storage access logs for anything holding regulated data, container orchestration audit logs, and the build pipeline’s own record of who deployed what. The unsuccessful-events sentence matters most for the first two — a denied API call and a failed authentication are the earliest signals a cloud estate produces, and they are the ones most often filtered out to reduce cost.
One source belongs on that list and is almost never on it: inference logs, where the estate runs an AI or machine-learning workload. On most managed inference services, invocation logging is off by default, and where it is on it frequently records request metadata without retaining the prompt and the completion. Annexure I item (xx) makes attacks and malicious or suspicious activities affecting artificial-intelligence and machine-learning systems mandatorily reportable within six hours — and the log that would let you describe such an event is exactly the one nobody enabled. Turning it on is a configuration change, but deciding what may be retained, for how long, and under which classification is a data-protection question you should settle before you turn it on rather than after.
One practical test settles the whole section better than any configuration review. Ask somebody to retrieve every management-plane event for a single named day six months ago, from a region you do not normally use, and watch how long it takes. That exercise answers retention, coverage, regional completeness and producibility in one go — and it is the same exercise CERT-In’s own demand would be.
Reporting a cloud incident to CERT-In
Is a cloud security incident reportable to CERT-In within six hours?
Where it falls within Annexure I, yes. Item (xviii) of Annexure I to the Directions of 28 April 2022 is “Attacks or malicious/suspicious activities affecting Cloud computing systems/servers/software/applications”, and direction (ii) requires the twenty Annexure I types to be reported “within 6 hours of noticing such incidents or being brought to notice about such incidents”. Annexure I carries a note referring to Rule 12(1)(a) of the Information Technology (The Indian Computer Emergency Response Team and Manner of Performing Functions and Duties) Rules, 2013.
Note where the clock starts. It runs from noticing, not from confirming, not from completing an investigation, and not from a decision that the incident is material. A cloud estate makes that distinction sharper than an on-premises one, because the first signal is frequently an anomalous management-plane call rather than an outage — something noticed by a detection rule at two in the morning, days before anyone can say what it was.
The FAQ defines one of the two terms in play and not the other, which is worth knowing before an argument about it starts. Q3 gives “cyber security incident” as “any real or suspected adverse event in relation to cyber security that violates an explicitly or implicitly applicable security policy resulting in unauthorised access, denial of service or disruption, unauthorised use of a computer resource for processing or storage of information or changes in data, information without authorisation”. Note suspected, and note that a policy violation is enough — both of which bite earlier in a cloud estate than people expect, because an anomalous management-plane call is a suspected adverse event long before anyone can characterise it. “Cyber incident” is not defined in the FAQ. The Directions point to the IT Act, 2000 and the CERT-In Rules, 2013 for it, and we do not assert a definition for it here.
Q30 of the FAQ is the answer that makes the six hours workable: entities “may provide information to the extent available at the time of reporting. Additional information may be reported later within reasonable time to CERT-In.” The same answer names categories that should be reported within the stipulated six-hour time. Incidents of severe nature such as denial of service, distributed denial of service, intrusion and the spread of computer contaminant including ransomware on any part of the public information infrastructure including backbone network infrastructure. Data breaches or data leaks. Large-scale or most frequent incidents such as intrusion into computer resources and websites. And cyber incidents impacting safety of human beings.
Four things to settle before the day, not on it
Who decides, and from which mailbox does it go?
Direction (ii) gives the channels: email to incident@cert-in.org.in, phone 1800-11-4949, fax 1800-11-6969. Direction (iii) requires a designated point of contact in the Annexure II format, sent to a different address — info@cert-in.org.in — and kept updated. Two addresses, two purposes. Confusing them costs time you do not have.
What does a minimum viable filing look like?
CERT-In publishes an Incident Reporting Form, and the form says of itself that it “provides general guidance in terms of information which could be relevant to the incident” and that “it is not mandatory to fill and/or sign this form” — incidents may be reported by providing relevant information in the communication itself. Draft your version now, while nobody is shouting.
Can the duty be pushed to the provider or the processor?
No. FAQ Q13: “Any entity which notices the cyber security incident, shall report to CERT-In. The obligation of reporting of cyber incident is neither transferrable nor indemnified or dispense with.” Q31 extends the same answer to incidents affecting your data held in a third party’s systems, and Q22 records that the statutory obligation overrides a confidentiality clause in a contract by virtue of section 81 of the IT Act, 2000.
Which Annexure I type is it, and is it more than one?
In our experience a single cloud event is usually described under more than one type: (xviii) for the cloud system itself, (iii) for unauthorised access, (xi) for a data breach, (xii) for a data leak, and (xx) where an AI or machine-learning system is affected. Which types a given incident engages is our reading of the item text, not a CERT-In determination — CERT-In calls the Annexure-I explanations illustrative at Q9, and they are not a reportability test for a fact pattern. You are not choosing between them. You are describing what happened. The form has a checkbox list and an “Other” field for exactly this reason.
Two silences are worth naming rather than filling. The FAQ says nothing about filing out of hours or on a public holiday, and nothing about withdrawing or correcting a report already made. Anyone who tells you the rule on either is inventing it. Q30’s “additional information may be reported later” is the closest thing available, and it supports correcting forward on the same thread — which is a reading, and is labelled as one here. For the AI-specific side of the same Annexure, see AI incidents under CERT-In.
What the evidence actually looks like
How do you prove a cloud control is working?
A control you cannot evidence is an intention. The useful property of a cloud estate is that almost every control can be evidenced from the provider’s own API as a dated export, which is stronger than a screenshot and far stronger than an assertion. CERT-In’s audit policy guidelines ask for exactly this at §18(iii): all observations “well supported with objective evidences”, compiled with the report and presented so that decision makers can use them in making credible risk-based decisions.
| The claim | What settles it | What does not |
|---|---|---|
| “Public access to storage is blocked.” | The organisation-level or account-level setting that denies public access, exported with a date, plus a listing of every container and object policy that grants a public principal — which should be empty, or should be a named exception list with owners. | A screenshot of one bucket’s settings page. It proves one bucket on one day, and the finding is almost never in the bucket somebody thought to check. |
| “We use least privilege.” | An export of every principal with administrative permissions and the date of the last review. Last-used timestamps for roles and keys. At least one worked example of a permission narrowed against observed usage rather than against a guess. | A policy document saying least privilege is the standard. Nobody has ever failed a review for not having the document. |
| “All access is multi-factor.” | An export from the identity provider showing enrolment state for every human principal with console or API access, including the root or global administrator, plus evidence that any bypass group is empty or named. | A statement that multi-factor is enforced by policy, with no export. Policy and enforcement diverge precisely at the accounts that matter — the ones created before the policy existed. |
| “Everything is encrypted.” | A data-store inventory with the encryption state, the key custody model and the region against each row. The key policy for at least one customer-managed key showing who can use it and who can delete it. The rotation record. | A blanket assertion. It is almost always true of the primary stores and almost always untrue of one backup, one export, one queue or one log bucket. |
| “We retain 180 days of logs.” | The retention configuration for each log destination. Proof that the audit trail is enabled in every region and every account. And — the test that actually settles it — a specific day’s events retrieved from six months ago while someone watches. | The retention setting on one log group. Retention configured on one destination says nothing about the regions where logging was never enabled at all. |
| “Changes are reviewed.” | A sample of infrastructure changes traced from a ticket to a pull request to an approval to a pipeline run to the resulting change in the audit trail, plus the list of identities that can change infrastructure outside that path. | The existence of a pipeline. If the console can still be used for change and several people have the permissions to do it, the pipeline is a preference, not a control. |
| “Our provider is certified, so this layer is covered.” | The provider’s assurance report, read for its scope: which services, which regions, which period, and what the report itself puts on the customer’s side of the line. | A logo on a web page. A certification without a scope statement tells you nothing about whether the service you are using in the region you are in was in it. |
Where a finding does make it into a report, the Indian instruments are specific about how it should be expressed. §16.2(ii) requires severity to be scored with CVSS and supplemented with EPSS for real-world exploitation likelihood, and requires every reported observation to be mapped to a CWE and a CVE number. Worth knowing for a cloud review: a misconfiguration usually has a CWE and frequently has no CVE, because there is no vendor product flaw to enumerate — and a report that handles that honestly, rather than by inventing an identifier, is telling you something good about itself. The numeric severity bands belong to the CVSS specification, not to CERT-In, and EPSS is a daily-recomputed probability, so a value printed in a report needs the date it was pulled. There is a fuller treatment in reading a VAPT report.
How a cloud misconfiguration is actually scored
How do you assign a CVSS score to a cloud misconfiguration?
This is the part everyone skips, including us until now. §16.2(ii) requires severity to be scored on CVSS and supplemented with EPSS, and requires every observation to be mapped to a CWE and a CVE number. CVSS assumes an attacker, an attack vector and a vulnerable component. A world-readable bucket has none of the three in the ordinary sense, so two competent auditors will hand you two different numbers for the same finding, and the difference will not be carelessness — it will be a disagreement about two metrics that are genuinely contestable here: scope, and privileges required.
The table below takes four findings this page has already used and scores them. The vectors are TCSA’s reading, stated so you can disagree with them precisely rather than generally, while the metric definitions and the severity bands are FIRST’s, published in the CVSS v3.1 specification, and not CERT-In’s. §16.2(ii) pins no CVSS version, so a report using v4.0 is equally compliant — it simply has to say which it used, which the vector prefix does for it.
| The finding | A defensible base vector | The metric that is genuinely contestable | What happens to EPSS |
|---|---|---|---|
| Object storage holding regulated data, readable without credentials | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N | Scope. An argument is available that reading a tenant’s data through a provider-operated storage service crosses a security authority boundary and should be S:C, which raises the score materially. We score it S:U, on the view that the data and the storage service sit under the same tenant authority. State which view you took. Two auditors who do not will hand you two different numbers for the same bucket. | No CVE, therefore no EPSS value. That is not a gap in the report — FIRST’s own FAQ says scoring a finding with no CVE ID at all is a longer-term direction. It does mean you cannot sequence this finding on exploitation probability, so it has to be sequenced on data classification instead. |
| A role with wildcard administrative permissions, assumable from an external account with no external identifier | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H | Privileges required. PR:N is right only if the trust policy really admits any principal in any account. Where it names a specific external account, the attacker needs a foothold there first and PR:L is arguable. The scope metric is the one that is not contestable here: an assumed role changes the security authority under which subsequent calls run, which is what S:C describes. | No CVE, no EPSS. The compensating measure worth reporting instead is the last-used timestamp on the role, which is a fact rather than a probability and is more useful to a remediation queue than a modelled score would be. |
| A long-lived static key in a build pipeline’s variable set, with permissions to deploy infrastructure | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H | Privileges required, again, and for a reason worth stating: the answer depends on who can read the pipeline’s variable set, which is a question about your source-control tenancy rather than about your cloud. Where that list is wide, PR:L is generous. Score it after you have run the query, not before. | No CVE. Where the same estate also has a CVE-bearing finding, the honest ordering is to put the EPSS-scored items and the non-scored items in one list ranked on your own judgement, and to say in the report that you did so — rather than to let the scored items float to the top because they have a number attached. |
| No audit trail in a region that holds resources | CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:U/C:N/I:N/A:N | Everything, which is the point. CVSS measures the impact of exploiting a vulnerability, and a missing log is not exploitable — it has no confidentiality, integrity or availability impact of its own, so a mechanical scoring produces 0.0. Scoring it low and leaving it there is how this finding gets deprioritised in every report it appears in. The defensible handling is to report it as a non-conformity against direction (iv) rather than as a scored vulnerability, and to say so in the report. | Not applicable. This is the clearest case on the page for why §16.2(ii)’s scoring apparatus is a floor rather than a method: a finding that scores zero and is the reason you cannot answer a regulator needs a different column, not a smaller number. |
Three things follow from that table and are worth saying plainly. First, a cloud finding with no CVE has no EPSS value, and FIRST says as much: scoring a vulnerability with no CVE identifier at all is described as a longer-term direction for the model rather than something it does today. A report that leaves the EPSS column empty for a misconfiguration is being accurate, not lazy. Second, since EPSS is recomputed daily, any value that does appear is a snapshot and needs the date it was pulled printed beside it. Third, and most consequential: §16.3(iii) requires the report to state closure timelines according to severity, and that is the entire clause. It fixes no number of days for any band, so a day count in a report is the auditor’s proposal or your own policy — never CERT-In’s, whatever the covering note says. There is a fuller treatment of all of this in reading a VAPT report.
Eleven artefacts a cloud review leaves behind, and the clause behind each
What should a cloud security audit report contain?
§16.1(ii) sets the contents in one sentence: the report “should be clear, precise and comprehensive to include all details of audit process, detailed scope, duration of audit, methodologies/standard used, tools, manual process, findings, prioritization, sampling decisions, manpower involved, exemptions, limitations and other constraints”. The rest of the instrument fills that out. The table below names each artefact, its locator and what it costs you when it is absent, so you can ask for them by name instead of by adjective.
Note the modality, because it decides how hard you can push. Where a clause says must or shall, it is written below as a requirement. Where it says should — and several of the most useful ones do — it is written as what the instrument expects. Nobody is helped by a page that upgrades a recommendation into a rule, least of all in a conversation with the supplier who has read the same document.
| Artefact | Locator | What the clause says | What its absence costs you |
|---|---|---|---|
| The engagement letter the terms are recorded in | §14.1(ii), §14.2 | The agreed terms “must be formally documented in an audit engagement letter”, reviewed and signed by authorised representatives of both organisations and serving as “a binding reference point throughout the engagement”. §14.2 requires a scope revision to be made in writing with justification, assessed by both parties for its effect on timelines, resources and deliverables, approved by authorised representatives and documented as an addendum or formal amendment. | In a cloud engagement scope revision is not an edge case — a new account or a new region turns up in most of them. Without the addendum mechanism agreed in advance, the discovery becomes a conversation about the invoice rather than about the estate. |
| The account and region list as actually tested, with the inventory’s as-of date | §13.1.1(c), §13.2.3(ii)(b), §16.1(iii) | The scope must be derived from the consolidated and updated asset inventory. The date to which that inventory was updated must be reflected in the audit reports. All assets provided in scope by the auditee must be mentioned in the report. | A report that names the provider but not the accounts covers whatever the tester happened to reach. Six months later nobody — including the tester — can say whether the region you are now worried about was in it. |
| The environment, named | §15.2.3(i) | The auditing organisation “must clearly specify the environment such as Test, Development, UAT, Pre-Production, or Production, in which the application has been tested”. Note the “such as”: the list is open, and a cloud estate frequently has environments that do not map onto those five words. | Cloud non-production environments differ from production in exactly the places that produce findings — guardrails off, logging thinner, broader access, wider network ranges. An unnamed environment lets a clean result describe an estate that is not the one serving customers. |
| A test plan in man-hours as well as calendar time | §13.2.2(ii) | “The test plan shared by auditing organization must include both calendar time and man-hours.” | The most useful commercial check available. Divide the man-hours by accounts multiplied by surfaces and you have what each surface is actually getting. A three-week window says nothing on its own. |
| The tool list, with the controlled-test results you approved | §13.2.2(iii), §13.2.2(iv) | A list of tools with written confirmation of intellectual-property and licensing status. The auditing organisation “must have a thorough understanding of the tools they use, including their origin and functionality”, with tools “tested in a controlled test environment prior to deployment on the auditee’s systems” and the results “formally reviewed and approved by an authorized representative of the auditee organization”. | In cloud this bites harder than on a network test, because a posture tool is generally given a read role across the whole estate. You are approving a principal, not just a binary — ask what permissions it needs and why each one. |
| The provider-operated layer named as an express exclusion, and anything in scope that could not be reached | §10.1(ii) | Where an in-scope asset could not be accessed, the auditor should promptly inform the auditee and request resolution, and if it remains unresolved must name it in the report with reasons — and the same “must be brought to the notice of CERT-In”. | Two different things end up in the same silence: the layer that was never testable because the provider’s terms forbid it, and the account somebody forgot to issue credentials for. The first is a boundary, the second is a gap, and a report that distinguishes them is worth more than one that does not. |
| The verification record — who checked the work, and what changed | §15.2.5(iii), §9.5(iii) | §15.2.5(iii) says the auditing organisation should implement the maker-checker concept, with a separate verification team deployed to review and validate the audit team’s work. §9.5(iii) then fixes the signature chain: reports signed only by manpower declared to CERT-In, by the auditors who conducted the audit, reviewed and signed by a designated reviewer from mid-management who is not part of the audit team, and finally authorised and signed by the head of the auditing organisation. | One layer of assurance where the instruments contemplate two. The signature block is the visible half. The verification record is the half you have to ask for. |
| Findings scored, mapped and sequenced | §16.2(ii), §16.3(iii) | §16.2(ii) requires both CVSS and EPSS to be implemented in the report, requires observations to be categorised on CVSS for severity and supplemented with EPSS, and requires every reported observation to be mapped to a CWE and a CVE number. §16.3(iii) says the report should mention appropriate timelines for closure according to severity — and that is the whole clause: it fixes no number of days for any band, so a day count printed in a report is the auditor’s or yours, never CERT-In’s. | For cloud specifically, see the scoring table above: most misconfiguration findings carry a CWE and no CVE, and a report that says so plainly is more trustworthy than one that invents an identifier to fill the column. |
| The follow-up audit and what it verified | §9.3(iv), §16.3(iv), §16.3(v) | §9.3(iv) says follow-up audits should be included within the scope or RFP proposal and must be conducted by the auditing organisation after closure of the issues identified. §16.3(iv) says follow-up audits should be performed after remediation to verify closure of the vulnerabilities and non-conformities highlighted previously. §16.3(v) says the final report should be issued after closure and the production follow-up audit — and where the scope was limited to staging, the report must state expressly that the audit was not conducted on the production environment. | Closure asserted by the party that did the remediation is a claim. In cloud it is a particularly weak one, because a configuration can be changed back in a single API call between the fix and the verification. |
| A record of how the report and the evidence travelled, and where they live now | §16.5, §13.2.5, §10.3 | §16.5 restricts delivery to official email IDs, to the specified point of contact, with password protection or encryption, and requires all delivery channels to be end to end confidential. §13.2.5 expects a distribution list of official email IDs obtained before distribution and a mobile number collected for sharing the report password separately. §10.3 requires auditee data to be stored only on systems located in India, encrypted on auditor devices, wiped beyond forensic recovery with a certificate of deletion issued formally to the auditee — and sets a default retention of one year from completion where the agreement is silent at §10.3(vi). | This matters more in cloud than anywhere else, because the evidence is console captures and configuration exports from a control plane that may run offshore. CERT-In’s 2014 data-handling guidelines add the specific rule people break by accident: an audit report “should not be shared / hosted on online internet file services, online sharing platforms and cloud services, unless the service is under technical and administrative control of the auditing organization or as specifically authorized by the auditee”. |
| The working notes and the evidence appendix | §18(i), §18(iv), §18(v) | Auditee organisations must seek the working notes on completion, with provisions for that in the audit contract, and should ask for the evidence collected to be supplied as an appendix to the final report. Evidence must be stored securely with restricted access. Where you ask for clarification or justification of any evidence, the auditor must respond within a mutually agreed timeframe. | For a cloud review the appendix is unusually useful, because almost all of it is dated API output. It is the difference between a report you can re-run against next quarter’s estate and one you can only re-read. |
The last row is the one that behaves differently in cloud than anywhere else, and it is worth a sentence on its own. On a network or application engagement the evidence is produced inside your estate. On a cloud engagement almost all of it is produced in somebody else’s console: screenshots of an offshore control plane, configuration exports pulled from a provider API, log extracts from a platform that may have no Indian region at all. §10.3 requires that material to be stored only on systems located in India and encrypted on auditor devices, and the 2014 data-handling guidelines add that a report should not be hosted on an online file service outside the auditing organisation’s own technical and administrative control without your authorisation. Where a log platform genuinely cannot export to Indian storage, that is a limitation to record in the report under §16.1(ii), not a problem to solve by uploading it somewhere convenient. The rules of engagement side of this is set out at length in what a CERT-In empanelled auditor may do.
How to secure a cloud estate that already exists
Where do you start with cloud security?
Almost nobody starts from an empty account. The order below assumes an estate that grew organically and now needs to be brought under control, and it is ordered by dependency rather than by effort: each step makes the next one cheaper, and doing them out of order means doing several of them twice.
Enumerate the estate from the API, not from memory
List every account, subscription or project, every region with resources in it, and every managed service in use. The output is a dated inventory. CERT-In’s audit policy guidelines require an audit scope to be derived from a consolidated and updated asset inventory (§13.1.1(c)) and require the as-of date of that inventory to be reflected in the report (§13.2.3(ii)(b)), which makes this the first step rather than a preliminary.
Draw the responsibility line per service, in writing
For each managed service, record what the provider operates, what you configure and what you cannot see. Do it per service rather than per provider, because the line moves between IaaS, PaaS and SaaS and sometimes between two services from the same vendor.
Fix the identity baseline before anything else
Federate human access to one identity provider with multi-factor authentication, remove static keys for humans, seal and monitor the root or global administrator, and establish that joiner-mover-leaver actually reaches the cloud directory. Nothing further is worth doing while any principal can quietly re-create what you are about to fix.
Establish the guardrails a member account cannot switch off
Organisation-level deny policies for disabling the audit trail, for public object storage and for unapproved regions. Then attempt to break one from inside a member account as part of the review, because an untested guardrail is a policy document.
Turn logging on everywhere and send it somewhere the logged cannot reach
Audit trail in every account and every region, flow logs where they are affordable, delivered into a log archive account whose administrators are not the identities being recorded, with object lock or its equivalent. This is also the step that answers direction (iv) of the 2022 Directions, which requires logs of all ICT systems to be maintained for a rolling period of 180 days within Indian jurisdiction.
Close the network exposure list
Produce the list of every publicly reachable address and port from the provider’s API, put an owner against each, and delete what nobody claims. Add egress control, which is the half most estates skip and the half that matters during an incident.
Classify the data and decide key custody per store
Classification first, then encryption state, region and key custody model per data store. Record which stores use provider-managed keys and which use customer-managed keys, because the answer changes who can make the data unreadable and who can make it unavailable.
Put the build pipeline inside the security boundary
The pipeline holds the credentials that can rebuild the estate. Scope its identity, its permissions, its secrets and its approval gates as a production system, because that is what it is.
Test it, with the scope written down first
A cloud security review covers configuration, identity and the management plane as well as the application. CERT-In’s guidelines list Cloud Security Testing as its own class of engagement at §6(xviii) — “evaluating and assessing the security measures, configurations, and vulnerabilities of cloud-based systems, applications, and infrastructures” — and §8(ii) names the CSA Cloud Controls Matrix as a framework to build the programme from. Note also that the provider’s acceptable-use terms bound what may be tested at all.
Remediate, then have closure verified by someone who did not do the fixing
The auditee owns patching and correction (§9.3(iii)). The auditing organisation verifies closure in a follow-up audit (§16.3(iv)). Closure asserted by the party that did the remediation is a claim, not evidence.
Rehearse the six-hour path before you need it
Who notices, who decides it is reportable, who files, and from which mailbox. Annexure I item (xviii) makes attacks affecting cloud systems mandatorily reportable within six hours of noticing, and FAQ Q30 confirms that entities “may provide information to the extent available at the time of reporting” with more to follow. A rehearsal that takes four hours on a quiet afternoon will take longer on the day.
Re-run it on a cadence and after every major change
§13.1.2(i) of the audit policy guidelines states the audit should be conducted at least once a year and §13.1.2(ii) treats that as a minimum. §13.1.2(iii) requires every change to be classified Minor or Major, with a Major Change — defined by risk rather than size, and expressly including “configuration adjustments that affect sensitive data or critical infrastructure” — audited before implementation. In a cloud estate that definition catches changes a release process would not even flag.
One incident, traced through the five planes
The following example is invented for this page. It is not a client, it is not a sector, it describes no engagement TCSA has performed, and it makes no claim about outcomes. It exists to show how a single mundane decision moves through the control planes, because that sequence is the argument of this page and it is easier to see than to assert.
Imagine an engineering team asked to deliver a reporting feature. They need production-shaped data for the queries, so somebody exports a table into an object storage bucket in a development account. To make the export work from the pipeline they attach a broad managed policy to the deployment role — the narrow one was going to take an afternoon to derive and the release was Thursday. The bucket is created in a region the team finds convenient and nobody else uses. The export script needs credentials, so an access key is created and stored in the pipeline’s variables. The feature ships. Everyone moves on.
Nothing in that sequence is negligent and nothing in it is unusual. But trace it through the planes and count the decisions that are now permanent. On the data plane, regulated data now exists in a second account that was never classified, never inventoried, and is outside whatever retention rule the primary store has. On the identity plane, a deployment role holds permissions far beyond its job, and a static key exists that has no expiry and no owner. On the network plane, the bucket’s exposure depends entirely on policy, because object storage has no network position to hide behind. On the management plane, the pipeline that holds the key is now a principal that can deploy infrastructure, authenticated by a value in a repository setting. And on the logging side, the new region has no audit trail, because the audit trail was enabled where the estate started and nobody made it organisation-wide.
Now suppose the key leaks — from a laptop, from a fork of the repository, from a log line that printed an environment variable. The attacker does not need to traverse anything. They call the management plane with a valid credential, enumerate what the role can reach, and read the bucket. There is no firewall event, no intrusion signature, and no application log entry, because no application was involved. And in the region concerned there is no audit trail either, so the question “what did they access, and when” has no answer available.
That last sentence is where the Indian obligations arrive. Direction (iv) required logs of all ICT systems for a rolling period of 180 days, and the region with no audit trail is a gap in that, and it is discovered on the worst possible day. Direction (ii) with Annexure I item (xviii) requires reporting within six hours of noticing — and items (iii), (xi) and (xii) would on our reading also be described, on the same clock. That last sentence is our reading of the item text rather than a CERT-In determination: CERT-In calls the Annexure-I explanations illustrative at Q9, and they are not a reportability test for a fact pattern. CERT-In may then order the logs, and the ones that would answer the question do not exist. Note what would have changed the outcome: not a product, and not a larger budget. An organisation-wide audit trail, a permission boundary above roles a team can create, a guardrail denying unapproved regions, and federation instead of a static key. Four configuration decisions, none of which anybody would call a security investment, and all four sit above the provider’s line.
Twelve ways a cloud security programme goes wrong
None of these is exotic. They are all structural, which means they can all be checked for deliberately rather than discovered — so each one carries the query that finds it and the first thing to do in the hour after you do. The list is TCSA’s own reading of what cloud reviews keep surfacing, stated as patterns and not as frequencies. We publish no percentage for any of them, for the reason given further up this page: no defensible number exists, and one invented for emphasis would be the least trustworthy thing here.
The scope stops at the application
A web application test against a cloud-hosted product tells you about the application. It does not look at the identity model, the network exposure of anything other than the tested hostname, the storage policies, or the management plane. Buying one and believing you have bought a cloud review is a scoping error we see repeatedly, and it is usually the buyer’s own wording that caused it.
How to find it
Open the last report and search it for three words: role, bucket and region. If none of the three appears outside a hostname, the engagement was an application test.
First thing to do
Do not re-procure yet. Write the four sentences that were missing from the last scope — accounts, regions, identity model, management plane — and send them to the same supplier as a variation enquiry. The reply tells you whether they can do the work.
The inventory is a diagram
Architecture drawings describe intent. Estates drift, sandboxes become production, a team opens an account on a corporate card, a region gets used for one experiment and keeps a database. The only inventory worth scoping from is one produced from the provider’s API on a stated date — which is exactly what §13.1.1(c) and §13.2.3(ii)(b) of the audit policy guidelines require.
How to find it
List every account, subscription or project under the organisation, then list every region holding at least one resource in each. Diff that against the diagram and against the billing export, which will name accounts the diagram never knew about.
First thing to do
Put a date on the API-derived list and make it the scoping artefact from that day. Send the diagram to the same folder as last year’s tender annexure.
Logging is enabled in one region
Most audit trails are per-region until you deliberately make them organisation-wide. An estate that started in one region and grew into three has three-quarters of a record. It is discovered during an incident, which is the worst possible moment and the only moment anyone looks.
How to find it
Two lists and a diff: every region with at least one resource, and every region with an active audit trail. The regions in the first list and not the second are the answer, and they are usually the ones nobody named in a meeting.
First thing to do
Turn on an organisation-wide multi-region trail today rather than enabling the missing regions one at a time, because the one-at-a-time version has to be repeated the next time the estate grows.
The log archive lives where the logged identities can reach it
An audit trail delivered into the same account it audits, writable by that account’s administrators, is evidence only until it is inconvenient. Separate the account, restrict deletion, and check who can change the retention setting as well as who can delete the object.
How to find it
Read the delivery destination’s resource policy and list every principal with a delete or a retention-change permission on it. Then ask which of those principals also exists in the workload account being audited.
First thing to do
Move the destination to a dedicated log archive account before you tune anything. Object lock with a retention period comes second. An archive in the right account with no lock beats a locked archive the audited administrators own.
Non-production holds production data
A realistic test dataset is a copy of regulated data in an environment with weaker controls, broader access and no retention discipline. It also breaks the classification work, because the classification was recorded against the primary store and the copy inherited none of it.
How to find it
List every data store outside the production account with a classification tag against it — and then list the ones with no classification tag at all. The second list is the answer, because nobody labels a copy they were not supposed to make.
First thing to do
Do not start with deletion, start with a read: sample the largest unclassified store in the largest non-production account. If it holds regulated fields, that single answer is what funds the rest of the work.
Static keys accumulate faster than they are removed
Every integration adds one. Nothing removes them. The estate ends up with credentials whose owners have left, whose purposes are undocumented, and whose age nobody measures.
How to find it
List every access key with its creation date and its last-used date, sorted oldest first. Both fields are queryable. Two categories matter: keys older than your credential-rotation policy, and keys never used at all, which are pure liability with no offsetting function.
First thing to do
Deactivate — do not delete — the never-used keys first. Deactivation is reversible and tells you within a week whether anything depended on them. Deletion starts an outage conversation you did not need to have.
The build pipeline is outside the boundary
A pipeline with permissions to deploy infrastructure is a principal with permissions to deploy infrastructure, and it is almost never named in an asset inventory because it is not a server. Its deploy role is frequently broader than any human role in the estate.
How to find it
Two queries. Who can read the pipeline’s secret store or its variable set — that list is your real administrator list. And does the estate’s audit trail contain the pipeline’s identity at all? If you cannot find its calls, the most privileged principal you own is also the least observed.
First thing to do
Before re-scoping its permissions, make it visible: give the pipeline a dedicated cloud identity per environment so its calls are attributable, then narrow against what the audit trail shows it actually did.
Guardrails are written but never tested from below
An organisation-level deny that has never been tested from inside a member account is an assumption. Test it as part of the review: attempt to disable the audit trail, attempt to make a bucket public, attempt to deploy in an unapproved region. Three attempts, three answers.
How to find it
The test is the detection. Run the three attempts from a principal in a member account, not from the management account, because the management account is frequently exempt from the policies it sets and will give you a false pass.
First thing to do
Record each attempt with its timestamp and its denial message. That record is the evidence the guardrail exists. The policy document is not.
Encryption is asserted estate-wide and true store-wise
The primary databases are encrypted. The finding is the export bucket, the message queue, the search index, the backup in the second account, or the log bucket. Encryption is a per-store fact, and the inventory is what turns it into an answer.
How to find it
Enumerate every storage-capable service, not every storage service you remember: object stores, block volumes, snapshots, managed databases, queues, topics, search indices, caches, data warehouses and log destinations. Report encryption state and key custody per resource. The exceptions cluster in the services nobody calls storage.
First thing to do
Fix the key-custody record before the encryption state. Knowing which stores are on provider-managed keys and which on customer-managed keys is what makes the remediation list orderable.
The provider’s certification is read as covering the tenant
A provider’s assurance report covers the provider’s scope, in the regions and for the period it names, and it will usually state in terms what remains the customer’s. Your configuration, your identities, your data placement and your tenant settings were never in it.
How to find it
Take the report’s scope section and the region list from your own API side by side. Any region or service you use that the scope does not name is uncovered, and the gap is usually the newest region.
First thing to do
Extract the report’s own customer-responsibility section into a list with an owner against each line. That list is the honest version of what the certificate bought you.
Nobody has rehearsed the six-hour path
The obligation under direction (ii) is to report within six hours of noticing. Most organisations discover on the day that they do not know who decides, who files, from which mailbox, or what the minimum viable filing looks like. FAQ Q30 helps — report what is available and follow up — but only if somebody already knows that is allowed.
How to find it
Ask three people separately who files, from which mailbox, and where the draft text is. Three different answers, or three hesitations, is the finding.
First thing to do
Write the draft filing today against an invented scenario and store it where the on-call rota can reach it. A blank page at hour two is what turns a six-hour duty into a nine-hour one.
Residency is decided for the database and forgotten for everything else
The primary store is in an Indian region and the backups replicate elsewhere, the logs go to a global service, and a managed feature quietly processes in another geography. Produce the region list from the API, compare it against the approved list, and read direction (iv) alongside FAQ Q35 before deciding what the answer needs to be.
How to find it
Go past the region list to the replication configuration: cross-region snapshot copies, bucket replication rules, managed-service global endpoints, and any analytics or observability product with a single global ingest region. Each of those moves data without appearing as a resource in a second region.
First thing to do
Write down, for each store, where the data is and how fast you could produce six months of it. Q35 makes producibility the thing you have to be able to answer. The region list alone does not answer it.
Six situations that break the general pattern
The shared responsibility diagram answers the common case. These six are the ones where it does not, and each has a specific instrument or a specific answer behind it.
You are the cloud service provider
If you sell capacity, hosting or a virtual private server product, direction (v) of the 2022 Directions binds you directly: validated subscriber names, the period of hire with dates, IP addresses allotted, the email address, IP address and time stamp used at onboarding, the purpose for hiring, validated address and contact numbers, and the ownership pattern — maintained for five years or longer as mandated by law, after any cancellation or withdrawal of registration. The extension order of 27 June 2022 moved the validation limbs at (v)(a) and (v)(f) to 25 September 2022 for data centres, virtual private server providers, cloud service providers and VPN service providers.
Your customer is an Indian Government department
Then GIGW applies to the website or application and it reaches the hosting environment explicitly. Guideline 5.3.2 of the GIGW 3.0 manual is “Hosting Environment has been secured for ensuring confidentiality, integrity and availability (CIA)”, and its government-organisation action includes ensuring “the hosting of the web infrastructure within geographical boundaries of India”, a hardened and patched server estate with periodic vulnerability assessment and penetration testing, a web application firewall available on demand, a disaster-recovery drill at least once a year, and — stated in GIGW’s own words — enabling and maintaining logs of the ICT infrastructure “for a rolling period of 180 days as per CERT-In directions”. It also asks that containerised environments be secured where applicable, with a long list that runs from image provenance to network policy and secret management.
The incident happened in a third party’s cloud, not yours
FAQ Q31 addresses this directly: the Directions “are applicable to all entities in so far as reporting of a cyber incident is concerned”, in answer to a question about data stored in a third party’s systems. Q13 removes the other escape route: “Any entity which notices the cyber security incident, shall report to CERT-In. The obligation of reporting of cyber incident is neither transferrable nor indemnified or dispense with.” A processor’s contract can allocate work. It cannot allocate the duty away.
You want to penetration-test your provider
You cannot, below your own line, and the provider’s acceptable-use terms are where the boundary is written. What is testable is everything you configure: identities, network exposure, storage policies, workloads, the application and the management plane as you have set it up. Write the out-of-scope layer into the scope of work as an explicit exclusion — CERT-In’s guidelines require inaccessible in-scope assets to be named in the report with reasons under §10.1(ii), and it is better to have named the boundary up front than to have it appear as a limitation at the end.
Your workload is an AI or machine-learning system running in the cloud
Two Annexure I types are in play. Item (xviii) covers attacks affecting cloud computing systems, and item (xx) covers attacks and malicious or suspicious activities affecting systems, servers, software and applications related to artificial intelligence and machine learning. Both are mandatorily reportable within six hours. That a particular incident should be described under both is our reading of the item text rather than a CERT-In determination — CERT-In calls the Annexure-I explanations illustrative at Q9, and they are not a reportability test for a fact pattern. What is worth saying concretely is what a six-hour filing needs from a non-deterministic system, because the ordinary evidence vocabulary does not fit it. The model version or, where the service exposes one, the snapshot identifier in force at the time. The decoding parameters, including temperature and the seed where a seed exists. The captured prompt and response pair, which on most managed inference services is not retained unless somebody turned invocation logging on. A reproduction rate over a stated number of attempts, because “it did it once” and “it does it four times in ten” are different filings. The 180-day log duty reaches this workload like any other, and the log that would answer CERT-In’s question is precisely the one that is off by default. For the method behind those figures see our page on red-teaming an LLM application. The cloud control planes on this page are the substrate underneath it.
A corporate VPN is not a “VPN service provider”
Worth stating because the confusion is widespread in cloud estates that terminate site-to-site tunnels. FAQ Q34 answers no: “For the purpose of this direction, VPN Service provider refer to an entity that provide ‘Internet proxy like services’ through the use of VPN technologies, standard or proprietary, to general Internet subscribers/users.” An enterprise VPN for your own staff is not that.
What the CSA Cloud Controls Matrix actually contains
What is the CSA Cloud Controls Matrix, and what does it cover?
This page has told you several times to name the CSA Cloud Controls Matrix in a scope of work, because §8(ii) of CERT-In’s 2025 audit policy guidelines names it — “CSA Cloud Controls Matrix (CCM) for Cloud Security” — among the comprehensive standards an audit should be built from, in the same clause that says limited lists such as the OWASP Top 10 and SANS Top 25 “should not be considered as standards or references for audits”. Telling you to name it without saying what it is leaves you with a word to put in a contract and no way to tell whether you got it. So here is what it is.
The Cloud Controls Matrix is published by the Cloud Security Alliance, which is not a Government of India body and is not CERT-In. It appears here because §8(ii) names it by title. The version, the control count and the domain count below were read off CSA’s own research page on 22 September 2026, which gave version 4.1 as the current release of the CCM and CAIQ combined. That page prints no release date on its face, so we state the version with the date we checked it and no more.
| The part | What it is | What to do with it |
|---|---|---|
| The control set | CSA describes the CCM as “a cybersecurity control framework for cloud computing … composed of 197 control objectives that are structured in 17 domains covering all key aspects of cloud technology”. The domains are Audit & Assurance, Application & Interface Security, Business Continuity Management & Operational Resilience, Change Control & Configuration Management, Cryptography Encryption & Key Management, Datacenter Security, Data Security & Privacy, Governance Risk Management & Compliance, Human Resources Security, Identity & Access Management, Interoperability & Portability, Infrastructure & Virtualization Security, Logging & Monitoring, Security Incident Management E-Discovery & Cloud Forensics, Supply Chain Management Transparency & Accountability, Threat & Vulnerability Management, and Universal Endpoint Management. | This is what “built from the CCM” has to mean in a scope of work: coverage stated by domain, with the domains you have excluded named as exclusions rather than left silent. |
| The responsibility column | The CCM “provides guidance on which security controls should be implemented by which actor within the cloud supply chain”, and CSA describes it as defining “the security roles between CSPs and customers, helping you clearly understand and assign responsibilities”. | This is the artefact form of the argument the first third of this page makes in prose. “Draw the responsibility line per service, in writing” stops being advice and becomes a named deliverable: a CCM-based split with each control assigned to the provider, to you, or shared — and the shared ones written out, because shared is where the gaps live. |
| The CAIQ | The Consensus Assessments Initiative Questionnaire is the questionnaire form of the same control set — CSA describes it as “built into the CCM”, offering “a simple set of ‘yes/no’ questions to assess cloud providers”. CSA publishes CCM and CAIQ together, and the research page states that version 4.1 of the two is now combined. | This is the thing you actually send to a vendor, and the thing a vendor may already have published. Asking a SaaS supplier for its CAIQ is a smaller ask than asking for an assurance report and it is answerable in a week — and where one already exists, reading it is free. |
| The guidance that ships with it | The download carries more than the matrix. CSA publishes Implementation Guidelines providing “structured guidance on how to use the CCM” with detailed instructions per control on what the cloud provider should do and, in certain cases, the customer. It also publishes Auditing Guidelines giving “a baseline understanding of the CCM audit areas”, and a machine-readable release of the controls, the CAIQ, the implementation guidelines and the mappings, in JSON, YAML and OSCAL. | The machine-readable release is the part worth knowing about commercially, because it is what lets a supplier show coverage as data rather than as a paragraph, and what lets you diff this year’s coverage against last year’s. |
| What it is not | The CCM is a control framework, not a testing methodology and not a certification. CSA describes it as aligned to its own Security Guidance for Cloud Computing and as a de-facto standard for cloud security assurance and compliance, and operates a separate registry programme on top of it. It is also licensed: CSA states that a licence is required to customise the CCM or to use it commercially, and not required for internal use. | So a proposal that names the CCM has told you its criteria, not its method. Ask for both. And if a supplier is selling you a CCM-based product rather than using it internally, the licensing position is a fair question. |
The second row is the one that closes the loop on this whole page. The argument of the first third — that cloud security turns on being able to draw the responsibility line per service, in writing — is an argument for a deliverable, and the CCM is the shape that deliverable already has. A responsibility split written against a named control framework, with each control assigned to the provider, to you, or to both, is something a customer can review, a regulator can read and next year’s team can inherit. The same split written as a paragraph in a slide deck is a memory. If you want the assurance-report side of the same question, our pages on cloud provider SOC 2 and shared responsibility and CUECs and CSOCs cover what a provider’s report hands back to you.
One caution about how the clause is worded, because it matters commercially. §8(ii) does not say the CCM is the only acceptable framework. It lists it alongside ISO/IEC standards, the Cyber Security Audit Baseline Requirements, OSSTMM3 and the OWASP guides, and the list is prefaced by the instruction that audits should discover all known vulnerabilities against comprehensive frameworks rather than limited lists. A supplier proposing a different comprehensive framework has not failed the clause. A supplier proposing a ten-item defect list as the audit criterion has.
What actually drives the cost of a cloud security review
How much does a cloud security audit cost in India?
No figures on this page, and that is a position rather than an evasion. A price quoted against an undefined cloud estate is a number attached to nothing, and the argument of everything above is that the scope is what decides whether the result is worth having. What is useful is the arithmetic. This page tells you three times to ask for the test plan in man-hours, because §13.2.2(ii) requires it to state both calendar time and man-hours. Below are the variables that number is built from, so you can read a proposal rather than compare two totals.
| Accounts multiplied by regions that actually hold resources | §13.1.1(c), §13.2.3(ii)(b) | This is the unit count, and it is the one a quote is most often built on the wrong version of. An account with resources in six regions is six enumerations, not one. An out-of-date inventory produces a cheap quote and an expensive surprise, which is exactly why the clause makes the scope derive from a consolidated, updated inventory with its as-of date in the report. |
| How many distinct identity models exist | Our reading | No clause counts identity models. This is the driver experience says moves the number most. One federated identity provider covering every account is a day of work. Five local directories, three of them with their own static credentials and none of them joined to joiner-mover-leaver, is a fortnight — and it is a fortnight of the most senior person on the engagement, because the findings are in the trust relationships rather than in the user list. |
| How many SaaS tenants are in scope | §13.1.1(f) | Third-party, vendor and supply-chain risk assessment is part of the audit scope in its own right under §13.1.1(f), and each tenant is its own administrative model, its own sharing settings, its own integration inventory and its own log-export question. The service-by-service table on this page says the SaaS tenant is the surface most organisations have never reviewed. The corollary is that it is also the surface where a quote most often assumes zero because nobody mentioned it. |
| Whether the build pipeline is in scope as a principal in its own right | §13.1.1(a) · our reading | §13.1.1(a) describes the scope as the entire cyber infrastructure, which we read as reaching the pipeline. No clause names a build pipeline, so say it expressly in the scope rather than relying on the reading. Commercially the difference is large. Reviewing what the pipeline deployed is cheap. Reviewing the pipeline — its identity, its permissions per environment, its secret store, who can edit its definition, whether its artefacts are signed — is a separate piece of work against a different system, frequently in a different tenancy, and it needs somebody who can read both. |
| Configuration-only, or configuration plus an authenticated application test | §15.1.2, §13.1.3(iii) | The multiplier most quotes ignore. A configuration review is one pass over the estate. The same estate with the application tested at each privilege level, with the transitions between levels probed, is closer to one pass per level — and it is the only version in which the authorisation findings exist. Count the levels before you compare two totals. |
| Whether the follow-up audit is inside the price | §9.3(iv), §13.1.1(g), §16.3(iv) | A quote without a re-test will always look cheaper than one with it, and is for half the job. §9.3(iv) puts the follow-up inside the scope or RFP proposal and requires it to be conducted by the auditing organisation after closure. |
| What your own side has ready on day one | §13.1.4(i), §13.1.4(ii), §15.1.2 | The cloud analogue of the single largest source of wasted days: read-only audit roles issued across every account in scope before the window opens, not on the Tuesday of week one. Add a named technical point of contact under §13.1.4(ii), and availability of any outsourced provider’s personnel under §13.1.4(i). Every day the team spends waiting for credentials is a day you have already bought. |
The arithmetic to run on the man-hours number
Count the units: accounts multiplied by regions holding resources, plus each SaaS tenant, plus the pipeline if it is in scope as a principal. Multiply by the number of privilege levels that will actually be tested, where an authenticated application test is included. Then divide the quoted man-hours by that result. The answer is the effort each unit is getting. When it comes out as a couple of hours, what has been quoted is an enumeration: enough time to run a posture tool across the estate and read its output, which is a real and useful thing but is not a review. When it comes out in days, somebody is going to sit with your identity model.
Then ask for the split between tool-assisted and manual effort, which is the commercial form of §8(i)’s instruction that solely tools-based testing should be discouraged — a clause whose stated reason is that tool-based audits “may focus primarily on automated processes and may overlook non-automated or manual components of the IT infrastructure”. In cloud, the manual half is where the cross-account trust relationships, the permission-boundary gaps and the guardrail tests live, because a tool can tell you a role has a wildcard and cannot tell you whether the wildcard matters.
One last driver sits on your side of the table and is the cheapest to fix: have the read-only audit roles issued across every account in scope before the window opens. Two days spent waiting for credentials is two days you have already paid for, and it is the single most common way a cloud engagement loses time that nobody later remembers losing.
Thirteen questions to settle before a cloud review starts
What should a cloud security audit cover?
Each of these is answerable by the other side in a sentence. Each also has a wrong answer that tells you something, which is the point of asking them before the engagement rather than reading about them in the limitations paragraph afterwards. Scoping in more depth lives on VAPT scoping.
- 01 Which accounts, subscriptions or projects are in scope, and as at what date? §13.1.1(c) requires the scope to be derived from a consolidated and updated asset inventory and §13.2.3(ii)(b) requires the as-of date to appear in the report. A scope that names “our AWS” without a list of account identifiers will be interpreted narrowly on the day it matters.
- 02 Does the scope include the identity model and the management plane, or only resources? These are the two surfaces most often left out and the two where a single finding has account-wide consequences. If the answer is vague, it means no.
- 03 Which regions are in scope, and does that match the regions we actually have resources in? Produce the region list from the API before the conversation. The difference between it and the approved list is frequently the first finding of the engagement, and it costs nothing to discover early.
- 04 How many privilege levels will be tested, and who issues the accounts? Authorisation findings are unreachable without accounts at each level. §15.1.2 puts temporary privileged access on the auditee, with those privileges “revoked immediately upon completion of the audit”. Count the roles, count the accounts, write both numbers down.
- 05 What is the test plan in man-hours, not only in calendar weeks? §13.2.2(ii) requires the test plan to state both calendar time and man-hours. A three-week window can be forty hours or four hundred, and man-hours divided by the number of accounts and surfaces is what each one is actually getting.
- 06 Which framework is the review built from? §8(ii) names the CSA Cloud Controls Matrix for cloud security among the comprehensive standards an audit should be built from, and says in terms that limited lists such as the OWASP Top 10 and SANS Top 25 “should not be considered as standards or references for audits”. A proposal naming only a defect list has no coverage claim available to it.
- 07 Will the review check our compliance with the 2022 Directions? §15.2.1(iv) requires verification of compliance with the Directions of 28 April 2022 in every audit assignment, with findings and evidence in the report. Log retention, clock source and point of contact are the three that show up in a cloud estate.
- 08 Is the re-test inside the price? §13.1.1(g) and §9.3(iv) both say the follow-up audit should be specified inside the scope of work, and §9.3(iv) then requires it to be conducted by the auditing organisation after closure of the issues found. §16.3(iv) says follow-up audits should be performed to verify closure. A proposal without a re-test is priced for half the job.
- 09 Which regulator directions are being brought into scope by default, and will they be named in the report? §8(iv) and §13.1.8(ii) say, in identical words, that “Guidelines and directions issued by CERT-In and regulators to be included as part of scope of audit by default.” Default means you should not have to negotiate for it — but it also means nobody will announce it, so check that the directions applying to your sector are named in the scope and that findings against them appear in the report rather than in a covering email.
- 10 Where will our data live during and after the engagement? CERT-In’s Policy Guidelines for Handling Audit related Data require storage only on systems located in India, encryption on auditor devices, and no sharing with an overseas partner unless the auditee specifically authorises it. It also says an audit report should not be hosted on an online file-sharing or cloud service unless that service is under the auditing organisation’s own control or you have authorised it.
- 11 What happens to a critical finding on the day it is found? §16.3(ii) requires critical and high findings to be notified during the course of the audit on an as-and-when-found basis, and §16.4 requires high-risk vulnerabilities to be reported to the auditee immediately on discovery with a recommended practical solution. Agree the channel before the engagement rather than during it.
- 12 If the auditor is CERT-In empanelled, what goes to CERT-In and when? §10.6 of the guidelines and clause 3.2.2 of the empanelment terms require the audit report and metadata to be shared with CERT-In within five days of completion of the audit, and clause 3.1.7 states empanelled organisations “shall provide the audit reports and data to CERT-In without explicit permission of auditee organization”. §13.2.1(iii) requires the auditor to tell you this before the assignment starts.
- 13 Who on our side can stop the test? Name the person and the number. §15.2.2(ii) requires explicit written permission before denial-of-service, distributed denial-of-service or flood testing over the internet, and §15.2.2(iv) says testing in critical availability-sensitive environments should be passive. Both are easier to rely on when somebody can invoke them at short notice.
What should a cloud security scope of work actually say?
Five paragraphs that turn the clauses above into contract language. Fill the bracketed fields, delete what does not apply, and have your own counsel read it — this is a starting point written from published clauses, not legal advice, and the clause numbers are there so that your supplier can check every one of them against the source.
- Type of engagement. The engagement is Cloud Security Testing in the sense given at §6(xviii) of CERT-In’s Comprehensive Cyber Security Audit Policy Guidelines, version 1.0, dated 25 July 2025 — “evaluating and assessing the security measures, configurations, and vulnerabilities of cloud-based systems, applications, and infrastructures”. Where an authenticated application test forms part of the work it is stated separately at Annexure C and does not displace the configuration scope described here.
- Audit criteria. The review shall be built from the CSA Cloud Controls Matrix, as §8(ii) names it for cloud security, with coverage reported by CCM domain and any excluded domain named as an exclusion. The audit programme shall additionally be built from the Cyber Security Audit Baseline Requirements per §8(iii) and §13.1.8(i). Guidelines and directions issued by CERT-In and by [auditee]’s regulators are included in the scope of audit by default per §8(iv) and §13.1.8(ii), and shall be named in the report. Limited lists, including the OWASP Top 10 and SANS Top 25, shall not be used as the audit criterion, in accordance with §8(ii).
- Scope and inventory. The scope is the accounts, subscriptions or projects listed at Annexure A by account identifier, together with every region holding resources in them, derived from the provider’s API as at [date]. That date shall be stated in the audit report per §13.1.1(c) and §13.2.3(ii)(b), and all assets provided in scope shall be mentioned in the report per §16.1(iii). Version-specific details of any web or mobile application within scope shall appear in both the scope and the report.
- Express inclusions and exclusions. The identity model, the management plane, the build and deployment pipeline as a principal in its own right — its identity, its permissions per environment, its secret store and who may edit its definition — and the SaaS tenants named at Annexure B are expressly within scope. The provider-operated layer below the hypervisor is an express exclusion, bounded by the provider’s acceptable-use terms. Any in-scope asset that could not be reached shall be named in the report with reasons per §10.1(ii). [Auditee] shall issue read-only audit roles across every account at Annexure A before the test window opens, and temporary privileged credentials at each of the [N] privilege levels at Annexure C, to be revoked immediately on completion per §15.1.2.
- Plan, reporting and closure. The test plan shall state both calendar time and man-hours per §13.2.2(ii). Critical and high findings shall be notified as and when found during the audit per §16.3(ii), on the channel and to the named person at Annexure D. The report shall carry the contents required by §16.1(ii), shall name the environment tested per §15.2.3(i), shall score severities on CVSS supplemented with EPSS with every observation mapped to a CWE and, where one exists, a CVE, per §16.2(ii), and shall state closure timelines by severity per §16.3(iii). A follow-up audit verifying closure is included in this scope of work and in the price, per §13.1.1(g), §9.3(iv) and §16.3(iv). Auditee data shall be stored only on systems located in India, and a certificate of deletion shall be issued on [date] per §10.3.
Three fields do most of the work and are the three most often left blank: the account identifiers and the inventory date in the third paragraph, the number of privilege levels in the fourth, and the express inclusion of the management plane and the build pipeline in the same paragraph. A scope that fills all three has removed almost every argument available afterwards about what was covered.
The eight sentences that end the conversation
Each of these is said in good faith by somebody competent. The reply is not a counter-argument. It is the fact that makes the sentence answerable.
| “The cloud provider handles security.” | They handle their half, and their own published model says so. Every provider draws a line and puts your data, your identities, your configuration and your access decisions on your side of it. The question is not whether they are secure. It is whether you can draw the line per service and evidence what is on your side of it. |
| “We are certified, so the cloud estate is covered.” | A certification covers a scope. Read it for which services, which regions and which period, and read what the report itself puts on the customer’s side. A cloud estate that grew three regions since the audit window is outside it regardless of what the certificate says. |
| “We do not store personal data in the cloud.” | Then the classification exercise will be quick and worth doing anyway. Logs contain addresses and identifiers, support exports contain contact details, and analytics copies contain whatever the source contained. The finding is almost never in the store people thought of when they answered. |
| “Our provider keeps the logs.” | Direction (iv) is addressed to you, not to them: enable logs of all your ICT systems and maintain them securely for a rolling period of 180 days. The provider emits events. Enabling, retaining, protecting and producing them on request is the duty. Ask two questions to find out where you stand: what is the retention period on each log destination as configured today, and which identities can change that retention setting rather than merely delete an object from it. |
| “We use managed services, so there is nothing to harden.” | Managed means the provider patches the platform. Exposure, identity, keys, retention and who may change the configuration are all still yours, and on a managed database those five are the entire attack surface. |
| “We had a penetration test last quarter.” | Against what? A test of a web application at one hostname does not look at the identity model, the storage policies, the network exposure of the rest of the account, or the management plane. §6(xviii) of CERT-In’s guidelines treats Cloud Security Testing as its own class of engagement for exactly this reason. |
| “Multi-factor authentication is on for everyone.” | Export it. Enrolment state per principal, including the root or global administrator and including every account created before the policy existed. Policy and enforcement diverge precisely at the oldest accounts, which are also the most powerful ones. |
| “If something happens, our provider will tell us.” | They will tell you about their systems. The six-hour duty under direction (ii) runs from your noticing, and FAQ Q13 states that the obligation “is neither transferrable nor indemnified or dispense with”. Q31 extends the same answer to incidents affecting your data in a third party’s systems. |
The roles, stated plainly
Who is responsible for what in cloud security?
Here is who owns each part of a cloud security engagement in India.
| Activity | Who owns it | What everyone else does |
|---|---|---|
| Securing the facility, hardware and hypervisor | The cloud provider | You cannot configure it and you may not test it. What you can do is read the provider’s assurance artefacts for scope, region and period, and record which of your obligations you are relying on them for. |
| Identity, configuration, data placement and the management plane | You, at every service model | No provider, auditor or consultant can hold this. The audit policy guidelines put it plainly at §9.1(ii): “the responsibility for maintaining an efficient and robust cyber security posture ultimately rests with the auditee organization, not the auditor.” |
| Defining the audit scope and selecting the auditing organisation | You | §9.6(i) states that the complete audit process “must be undertaken up by the auditee organization itself”, covering scope, auditor selection, access and closure, and that “this responsibility must not be delegated”. The same clause adds that the organisation “may seek external support for specialized expertise, while retaining full ownership and accountability”. |
| Performing the cloud security review | The auditing organisation | Bound by published rules of engagement where it is CERT-In empanelled: declared manpower only, tools whose origin and function it understands and which you have approved after a controlled test, written approval before denial-of-service, distributed denial-of-service or flood testing over the internet, and data held only in India. |
| Signing the audit report and issuing a certificate where one applies | The empanelled auditing organisation | §9.5(iii) restricts signing to manpower declared to CERT-In, requires a reviewer outside the audit team, and requires the head of the auditing organisation to authorise and sign. The audit certificate must be signed by both the Lead Auditor and the Head of the Auditing Organisation. |
| Fixing what the review finds | You | §9.3(iii) puts patching and correction on the auditee. Risk treatment and any exception must be authorised and accepted by the head of the auditee organisation under §9.2(i) and §9.2(ii). |
| Verifying that the fixes actually closed the findings | The auditing organisation | §16.3(iv) states that after remediation, follow-up audits should be performed by the auditing organisation to verify closure of the vulnerabilities and non-conformities highlighted in the previous audit. |
| Reporting a cloud incident to CERT-In within six hours | You | Direction (ii) with Annexure I item (xviii). FAQ Q13: the obligation “is neither transferrable nor indemnified or dispense with.” Your cloud provider’s notification to you does not discharge it, and your processor cannot discharge it for you. |
We deliver CERT-In audits
We deliver CERT-In audits, end to end, with our CERT-In empanelled partners. See how a CERT-In audit runs with us.
The primary sources, with the clauses relied on
Every Indian-instrument assertion on this page traces to one of the documents below, each named with its issuing body, its version and its date. Every primary-source PDF was fetched and checked on content type and byte count rather than on status code, because cert-in.org.in answers 200 with a small HTML page for unknown paths. The architectural material — the control planes, the failure patterns, the landing-zone reasoning — is TCSA’s own and is not attributed to any of these bodies. So are the CVSS vectors in the scoring table, which are our reading of how these findings should be scored and are labelled as such there. Two entries are not Government of India publications and are marked as such. Where a later version exists, it supersedes what is written here.
- Directions under sub-section (6) of section 70B of the Information Technology Act, 2000, No. 20(3)/2022-CERT-In, Ministry of Electronics and Information Technology, 28 April 2022. 8 pages. The instrument behind most of this page. Relied on at direction (i) (clock synchronisation to NIC or NPL), direction (ii) (the six-hour reporting duty and its channels), direction (iii) with Annexure II (the point of contact, its eight fields and the info@cert-in.org.in submission address), direction (iv) (logs of all ICT systems, 180 rolling days, within Indian jurisdiction, produced with an incident report or when ordered), direction (v) (the five-year registration and retention duties on data centres, virtual private server providers, cloud service providers and VPN service providers), and Annexure I, whose item (xviii) is “Attacks or malicious/suspicious activities affecting Cloud computing systems/servers/software/applications”. Annexure I carries a note referring to Rule 12(1)(a) of the CERT-In Rules, 2013. cert-in.org.in
- CERT-In, Extension of timelines for enforcement of the Cyber Security Directions of 28 April 2022 for MSMEs and for implementation of the mechanism for validation of subscribers’ details, No. 20(3)/2022-CERT-In, 27 June 2022. 4 pages. The order almost universally missing from vendor summaries, and the reason this page states three effective dates rather than one. It makes the Directions effective on 25 September 2022 for micro, small and medium enterprises as classified by the Ministry of Micro, Small & Medium Enterprises, and makes the validation limbs at paragraph (v)(a) and (v)(f) effective on the same date for data centres, VPS providers, cloud service providers and VPN service providers. cert-in.org.in
- CERT-In, FAQ on the Cyber Security Directions of 28.04.2022, May 2022. 22 numbered pages plus Annexure-I, 44 questions. Relied on at Q3 (the definition of “cyber security incident”), Q9 (the Annexure-I explanations are “illustrative”), Q13 (the obligation to report “is neither transferrable nor indemnified or dispense with”), Q20 (no standing information feed), Q22 (the statutory duty overrides a contractual confidentiality clause by virtue of section 81 of the IT Act), Q23 (non-compliance and the reasonable exercise of the penal power), Q30 (report what is available, plus the categories to report within six hours), Q31 (incidents affecting your data in a third party’s systems), Q34 (a corporate VPN is not a VPN service provider), Q35 (logs may be stored outside India if the production obligation is met in a reasonable time), Q36 (logs and financial transaction records in Indian jurisdiction for providers serving users in the country), Q37 (what to log, and that unsuccessful as well as successful events are recorded), Q38 (requisitions for logs by an officer not below the rank of Deputy Secretary), Q40 to Q43 (time synchronisation, cloud-native time services and the NTP hostnames), and Annexure-I item (xviii), which names “Cloud API vulnerabilities, weak cryptography, exposed data repositories and unauthorised access to victims’ cloud credentials”. The FAQ states its own limitation — it “is not a legal document and in no way whatsoever replaces, amends or alters any part of the IT Act, 2000” or the CERT-In Rules, 2013 — which is reproduced on this page wherever the FAQ is relied on. cert-in.org.in
- CERT-In, Incident Reporting Form. The form CERT-In itself cites at FAQ Q30. Cited on this page for its own notes: it “provides general guidance in terms of information which could be relevant to the incident”, and “it is not mandatory to fill and/or sign this form” — incidents may be reported by providing relevant information in the communication itself. Its Basic Information of Affected System block asks for domain or URL, IP address, operating system, make, model or cloud details, affected application details, the location of the affected system including city, region and country, and the network and name of the ISP. cert-in.org.in
- CERT-In, Comprehensive Cyber Security Audit Policy Guidelines, version 1.0, 25 July 2025. 69 pages, 20 numbered sections. Relied on at §6(xviii) (Cloud Security Testing as its own class of engagement, defined as “evaluating and assessing the security measures, configurations, and vulnerabilities of cloud-based systems, applications, and infrastructures”), §8(ii) (the comprehensive frameworks, naming the CSA Cloud Controls Matrix for cloud security and excluding limited lists such as the OWASP Top 10 and SANS Top 25), §9.1(ii), §9.2, §9.3(iii)–(iv), §9.5(iii), §9.6(i), §10.1(ii), §13.1.1, §13.1.2, §13.1.5 (the hosted-infrastructure split of responsibility), §13.2.1(iii), §13.2.2(ii), §13.2.3(ii)(b), §15.1.2, §15.2.1(iv) (verification of compliance with the 2022 Directions in every audit assignment), §15.2.2(ii) and (iv), §16.2(ii), §16.3(ii)–(iv), §16.4 and §18(iii). cert-in.org.in
- CERT-In, Empanelment of Information Security Auditing Organisations — Terms and Conditions for Empanelment, version 7.2, April 2024. 10 pages. Relied on at clause 2.1 (“CERT-In is not a party to such contracts”), clause 3.1.7 (empanelled organisations provide audit reports and data to CERT-In without the auditee’s explicit permission), clause 3.2.2 (the five-day submission of report and metadata, and of critical vulnerabilities left unfixed even during follow-up audits, with auditee details) and clause 4.2 (the single sentence an empanelled organisation may use to describe its relationship with CERT-In). cert-in.org.in
- CERT-In, Guidelines for CERT-In Empanelled Information Security Auditing Organizations, version 3.0, May 2018. 6 pages, under three headings: People, Technical, Process. The 2018 ancestor of several rules this page relies on: “Solely tools based testing should be discouraged”, the verification team (Red Team) that checks the audit team (White Team), the prohibition on distributed denial of service testing over the Internet and on “any form of flood testing where a person, network, system, or service, is overwhelmed from a larger and stronger source”, and the data-residency duties, including that the auditor “will ensure there is no mirroring of data outside the country”. cert-in.org.in
- National Security Council Secretariat, Cyber Security Audit Baseline Requirements, publication NSCS-46-16 Rev 1.0, October 2020. Named at §8(iii) and again at §13.1.8(i) of the 2025 guidelines as the document auditees and auditing organisations should use to build their audit programme. Its abstract describes it as providing “the minimum-security assurance baseline expected across the Cyber Information Infrastructure of organisations”. Published on CERT-In’s website, but issued by the National Security Council Secretariat rather than by CERT-In itself. cert-in.org.in
- CERT-In, Policy Guidelines for Handling Audit related Data, version 1.0, June 2014. 5 pages. Required by name at §10.3(vii) of the 2025 guidelines, and the instrument behind the data-handling question on this page: devices used for the audit secured including by encryption, access on a need-to-know basis, storage only on systems located in India, no sharing with an overseas partner unless specifically authorised by the auditee, and that an audit report “should not be shared / hosted on online internet file services, online sharing platforms and cloud services, unless the service is under technical and administrative control of the auditing organization or as specifically authorized by the auditee”. cert-in.org.in
- Guidelines for Indian Government Websites and Apps (GIGW 3.0), manual — National Informatics Centre, with STQC and CERT-In. Guideline 5.3.2, hosting environment. Cited for the Government-hosting case. Guideline 5.3.2 is “Hosting Environment has been secured for ensuring confidentiality, integrity and availability (CIA)”, and its government-organisation action includes ensuring “the hosting of the web infrastructure within geographical boundaries of India”, DC, BCP and DR environments in high-availability mode, a disaster-recovery drill at least once a year, servers and network devices hardened with the latest security patches and subject to periodic vulnerability assessment and penetration testing, a web application firewall available on demand, securing containerised environments where applicable, and enabling and maintaining logs of the ICT infrastructure “for a rolling period of 180 days as per CERT-In directions”. Cite the manual for every GIGW number: the live attributes page at guidelines.india.gov.in mis-numbers the third cybersecurity statement as 5.3.2, so that number appears on it twice. GIGW 3.0 manual (PDF)
- CERT-In, published list of empanelled information security auditing organisations, with snapshot information per organisation. The list carries its own statement that it “is up-to-date valid list of CERT-In Empanelled Information Security Auditing Orgnisations” and is updated as soon as there is any change (the typography is the document’s own). Per organisation it records the audit categories that organisation itself lists with a Yes or No against each, audits performed in the last twelve months by sector, category-wise counts, technical manpower by qualification and the tools used. §12.1(i) of the 2025 guidelines is the clause that tells an auditee to use it when selecting an auditor. cert-in.org.in
- The Digital Personal Data Protection Act, 2023 (No. 22 of 2023), Ministry of Law and Justice (Legislative Department), assented 11 August 2023 and published in the Gazette of India, Extraordinary, Part II — Section 1, No. 25, 11 August 2023. 21 pages. Relied on at s.8(6) — “In the event of a personal data breach, the Data Fiduciary shall give the Board and each affected Data Principal, intimation of such breach in such form and manner as may be prescribed” — at s.8(1), which makes the Data Fiduciary responsible for compliance “irrespective of any agreement to the contrary … in respect of any processing undertaken by it or on its behalf by a Data Processor”, and at s.2(u) for the definition of a personal data breach. Note what s.8(6) leaves to rules: the form and manner of the intimation, and therefore any deadline, are “as may be prescribed”, and this page asserts nothing beyond that. meity.gov.in (Gazette PDF)
- Cloud Security Alliance, Cloud Controls Matrix, version 4.1 — 197 control objectives across 17 domains, as CSA’s research page gave them when it was checked on 22 September 2026. Not a Government of India publication. Named at §8(ii) of the 2025 audit policy guidelines as one of the comprehensive standards and frameworks an audit should be built from — “CSA Cloud Controls Matrix (CCM) for Cloud Security” — in the same clause that excludes limited defect lists as audit criteria. CSA describes the CCM as a cybersecurity control framework for cloud computing that “provides guidance on which security controls should be implemented by which actor within the cloud supply chain”, publishes the Consensus Assessments Initiative Questionnaire as the questionnaire form of the same control set, and states that version 4.1 of the CCM and CAIQ are now combined. The page prints no release date on its face, so none is given here — only the version and the date we checked it. cloudsecurityalliance.org
- FIRST, CVSS v3.1 specification document — the page states that it “provides the official specification for CVSS version 3.1” and carries no release date on its face, checked 22 September 2026. With the Exploit Prediction Scoring System. Not Government of India publications. Cited for the scoring apparatus §16.2(ii) requires. The 2025 guidelines require both frameworks and describe the CVSS 0.0 to 10.0 range and the EPSS probability between 0 and 1, but they do not print the numeric severity band boundaries — those belong to the CVSS specification’s own qualitative severity rating scale, at its section 5. §16.2(ii) pins no CVSS version, so a v4.0 report is equally compliant and the vector prefix says which was used. EPSS is recomputed daily, so a value printed in a report is a snapshot and needs the date it was pulled. FIRST’s own material treats scoring a finding with no CVE identifier as a longer-term direction rather than a present capability, which is why the EPSS column on a cloud misconfiguration is properly empty. first.org
One document is named on this page and deliberately not linked. §15.2.1(iv) of the 2025 guidelines directs organisations to a document it calls “Method of verifications to compliance with CERT-In Directions issued on 28.04.2022” and prints a cert-in.org.in path for it. That path did not serve the document when it was last checked on 22 September 2026: it returns a small HTML page rather than a PDF. We name the document as the guidelines name it, and we do not render it as a working link. The same caution applies more generally on that host — a 200 response is not evidence that a document exists, which is why every source above was checked on content type and size. Clause locators throughout this page were checked against the PDFs on 22 September 2026. If you find one that has moved, we would rather correct the page than be quoted accurately on something stale.
Frequently Asked Questions
What is cloud security?
What is the shared responsibility model?
Is the cloud provider responsible for my security?
What is the difference between IaaS, PaaS and SaaS for security?
What are the control planes in cloud security?
What is the cloud management plane, and why does it matter?
What causes most cloud security breaches?
Do CERT-In’s 2022 Directions apply to systems hosted in the cloud?
Do cloud logs have to be stored in India?
What logs does CERT-In expect us to keep for a cloud estate?
Is a cloud security incident reportable to CERT-In within six hours?
Can our cloud provider report an incident to CERT-In on our behalf?
If cloud data is breached in India, do we notify CERT-In or the Data Protection Board?
What is CSPM, and is a CSPM tool a cloud security review?
Is cloud security part of cyber security, or something separate?
Who is liable if the cloud provider itself is breached?
Is a cloud security review required for DPDP compliance?
What is the difference between a cloud security posture review and a cloud penetration test?
What is a cloud security audit, and how is it different from a penetration test?
Can we penetration-test our cloud provider?
Does a cloud security review produce a certificate?
How often should a cloud estate be reviewed?
Our provider is certified — does that cover us?
What is a landing zone, and do we need one?
How do we prove a cloud control is actually working?
Does an AI or machine-learning workload in the cloud change anything?
We run a corporate VPN into our cloud — are we a “VPN service provider”?
What should a cloud security scope of work contain?
Where to go next. On the delivery side of this subject, cloud security audits in India covers how a review is actually scoped and run here, and API security testing takes the surface that most cloud estates expose and most scopes under-specify. On the testing vocabulary, what VAPT actually is and types of VAPT are the places to start, with VAPT scoping for turning §13.1.1 into a statement of work and VAPT vs penetration testing vs red teaming for the three definitions. On the Indian instruments, what CERT-In is, the 2022 Directions explained and what a CERT-In empanelled auditor may do are the three that matter most for a cloud estate. If your workload is an AI system, start with what AI red teaming is, red-teaming an LLM application for the reproduction-rate, snapshot-identifier and decoding-parameter vocabulary a six-hour filing about an item (xx) event needs, and AI incidents under CERT-In. AI red teaming vs VAPT is the comparison to read when the scoping question is which of the two you are buying. And if the system is a Government website or application, the safe-to-host certificate is where the hosting-environment requirements become a deliverable.
Related Reading
Cloud Security Audit in India
Configuration review, what an empanelled auditor can and cannot test, and the evidence produced.
Read moreThe CERT-In Directions, 28 April 2022
Six-hour incident reporting, 180 days of logs in India, NTP synchronisation — read from the direction itself.
Read moreAPI Security Testing
The surface behind every mobile app and single-page frontend, and why testing the UI misses it.
Read moreThe Types of VAPT
Web, network, mobile, API, cloud configuration and wireless — what each can and cannot find.
Read moreAI Incidents Are Reportable to CERT-In
Annexure I item (xx) makes attacks on AI and ML systems mandatorily reportable — within six hours.
Read moreWhat Is CERT-In?
The national agency under section 70B of the IT Act — what it does, and what empanelment actually means.
Read more