원클릭으로
security-hardening
Audit app security beyond checklists: abuse prevention, API protection, business logic, rate limits, validation.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Audit app security beyond checklists: abuse prevention, API protection, business logic, rate limits, validation.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Shell out to claude CLI.
Run a multi-agent debate to compare options and converge on a decision.
Run the same task with multiple agents for reviews, critiques, or model comparison.
Autonomous large-task delivery agent. Use for long-running coding work that should go from objective or plan to implemented code, review fixes, PR/MR, and green CI with minimal human-in-the-loop gates.
Manage ClickUp tasks.
Generate a project template for Coolify
| name | security-hardening |
| description | Audit app security beyond checklists: abuse prevention, API protection, business logic, rate limits, validation. |
| allowed-tools | Read, Grep, Glob, LS, WebFetch, WebSearch, Task |
A read-only security review skill focused on application-level security concerns that emerge after deployment—issues that framework security guides don't cover.
Framework security checklists help teams use tools correctly. They stop where application-specific behavior begins. This skill focuses on what breaks later:
When reviewing code, systematically evaluate these areas:
Key questions:
Look for:
Red flags:
- Public APIs without authentication
- No rate limiting on enumerable resources (/users/1, /users/2, ...)
- Predictable resource identifiers
- Missing bot detection on high-value flows
Key questions:
Look for:
Red flags:
- Global rate limits only (no per-user/per-endpoint granularity)
- Rate limits checked after expensive operations
- No rate limiting on password reset, signup, or verification flows
- Missing rate limits on search or export endpoints
Good patterns:
// Rate limit with user context
rateLimit({
keyGenerator: (req) => req.user?.id || req.ip,
windowMs: 15 * 60 * 1000,
max: (req) => req.user ? 1000 : 100, // Different limits for authed users
});
// Tiered limits for different operations
const limits = {
read: { window: '1m', max: 100 },
write: { window: '1m', max: 10 },
export: { window: '1h', max: 5 },
};
Key questions:
Look for:
Red flags:
- No limit on free trial signups per email domain
- Coupon/discount codes without usage tracking
- Referral bonuses without fraud detection
- Bulk operations without progress limits
- Vote/rating systems without velocity checks
Abuse scenarios to consider:
Key questions:
Look for:
Red flags:
- No Content-Length limits
- Unbounded array iteration from user input
- Database queries before input validation
- File processing before permission checks
- JSON parsing of arbitrary-depth objects
Good patterns:
// Reject early - before any expensive work
app.use(express.json({ limit: '100kb' }));
// Validate structure before processing
const schema = z.object({
items: z.array(z.string()).max(100),
depth: z.number().max(10),
});
// Fail fast on invalid input
if (!isValidFormat(input)) {
return res.status(400).send('Invalid format');
}
// Only then do expensive work
const result = await expensiveOperation(input);
Key questions:
Look for:
Red flags:
- No pagination limits (page_size=10000)
- Export endpoints without row limits
- Image processing without size limits
- GraphQL without query depth/complexity limits
- Recursive operations on user-provided data
Key questions:
Look for:
Should be logged:
- Failed authentication attempts (with IP, user agent)
- Rate limit triggers
- Permission denied events
- Unusual access patterns (bulk reads, rapid requests)
- Admin actions
Map the attack surface
Trace request lifecycle
Think like an abuser
Check deployment context
When reporting findings, use this structure:
## Security Review: [Component/Feature Name]
### Summary
[Brief overview of what was reviewed and key findings]
### Critical Issues
[Issues that need immediate attention]
### Warnings
[Issues that should be addressed but aren't immediately exploitable]
### Recommendations
[Suggested improvements and patterns to adopt]
### Questions for the Team
[Areas that need clarification or business context]
This skill focuses on application-layer abuse. It does not replace:
For those concerns, use framework documentation and dedicated security tools.