Skip to main content
sus.botdocs
  • SEO
  • AI
  • QA
  • Privacy
  • Accessibility
  • Security
  1. Docs
  2. Security

Module

Security

26 audits · 158 checks · 65 findings

Audits

  • Session tokens readable in the browser 4 checks
  • TLS certificate and configuration 10 checks
  • HTTPS enforcement 6 checks
  • Mixed content and insecure forms 4 checks
  • Security headers 17 checks
  • Cookie security attributes 6 checks
  • Outdated and vulnerable libraries 4 checks
  • Information exposure 11 checks
  • Outbound link safety 7 checks
  • Site reputation 3 checks
  • Email authentication records 12 checks
  • Domain and DNS 6 checks
  • Unexpected changes 7 checks
  • Sensitive content 4 checks
  • security.txt 4 checks
  • External attack surface 3 checks
  • HSTS promises HTTPS everywhere, the site does not deliver it 5 checks
  • The content security policy and the page disagree 5 checks
  • Security headers differ between parts of the same site 5 checks
  • Cookie attributes contradict each other or the connection 5 checks
  • robots.txt hides paths that are open to everyone 4 checks
  • Script integrity and versions do not match what loads 5 checks
  • DNS points at things that are gone or unlisted 6 checks
  • Certificates and the hosts in use do not line up 5 checks
  • Security claims and security.txt that the site contradicts 5 checks
  • Pages meant to be private are published as public 5 checks

Findings

  • Internet scan data shows hosts, open ports or expired certificates you may not know about
  • The CAA record does not allow the issuer of the certificate in use
  • A page that sets a cookie may be stored in a shared cache
  • The certificates and the hosts of the domain do not line up
  • The site claims encryption or a security standard, and a basic finding says otherwise
  • A cookie is set with attributes that contradict each other or differ between pages
  • A session cookie is missing a protective attribute
  • A response lets any website read it
  • The Content-Security-Policy leaves out default-src, object-src or base-uri
  • The Content-Security-Policy allows scripts from a host where anyone can publish
  • The Content-Security-Policy and what the pages load do not match
  • The Content-Security-Policy allows what it is meant to stop
  • A DNS record points at something that is gone, or a subdomain is in nobody's inventory
  • Something was added to the pages since the last crawl that looks like tampering
  • The live site runs a development build or a development server
  • A DNS record points at a service that no longer answers, or mail records contradict each other
  • The domain or one of its addresses is on a reputation list
  • The domain registration expires soon, or DNSSEC is off
  • A DKIM key is 1024 bits or shorter
  • DMARC is missing or not enforced; DKIM and MTA-STS were not found
  • The DMARC policy applies to only part of the failing mail
  • The MTA-STS policy is in testing mode, broken, misses a mail host, or has no TLS reporting
  • The SPF record is missing, duplicated, too permissive or too long
  • A page shows a server error message or stack trace
  • A configuration file, backup, source map or directory listing is open to anyone
  • The session cookie has its framework's default name
  • A security header is sent under an old name or with a wrong value
  • A security header the home page sends is missing on login, checkout or error pages, or on another host
  • The CDN and the origin server send different security headers
  • HTML pages are sent without a security header
  • HSTS covers subdomains, but one subdomain has no valid certificate
  • The HSTS policy says one thing and the hosts, links or headers say another
  • Pages served over HTTP only, and internal links that still use http://
  • A host does not force HTTPS, or its HSTS policy is missing or short
  • A JSON Web Token in the browser is unsigned, never expires, lives long, or sits in web storage
  • An HTTPS page loads or posts over HTTP, or a password form sits on an HTTP page
  • External links open a new tab without rel="noopener"
  • A link leads to a domain that no longer exists or has a certificate that browsers refuse
  • The site links to, or loads a script from, a domain that lapsed or changed hands
  • A link leads to a domain that filtering DNS resolvers refuse
  • A page links to a domain that is on an unsafe-site list
  • A link leads to a domain that redirects to a different domain
  • A page that looks private is public, indexable or cacheable
  • The page references files with a protocol-relative address
  • Visitors from another network are sent to a different site
  • A path that robots.txt hides answers to anyone
  • robots.txt names paths that look private
  • A path that robots.txt hides is in the sitemap, linked or indexed
  • A script is not the file its tag, its address or the last crawl says it is
  • A key or password is in the data the framework hands to the browser
  • A key or password is readable in the page source
  • security.txt is missing, expired, without contact or unsigned
  • security.txt makes a promise the file itself breaks
  • Public pages or documents contain content that should not be public
  • The SPF record and the mail vendors in use do not match
  • A staging or test host of the site shows up in Google search
  • A static or API host of the site answers without nosniff or HSTS
  • A script from another host is loaded without an integrity hash
  • A host has a certificate or TLS configuration problem
  • A host uses a weak certificate key or signature, or no forward secrecy
  • A trust badge or certificate logo is expired, unlinked or cannot be checked
  • A cookie looks like a login or role flag the browser could change
  • A look-alike of the domain is registered
  • Response headers name the server software and its version
  • A script library, the CMS or a plugin runs a version with a known flaw or without support
  • All audits
  • About sus.bot
  • Open the app
  • Contact support