Overview
Findings
Actions
Details
Related
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.
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.
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.
Security Headers
3/5 security headers present. Missing: X-Frame-Options, Permissions-Policy.
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.
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).
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).
MX Records & Mail Provider
Strengths: Mail handled by Google Workspace; 5 MX record(s) configured; Multiple MX records provide redundancy.
DNS Configuration
Strengths: 2 nameservers configured (gordon.ns.cloudflare.com., candy.ns.cloudflare.com.); 5 MX records present; DNSSEC enabled; Zone transfers properly restricted.
TLS Configuration
TLSv1.3 negotiated with TLS_AES_256_GCM_SHA384 (256-bit). Strong configuration with no deprecated protocols or weak ciphers detected.
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.
HSTS Header
HSTS enabled: max-age=31536000s (365 days). Missing includeSubDomains — subdomains not covered. Missing preload directive.
Known Breaches
No known breaches found in public disclosure databases.
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).
Certificate Hygiene
Strengths: Certificate valid, 82 days remaining; Issued by Let's Encrypt.
Recommended actions
2 items
Steps to improve hex.pm's security grade, ranked by impact.
1
Strengthen email authentication configuration
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
See all recommendations
Enter your work email to unlock the full action plan.
No spam. We only send security-related updates.
Report unlocked.
2
Add optional security headers (X-Frame-Options, Permissions-Policy)
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.