site-server-audit — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited site-server-audit (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
A read-only, non-intrusive checklist for assessing the security posture of a website you have authorization to audit. Every check is passive — it does not exploit, brute-force, or modify the target.
If you do not have written authorization for the target, stop. This skill is for owners and authorized auditors.
# Authoritative records and chain of trust
dig +short A example.com
dig +short AAAA example.com
dig +short MX example.com
dig +short TXT example.com
dig +short CAA example.com # missing CAA means any CA can issue certs for you
dig +dnssec +short example.com | grep -i 'RRSIG\|ad' # DNSSEC presence
# Mail-auth records (only meaningful if the domain sends mail)
dig +short TXT example.com | grep -i 'v=spf1'
dig +short TXT _dmarc.example.com
dig +short TXT default._domainkey.example.com # adjust selectorFlags:
p=none on a domain that sends mail → spoofing risk# Cert chain, expiry, SANs
echo | openssl s_client -servername example.com -connect example.com:443 2>/dev/null \
| openssl x509 -noout -subject -issuer -dates -ext subjectAltName
# Protocol + cipher (modern only)
nmap --script ssl-enum-ciphers -p 443 example.com # if nmap is available
# HSTS + redirect chain
curl -sI https://example.com | grep -i 'strict-transport-security\|^location'
curl -sI http://example.com | grep -i '^location\|^HTTP/' # should 301/308 to httpsFlags:
max-age < 6 monthscurl -sI https://example.com | grep -iE \
'content-security-policy|x-frame-options|x-content-type-options|referrer-policy|permissions-policy|cross-origin-(opener|embedder|resource)-policy'Baseline expectation for a modern site:
| Header | Why |
|---|---|
Strict-Transport-Security: max-age=31536000; includeSubDomains | Force HTTPS |
Content-Security-Policy | Defense-in-depth against XSS |
X-Content-Type-Options: nosniff | Block MIME confusion |
Referrer-Policy: strict-origin-when-cross-origin | Don't leak full URLs |
Permissions-Policy: camera=(), microphone=(), geolocation=() | Disable unused powerful features |
X-Frame-Options is largely superseded by CSP frame-ancestors, but still useful for legacy browsers.
# Common high-signal misconfigurations. 404 is good, 200 is a finding.
for p in \
/.git/config \
/.git/HEAD \
/.env \
/.env.production \
/.env.local \
/wp-config.php.bak \
/wp-config.php~ \
/backup.zip \
/dump.sql \
/phpinfo.php \
/.DS_Store \
/server-status \
/.well-known/security.txt \
/robots.txt
do
code=$(curl -s -o /dev/null -w '%{http_code}' "https://example.com$p")
echo "$code $p"
doneFlags:
200 on a dotfile or backup path → immediate remediation200 on /server-status or /server-info → restrict by IP/.well-known/security.txt missing → recommended (RFC 9116) for vuln disclosurecurl -sI https://example.com | grep -i '^set-cookie'Every cookie should have Secure, HttpOnly (unless explicitly needed in JS), and SameSite=Lax or stricter. Session cookies without these flags are a finding.
curl -sI https://example.com | grep -iE '^(server|x-powered-by|x-generator|x-aspnet-version)'
# WordPress generator tag
curl -s https://example.com | grep -oE '<meta name="generator" content="[^"]+"'
# Common JS-framework bundles + their versions in /_next, /static, etc.Goal: identify outdated WP cores, PHP versions, Express, etc. Don't publish version banners — but as auditor you need them to map known CVEs.
# Writable doc-root files (should be rare)
find /path/to/docroot -type f -perm -o+w 2>/dev/null
# World-readable .env / config
find /path/to/docroot \( -name '.env*' -o -name 'wp-config.php' -o -name 'config.php' \) -perm -o+r 2>/dev/null
# Files owned by the web user (often indicates writable-by-web — pivot risk)
find /path/to/docroot -user www-data -type f 2>/dev/null | head -50Group findings by severity. A useful template:
# Audit Report — example.com — 2026-MM-DD
## Critical (fix today)
- [.git/config exposed at /.git/config → returns 200]
Remediation: block dot-directories at the webserver, remove repo from docroot.
## High (fix this week)
- [No HSTS header]
Remediation: add Strict-Transport-Security on the edge.
## Medium (fix this sprint)
- ...
## Low / informational
- ...Always include the exact command/URL used to produce each finding so the owner can re-verify after fixing.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.