Catalog / bentleysec.com
66

SEO audit for bentleysec.com

BentleySec

otherJekyll

Health 66/100 (fair) · 50 pages crawled · generated 2026-08-26

Download Markdown report (feed to ChatGPT / Claude / Cursor)

Notes, experiments, and discoveries from the edge of cybersecurity, automation, and the occasional philosophical tangent – documenting the journey from curious learner to subject matter expert.

Screenshot of bentleysec.com
50
pages crawled
48
indexable pages
0
errors
129
warnings
444
notices
0
orphan pages
0
broken links
Category breakdown
CategoryScoreErrorsWarningsNotices
Performance 70 0 50 98
Agent Readiness 71 0 48 9
Content 87 0 22 54
Duplicate 96 0 6 28
Titles 98 0 3 3
Cache 100 0 0 48
Headings 100 0 0 3
Images 100 0 0 2
Meta Description 100 0 0 45
Security 100 0 0 49
Social 100 0 0 48
Structured Data 100 0 0 23
URL 100 0 0 34
Findings

Warnings (6 rules)

warning Control has no accessible name

Rule agent.control_no_name · Agent Readiness · 48 occurrence(s)

warning Duplicate <title> across pages

Rule duplicate.title · Duplicate · 6 occurrence(s)

warning Hero/LCP image is lazy-loaded (loading=lazy delays LCP)

Rule images.no_lazy_lcp_candidate · Performance · 2 occurrence(s)

  • https://bentleysec.com/posts/Wazuh-OpenCTI/ — the likely hero/LCP image (wazuhalert.png) has loading="lazy" — Google explicitly warns against lazy-loading the LCP image, because it delays the fetch until layout completes. Remove loading="lazy" from the first significant image and add fetchpriority="high" instead.
  • https://bentleysec.com/posts/Webgoat/ — the likely hero/LCP image (webgoat.png) has loading="lazy" — Google explicitly warns against lazy-loading the LCP image, because it delays the fetch until layout completes. Remove loading="lazy" from the first significant image and add fetchpriority="high" instead.

warning Render-blocking script in <head> (no defer/async)

Rule perf.render_blocking · Performance · 48 occurrence(s)

warning Title likely truncated in SERP (too wide)

Rule title.too_long · Titles · 3 occurrence(s)

Notices (20 rules)

notice Heading levels skip a level

Rule agent.heading_skip · Agent Readiness · 8 occurrence(s)

notice No llms.txt for AI agents

Rule agent.llms_txt_missing · Agent Readiness · 1 occurrence(s)

  • https://bentleysec.com/ — no llms.txt found at the site root — add one so AI agents get a curated site summary

notice Page served uncached (no-store/private or CDN bypass)

Rule cache.not_cacheable · Cache · 48 occurrence(s)

notice Main text is hard to read (low Flesch Reading Ease)

Rule content.readability_poor · Content · 46 occurrence(s)

  • https://bentleysec.com/ — this page reads as very difficult (Flesch Reading Ease 14, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://bentleysec.com/about/ — this page reads as difficult (Flesch Reading Ease 31, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://bentleysec.com/archives/ — this page reads as very difficult (Flesch Reading Ease -11, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://bentleysec.com/categories/ — this page reads as very difficult (Flesch Reading Ease -12, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://bentleysec.com/categories/welcome/ — this page reads as very difficult (Flesch Reading Ease -2, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://bentleysec.com/page2/ — this page reads as very difficult (Flesch Reading Ease 5, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://bentleysec.com/posts/5_Counter-Intuitive_Truths_About_Modern_Cybersecurity/ — this page reads as difficult (Flesch Reading Ease 36, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://bentleysec.com/posts/AI_Security/ — this page reads as difficult (Flesch Reading Ease 43, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://bentleysec.com/posts/AI_and_the_Security_Landscape/ — this page reads as difficult (Flesch Reading Ease 45, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://bentleysec.com/posts/AI_as_an_Attacker_Tool/ — this page reads as difficult (Flesch Reading Ease 42, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://bentleysec.com/posts/Epictectus_and_Security/ — this page reads as very difficult (Flesch Reading Ease 27, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://bentleysec.com/posts/Falsification_in_the_SOC/ — this page reads as very difficult (Flesch Reading Ease 12, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://bentleysec.com/posts/Gitea-Automate-updates/ — this page reads as difficult (Flesch Reading Ease 48, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://bentleysec.com/posts/Grafana_Proxmox/ — this page reads as difficult (Flesch Reading Ease 47, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://bentleysec.com/posts/Lab_Configuration/ — this page reads as difficult (Flesch Reading Ease 32, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://bentleysec.com/posts/Security_Lab_Setup/ — this page reads as difficult (Flesch Reading Ease 46, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://bentleysec.com/posts/Security_Lab_Setup_2/ — this page reads as very difficult (Flesch Reading Ease 28, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://bentleysec.com/posts/So-It-Begins/ — this page reads as difficult (Flesch Reading Ease 36, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://bentleysec.com/posts/Society_of_the_Spectacle/ — this page reads as very difficult (Flesch Reading Ease 30, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://bentleysec.com/posts/Vulnerable_Containers/ — this page reads as very difficult (Flesch Reading Ease 21, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://bentleysec.com/posts/Webgoat/ — this page reads as difficult (Flesch Reading Ease 38, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://bentleysec.com/posts/Welcome/ — this page reads as difficult (Flesch Reading Ease 40, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://bentleysec.com/resources/ — this page reads as very difficult (Flesch Reading Ease 13, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://bentleysec.com/tags/ — this page reads as very difficult (Flesch Reading Ease -13, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://bentleysec.com/tags/welcome/ — this page reads as very difficult (Flesch Reading Ease 2, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.

