www.shuttle.dev

PremiumPublic security posture · Completed

Share on X
$SHUTTLEShuttleRobinhood ChainPonsMC $12.6k at scan
0x64Eb587083a775732f774b930037D7d7AEB36111

This report grades the token's website configuration, not the token contract, liquidity or team.

Security grade

B
Configuration score78/100

Grades reflect only the externally visible controls listed below. A good grade does not prove the application is secure. How grades work

0
High
1
Medium
3
Low
3
Informational
17 of 24 assessed checks passed
Agent summaryExplains the evidence below. It doesn't create findings or change the grade.

Agent summary

Because the site lacks a Content‑Security‑Policy, an attacker who manages to inject script could execute it in users' browsers, potentially hijacking UI elements such as wallet connection prompts. The site already enforces HTTPS with HSTS, blocks framing, and avoids third‑party scripts and exposed version information. The remaining work mainly involves adding missing security‑related HTTP headers and strengthening DNS and email authentication.

  1. 01Define and deploy a strict Content‑Security‑Policy (e.g., default-src 'self'; script-src 'self'; object-src 'none'; …) and use nonces or hashes for any required inline scripts.Content Security Policymedium
  2. 02Add the header X-Content-Type-Options: nosniff to all responses to prevent MIME‑type sniffing attacks.MIME type sniffinglow
  3. 03Enable DNSSEC with your DNS provider and publish the corresponding DS record at your registrar.DNSSEClow
  4. 04Create an SPF TXT record (e.g., v=spf1 -all if the domain never sends mail) to specify authorized sending servers.SPF recordlow
  5. 05Set Referrer-Policy: strict-origin-when-cross-origin to limit the amount of URL information sent to external sites.Referrer policyinfo

openai/gpt-oss-120b · Workers AI

Website & claims

What the site says, checked against data
Screenshot of www.shuttle.dev at scan time
www.shuttle.dev · captured at scan time
Page title
Shuttle - Build Backends Fast
Domain registered
Unavailable
Registrar
–
Contract address on site
None shown
✓ Matches

X account linked on the website

The site and the token both point to x.com/shuttle_dev.

Claims are quoted verbatim from the page. “Matches” and “Doesn't match” come from on-chain data, the token's metadata or public domain records. Anything we can't check against data is marked “Can't verify”, which is not the same as false.

TLS & transport

All checks passed
HTTPS works with a trusted certificatePassed
The homepage loaded over HTTPS and the certificate was accepted.
Final URL
https://www.shuttle.dev/
Status
200
HTTP redirects to HTTPSPassed
The unencrypted homepage immediately redirects to HTTPS.
Redirect
308 → https://www.shuttle.dev/
HSTS is enabledPassed
Browsers are told to use HTTPS for 730 days.
Strict-Transport-Security
max-age=63072000
Legacy TLS versions are refusedPassed
The server refused handshakes offering only TLS 1.0 or TLS 1.1.
TLS 1.0
rejected
TLS 1.1
rejected

HTTP security headers

4 findings
mediumConfirmed

Content Security Policy missing

The browser is not told which script sources to trust, so any injected script will run.

Content-Security-Policy
(not set)
Recommendation · Start with a policy such as default-src 'self'; script-src 'self'; object-src 'none'; base-uri 'self'; frame-ancestors 'none', then add only the origins the app needs. Use nonces or hashes instead of 'unsafe-inline'.
Why it matters ↓

CSP limits which scripts can run. For dApps it is the main browser-side defence against an injected script draining connected wallets.

How we check: Reads the Content-Security-Policy header and flags policies that still allow inline or arbitrary-origin scripts.

https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP
lowConfirmed

X-Content-Type-Options missing

Browsers may guess content types, which can turn a harmless-looking file into executable script.

X-Content-Type-Options
(not set)
Recommendation · Add X-Content-Type-Options: nosniff to all responses.
Why it matters ↓

Stops browsers from interpreting uploaded or mislabelled files as scripts or stylesheets.

How we check: Checks that X-Content-Type-Options is set to nosniff.

https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Content-Type-Options
infoConfirmed

