‘CAIQ Lite’ Security Self-Assessment
We frequently receive security questionnaires from clients and prospects. Unfortunately, many of these are rather vague, or were written with on-premises solutions in mind. The most applicable questionnaire that we found is the standardized CAIQ Lite questionnaire, provided by the Cloud Security Alliance. It’s fairly short, contains useful and practical questions, and works well for SAAS solutions, so we’re sharing our self-assessment below.
Please view the below in the context of our general security information page, and please take into account that self-assessments alone can never be sufficient, which is why we’d like you review our external pen-test results too. You can find the executive summary here, and you can request a copy of the in-depth report at firstname.lastname@example.org.
We’ll be adding extra rows in an addendum to cover common questions we receive that aren’t covered here, so please do let us know if you feel anything is missing. Please direct your questions to email@example.com
|Application & Interface Security
|Do you use an automated source code analysis tool to detect security defects in code prior to production?
|We run automated dependency checking tools to notify us of vulnerable open-source components, so we can mitigate quickly. In addition, we run large amounts of automated tests to ensure we don’t accidentally end up with problems like privilege escalation in the business logic.
|(SaaS only) Do you review your applications for security vulnerabilities and address any issues prior to deployment to production?
|Yes, we constantly react to new developments and revisit our codebase frequently on a continuous basis. In addition we conduct external penetration-tests in a whitebox manner, where the code is reviewed by outside parties too.
|Customer Access Requirements
|Are all identified security, contractual, and regulatory requirements for customer access contractually addressed and remediated prior to granting customers access to data, assets, and information systems?
|Does your data management policies and procedures require audits to verify data input and output integrity routines?
|All our data input and output routines (via API, UI, im-and-exporters) are covered by large amounts of automated tests that ensure that data validation is in place and that no regressions occur. Any changes to code are code-reviewed internally, and our external pentests are conducted in white-box mode so that external testers can ensure once more that data input and output are verified properly
|Audit Assurance & Compliance
|Do you allow tenants to view your SOC2/ISO 27001 or similar third-party audit or certification reports?
|We don’t have a SOC2 or similar audit for ourselves, but as Google Cloud tenants we have access to their certification reports (https://cloud.google.com/security/compliance). We do share penetration test reports on our website, and additional information can be requested by clients too.
|Do you conduct network penetration tests of your cloud service infrastructure at least annually?
|We use the fully hosted Google Cloud platform-as-a-service App Engine, in which we don’t maintain any infrastructure directly. So a full pentest of the just infrastructure is not applicable. But our application pentests (see below) do cover basics of network pentesting.
|Do you conduct application penetration tests of your cloud infrastructure regularly as prescribed by industry best practices and guidance?
|We have an ongoing Pentest program at HackerOne which finds us vulnerabilites on a continuous basis, and we’ve decided to conduct external “formal” pentests with a pentesting firm on an annual basis. The latest result can be requested by mailing to firstname.lastname@example.org
|Information System Regulatory Mapping
|Do you have a program in place that includes the ability to monitor changes to the regulatory requirements in relevant jurisdictions, adjust your security program for changes to legal requirements, and ensure compliance with relevant regulatory requirements?
|It’s our external data security officer’s job and duty to keep us informed on relevant changes that can have an impact on our business and our security programs too.
|Business Continuity Management & Operational Resilience
|Business Continuity Testing
|Are business continuity plans subject to testing at planned intervals or upon significant organizational or environmental changes to ensure continuing effectiveness?
|While our business continuity program is fairly simple due to the small size of our company, we do keep it up to date and ensure we’re always able to recover from major setbacks.
|Are policies and procedures established and made available for all personnel to adequately support services operations’ roles?
|Except for extreme cases like security incidents we don’t need policies nor formal procedures. We’re a small company, and our informal procedure is that developers routinely help out with customer support, and train support staff to become as knowledgeable as possible during that time. Large amounts of internal and external documentation is available, harder cases are escalated to senior developers quickly, and in worst case scenarios everyone will chime in to resolve advanced or urgent client matters.
|Do you have technical capabilities to enforce tenant data retention policies?
|It depends on the desired usecase. If you’d like us to retain your data for a certain period past after your contract with us ends, then we can do this for you. If there is some specific data that you’d like to retain and make impossible even for super-admins to delete, then that’s not possible though.
|Have you implemented backup or recovery mechanisms to ensure compliance with regulatory, statutory, contractual or business requirements?
|Do you test your backup or redundancy mechanisms at least annually?
|We test the entire backup restoration process manually at least once a year. Additionally our data warehouse is based entirely on the backups, so major breakage of the backups would get noticed very quickly, since the datawarehouse would stop working.
|Change Control & Configuration Management
|Unauthorized Software Installations
|Do you have controls in place to restrict and monitor the installation of unauthorized software onto your systems?
|Our main servers are hosted on Google App Engine, onto which only developers can install any software, and then also only in the form of our application. It’s not possible to install arbitrary code into this PAAS environment. Regarding employee workstations, we have a whitelist of pre-approved software and ask the team to request approval for additional software. We don’t use any software to enforce this though, we’re a small and security-conscious team and trust staff to make the right choices. At the same time we have plenty of safeguards in place in case a workstation is eventually hacked and abused – that’s the most common threats anyway, and can achieved by other means too.
|Data Security & Information Lifecycle Management
|Do you provide standardized (e.g. ISO/IEC) non-proprietary encryption algorithms (3DES, AES, etc.) to tenants in order for them to protect their data if it is required to move through public networks (e.g., the Internet)?
|Yes, it’s always https-encrypted. In the case of data import, most of the time clients use our integrations to other systems, so the data is protected using https in transit. If a client were to send us import-data by mail, we ask for it to be encrypted (but it’s eventually on the client to do this properly). In case of data export, for instance if you enable the Slack integration, or wanted to download an XML export, the data is also protected via https. But the data itself is not double-encoded, so you do receive a plaintext XML file, not an AES-encoded file.
|Do you utilize open encryption methodologies any time your infrastructure components need to communicate with each other via public networks (e.g., Internet-based replication of data from one environment to another)?
|We always enforce https
|Do you have procedures in place to ensure production data shall not be replicated or used in non-production environments?
|It’s our policy to never use live data in test nor staging environments, and definitely not to download it to developer workstations.
|Do you support the secure deletion (e.g., degaussing/cryptographic wiping) of archived and backed-up data?
|While we use cryptographic wiping when disposing of old work equipment, we don’t download production data to any local machines. Deletion of backups happens in the Google Cloud, and we’re confident that they delete any data in a cryptographically safe way.
|Can you provide a published procedure for exiting the service arrangement, including assurance to sanitize all computing resources of tenant data once a customer has exited your environment or has vacated a resource?
|You can delete all your data from our database yourself. Your data “lives on” for another 6 months in our cold backups, until those backups get deleted. Your data never lives anywhere else, e.g. we don’t download it to our workstations or the like.
|Do you maintain a complete inventory of all of your critical assets located at all sites/ or geographical locations and their assigned ownership?
|Controlled Access Points
|Are physical security perimeters (e.g., fences, walls, barriers, guards, gates, electronic surveillance, physical authentication mechanisms, reception desks, and security patrols) implemented for all areas housing sensitive data and information systems?
|All our confidential data is in our Google Datacenters.
|Do you restrict physical access to information assets and functions by users and support personnel?
|Our confidential data is all in the cloud, so at our own office we don’t need additional access control (beyond the obvious entrance restrictions etc). At all cloud providers the physical access is restricted though, yes.
|Encryption & Key Management
|Do you have a capability to allow creation of unique encryption keys per tenant?
|Textual client data is encrypted at application level (and then again at physical level at the cloud provider), and we use a different key for each client. But keys can’t be managed by clients, in case that is the question, and the key remains the same the entire time.
|Do you encrypt tenant data at rest (on disk/storage) within your environment?
|Yes, both using our own application-based encryption, and at the cloud-provider level (which is outside our control though)
|Governance and Risk Management
|Do you have documented information security baselines for every component of your infrastructure (e.g., hypervisors, operating systems, routers, DNS servers, etc.)?
|We don’t manage any infrastructure of our own, so this question is not applicable to us
|Are your information security policies and procedures made available to all impacted personnel and business partners, authorized by accountable business role/function and supported by the information security management program as per industry best practices (e.g. ISO 27001, SOC 2)?
|While we haven’t undergone a SOC2 audit or the like, we do follow industry best practices and have of course made all our policies and pricedures available to staff, and to a large degree also to clients.
|Is a formal disciplinary or sanction policy established for employees who have violated security policies and procedures?
|Do you notify your tenants when you make material changes to your information security and/or privacy policies?
|Changes to our privacy poliy and to our terms of service are communicated. Changes to security guidelines have so far only been so small and incremental that communication was not necessary. In case we made a major change then it’s likely we’d inform clients though
|Do you perform, at minimum, annual reviews to your privacy and security policies?
|Upon termination of contract or business relationship, are employees and business partners adequately informed of their obligations for returning organizationally-owned assets?
|Yes, we have procedures in place for that of course
|Pursuant to local laws, regulations, ethics, and contractual constraints, are all employment candidates, contractors, and involved third parties subject to background verification?
|We perform background checks to ensure what the person claimed is true, this ranges from in-depth interviews to checking references. We don’t perform criminal background checks though since this is not legal in Germany, and staff based in the US don’t have access to the code or database, so the risk of abuse is minimal anyway.
|Do your employment agreements incorporate provisions and/or terms in adherence to established information governance and security policies?
|Are documented policies, procedures, and guidelines in place to govern change in employment and/or termination?
|Training / Awareness
|Are personnel trained and provided with awareness programs at least once a year?
|Identity & Access Management
|Audit Tools Access
|Do you restrict, log, and monitor access to your information security management systems (e.g., hypervisors, firewalls, vulnerability scanners, network sniffers, APIs, etc.)?
|We don’t maintain any infrastructure of our own
|Do you monitor and log privileged access (e.g., administrator level) to information security management systems?
|User Access Policy
|Do you have controls in place ensuring timely removal of systems access that is no longer required for business purposes?
|Policies and Procedures
|Do you manage and store the identity of all personnel who have access to the IT infrastructure, including their level of access?
|We’re a small team, and every person has different responsibilities. There are rarely cases where a group of people have the same kind of access in all (or even many) systems. So ultimately for each system the current role setup is the documentation. We operate on the “need to know” principle though, and review access permissions constantly, so we don’t see the lack of a formal “hardcopy” of each systems’ access levels as a disadvantage.
|Source Code Access Restriction
|Are controls in place to prevent unauthorized access to your application, program, or object source code, and assure it is restricted to authorized personnel only?
|We use GitHub and have activated all controls that are necessary to ensure the codebase is safe, and ensure that also build servers or other places where the code can end up are properly locked down.
|Are controls in place to prevent unauthorized access to tenant application, program, or object source code, and assure it is restricted to authorized personnel only?
|User Access Restriction / Authorization
|Do you document how you grant, approve and enforce access restrictions to tenant/customer credentials following the rules of least privilege?
|User Access Reviews
|Do you require a periodical authorization and validation (e.g. at least annually) of the entitlements for all system users and administrators (exclusive of users maintained by your tenants), based on the rule of least privilege, by business leadership or other accountable business role or function?
|User Access Revocation
|Is timely deprovisioning, revocation, or modification of user access to the organizations systems, information assets, and data implemented upon any change in status of employees, contractors, customers, business partners, or involved third parties?
|Infrastructure & Virtualization Security
|Audit Logging / Intrusion Detection
|Are file integrity (host) and network intrusion detection (IDS) tools implemented to help facilitate timely detection, investigation by root cause analysis, and response to incidents?
|Since we don’t host our own infrastructure, but use that of our cloud providers, this question does not apply to us. But we’re condifent that Google and others do have these measures in place
|Is physical and logical user access to audit logs restricted to authorized personnel?
|Same as above
|Are audit logs reviewed on a regular basis for security events (e.g., with automated tools)?
|Do you use a synchronized time-service protocol (e.g., NTP) to ensure all systems have a common time reference?
|OS Hardening and Base Controls
|Are operating systems hardened to provide only the necessary ports, protocols, and services to meet business needs using technical controls (e.g., antivirus, file integrity monitoring, and logging) as part of their baseline build standard or template?
|Production / Non-Production Environments
|For your SaaS or PaaS offering, do you provide tenants with separate environments for production and test processes?
|Typically this is not requested nor needed by clients, but if necessary then tenants can either set up a separate testbed environment on a regular production server, or on a staging server
|Do you logically and physically segregate production and non-production environments?
|Are system and network environments protected by a firewall or virtual firewall to ensure business and customer security requirements?
|We don’t manage any infrastructure of our own, but our cloud providers certainly do
|VMM Security – Hypervisor Hardening
|Do you restrict personnel access to all hypervisor management functions or administrative consoles for systems hosting virtualized systems based on the principle of least privilege and supported through technical controls (e.g., two-factor authentication, audit trails, IP address filtering, firewalls and TLS-encapsulated communications to the administrative consoles)?
|Are policies and procedures established and mechanisms configured and implemented to protect the wireless network environment perimeter and to restrict unauthorized wireless traffic?
|Note though that our staff can also work from home or remotely. So we don’t trust any wireless network at all, mandating usage of https for any service, and that staff keep their workstations up to date with the latest security patches
|Are policies and procedures established and mechanisms implemented to ensure wireless security settings are enabled with strong encryption for authentication and transmission, replacing vendor default settings (e.g., encryption keys, passwords, SNMP community strings)?
|Are policies and procedures established and mechanisms implemented to protect wireless network environments and detect the presence of unauthorized (rogue) network devices for a timely disconnect from the network?
|Interoperability & Portability
|Do you publish a list of all APIs available in the service and indicate which are standard and which are customized?
|Our API can be found here: https://resources.small-improvements.com/knowledge-base/small-improvements-rest-api/ Note though that we discourage almost anyone from using it directly. Most usecases are better served by reaching out to us and finding a solution together.
|Do you have a policy enforcement capability (e.g., XACML) to ensure that only approved applications and those from approved application stores can be loaded onto a mobile device?
|We feel such provisions would be detrimental to our security approach. We hire carefully, train regularly, and place a lot of trust onto staff to do the right (security) things in much more sensitive areas, and using such a blunt weapon like MDM would show a lot of distrust towards our staff, which is in nobody’s interest. Staff aren’t allowed to keep sensitive data on local devices anyway, so we also don’t think the risk here is very high.
|Security Incident Management, E-Discovery, & Cloud Forensics
|Do you have a documented security incident response plan?
|Our plan is very simple and basic. In a nutshell, it’s a “drop everything else”-approach, which has worked well for us for the very few cases where we suspected an incident (but thankfully didn’t have one). https://www.small-improvements.com/incident-response-plan/
|Have you tested your security incident response plans in the last year?
|Are workforce personnel and external business relationships adequately informed of their responsibility, and, if required, consent and/or contractually required to report all information security events in a timely manner?
|Do you have predefined communication channels for workforce personnel and external business partners to report incidents in a timely manner adhering to applicable legal, statutory, or regulatory compliance obligations?
|Incident Response Legal Preparation
|Do you enforce and attest to tenant data separation when producing data in response to legal subpoenas?
|Supply Chain Management, Transparency, and Accountability
|Do you make security incident information available to all affected customers and providers periodically through electronic methods (e.g., portals)?
|We didn’t have an incident yet, but if we did then we’d notificy clients both via mail and via in-app notifications to ensure we reach everyone quickly
|Network / Infrastructure Services
|Do you collect capacity and use data for all relevant components of your cloud service offering?
|Third Party Agreements
|Do third-party agreements include provision for the security and protection of information and assets?
|Do you have the capability to recover data for a specific customer in the case of a failure or data loss?
|Supply Chain Metrics
|Do you provide tenants with ongoing visibility and reporting of your operational Service Level Agreement (SLA) performance?
|We don’t offer formal SLA by default. But our pingdom server does provide every client with insight into downtime or degraded performance: http://stats.pingdom.com/kxcq4dluft1w/2487889/history Our statuspage service highlights specific incidents of the past years https://status.small-improvements.com/history
|Third Party Audits
|Do you mandate annual information security reviews and audits of your third party providers to ensure that all agreed upon security requirements are met?
|We typically use large and trusted providers like Google, Hubspot and Appcues. It would be tricky for us to mandate anything. But we only choose third parties that have a strong reputation.
|Threat and Vulnerability Management
|Antivirus / Malicious Software
|Do you have anti-malware programs that support or connect to your cloud service offerings installed on all of your IT infrastructure network and systems components?
|All our cloud services are hosted in PAAS manner, so malware and virus protection is happening on the cloud provider side, not on ours. Our workstations are either set to automatically download the latest OS updates, or staff are required to do so manually.
|Vulnerability / Patch Management
|Do you have a capability to patch vulnerabilities across all of your computing devices, applications, and systems?
|Since all our servers are PAAS offerings not controlled by us, our providers take care of this.
|Is mobile code authorized before its installation and use, and the code configuration checked, to ensure that the authorized mobile code operates according to a clearly defined security policy?
|We don’t offer any native mobile applications for phones or tables. Clients can use our product on mobile devices, but it’s just the regular web application (optimized for small screens) and not native code.