Domain Risk HeatMap
grandesvinos.com
8/4/2026, 8:26:11 AM
Indicators
Some findings are hidden in this public report because they may include technical details that could facilitate abuse, competitor action, or unnecessary security and reputational exposure. Verify domain ownership to unlock the full report.
| Risk | What it means for your business |
|---|---|
| High | Details are protected until domain ownership is verified to avoid exposing sensitive technical information publicly |
| High | Details are protected until domain ownership is verified to avoid exposing sensitive technical information publicly |
| High | Details are protected until domain ownership is verified to avoid exposing sensitive technical information publicly |
| Low |
|
| Low |
|
| Low |
|
| Low |
|
| Low |
|
| Low |
|
| Info | headers-security › No active web application firewall or bot protection signal was detected from response headers or content This is not necessarily a problem: many legitimate sites operate without a dedicated WAF and rely on other controls. This check only looks for signals of an active protection mode (challenge pages, bot-management cookies). The site may still sit behind a CDN or proxy (e.g. Cloudflare, Sucuri) with WAF capabilities available but not actively challenging this request, which this passive check cannot confirm either way. |
| Info |
|
| Info |
|
| Info | asset-optimization › No recognizable CDN was detected for the static assets analyzed Not using a CDN is not necessarily a performance issue. A local website with moderate traffic and solid hosting may serve assets correctly without one. For websites with international traffic, high-volume campaigns, or frequent traffic spikes, a CDN can help make load times more stable. |
| Info |
|
| Info | legal-compliance › Known tracking services detected: Google Analytics / GA4, Google Tag Manager, Google Fonts (GDPR risk) These services are commonly used for analytics, advertising, attribution, personalisation or behaviour measurement. This indicator is informational; privacy and compliance impact depends on the service purpose, configuration, consent behaviour, data sharing model and applicable jurisdiction. |
Some findings are hidden in this public report because they may include technical details that could facilitate abuse, competitor action, or unnecessary security and reputational exposure. Verify domain ownership to unlock the full report.
Details are protected until domain ownership is verified to avoid exposing sensitive technical information publicly
Details are protected until domain ownership is verified to avoid exposing sensitive technical information publicly
Details are protected until domain ownership is verified to avoid exposing sensitive technical information publicly
Lowheaders-security › The X-Content-Type-Options header is missing, so browsers are not explicitly instructed to follow declared MIME types.
This is usually a low-severity issue, but it can contribute to avoidable browser-side risk if files are served with incorrect content types. It weakens the site’s security hygiene and should be corrected as part of standard hardening.
Configure the following header on all relevant responses:
X-Content-Type-Options: nosniff
Technical checks:
- Ensure JavaScript files are served with a valid JavaScript MIME type.
- Ensure CSS files are served as
text/css. - Ensure JSON, images, fonts and downloadable files have correct
Content-Typevalues. - Apply the header consistently through the web server, CDN or reverse proxy.
- Re-test static assets and API responses after deployment.
Lowheaders-security › The website does not send X-Frame-Options to restrict whether its pages can be embedded by other websites.
If no equivalent CSP `frame-ancestors` protection is present, attackers may be able to embed pages in deceptive interfaces and attempt clickjacking attacks. This can affect account actions, forms, key user steps or customer trust.
Configure framing protection using Content-Security-Policy: frame-ancestors where possible, and optionally keep X-Frame-Options for legacy compatibility.
Preferred modern control:
Content-Security-Policy: frame-ancestors 'self'
Or, if the site must not be framed at all:
Content-Security-Policy: frame-ancestors 'none'
Legacy-compatible header:
X-Frame-Options: SAMEORIGIN
Or stricter:
X-Frame-Options: DENY
Technical checks:
- Use
SAMEORIGINif legitimate same-origin embedding is needed. - Use
DENYif the site should never be embedded. - Do not use
ALLOW-FROM; it is obsolete and ignored by modern browsers. - If CSP
frame-ancestorsis already correctly configured, treat missing XFO as a lower-priority compatibility issue. - Validate embedded widgets, admin panels, previews and embedded flows before enforcing
DENY.
Lowheaders-security › No Permissions Policy is configured to restrict access to sensitive browser features and APIs.
Browser capabilities such as camera, microphone, geolocation, payment or fullscreen may be available more broadly than required, especially to embedded third-party content. This increases unnecessary privacy and security exposure.
Define a Permissions-Policy header that disables unused browser features and only allows required capabilities.
Example restrictive baseline:
Permissions-Policy: camera=(), microphone=(), geolocation=(), payment=(), usb=(), fullscreen=(self)
Adapt the policy to the site:
- Disable features not used by the website.
- Allow features only for
selfor specific trusted origins when required. - Review embedded third-party content, including videos, maps, service widgets and marketing tools.
- Test user journeys that may require browser permissions.
- Document intentional exceptions.
Common directives to review:
cameramicrophonegeolocationpaymentusbfullscreenautoplayclipboard-readclipboard-write
Lowaccessibility-basics › 2 of 34 image(s) are missing an alt attribute
Images without alternative text are announced as generic or unlabelled by screen readers, making the content harder to understand for users with visual impairments. This is a common and low-effort accessibility gap.
Add a descriptive alt attribute to every content image.
Recommended implementation:
<img src="content-image.jpg" alt="Person speaking at a workshop">
Technical checks:
- Describe the image content or purpose concisely; avoid generic text such as "image" or "photo".
- Use
alt=""(empty, not missing) for purely decorative images so screen readers skip them. - Do not stuff alt text with keywords for SEO purposes.
- Re-test after deployment using a screen reader or accessibility browser extension.
Lowinfo-exposure › Response header x-powered-by discloses software version information: PHP/8.3.33, PleskLin
The response header discloses software version information. This is not a vulnerability by itself, but it gives attackers additional context to fingerprint the stack and compare the detected version against known weaknesses. The business risk increases if the disclosed software is outdated, unsupported, or affected by known vulnerabilities.
Reduce unnecessary software version disclosure in HTTP response headers.
Recommended actions:
Identify the component exposing the version through the
x-powered-byheader.Example:
curl -I https://example.comDisable or minimize version disclosure.
Nginx:
server_tokens off;Apache:
ServerTokens Prod ServerSignature OffPHP:
expose_php = OffIf the header is generated by a framework, CMS, proxy, CDN, or plugin, remove or override the version at that layer.
Keep generic product disclosure only where operationally required.
Prefer:
Server: nginxInstead of:
Server: nginx/1.18.0Validate the result after deployment:
curl -I https://example.comDo not rely on header hiding as a security control. Also verify that the disclosed component is updated, supported, and not affected by known vulnerabilities.
Lowasset-optimization › No modern image formats were detected: 62 image(s) use JPEG/PNG/GIF
All detected images use traditional formats. This can increase page weight compared with WebP or AVIF when similar visual quality is required. On a website, heavier images may affect perceived speed, mobile data usage, and browsing fluidity across important pages. The impact should be validated against actual image size, compression, and loading priority.
Adopt modern image formats across the site, starting with the images that have the greatest performance impact.
Technical recommendations:
- Audit the current image weight and sort images by transferred size.
- Prioritize:
- Main homepage or hero image.
- Promotional banners.
- Category images.
- Main content images.
- Carousels and visual modules loaded during the initial render.
- Convert suitable JPEG/PNG assets to WebP or AVIF using controlled compression.
- Keep JPEG/PNG fallbacks if additional compatibility is required:
<picture> <source srcset="/image.avif" type="image/avif"> <source srcset="/image.webp" type="image/webp"> <img src="/image.jpg" alt="Image description"> </picture> - Configure automatic generation through the CMS, server, CDN, or deployment pipeline.
- Avoid uploading oversized images to the CMS.
- Use
srcsetandsizesto serve versions adapted to each viewport:<img src="/content-800.webp" srcset="/content-400.webp 400w, /content-800.webp 800w, /content-1200.webp 1200w" sizes="(max-width: 768px) 100vw, 50vw" alt="Content image description"> - Use
loading="lazy"for non-critical images. - Do not lazy-load the main image if it contributes to LCP.
- Measure before and after with Lighthouse, PageSpeed Insights, or WebPageTest to validate the real reduction in page weight and loading time.
headers-security › No active web application firewall or bot protection signal was detected from response headers or content
This is not necessarily a problem: many legitimate sites operate without a dedicated WAF and rely on other controls. This check only looks for signals of an active protection mode (challenge pages, bot-management cookies). The site may still sit behind a CDN or proxy (e.g. Cloudflare, Sucuri) with WAF capabilities available but not actively challenging this request, which this passive check cannot confirm either way.
Infoaccessibility-basics › 1 of 128 link(s) or button(s) have no accessible text
Links or buttons with no visible text, aria-label or title are announced as empty or generic by screen readers (for example, just \"link\" or \"button\"), making them unusable for assistive technology users. This is common in icon-only buttons and image links.
Provide an accessible name for every interactive link and button.
Recommended implementation:
<a href="/account" aria-label="View account">
<svg aria-hidden="true">...</svg>
</a>
<button aria-label="Close dialog">×</button>
Technical checks:
- Prefer visible text content over aria-label when possible.
- For icon-only controls, add
aria-labelor visually hidden text. - Ensure decorative icons inside the control use
aria-hidden="true". - Avoid generic labels such as "click here" or "read more" without context.
- Re-test with a screen reader or accessibility browser extension.
Infoinfo-exposure › No security.txt vulnerability reporting file detected
The website does not publish a standard security contact file. This is not a vulnerability by itself, but it may make it harder for researchers or third parties to report security issues responsibly. In practice, this can delay remediation of problems that may affect customer trust, service availability, or business reputation.
Publish a security.txt file with a clear vulnerability reporting process.
Recommended actions:
Create the file at the standard location:
https://example.com/.well-known/security.txtInclude at least a valid contact method.
Example:
Contact: mailto:security@example.com Preferred-Languages: en, es Canonical: https://example.com/.well-known/security.txtOptional but recommended fields:
Policy: https://example.com/security-policy Acknowledgments: https://example.com/security-acknowledgments Expires: 2027-12-31T23:59:59ZMake sure the contact mailbox is monitored.
Define an internal triage process:
- Who receives the report
- Who validates the issue
- Expected response time
- Escalation path for critical vulnerabilities
- Criteria for coordinated disclosure
Verify publication:
curl -I https://example.com/.well-known/security.txt curl https://example.com/.well-known/security.txt
asset-optimization › No recognizable CDN was detected for the static assets analyzed
Not using a CDN is not necessarily a performance issue. A local website with moderate traffic and solid hosting may serve assets correctly without one. For websites with international traffic, high-volume campaigns, or frequent traffic spikes, a CDN can help make load times more stable.
Infodns-email-reputation › No validated DNSSEC delegation was found for the domain: No DS records in the parent zone
DNS responses for this domain cannot be cryptographically validated, leaving some exposure to DNS spoofing or cache poisoning in vulnerable network paths. This is a common configuration across the web and is rarely a critical issue on its own, but enabling DNSSEC adds a meaningful layer of trust for domains handling logins or sensitive customer data.
Enable DNSSEC signing for the domain.
Recommended technical actions:
- Confirm DNSSEC support with the current DNS hosting provider or registrar.
- Enable DNSSEC signing on the authoritative DNS zone.
- Publish the resulting DS record with the domain registrar so the parent zone can delegate trust.
- Verify propagation and validate the chain of trust with an external DNSSEC validation tool.
- Monitor key rotation schedules if the provider does not automate them.
legal-compliance › Known tracking services detected: Google Analytics / GA4, Google Tag Manager, Google Fonts (GDPR risk)
These services are commonly used for analytics, advertising, attribution, personalisation or behaviour measurement. This indicator is informational; privacy and compliance impact depends on the service purpose, configuration, consent behaviour, data sharing model and applicable jurisdiction.
What to do now?
Choose the option that best fits your situation.
Fix it in-house
Ideal if you have a developer, agency, or technical team available.
Request an advanced audit
Recommended if the site generates significant revenue or you need complete information to decide.
Not sure what to do?
Request a 15-minute review where we will analyse your audit results and tell you:
What is behind this report?
Built to detect the kind of issues that silently affect sales, trust, checkout confidence, campaign performance, and operational continuity.

- A system designed to prevent your website and digital marketing from failing.
- A team with over 25 years of experience building digital projects for businesses.
- Thousands of automated audits run during platform training and validation.
- Dozens of technical indicators analysed on every execution.
- Multiple data sources combined — DNS, TLS, HTTP, performance, reputation, email, legal compliance, SEO, and more.
- AI specialised in interpreting business impact, not just technical results.
About this audit
This report is provided for informational and prioritisation purposes only. It reflects automated observations obtained from publicly available information at the time of analysis. The findings are not definitive proof of a vulnerability, legal breach, security incident, performance failure, reputational damage, or business loss. They highlight indicators that may deserve review because improving them can help reduce exposure, strengthen digital operations, and support customer trust. Risk estimates are decision-support indicators, not predictions of specific events. Automated analysis cannot verify every technical, legal, operational, or business context. Expert review may be required to validate results, rule out false positives, and determine actual impact before making significant remediation or compliance decisions.