Permissions-Policy not set

Embedded content may request browser features the site never uses.

Permissions-Policy
(not set)
Recommendation · Add a policy disabling unused features, e.g. Permissions-Policy: camera=(), microphone=(), geolocation=().
Why it matters ↓

Limits what embedded third-party content can access, such as camera, microphone or payment APIs.

How we check: Checks for a Permissions-Policy header restricting powerful browser features.

https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Permissions-Policy
infoConfirmed

Referrer-Policy not set

Modern browsers default to a safe policy, but older ones may send full URLs to other sites.

Referrer-Policy
(not set)
Recommendation · Add Referrer-Policy: strict-origin-when-cross-origin.
Why it matters ↓

URLs can contain tokens, wallet addresses or referral codes. A strict policy keeps them from leaking to third parties.

How we check: Reads the Referrer-Policy header and flags policies that leak full URLs to other sites.

https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referrer-Policy
Framing is restrictedPassed
Other sites can't embed this page in a frame.
X-Frame-Options
SAMEORIGIN
No exact versions disclosedPassed
Server headers don't reveal exact software versions.

Cookie configuration

All checks passed
Secure flag: no cookies setPassed
No cookies were set while loading the homepage, so there is nothing to misconfigure here.
HttpOnly: no session cookies setPassed
No cookies were set while loading the homepage, so there is nothing to misconfigure here.
SameSite: no cookies setPassed
No cookies were set while loading the homepage, so there is nothing to misconfigure here.

DNS & email posture

2 findings
lowConfirmed

No SPF record

The domain doesn't declare which servers may send mail as it.

MX
(none)
Recommendation · If the domain never sends mail, publish v=spf1 -all.
Why it matters ↓

SPF lists who may send mail as the domain. Crypto projects are frequent targets of impersonation emails.

How we check: Reads the domain's TXT records for an SPF policy and checks it is not permissive.

https://datatracker.ietf.org/doc/html/rfc7208
lowConfirmed

DNSSEC not enabled

DNS answers for this domain are not cryptographically signed.

AD flag
not set
Recommendation · Enable DNSSEC at your DNS provider and publish the DS record at your registrar.
Why it matters ↓

DNSSEC prevents forged DNS answers from sending visitors to a look-alike server.

How we check: Resolves the domain through a validating resolver and checks whether the answer is DNSSEC-authenticated.

https://www.cloudflare.com/dns/dnssec/how-dnssec-works/
CAA records publishedPassed
Certificate issuance is restricted.
CAA www.shuttle.dev
0 issue "globalsign.com"
CAA www.shuttle.dev
0 issue "letsencrypt.org"
CAA www.shuttle.dev
0 issue "pki.goog"
CAA www.shuttle.dev
0 issue "sectigo.com"
DMARC enforced (p=reject)Passed
Mail that fails authentication is quarantined or rejected.
_dmarc.shuttle.dev
v=DMARC1; p=reject; sp=reject; pct=100; adkim=s; aspf=r; fo=0; rua=mailto:re+ckvfulrjiwo@dmarc.postmarkapp.com;

Frontend & disclosure

1 finding
infoConfirmed

No security.txt

There is no published channel for reporting vulnerabilities.

https://www.shuttle.dev/.well-known/security.txt
HTTP 404
Recommendation · Publish /.well-known/security.txt with Contact and Expires fields (see securitytxt.org).
Why it matters ↓

Gives researchers a clear way to report vulnerabilities privately instead of disclosing them publicly.

How we check: Requests /.well-known/security.txt and checks it contains a Contact field and has not expired.

https://securitytxt.org/
No mixed contentPassed
All resources referenced in the homepage HTML use HTTPS or relative URLs.
No third-party scripts in the HTMLPassed
All script tags in the homepage HTML load from the site's own domain.

Web3 frontend

All checks passed
No known-malicious releases referencedPassed
Checked 11 scripts and the homepage HTML against published malicious wallet-package releases.
No wallet code loaded from public CDNsPassed
Wallet and chain libraries are not fetched from public CDNs at runtime.
No source maps referencedPassed
None of the 11 scripts and the homepage HTML reference a source map.
No contract addresses referencedPassed
No EVM addresses were found in 11 scripts and the homepage HTML.

