跳到正文
cccskills
免费在 GitHub 公开

pump-security

Defense-in-depth security across Rust, TypeScript, and Bash for the Pump SDK — cryptographic key handling, memory zeroization, secure file I/O, input validation, privilege management, dependency auditing, and a 60+ item security checklist.

中文简介正在准备中。当前显示原文说明。

查看安装方法

包含的文件(1)

  • SKILL.md3.5 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

Security Practices — Cryptographic Safety, Memory Zeroization & Hardened I/O

Defense-in-depth security across Rust, TypeScript, and Bash: key handling, memory zeroization, secure file I/O, input validation, privilege management, and dependency auditing.

Memory Zeroization

Rust

use zeroize::Zeroize;

struct SecureBytes(Vec<u8>);

impl Drop for SecureBytes {
    fn drop(&mut self) {
        self.0.zeroize();
    }
}

TypeScript

try {
    // ... use secretKey
} finally {
    secretKey.fill(0);
    // Best-effort: GC may have copied the buffer
}

Shell

shred -u "$keypair_file" 2>/dev/null || rm -P "$keypair_file"

RNG Quality

LanguageSourceVerification
RustOsRngVerify via solana-sdk internals
TypeScriptcrypto.getRandomValuesNode.js built-in CSPRNG
Shellsolana-keygenDelegates to Rust OsRng

Keypair Integrity Verification

  1. Re-derive public key from secret key
  2. Compare derived key with stored public key
  3. Sign a test message with the keypair
  4. Verify the signature with the public key
  5. Validate Base58 encoding roundtrip

Secure File I/O

  • Set permissions to 0o600 before writing content (race-free on Unix)
  • Use O_CREAT | O_EXCL to prevent overwrites
  • Write to temp file + atomic rename for crash safety
  • Never write secret keys to stdout unless explicitly requested

Input Validation

InputValidation
Base58 addressRegex: ^[1-9A-HJ-NP-Za-km-z]{32,44}$
File pathsReject .., prevent traversal
Tool inputsZod schemas in MCP server
Shell argumentsQuoted variables, no eval

Security Checklist Summary (60+ items)

Key categories:

  • Cryptographic library allowlist
  • Memory zeroization in all code paths
  • File permission enforcement
  • Input validation and sanitization
  • Error message information leakage prevention
  • Dependency auditing (cargo audit, npm audit)
  • No network calls during key generation
  • Secret key never in logs, error messages, or telemetry

Attack Vectors to Test

VectorDefense
Weak RNGOnly CSPRNG (OsRng / crypto.getRandomValues)
Memory dumpZeroize on drop/finally
File permission leak0o600 enforcement
Path traversalInput validation
Shell injectionQuoted variables, no eval
Dependency supply chaincargo audit, npm audit

Patterns to Follow

  • Always use approved crypto libraries: solana-sdk, @solana/web3.js, solana-keygen
  • Zeroize key material in all code paths (success, error, early return)
  • Set file permissions before writing content
  • Validate all inputs at the boundary (CLI args, API inputs, file paths)
  • Never log or display secret keys
  • Run dependency audits in CI

Common Pitfalls

  • JavaScript fill(0) is best-effort — GC may relocate buffers
  • Rust String types may leave copies in memory — use Vec<u8> with Zeroize
  • chmod after write has a race window — prefer fchmod or umask
  • Error messages must not include secret key material
  • cargo audit may miss recently disclosed CVEs — supplement with manual review

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

1password

免费

Set up and use 1Password CLI (op). Use when installing the CLI, enabling desktop app integration, signing in (single or multi-account), or reading/injecting/running secrets via op.

中文简介正在准备中。当前显示原文说明。

x402agent/SolanaOS92026年7月23日 更新

Manage Apple Notes via the `memo` CLI on macOS (create, view, edit, delete, search, move, and export notes). Use when a user asks SolanaOS to add a note, list notes, search notes, or manage note folders.

中文简介正在准备中。当前显示原文说明。

x402agent/SolanaOS92026年7月23日 更新

Manage Apple Reminders via remindctl CLI (list, add, edit, complete, delete). Supports lists, date filters, and JSON/plain output.

中文简介正在准备中。当前显示原文说明。

x402agent/SolanaOS92026年7月23日 更新

Create, search, and manage Bear notes via grizzly CLI.

中文简介正在准备中。当前显示原文说明。

x402agent/SolanaOS92026年7月23日 更新

Monitor blogs and RSS/Atom feeds for updates using the blogwatcher CLI.

中文简介正在准备中。当前显示原文说明。

x402agent/SolanaOS92026年7月23日 更新

blucli

免费

BluOS CLI (blu) for discovery, playback, grouping, and volume.

中文简介正在准备中。当前显示原文说明。

x402agent/SolanaOS92026年7月23日 更新

查看 x402agent 的全部技能

报告此技能的问题