agentsclimarketplace

Security

Skill vibeeval/vibecosystem/skills/security

AI software team for Claude Code - 138 agents, 295 skills, 73 hooks. Self-learning, multi-agent swarm, autonomous skill evolution.

Install
npx -y skills add vibeeval/vibecosystem --skill security

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

What its author says it does

Copied from the file, not written here

Security audit workflow - OWASP Top 10, input validation, auth, secret detection, vulnerability scan

SKILL.md

3.1 KB, as published. Nobody here has run it

Security Patterns

OWASP Top 10 (2021) Checklist

#VulnerabilityPrevention
A01Broken Access ControlRBAC, resource-level auth, CORS
A02Cryptographic FailuresEncrypt at rest/transit, no PII in logs
A03Injection (SQL/NoSQL/XSS/OS)Parameterized queries, output encoding, CSP
A04Insecure DesignThreat modeling, secure design patterns
A05Security MisconfigurationHardened defaults, no debug in prod
A06Vulnerable Componentsnpm audit, dependency scan, CVE tracking
A07Auth FailuresRate limiting, MFA, secure session
A08Data Integrity FailuresInput validation, signed updates, CI/CD security
A09Logging & Monitoring FailuresAudit log, alert on anomaly
A10SSRFURL allowlist, network segmentation

Input Validation

import { z } from 'zod';

const UserInput = z.object({
  email: z.string().email().max(255),
  name: z.string().min(1).max(100).regex(/^[\w\s-]+$/),
  age: z.number().int().min(0).max(150),
});

// Parameterized query (SQL injection prevention)
const user = await db.query('SELECT * FROM users WHERE id = $1', [userId]);

Auth Best Practices

// Password hashing
import bcrypt from 'bcryptjs';
const hash = await bcrypt.hash(password, 12);
const valid = await bcrypt.compare(password, hash);

// JWT with expiry
const token = jwt.sign({ userId: user.id, role: user.role }, secret, { expiresIn: '24h' });

// Rate limiting on auth endpoints
const authLimiter = rateLimit({ windowMs: 15 * 60 * 1000, max: 5 });
app.use('/api/auth', authLimiter);

Secret Detection

# Git hooks ile secret engelleme
grep -rn "sk-\|pk_\|ghp_\|xoxb-\|AKIA" --include="*.ts" --include="*.js" src/
grep -rn "password\s*=\s*['\"]" --include="*.ts" src/

Security Headers

import helmet from 'helmet';
app.use(helmet());
// Content-Security-Policy, X-Frame-Options, X-Content-Type-Options, etc.

Anti-Patterns

Anti-PatternCozum
Hardcoded secretsEnvironment variables
SQL string concatParameterized queries
No CORS configWhitelist origins
Debug mode in prodNODE_ENV check
No rate limitingexpress-rate-limit

Pentest Methodology (Overview)

Detayli rehber icin: pentest-methodology skill

5-faz pipeline: Recon > Vuln Analysis > Exploitation > Verification > Report

Proof Levels

LevelTanim
L1 - TheoreticalPotansiyel risk, exploit edilmemis
L2 - DemonstratedBypass/leak gosterildi
L3 - ExploitedTam exploit, veri erisimi
L4 - ChainedBirden fazla vuln zincirlendi

Source-to-Sink Taint Tracing

Kullanici input'unun (source) tehlikeli fonksiyona (sink) ulasip ulasamadigini kontrol et:

Source: req.body, req.query, req.params, req.headers, cookies
Sink: db.query(), eval(), exec(), res.redirect(), innerHTML

Kontrol: Source ile Sink arasinda sanitizasyon/validasyon var mi?

Bu yaklasimi her code review'da auth/data islerinde kullan.

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.