Loading...
Loading...
MUST be used whenever reviewing a Dune app for security issues, or before shipping any feature that handles credentials, user input, or external data. Do NOT skip this when the user asks for a security review, security audit, or vulnerability check — run every step in order. Triggers: security, security review, security audit, vulnerability, XSS, injection, credentials, secrets, auth, authentication, authorization, token, sensitive data, input validation, CORS, CSP, dependency audit.
npx skill4agent add cognitedata/dune-skills securitysrc/main.tsxsrc/App.tsxvite.config.tspackage.json**/auth***/login***/token***/credential*fetchfetch# Look for anything that smells like a secret in source files
grep -rn --include="*.ts" --include="*.tsx" --include="*.js" \
-E "(password|secret|apikey|api_key|token|bearer|private_key)\s*=\s*['\"]" src/import.meta.env.VITE_*.env.exampleyour-token-here.gitignore.env.env.localconsole.logconsole.errorgrep -rn --include="*.tsx" --include="*.ts" \
-E "dangerouslySetInnerHTML|innerHTML\s*=|eval\(|new Function\(|setTimeout\(['\"]|setInterval\(['\"]" src/dangerouslySetInnerHTMLevalnew FunctionsetTimeoutsetIntervalevalsrc/contexts/src/hooks/setup-dune-authuseCogniteClientsdkuseAtlasChatagentExternalIdexecuteargs# Find useSearchParams, URLSearchParams, and form onChange handlers
grep -rn --include="*.tsx" --include="*.ts" \
-E "useSearchParams|URLSearchParams|searchParams\.get|e\.target\.value" src/vite.config.tsserver.tsexpress.tsserver.headersContent-Security-PolicyX-Frame-Options: DENYframe-ancestors 'none'X-Content-Type-Options: nosniffserver.proxydefineimport.meta.envpnpm audit --audit-level=high| Severity | File | Line | Issue | Recommendation |
|---|---|---|---|---|
| HIGH | | 42 | | Remove; use a data-driven approach |
| MEDIUM | ... | ... | ... | ... |
| LOW | ... | ... | ... | ... |
| INFO | ... | — | Dependency X has a known low-severity CVE | Run |