notice Duplicate meta description across pages

Rule duplicate.meta_desc · Duplicate · 28 occurrence(s)

notice Article page has no author attribution (E-E-A-T)

Rule eeat.no_author · Content · 8 occurrence(s)

notice Multiple <h1> elements

Rule h1.multiple · Headings · 3 occurrence(s)

notice Images without width/height (layout shift / CLS)

Rule images.missing_dimensions · Images · 2 occurrence(s)

notice Meta description too long

Rule meta_desc.too_long · Meta Description · 39 occurrence(s)

notice Large DOM (over 1500 elements) slows rendering & interaction

Rule perf.dom_size_large · Performance · 2 occurrence(s)

  • https://bentleysec.com/posts/Falsification_in_the_SOC/ — the page has 1554 DOM elements (recommended maximum is around 1500) — a large DOM increases style-recalculation, layout and paint cost, hurting LCP and INP. Flatten deep nesting, paginate long lists/tables, and lazy-render off-screen elements.
  • https://bentleysec.com/posts/Wazuh-OpenCTI/ — the page has 4828 DOM elements (recommended maximum is around 1500) — a large DOM increases style-recalculation, layout and paint cost, hurting LCP and INP. Flatten deep nesting, paginate long lists/tables, and lazy-render off-screen elements.

notice Legacy image format (jpg/png/gif) with no next-gen fallback

Rule perf.images_legacy_format · Performance · 48 occurrence(s)

  • https://bentleysec.com/ — 1 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://bentleysec.com/about/ — 1 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://bentleysec.com/archives/ — 1 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://bentleysec.com/categories/ — 1 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://bentleysec.com/categories/welcome/ — 1 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://bentleysec.com/page2/ — 1 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://bentleysec.com/posts/5_Counter-Intuitive_Truths_About_Modern_Cybersecurity/ — 1 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://bentleysec.com/posts/AI_Security/ — 1 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://bentleysec.com/posts/Camus_and_the_abusrdity/ — 1 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://bentleysec.com/posts/Epictectus_and_Security/ — 1 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://bentleysec.com/posts/Falsification_in_the_SOC/ — 1 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://bentleysec.com/posts/Gitea-Automate-updates/ — 1 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://bentleysec.com/posts/Grafana_Proxmox/ — 1 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://bentleysec.com/posts/Lab_Configuration/ — 1 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://bentleysec.com/posts/Security_Lab_Setup/ — 1 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://bentleysec.com/posts/Security_Lab_Setup_2/ — 1 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://bentleysec.com/posts/So-It-Begins/ — 1 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://bentleysec.com/posts/Society_of_the_Spectacle/ — 1 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://bentleysec.com/posts/Vulnerable_Containers/ — 1 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://bentleysec.com/posts/Wazuh-OpenCTI/ — 3 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://bentleysec.com/posts/Webgoat/ — 3 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://bentleysec.com/posts/Welcome/ — 1 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://bentleysec.com/resources/ — 1 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://bentleysec.com/tags/ — 1 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://bentleysec.com/tags/welcome/ — 1 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.

notice No ETag header (no conditional GET for unchanged pages)

