Back to skill

Security audit

Ainative Sdk Quickstart

Security checks across malware telemetry and agentic risk

Overview

This is a documentation-only quickstart, but it teaches users to expose API keys in frontend code and to run an unpinned setup command that persistently changes agent or IDE configuration.

Review before installing or following the quickstart. Prefer creating keys manually or verifying the npm package before running `npx zerodb init`; inspect any generated Claude or Cursor MCP config before use. Do not put a normal AINative API key in frontend code or `NEXT_PUBLIC_*` variables unless the provider explicitly documents it as a restricted public key; keep secret keys on the server or use short-lived scoped tokens.

SkillSpector

By NVIDIA
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
Findings (5)

Missing User Warnings

Medium
Confidence
86% confidence
Finding
The quickstart instructs users to run `npx zerodb init` and notes that it writes MCP configuration files, but it does not clearly warn that this modifies workspace or IDE configuration on disk. In a setup guide, silent config mutation can surprise users, alter tool behavior, and increase risk if the generated config grants new capabilities or trust relationships without explicit review.

Missing User Warnings

High
Confidence
98% confidence
Finding
The React example embeds `apiKey: 'ak_your_key'` directly in client-side code, which teaches users to expose a secret in browser-delivered JavaScript. Any user or attacker with access to the app can recover the key and abuse the account, consume credits, or access protected API functionality tied to that credential.

Missing User Warnings

High
Confidence
99% confidence
Finding
The Svelte example calls `setAINativeConfig({ apiKey: 'ak_your_key' })` in client-side script, exposing the credential to the browser. In quickstart material, this is especially dangerous because users commonly copy examples verbatim, leading to broad accidental secret leakage in production apps.

Missing User Warnings

High
Confidence
99% confidence
Finding
The Vue example uses `provideAINative({ apiKey: 'ak_your_key' })` in client-side application code, which would expose the secret to anyone inspecting the app bundle or runtime state. Because this is framed as quickstart guidance, it normalizes an insecure pattern likely to be copied into real deployments.

Missing User Warnings

High
Confidence
99% confidence
Finding
The environment variable guidance includes `NEXT_PUBLIC_AINATIVE_API_KEY`, which in Next.js means the value is intentionally exposed to the browser, yet no warning explains that this makes the API key public. This can lead developers to publish long-lived credentials client-side, enabling theft, quota abuse, and unauthorized API use.

VirusTotal

65/65 vendors flagged this skill as clean.

View on VirusTotal

Static analysis

No suspicious patterns detected.