Digital exposure report
canva.com
Good shape, with a few gaps worth closing this quarter.
Scanned: 2026-11-15 19:22 UTC
Full coverage: every applicable check was assessed.
What to do first
- 1.
Limit what scripts your pages are allowed to run
This adds one layer of protection against injected scripts.
Who can fix it: Your website developer or web host
How to verify after the fix
curl -sIL https://canva.com/ | grep -i "Content-Security-Policy"
- 2.
Choose which companies may issue certificates for your domain
This reduces the chance of a certificate being issued by a provider you did not choose.
Who can fix it: Your domain registrar or DNS provider
How to verify after the fix
dig +short CAA canva.com
A starting point, not a security guarantee.
What this grade means
- Tested hostname
- canva.com
- Website request
- GET https://canva.com/ → https://www.canva.com/
- Scan time
- 2026-11-15 19:22:34 UTC
- Grading method
- Version 2How grading works
- Unverified or excluded checks
- None. Every applicable check was assessed.
This is a snapshot of the public configuration checks listed in this report. It does not verify the site's owner, business legitimacy, application security, or absence of vulnerabilities. It is not a security certification.
Score by category
| Email security | 30/30 | Spoofing email from this domain is hard. |
| Encryption & certificate | 25/25 | Traffic to the site is encrypted and the certificate is valid. |
| Browser protections | 22/30 | Some browser protections are missing. |
| DNS infrastructure | 10/15 | The domain's infrastructure works, but recommended hardening is missing. |
Fix priorities
- 1.MediumCSP — protection from script injection · Hardening gap+8
- 2.LowCAA — who may issue certificates · Hardening gap+5
Findings
SPF — who may send mail for the domain
Passed · Severity: OK · 10/10An authorized sender list is defined and mail from other servers is rejected.
Valid SPF record with -all. 9 of the 10 allowed DNS lookups.
v=spf1 include:_spf1.canva.com include:_spf2.canva.com include:_spf3.canva.com include:_spf4.canva.com include:_spf5.canva.com include:_spf6.canva.com include:_spf7.canva.com include:_spf8.canva.com include:_spf9.canva.com -all
$ dig +short TXT canva.com
DMARC — anti-spoofing policy
Passed · Severity: OK · 15/15Forged email in the company's name is blocked by mail servers.
Policy p=reject.
v=DMARC1; p=reject; rua=mailto:dmarc-reports@canva.com; ruf=mailto:dmarc-reports+forensics@canva.com; fo=1
$ dig +short TXT _dmarc.canva.com
DKIM — digital signature on email
Passed · Severity: OK · 5/5A DKIM public key is published. On its own this doesn't prove outgoing mail is signed or aligned with your From domain.
DKIM public key found for selector: google, k1, s1, s2. Confirm signing with dkim=pass in a sent message's Authentication-Results.
google._domainkey: v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAl3Od49cwtV8JnyDzhgggeIh4Ejq4… k1._domainkey: k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDbNrX2cY/GUKIFx2G/1I00ftdAj713WP9AQ1xir85i8… s1._domainkey: k=rsa; t=s; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA4w6eQpkTmhsfp38/LSv37t/lCm7DK+x1… s2._domainkey: k=rsa; t=s; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA2AVEC4/+vILMoJ54zYflkyJa9RtDOOyX…
$ dig +short TXT google._domainkey.canva.com
MX — inbound mail routing
Passed · Severity: OK · unscoredMail exchangers are published for the domain.
5 MX record(s). This shows where inbound mail is routed, not whether mail is sent from the domain.
1 aspmx.l.google.com 5 alt1.aspmx.l.google.com 5 alt2.aspmx.l.google.com 10 alt3.aspmx.l.google.com 10 alt4.aspmx.l.google.com
$ dig +short MX canva.com
HTTPS available
Passed · Severity: OK · 10/10The site loads over an encrypted connection.
https://canva.com/ returned HTTP 403 (final URL: https://www.canva.com/). Client-side certificate validation passed.
HTTP 403 Final URL: https://www.canva.com/
$ curl -sIL https://canva.com/
HTTP → HTTPS redirect
Passed · Severity: OK · 7/7Visitors arriving at an unencrypted address are automatically sent to the secure version.
HTTP 301 → https://canva.com/
HTTP 301 Location: https://canva.com/
$ curl -sI http://canva.com/ | grep -iE "^(HTTP|location)"
SSL/TLS certificate validity
Passed · Severity: OK · 8/8The certificate was accepted by a validating TLS client at scan time.
Live TLS handshake succeeded. Latest issuance in CT logs: Amazon Trust Services, expiring 2027-05-04 (170 days). CT shows issued certificates, not necessarily the one served — confirm dates with the verify command.
Live TLS handshake: certificate accepted CT logs (context only, not scored): Issuer: Amazon Trust Services Valid from: 2026-10-19 Valid until: 2027-05-04 Names: canva.com Based on Certificate Transparency logs; may not reflect the certificate currently served.
$ echo | openssl s_client -connect canva.com:443 -servername canva.com 2>/dev/null | openssl x509 -noout -issuer -dates
HSTS — enforce encryption in the browser
Passed · Severity: OK · 8/8Browsers are told to always use an encrypted connection to the site.
max-age=31536000 (365 days), includeSubDomains, preload. ≥ 180 days recommended.
Strict-Transport-Security: max-age=31536000; includeSubDomains; preload
$ curl -sIL https://canva.com/ | grep -i "Strict-Transport-Security"
CSP — protection from script injection
Failed · Severity: Medium · Hardening gap · 0/8Missing Content-Security-Policy header: this removes one layer of protection against script injection.
No Content-Security-Policy header found.
Content-Security-Policy: (missing)
$ curl -sIL https://canva.com/ | grep -i "Content-Security-Policy"
- First publish Content-Security-Policy-Report-Only — it blocks nothing, it only reports.
- Collect violations for a week or two and tune the policy to your legitimate sources.
- Switch to the Content-Security-Policy header and replace 'unsafe-inline' with a nonce or hash.
/* Content-Security-Policy-Report-Only: default-src 'self'; script-src 'self'; object-src 'none'; base-uri 'self'; frame-ancestors 'self'
Safety: This change is made in your server/CDN settings. Test on staging before production. An overly strict CSP will break scripts — that's why you start in Report-Only mode.
Clickjacking protection
Passed · Severity: OK · 5/5The site can't be embedded by foreign sites.
X-Frame-Options: SAMEORIGIN
X-Frame-Options: SAMEORIGIN
$ curl -sIL https://canva.com/ | grep -i "X-Frame-Options"
X-Content-Type-Options
Passed · Severity: OK · 4/4The browser won't guess file types in a way that could execute code.
nosniff is set.
X-Content-Type-Options: nosniff
$ curl -sIL https://canva.com/ | grep -i "X-Content-Type-Options"
Referrer-Policy
Passed · Severity: OK · 3/3Internal URLs don't leak to external sites.
Referrer-Policy: same-origin
Referrer-Policy: same-origin
$ curl -sIL https://canva.com/ | grep -i "Referrer-Policy"
Permissions-Policy
Passed · Severity: OK · 2/2The site restricts access to sensitive browser features.
Permissions-Policy: accelerometer=(),camera=(),clipboard-read=(),clipboard-write=(),geolocation=(),gyroscope=(),hid=(),magnetometer=(),microphone=(),payment=(),publickey-credential
Permissions-Policy: accelerometer=(),camera=(),clipboard-read=(),clipboard-write=(),geolocation=(),gyroscope=(),hid=(),magnetometer=(),microphone=(),payment=(),publickey-credentials-get=(),screen-wake-lock=(),serial=(),sync-xhr=(),usb=(),xr-spatial-tracking=*
$ curl -sIL https://canva.com/ | grep -i "Permissions-Policy"
Software version disclosure
Passed · Severity: OK · unscoredThe server doesn't disclose software versions.
No version numbers found in the Server / X-Powered-By headers.
server: cloudflare x-powered-by: (missing)
$ curl -sIL https://canva.com/ | grep -iE "^(server|x-powered-by)"
DNSSEC — signed DNS records
Passed · Severity: OK · 7/7The domain's records are digitally signed and hard to forge.
An AD (Authenticated Data) flag was returned by a validating resolver.
AD = true
$ dig +dnssec canva.com | grep -E "flags:.* ad"
CAA — who may issue certificates
Needs attention · Severity: Low · Hardening gap · 0/5Any certificate authority can issue a certificate for the domain, raising the risk of mis-issuance.
No CAA records found. RFC 8659 lets the domain owner restrict which CAs are authorized.
(no CAA records found)
$ dig +short CAA canva.com
- Identify which certificate authority issued your current certificate (see the certificate check).
- Publish CAA for that authority only, and add iodef to receive alerts.
canva.com. CAA 0 issue "letsencrypt.org" canva.com. CAA 0 iodef "mailto:security@canva.com"
Safety: DNS changes are made only at your DNS provider. This tool only reads public data and changes nothing on the domain. If your CDN issues certificates on your behalf, include it too — otherwise certificate renewal will fail.
DNS server redundancy
Passed · Severity: OK · 3/3The domain is served by several DNS servers, so one server failing won't take it down.
4 NS servers.
ns-253.awsdns-31.com ns-730.awsdns-27.net ns-1421.awsdns-49.org ns-1851.awsdns-39.co.uk
$ dig +short NS canva.com
Indicative alignment
Best-practice mapping of public findings to common frameworks. Passive scanning tests public configuration only; it doesn't prove compliance or a violation.
- Google & Yahoo sender rulesNo gaps observed
- PCI DSS v4.01 observed gaps
- NIS2 / vendor due diligence1 observed gaps
- SOC 2 / ISO 27001 baseline1 observed gaps
Indicative alignment only, based on public configuration. It doesn't establish whether a framework applies to you, and it isn't legal advice, an audit or a certification.
Public DNS records
| A | canva.com | 3.160.5.2 | 3.160.5.64 | 3.160.5.83 | 3.160.5.100 |
| AAAA | canva.com | 2600:9000:25f4:400:b:add6:7500:93a1 | 2600:9000:25f4:600:b:add6:7500:93a1 | 2600:9000:25f4:6600:b:add6:7500:93a1 | 2600:9000:25f4:8a00:b:add6:7500:93a1 | 2600:9000:25f4:9600:b:add6:7500:93a1 | 2600:9000:25f4:d600:b:add6:7500:93a1 | 2600:9000:25f4:d800:b:add6:7500:93a1 | 2600:9000:25f4:ec00:b:add6:7500:93a1 |
| MX | canva.com | 1 aspmx.l.google.com | 5 alt1.aspmx.l.google.com | 5 alt2.aspmx.l.google.com | 10 alt3.aspmx.l.google.com | 10 alt4.aspmx.l.google.com |
| NS | canva.com | ns-253.awsdns-31.com | ns-730.awsdns-27.net | ns-1421.awsdns-49.org | ns-1851.awsdns-39.co.uk |
| TXT | canva.com | MS=ms92090372 | cdc0ecd8-b767-4b2a-961d-056ff91c50cf | apple-domain-verification=AAz7BIDOOK5bj9VF | status-page-domain-verification=fgb6hyksgk8x | docusign=4c293e32-cbde-4ddf-bec8-79108891d648 | https://issues.sonatype.org/browse/OSSRH-53881 | lucidlink-verification=Q8D0J05EK61V0PE82T654XJBMC | 1password-site-verification=CEUWLSG27ZBI3NCDNFPDQXMJBY | airtable-verification=a351d73cf64b3a7900588fe07af4eca6 | airtable-verification=e13696d96fe5c6f38c47676debdd401e | bugcrowd-verification=400b9a149f7cdd8664c2e7e502482536 | elevenlabs=P6f8fr3lI9xEMWdES8L3qlVe_hOiMQs7DN9MRcIhYx4 | openai-domain-verification=dv-X62J0FmW8lDn4eDouDTtdvnm | detectify-verification=79cd57657f82d1fbb417ce3beec7cbe6 | docker-verification=5298cfeb-b2af-4973-a4ae-72cfba77efa8 | shopify-verification-code=VFL6jPSmWRU2VUyhiN8qIQTeSnfgpA | mongodb-site-verification=stxOuL7yJeLEHCRwM4KlS0w3Qn5QDXkt | mongodb-site-verification=wUQ4V3GaUzBwppXzin6kKc9AybLlHJ14 | cursor-domain-verification-eb1g1h=nven1Rl68xcItm0SV3eqGeGaU | facebook-domain-verification=05c971f78w3exkut5f717mw8obqmf3 | twilio-domain-verification=f221ae68020aa3916d82bef6ca2fcbc0 | pinterest-site-verification=b91a2bb89d0241853d81d959d5a78f07 | onetrust-domain-verification=155ccaa6043f43439fb8fdbd4b1be792 | onetrust-domain-verification=857af271813b4850b88f8e48bc2b2e78 | have-i-been-pwned-verification=b633a4fdd0ff3575f1580524a28c9c7d | monday-com-verification=LnZZjRw2c6n_jXge5OWXu9GWtGGjlxNtMteJuNqM0bQ | yahoo-verification-key=fksNKRwkSoLGj4TIoVX0Iybviy7x0xpgDkRv/8s9Vw4= | google-site-verification=0UOVvHC1k0nMb_2YKhFkMRkp4yRlqN-9Va_WB8b1qV0 | google-site-verification=1uigN3ZKYSw5lr4ZdVugeteeJpy31qMbRecLJ_1ZVJU | google-site-verification=2dvQv03NLacULRWLTE7UGnoYc0P18AKoAAg91FRtOTo | google-site-verification=CVeAVsJ3_hxhfhDQTbtvIbpzUIIvUZ03vQCSCx7fCZk | google-site-verification=DW2cTgo6bXtus9wdZWW_20IB3HhMUoH2dLyitWm5VZU | google-site-verification=JqtkyfjBz-Uq1Xqk7REatNCxZnlo4gYFis8EdI_gVQ0 | google-site-verification=MJYHtvI-o93g5yti0Uey9u-hglJQ6UnPfV0djrxlT9M | google-site-verification=MfIUBrtfhRkfARKs7m47C8eRPrJet6cRCq8M18-bHLo | google-site-verification=Nj3tLWEXpg6645jNi89eJ4d-f3EKhg0mywGniT6cnP0 | google-site-verification=OORAEPphyRjSBXDWDBGtbZo0oElHFsUfxPQBesBvU6s | google-site-verification=TwtsJNfrmc2RPw6q28QiKM-wnDaowIdVWWX7VhmTDvA | google-site-verification=Y907KhOV3MD6WEXxbbTsYtSj1k5r3lDAVtM7bT8Tw58 | google-site-verification=YGcdBuAhkMJMRa5khtl9hTKLAHlayiapf0pxJph2ZcU | google-site-verification=ZZHXa27FmPeiiZ1sM6N3i3widAseyqpbpp5mfW18q5A | google-site-verification=a9fY2y2BlMyyaiLXgGNEIwYe80ZXchnC3Fib7-7CN30 | google-site-verification=bQC1cPBMACHUOt271BPTfL6k2qsoXlrHkNNTW0bVGKg | google-site-verification=bn-oB_Sgkg-cPqCil91EY6tVtaRlq2x68HktpHFloeM | google-site-verification=eAc0jqdGQQKV0P-Rce35fFYWbiRi-Ic4QZocWJC45OE | google-site-verification=hZFAMgOOsawLXNZFTJ5XAsml2KJc5leHofbwIiLCl00 | google-site-verification=vGYy48g7sb4flIluKql8BFp3_6lKKjbQEUGHUDSxCdA | google-site-verification=xDNuQ7HHiwzDPok6K8T5BcxOhJ5fB0IL9vf2xLc0YAs | tiktok-developers-site-verification=bTjMTogvil8AGPOJ6A2pysQYv811Q0ie | browserstack-domain-verification=24f3b7bc-a461-4340-aa4b-dbf671f16381 | zoom-domain-verification=ZOOM_verify_108a73b936394b4d83555479d9dab5f2 | liveramp-site-verification=7cfkiVRS0afhs5IQ7o96bHcblYCH-SI_0G-eu7r9LsM | mgverify=34d839e7ad9cdafaaccc77da386dcff2c46e4a628449d8e434cd13b032c82201 | neat-pulse-domain-verification-KX9q8nX=db71101a-781f-4da4-86ad-2fe12ade2c34 | hubspot-domain-verification=ZGM1Zjc3YzktNjdmZC00N2JlLThiOTQtY2ViZjI2NTA2OTQw | hubspot-developer-verification=NDU5MWU5ODItY2E1Zi00YTY0LWEwNGEtNWU5M2EzOGIwZDll | hubspot-developer-verification=ZWRmOWRlMjEtZGU1Zi00MTJiLWE4YjktNWQ3NmIyNDA5NDhm | stripe-verification=15ef6563e51240246ef5c70232027055e35f306d5a68e239ba4d60b65b5e8f46 | stripe-verification=5d4f5c71179a849cf68764a56809bfaada60fd51ca9a6c5b881b7477dbe92f70 | stripe-verification=bbf18c986f16d71344fe2d0a77ef8b893ad8083e09a53e5fb59a864553c49921 | stripe-verification=ec89fd8a56a7c9b8a0271fb890adecdfe20b8c157ade22d326b0ab9389b43f9b | stripe-verification=f4e689eb94442db29e022a6d99d0d5225c45eb72488d9fdf1510b94fe6e85694 | wiz-domain-verification=7fe44deeceff62c6c3011ccf4b4ddae2fd6e94b39ec8cb2cb7e3343dc624d9c3 | ahrefs-site-verification_801b8774fd779b395b1c81e48f7900e305369a5ed19eb3201a3dbc918465f5de | drift-domain-verification=9cea5d6a9cc67d7d8195abc4b7afefed111d50ad43225041c8d5f7fb7c2f6775 | adobe-idp-site-verification=2be841675181663752bc242d59d2428df60b607824db83ed808c220becc78765 | atlassian-domain-verification=rie8jGbQjxwFnUfEJ5DhYCdtEResa9Vg773/vaE2DtJwnEbS2txPvtfkuKhhLPTI | parallels-domain-verification=f1c1fd03c9524b068006530a9bb9e5c99bb75ed2d50b4249aa50d897b66cc8d8 | gauntlet-domain-verification=H9sUOdHq/SMDoMyBvXJiKkoNcY9g+3uSQ17NNxJ/kY37wSJe8i7D9x50SuXPMSV0T8mxcFjDlUX+EVhpt+99Gg== | postman-domain-verification=de148d23ecf7857ca6894818bd6b04d811b8e7bebcd91e5060df8aee3824726c7cdc06b72d0197a2826fd99d08a687f4cd739c2af0b7894e81bffeaf880b818c | v=spf1 include:_spf1.canva.com include:_spf2.canva.com include:_spf3.canva.com include:_spf4.canva.com include:_spf5.canva.com include:_spf6.canva.com include:_spf7.canva.com include:_spf8.canva.com include:_spf9.canva.com -all |
| TXT | _dmarc.canva.com | v=DMARC1; p=reject; rua=mailto:dmarc-reports@canva.com; ruf=mailto:dmarc-reports+forensics@canva.com; fo=1 |
| CAA | canva.com | — |
| DS | canva.com | 34951 13 2 a61f6abc2276e29688dd065d95a7397bc472e85969e6c6afcfdd191bd08893ec |