Rule perf.no_etag · Performance · 48 occurrence(s)

  • https://bentleysec.com/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://bentleysec.com/about/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://bentleysec.com/archives/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://bentleysec.com/categories/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://bentleysec.com/categories/welcome/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://bentleysec.com/page2/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://bentleysec.com/posts/5_Counter-Intuitive_Truths_About_Modern_Cybersecurity/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://bentleysec.com/posts/AI_Security/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://bentleysec.com/posts/Camus_and_the_abusrdity/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://bentleysec.com/posts/Epictectus_and_Security/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://bentleysec.com/posts/Falsification_in_the_SOC/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://bentleysec.com/posts/Gitea-Automate-updates/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://bentleysec.com/posts/Grafana_Proxmox/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://bentleysec.com/posts/Lab_Configuration/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://bentleysec.com/posts/Security_Lab_Setup/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://bentleysec.com/posts/Security_Lab_Setup_2/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://bentleysec.com/posts/So-It-Begins/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://bentleysec.com/posts/Society_of_the_Spectacle/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://bentleysec.com/posts/Vulnerable_Containers/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://bentleysec.com/posts/Wazuh-OpenCTI/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://bentleysec.com/posts/Webgoat/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://bentleysec.com/posts/Welcome/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://bentleysec.com/resources/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://bentleysec.com/tags/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://bentleysec.com/tags/welcome/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.

notice Article schema missing recommended properties (Top Stories / image carousel)

Rule schema.article_incomplete · Structured Data · 23 occurrence(s)

  • https://bentleysec.com/archives/ — BlogPosting structured data is missing recommended properties (image, author) — these feed Top Stories and image-carousel eligibility. Google defines no required Article properties, so this is advisory: add author, headline, image and datePublished where they apply.
  • https://bentleysec.com/categories/ — BlogPosting structured data is missing recommended properties (image, author) — these feed Top Stories and image-carousel eligibility. Google defines no required Article properties, so this is advisory: add author, headline, image and datePublished where they apply.
  • https://bentleysec.com/posts/5_Counter-Intuitive_Truths_About_Modern_Cybersecurity/ — BlogPosting structured data is missing recommended property (image) — these feed Top Stories and image-carousel eligibility. Google defines no required Article properties, so this is advisory: add author, headline, image and datePublished where they apply.
  • https://bentleysec.com/posts/AI_Security/ — BlogPosting structured data is missing recommended properties (image, author) — these feed Top Stories and image-carousel eligibility. Google defines no required Article properties, so this is advisory: add author, headline, image and datePublished where they apply.
  • https://bentleysec.com/posts/AI_and_the_Security_Landscape/ — BlogPosting structured data is missing recommended properties (image, author) — these feed Top Stories and image-carousel eligibility. Google defines no required Article properties, so this is advisory: add author, headline, image and datePublished where they apply.
  • https://bentleysec.com/posts/AI_as_a_Defender_tool/ — BlogPosting structured data is missing recommended properties (image, author) — these feed Top Stories and image-carousel eligibility. Google defines no required Article properties, so this is advisory: add author, headline, image and datePublished where they apply.
  • https://bentleysec.com/posts/AI_as_an_Attacker_Tool/ — BlogPosting structured data is missing recommended properties (image, author) — these feed Top Stories and image-carousel eligibility. Google defines no required Article properties, so this is advisory: add author, headline, image and datePublished where they apply.
  • https://bentleysec.com/posts/Camus_and_the_abusrdity/ — BlogPosting structured data is missing recommended property (image) — these feed Top Stories and image-carousel eligibility. Google defines no required Article properties, so this is advisory: add author, headline, image and datePublished where they apply.
  • https://bentleysec.com/posts/Epictectus_and_Security/ — BlogPosting structured data is missing recommended property (image) — these feed Top Stories and image-carousel eligibility. Google defines no required Article properties, so this is advisory: add author, headline, image and datePublished where they apply.
  • https://bentleysec.com/posts/Falsification_in_the_SOC/ — BlogPosting structured data is missing recommended property (image) — these feed Top Stories and image-carousel eligibility. Google defines no required Article properties, so this is advisory: add author, headline, image and datePublished where they apply.
  • https://bentleysec.com/posts/Gitea-Automate-updates/ — BlogPosting structured data is missing recommended property (image) — these feed Top Stories and image-carousel eligibility. Google defines no required Article properties, so this is advisory: add author, headline, image and datePublished where they apply.
  • https://bentleysec.com/posts/Grafana_Proxmox/ — BlogPosting structured data is missing recommended property (image) — these feed Top Stories and image-carousel eligibility. Google defines no required Article properties, so this is advisory: add author, headline, image and datePublished where they apply.
  • https://bentleysec.com/posts/Lab_Configuration/ — BlogPosting structured data is missing recommended property (image) — these feed Top Stories and image-carousel eligibility. Google defines no required Article properties, so this is advisory: add author, headline, image and datePublished where they apply.
  • https://bentleysec.com/posts/Security_Lab_Setup/ — BlogPosting structured data is missing recommended property (image) — these feed Top Stories and image-carousel eligibility. Google defines no required Article properties, so this is advisory: add author, headline, image and datePublished where they apply.
  • https://bentleysec.com/posts/Security_Lab_Setup_2/ — BlogPosting structured data is missing recommended property (image) — these feed Top Stories and image-carousel eligibility. Google defines no required Article properties, so this is advisory: add author, headline, image and datePublished where they apply.
  • https://bentleysec.com/posts/So-It-Begins/ — BlogPosting structured data is missing recommended property (image) — these feed Top Stories and image-carousel eligibility. Google defines no required Article properties, so this is advisory: add author, headline, image and datePublished where they apply.
  • https://bentleysec.com/posts/Society_of_the_Spectacle/ — BlogPosting structured data is missing recommended property (image) — these feed Top Stories and image-carousel eligibility. Google defines no required Article properties, so this is advisory: add author, headline, image and datePublished where they apply.
  • https://bentleysec.com/posts/Vulnerable_Containers/ — BlogPosting structured data is missing recommended property (image) — these feed Top Stories and image-carousel eligibility. Google defines no required Article properties, so this is advisory: add author, headline, image and datePublished where they apply.
  • https://bentleysec.com/posts/Wazuh-OpenCTI/ — BlogPosting structured data is missing recommended property (image) — these feed Top Stories and image-carousel eligibility. Google defines no required Article properties, so this is advisory: add author, headline, image and datePublished where they apply.
  • https://bentleysec.com/posts/Webgoat/ — BlogPosting structured data is missing recommended property (image) — these feed Top Stories and image-carousel eligibility. Google defines no required Article properties, so this is advisory: add author, headline, image and datePublished where they apply.
  • https://bentleysec.com/posts/Welcome/ — BlogPosting structured data is missing recommended property (image) — these feed Top Stories and image-carousel eligibility. Google defines no required Article properties, so this is advisory: add author, headline, image and datePublished where they apply.
  • https://bentleysec.com/resources/ — BlogPosting structured data is missing recommended properties (image, author) — these feed Top Stories and image-carousel eligibility. Google defines no required Article properties, so this is advisory: add author, headline, image and datePublished where they apply.
  • https://bentleysec.com/tags/ — BlogPosting structured data is missing recommended properties (image, author) — these feed Top Stories and image-carousel eligibility. Google defines no required Article properties, so this is advisory: add author, headline, image and datePublished where they apply.

