OverhaulMySite.com

Security Posture
Snapshot

Prepared for Summit Ridge Dental
Domain summitridgedental.com
Delivered March 16, 2026
Engagement OMS-2026-0002
B
SSL Labs Grade
2/7
Security Headers Present
6
Findings Identified

Executive Summary

Summit Ridge Dental's public-facing security configuration has critical gaps that expose the site and its visitors to preventable risks. The site scores an overall B on SSL Labs due to TLS 1.0 still being enabled, and is missing five of seven recommended HTTP security headers — including Content-Security-Policy, which leaves the site with no browser-side defense against cross-site scripting. The WordPress admin login page is publicly accessible at the default path with no rate limiting, CAPTCHA, or IP restriction. The server response headers expose the exact WordPress version (6.4.2), PHP version (7.4.33), and Apache version (2.4.58).

Start here — Implement a Content-Security-Policy header. Without CSP, any successful script injection executes in the browser with full access to session cookies, form inputs (including patient contact information), and page content.

Security Scorecard

SSL Labs
B
TLS 1.0 enabled, no HSTS preload
Headers
2 / 7
Missing CSP, X-Frame, Referrer, Permissions
Tech Exposure
High
WP 6.4.2, PHP 7.4, Apache 2.4.58
Admin Path
Open
/wp-admin publicly accessible

Header Coverage

Security Headersummitridgedental.comwww.summitridgedental.comStatus
Strict-Transport-Securitymax-age=86400max-age=86400Watch
Content-Security-PolicyMissingMissingFail
X-Frame-OptionsMissingMissingFail
X-Content-Type-OptionsnosniffnosniffPass
Referrer-PolicyMissingMissingFail
Permissions-PolicyMissingMissingFail
X-XSS-ProtectionMissingMissingWatch

Header Implementation Status

Bar length represents implementation completeness. Empty bars = missing entirely.

Content-Security-Policy0X-Frame-Options0Referrer-Policy0Permissions-Policy0X-Content-Type-Options100HSTS60X-XSS-Protection0

Detailed Findings

01 Missing Content-Security-Policy Header Critical
Evidence

Neither hostname returns a Content-Security-Policy header. No CSP meta tag is present in the HTML. The browser receives zero instruction about which scripts, styles, images, fonts, and connections are authorized.

Business Impact

Without CSP, the browser will execute any script injected into the page — whether from a vulnerable WordPress plugin, a compromised form handler, a stored XSS payload, or a malicious ad/widget script. On a dental practice site that collects patient names, phone numbers, and appointment details through web forms, a successful XSS attack could exfiltrate every form submission to an attacker-controlled server without any visible indication to the user or the practice.

Technical Detail

The Apache configuration on this GoDaddy shared hosting plan does not include any CSP directives. The WordPress theme does not output a CSP meta tag. No WordPress security plugin with header management is installed.

Recommended Fix

Implement a CSP header via .htaccess starting in report-only mode (Content-Security-Policy-Report-Only) to identify all legitimate sources. Once validated, switch to enforcement mode. Start with: default-src 'self'; script-src 'self' https://www.googletagmanager.com https://connect.facebook.net; style-src 'self' 'unsafe-inline' https://fonts.googleapis.com; img-src 'self' data: https:; font-src 'self' https://fonts.gstatic.com; connect-src 'self'; frame-src 'self' [appointment-widget-origin]; base-uri 'self'; form-action 'self'.

Effort

Medium — 2–4 hours for initial report-only deployment, 1–2 weeks of monitoring before enforcement.

02 TLS 1.0 and TLS 1.1 Still Enabled High
Evidence

SSL Labs scan confirms the server accepts connections over TLS 1.0 and TLS 1.1 in addition to TLS 1.2 and 1.3. This is the primary reason for the B grade rather than A.

Business Impact

TLS 1.0 and 1.1 contain known vulnerabilities (BEAST, POODLE) and are deprecated by all major browsers as of 2020. While modern browsers will negotiate TLS 1.2+, keeping these protocols enabled signals to security scanners, partners, and technically aware patients that the practice's infrastructure is not maintained. It also fails PCI DSS requirements if the site processes or intends to process payment card data.

Technical Detail

The GoDaddy shared hosting environment has not updated its default Apache SSL configuration to disable TLS 1.0/1.1. The site does not override this via .htaccess (shared hosting may not allow SSLProtocol directives depending on the plan).

Recommended Fix

Contact GoDaddy support to request TLS 1.0 and 1.1 be disabled for this hosting account. If GoDaddy cannot accommodate this on shared hosting, consider migrating to a provider that allows full TLS configuration control, or place a Cloudflare proxy in front of the site (free tier) which enforces TLS 1.2+ by default.

Effort

Low — support ticket to GoDaddy, or 1–2 hours for Cloudflare proxy setup.

03 WordPress Admin Login Publicly Accessible with No Protection High
Evidence

/wp-admin and /wp-login.php are publicly accessible and return the standard WordPress login form. No rate limiting, CAPTCHA, IP allowlisting, or two-factor authentication challenge is observed. The default 'admin' username returns a different error message than a non-existent username, confirming username enumeration is possible.

Business Impact

Automated brute-force tools target /wp-login.php on every publicly visible WordPress site. Without rate limiting or lockout, an attacker can attempt thousands of password combinations. Combined with the confirmed 'admin' username, the attack surface is reduced to password-only brute force against a known account.

Technical Detail

Default WordPress installation with no security hardening plugin. XML-RPC (xmlrpc.php) is also accessible, providing an alternative brute-force vector that allows multiple login attempts per request.

