Overview
Findings
Actions
Details
Related
B+
88 / 100

hex.pm

Security report · Scanned April 08, 2026

Checks
14
Passed
8
Warnings
6
Critical
0
AI-Generated Summary
What this means

hex.pm scored 88/100, demonstrating a strong security posture. Minor improvements are noted below.

Positive signals: MX Records & Mail Provider, DNS Configuration, TLS Configuration all passed.

2 action items identified, including 0 critical. The issues are configuration gaps, not architectural problems. A focused remediation effort of 2–5 days could address all findings.

How hex.pm compares

Grade distribution across 2522 companies we've scanned. hex.pm scores better than 81% of them.

81th percentile
0 Percentile rank 100
79
A+
25
A
183
A-
191
B+
72
B
353
B-
121
C+
116
C
324
C-
117
D+
94
D
241
D-
606
F
hex.pm — Grade B+ (88/100) 2522 companies scanned
Security checks

Each check inspects a different part of hex.pm's public security setup. Green means healthy, yellow needs attention, red is a problem.

MTA-STS & TLS Reporting
Issues: No MTA-STS configured — email in transit is vulnerable to TLS downgrade attacks. Sending servers cannot verify that your mail server requires TLS; No TLSRPT record — TLS delivery failures won't be reported to domain owner.
Needs work
DNS CAA Records
No CAA records found. Without CAA, any Certificate Authority can issue certificates for this domain. Adding CAA records restricts issuance to authorized CAs only, reducing the risk of misissued certificates.
Needs work
Security Headers
3/5 security headers present. Missing: X-Frame-Options, Permissions-Policy.
Needs work
security.txt (RFC 9116)
No security.txt found. Publishing a security.txt at /.well-known/security.txt is the industry standard (RFC 9116) for vulnerability disclosure policies. Its absence may indicate a less mature security program.
Needs work
Cookie Security
Strengths: 1 cookie(s) analyzed; All cookies have Secure flag; All cookies have HttpOnly flag. Issues: 1/1 cookie(s) missing SameSite attribute (_hexpm_key).
Needs work
DMARC / Email Security
Strengths: SPF record present with soft-fail (~all); DKIM configured (selectors: google, s1, s2). Issues: DMARC policy is 'none' (monitoring only, no enforcement).
Needs work
MX Records & Mail Provider
Strengths: Mail handled by Google Workspace; 5 MX record(s) configured; Multiple MX records provide redundancy.
Healthy
DNS Configuration
Strengths: 2 nameservers configured (gordon.ns.cloudflare.com., candy.ns.cloudflare.com.); 5 MX records present; DNSSEC enabled; Zone transfers properly restricted.
Healthy
TLS Configuration
TLSv1.3 negotiated with TLS_AES_256_GCM_SHA384 (256-bit). Strong configuration with no deprecated protocols or weak ciphers detected.
Healthy
TLS Protocol Support
Strengths: TLS 1.3 supported; TLS 1.2 supported; TLS 1.3 supported (strongest). Protocol support: TLS 1.3: Yes, TLS 1.2: Yes, TLS 1.1: No, TLS 1.0: No.
Healthy
HSTS Header
HSTS enabled: max-age=31536000s (365 days). Missing includeSubDomains — subdomains not covered. Missing preload directive.
Healthy
Known Breaches
No known breaches found in public disclosure databases.
Healthy
CVE Exposure
Detected technologies: Cowboy, Proxy/CDN. (Proxy/CDN detected but excluded from CVE matching — upstream infrastructure). No version information exposed — CVE matching not possible (this is good practice).
Healthy
Certificate Hygiene
Strengths: Certificate valid, 82 days remaining; Issued by Let's Encrypt.
Healthy
Recommended actions
2 items

Steps to improve hex.pm's security grade, ranked by impact.

1
Strengthen email authentication configuration
Impact: 2–4 Hours
HIGH
Email authentication is partially configured for hex.pm but has gaps. Actions needed: upgrade DMARC policy from 'none' to 'quarantine' or 'reject'. Until DMARC enforcement is active, spoofed emails may still reach recipients.
Compliance impact
NIST CSFPR.AC-7
Email authentication is a required access control
How to fix this
1
Upgrade DMARC policy to p=quarantine (then p=reject after monitoring)
2
Verify with: nslookup -type=txt _dmarc.hex.pm
2
Add optional security headers (X-Frame-Options, Permissions-Policy)
Impact: < 1 Hour
LOW
hex.pm has most security headers configured. Missing: X-Frame-Options, Permissions-Policy. These are best-practice additions that reduce the attack surface for client-side vulnerabilities.
How to fix this
1
Add: X-Frame-Options: SAMEORIGIN (use DENY only if you never embed your pages in iframes)
2
Add: Permissions-Policy: camera=(), microphone=(), geolocation=()
3
Verify with: curl -sI https://hex.pm | grep -iE 'content-security|x-frame|x-content|referrer|permissions'
At a glance

Key data points from the scan.

TLS Version
TLSv1.3
TLSv1.3 negotiated with TLS_AES_256_GCM_SHA384 (256-bit). Strong configuration with no deprecated protocols or weak ciphers detected.
DMARC Policy
p=none
Strengths: SPF record present with soft-fail (~all); DKIM configured (selectors: google, s1, s2). Issues: DMARC policy is 'none' (monitoring only, no enforcement).
SPF Record
Present
v=spf1 include:_spf.google.com ~all
Security Headers
3/5 present
Missing: X-Frame-Options, Permissions-Policy
HSTS
Enabled
HSTS enabled: max-age=31536000s (365 days). Missing includeSubDomains — subdomains not covered. Missing preload directive.
SSL Certificate
Valid
Strengths: Certificate valid, 82 days remaining; Issued by Let's Encrypt.
DNSSEC
Enabled
Strengths: 2 nameservers configured (gordon.ns.cloudflare.com., candy.ns.cloudflare.com.); 5 MX records present; DNSSEC enabled; Zone transfers properly restricted.