notice Missing recommended security headers

Rule security.missing_headers · Security · 48 occurrence(s)

notice target=_blank link without rel=noopener (tab-napping)

Rule security.unsafe_cross_origin_links · Security · 1 occurrence(s)

  • https://bentleysec.com/resources/ — 69 external link(s) use target="_blank" without rel="noopener" — the opened page can hijack your tab (reverse tab-napping). Add rel="noopener noreferrer".

notice Title is very short

Rule title.too_short · Titles · 3 occurrence(s)

Pages (showing 50 of 50)
URLStatusIndexableWordsIn-links
https://bentleysec.com/
BentleySec
200 yes 572 48
https://bentleysec.com/about/
About | BentleySec
200 yes 266 48
https://bentleysec.com/archives/
Archives | BentleySec
200 yes 289 48
https://bentleysec.com/categories/
Categories | BentleySec
200 yes 183 48
https://bentleysec.com/posts/AI_Security/
The New Frontier Artificial Intelligence and the Future of Security | BentleySec
200 yes 2099 48
https://bentleysec.com/posts/AI_and_the_Security_Landscape/
AI and the Security Landscape: An Introduction | BentleySec
200 yes 1185 48
https://bentleysec.com/posts/AI_as_a_Defender_tool/
AI and the Security Landscape: AI as a Defender Tool | BentleySec
200 yes 1977 48
https://bentleysec.com/posts/AI_as_an_Attacker_Tool/
AI and the Security Landscape: AI as an Attacker Tool | BentleySec
200 yes 1866 48
https://bentleysec.com/posts/Grafana_Proxmox/
Monitoring Proxmox with Prometheus and Grafana | BentleySec
200 yes 1854 48
https://bentleysec.com/resources/
| BentleySec
200 yes 1239 48
https://bentleysec.com/tags/
Tags | BentleySec
200 yes 228 48
https://bentleysec.com/tags/cybersecurity/
cybersecurity | BentleySec
200 yes 226 48
https://bentleysec.com/tags/detection-engineering/
Detection Engineering | BentleySec
200 yes 164 48
https://bentleysec.com/tags/elastic/
elastic | BentleySec
200 yes 156 48
https://bentleysec.com/tags/gitlab/
gitlab | BentleySec
200 yes 156 48
https://bentleysec.com/tags/homelab/
homelab | BentleySec
200 yes 183 48
https://bentleysec.com/tags/opencti/
opencti | BentleySec
200 yes 163 48
https://bentleysec.com/tags/philosophy/
philosophy | BentleySec
200 yes 178 48
https://bentleysec.com/tags/setup/
setup | BentleySec
200 yes 162 48
https://bentleysec.com/posts/Lab_Configuration/
Security Lab Tool Configuration | BentleySec
200 yes 1189 17
https://bentleysec.com/posts/Security_Lab_Setup_2/
Security Lab Tool Install Part 2 | BentleySec
200 yes 421 16
https://bentleysec.com/posts/Security_Lab_Setup/
Security Lab Tool Install | BentleySec
200 yes 1079 15
https://bentleysec.com/posts/Wazuh-OpenCTI/
Wazuh to OpenCTI Integration | BentleySec
200 yes 7230 12
https://bentleysec.com/posts/Camus_and_the_abusrdity/
Camus and the Absurdity of Patch Management | BentleySec
200 yes 1615 10
https://bentleysec.com/posts/Falsification_in_the_SOC/
Falsification in the SOC Applying Karl Popper's Philosophy to Modern Cybersecurity | BentleySec
200 yes 4165 9
https://bentleysec.com/posts/So-It-Begins/
So it Begins | BentleySec
200 yes 809 9
https://bentleysec.com/posts/Epictectus_and_Security/
The Stoic Security Engineer, What Epictetus Can Teach Us About Cybersecurity | BentleySec
200 yes 1617 6
https://bentleysec.com/posts/Gitea-Automate-updates/
Automating Homelab Updates with Gitea Actions and Ansible | BentleySec
200 yes 3008 6
https://bentleysec.com/posts/Vulnerable_Containers/
Vulnerable Containers | BentleySec
200 yes 431 7
https://bentleysec.com/posts/Society_of_the_Spectacle/
Society of the Spectacle | BentleySec
200 yes 1495 8
https://bentleysec.com/posts/5_Counter-Intuitive_Truths_About_Modern_Cybersecurity/
5 Counter-Intuitive Truths About Modern Cybersecurity | BentleySec
200 yes 1656 6
https://bentleysec.com/tags/threat-intelligence/
threat-intelligence | BentleySec
200 yes 146 3
https://bentleysec.com/tags/siem/
siem | BentleySec
200 yes 155 3
https://bentleysec.com/tags/misp/
misp | BentleySec
200 yes 156 4
https://bentleysec.com/tags/openvas/
openvas | BentleySec
200 yes 156 4
https://bentleysec.com/tags/shuffle/
shuffle | BentleySec
200 yes 156 4
https://bentleysec.com/tags/velociraptor/
velociraptor | BentleySec
200 yes 156 4
https://bentleysec.com/posts/Webgoat/
Getting Started with Webgoat | BentleySec
200 yes 268 6
https://bentleysec.com/posts/Welcome/
Welcome! | BentleySec
200 yes 536 5
https://bentleysec.com/categories/welcome/
Welcome | BentleySec
200 yes 137 2
https://bentleysec.com/page2/
BentleySec
200 yes 372 2
https://bentleysec.com/tags/wazuh/
wazuh | BentleySec
200 yes 140 2
https://bentleysec.com/tags/vulnerable/
vulnerable | BentleySec
200 yes 138 2
https://bentleysec.com/tags/guy-debord/
guy debord | BentleySec
200 yes 142 2
https://bentleysec.com/tags/society-of-the-spectacle/
society of the spectacle | BentleySec
200 yes 146 2
https://bentleysec.com/tags/welcome/
welcome | BentleySec
200 yes 137 2
https://bentleysec.com/tags/pentesting/
pentesting | BentleySec
200 yes 140 2
https://bentleysec.com/tags/webgoat/
webgoat | BentleySec
200 yes 140 2
https://bentleysec.com/assets/img/posts/WebGoat.png 200 no 0 1
https://bentleysec.com/feed.xml 200 no 0 48

Audit your own site — free

157 checks, internal PageRank, render-diff. No signup, results in ~30s.

Scan your site →