Recommended Fix

Install a WordPress security plugin (Wordfence, Solid Security) that provides login rate limiting, CAPTCHA on the login form, and two-factor authentication. Disable XML-RPC if not required. Rename or restrict access to wp-login.php via .htaccess IP allowlisting if the practice team accesses the admin from known IP addresses.

Effort

Low — 30 minutes for plugin installation and configuration.

04 Full Technology Stack Disclosed in HTTP Headers and HTML Source Medium
Evidence

Server: Apache/2.4.58 (cPanel), X-Powered-By: PHP/7.4.33, and <meta name="generator" content="WordPress 6.4.2"> are all present in HTTP responses and HTML source. Additionally, PHP 7.4 reached end-of-life in November 2022 and no longer receives security patches.

Business Impact

An attacker performing reconnaissance can immediately identify the exact web server, PHP version, and CMS version. This allows targeted exploit selection — if a WordPress 6.4.2 vulnerability is disclosed, the attacker knows this site is running the exact affected version without any guessing. The end-of-life PHP version is particularly concerning as it may contain unpatched vulnerabilities.

Technical Detail

GoDaddy shared hosting defaults to exposing server version information. WordPress outputs the generator meta tag by default. No steps have been taken to suppress these disclosures.

Recommended Fix

Remove the WordPress generator meta tag by adding remove_action('wp_head', 'wp_generator') to functions.php. Suppress X-Powered-By via .htaccess (Header unset X-Powered-By). Request GoDaddy suppress the Server version header, or proxy through Cloudflare which replaces it. Upgrade PHP to 8.1+ through the GoDaddy hosting control panel.

Effort

Low — 1 hour total for all disclosure suppression steps; PHP upgrade may require plugin compatibility testing.

05 Missing X-Frame-Options and Referrer-Policy Headers Medium
Evidence

Neither hostname returns X-Frame-Options or Referrer-Policy headers.

Business Impact

Without X-Frame-Options, the entire site can be embedded in an iframe on any external domain — enabling clickjacking attacks where a malicious site overlays invisible UI elements on top of Summit Ridge Dental's pages to trick users into clicking hidden buttons. Without Referrer-Policy, the full URL of the page a patient is visiting (which may include appointment booking parameters or patient identifiers in query strings) is sent to every external resource loaded on the page.

Technical Detail

No header management has been configured on this hosting environment beyond the defaults.

Recommended Fix

Add via .htaccess: Header always set X-Frame-Options "SAMEORIGIN" and Header always set Referrer-Policy "strict-origin-when-cross-origin".

Effort

Low — 10 minutes to add two lines to .htaccess.

06 HSTS max-age Too Short, Not on Preload List Low
Evidence

HSTS header is present but with max-age=86400 (1 day). Best practice minimum is 31536000 (1 year). The includeSubDomains directive is absent. The domain is not on the HSTS preload list.

Business Impact

A 1-day max-age means a browser that hasn't visited the site in 24 hours will attempt an HTTP connection before being redirected to HTTPS, creating a window for man-in-the-middle attacks on public Wi-Fi networks.

Technical Detail

The HSTS header was likely set by GoDaddy's default configuration with a conservative max-age rather than the OWASP-recommended value.

Recommended Fix

Increase max-age to 31536000. Add includeSubDomains directive. Once stable, submit the domain to hstspreload.org for browser preload list inclusion.

Effort

Low — 10 minutes to update .htaccess.

Prioritized Action Backlog

Ranked by risk severity and attack surface reduction. Top items close the most dangerous exposure first.

#ActionPriorityEffort
1 Deploy Content-Security-Policy in report-only mode
Establishes browser-side script authorization — the highest-impact missing defense.
Critical 2–4 hrs + monitoring
2 Harden WordPress admin login access
Rate limiting + CAPTCHA + 2FA closes the most common WordPress attack vector.
High 30 min
3 Disable TLS 1.0 and TLS 1.1
Removes deprecated protocols and moves SSL Labs grade toward A.
High Support ticket / 1–2 hrs
4 Suppress technology stack version disclosure
Eliminates passive reconnaissance value for targeted exploitation.
Medium 1 hr
5 Add X-Frame-Options and Referrer-Policy headers
Prevents clickjacking and referrer data leakage.
Medium 10 min
6 Increase HSTS max-age and add preload submission
Closes MITM window on return visits from public networks.
Low 10 min

Scope Notes & Next Steps

Reviewed

Publicly observable HTTPS/TLS configuration and HTTP security header posture for summitridgedental.com and www.summitridgedental.com. TLS analysis via SSL Labs Server Test. Header analysis via direct HTTP inspection. Technology exposure via HTTP headers, HTML source, and common path enumeration.

Not Reviewed

This is a configuration and exposure review, not a penetration test. No application-layer vulnerability testing was performed (no SQL injection, XSS payload delivery, authentication bypass, or business logic testing). No server-side access was used. No internal network scanning was performed. Plugin vulnerability assessment and WordPress core file integrity checks are outside scope.

Disclaimers

Findings represent publicly observable security configuration at the time of review. Security posture can change as hosting providers update configurations, plugins are updated, or new services are deployed. This review does not constitute a compliance certification for any regulatory framework.

Next Steps

The Security Header Hardening remediation (#16) implements all missing headers, validates correct behavior across both hostnames, and tests in browser developer tools — covering findings 1, 5, and 6 from this report. For broader site health, the SEO & Indexability Snapshot (#3) would determine whether the technical exposure issues identified here (exposed admin paths, directory listings) are also creating SEO problems through unintended indexation of sensitive URLs.