Wallet stack detected

No wallet or chain libraries recognised in the inspected code.

Inspected 9 scripts (959 KB) that the homepage loads for every visitor, plus the HTML. Lazy-loaded code beyond these may not be covered.

Contracts referenced in page code

No EVM addresses found in the inspected code.

Verification status from Sourcify. Green chains link to the block explorer.

Agent trace

29 steps · every action the agent took
Show the full trace ↓
  1. 0.0s▸Premium assessment of www.shuttle.dev · budget 100 requests
  2. 0.1s✓Resolved www.shuttle.dev → 216.150.1.193 (+1 more), all public
  3. 0.2s▸Probing HTTPS, HTTP and legacy TLS
  4. 0.9s✓GET https://www.shuttle.dev/ → 200 in 781ms
  5. 0.9s·GET http://www.shuttle.dev/ → 308 https://www.shuttle.dev/
  6. 0.9s✓TLS 1.0 handshake refused
  7. 0.9s✓TLS 1.1 handshake refused
  8. 0.9s·Security headers present: strict-transport-security, x-frame-options
  9. 0.9s·0 cookies set on the homepage
  10. 1.0s▸Reading DNS, security.txt and the page's JavaScript
  11. 1.0s·Homepage references 8 scripts; reading polyfills-42372ed130431b0a.js, webpack-f36030eb4e96e919.js, framework-49c6cecf1f6d5795.js, main-7b4d08c27d2dad30.js, _app-984e9bef8246e789.js, index-d8559c715aec6465.js
  12. 1.1s·security.txt not found (HTTP 404)
  13. 1.2s·DNS: DNSSEC off · CAA set · SPF none · DMARC reject
  14. 1.6s·Following imports: 5 more chunks found; reading _buildManifest.js, _ssgManifest.js, .0e51ef1452f48249.js, script.js, config.js
  15. 1.9s·polyfills-42372ed130431b0a.js (110 KB)
  16. 1.9s·webpack-f36030eb4e96e919.js (4 KB)
  17. 1.9s·framework-49c6cecf1f6d5795.js (137 KB)
  18. 1.9s·main-7b4d08c27d2dad30.js (130 KB)
  19. 1.9s·_app-984e9bef8246e789.js (569 KB)
  20. 1.9s·index-d8559c715aec6465.js (1 KB)
  21. 1.9s·_buildManifest.js (3 KB)
  22. 1.9s·_ssgManifest.js (1 KB)
  23. 1.9s·script.js (4 KB)
  24. 1.9s·No wallet or chain libraries recognised
  25. 1.9s✓Graded B (78/100) · 0 high, 1 medium, 3 low · 24 requests to the target
  26. 7.1s✓Rendered the homepage in a browser and saved a screenshot: "Shuttle - Build Backends Fast"
  27. 7.2s◆Writing summary with openai/gpt-oss-120b and checking the site's claims
  28. 9.1s◆Checked 1 claim: 1 match, 0 don't match, 0 can't be verified
  29. 19.2s◆Summary ready · 5 prioritized fixes

Scope & limitations

Assessment type
Premium, public, non-invasive
Payment
Complimentary
Target
www.shuttle.dev
Final URL
https://www.shuttle.dev/
Resolved addresses
216.150.1.193, 216.150.16.193
Scanned
Oct 21, 2026, 06:33 UTC
Duration
1.9s
Requests made
24 (budget 100)
Report ID
qyxpr4gqyp
  • This is a public, non-invasive assessment of externally visible configuration. It does not test application logic, authentication, APIs, smart contracts or wallet flows.
  • Only the homepage, up to 8 of the scripts it loads, and a few well-known paths were requested. Other pages, lazy-loaded code and subdomains may be configured differently.
  • A good grade means the checked controls are in place. It does not prove the application is secure.

Own www.shuttle.dev? Verified owners will be able to request authorized deeper testing and receive findings privately. To dispute a result or opt out of public assessments, see opt-out & abuse reporting.