本文へ移動
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(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

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

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

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 のスキルをすべて見る

このスキルの問題を報告する