security-audit-codebase
정보
이 스킬은 코드베이스에서 자동화된 보안 감사를 수행하여 노출된 비밀, 취약한 종속성, 인젝션 결함 및 OWASP Top 10 문제를 탐지합니다. 배포 전, 주기적인 검토 중, 또는 인증/API 통합을 추가할 때 사용하도록 설계되었습니다. 개발자는 이를 실행하여 저장소를 스캔하고 중요한 보안 취약점을 식별할 수 있습니다.
빠른 설치
Claude Code
추천npx skills add pjt222/agent-almanac -a claude-code/plugin add https://github.com/pjt222/agent-almanacgit clone https://github.com/pjt222/agent-almanac.git ~/.claude/skills/security-audit-codebaseClaude Code에서 이 명령을 복사하여 붙여넣어 스킬을 설치하세요
문서
安察庫
系察碼庫識弱與露密。
用
- 釋前→用
- 既項定期察→用
- 加認、API 接、用入後→用
- 私庫開源前→用
- 備安合察→用
入
- 必:所察庫
- 可:重域(密、依、注、認)
- 可:合框(OWASP、ISO 27001、SOC 2)
- 可:前察果以較
行
一:掃露密
搜硬碼密之式:
# API keys and tokens
grep -rn "sk-\|ghp_\|gho_\|github_pat_\|hf_\|AKIA" --include="*.{md,js,ts,py,R,json,yml,yaml}" .
# Generic secret patterns
grep -rn "password\s*=\s*['\"]" --include="*.{js,ts,py,R,json}" .
grep -rn "api[_-]key\s*[=:]\s*['\"]" --include="*.{js,ts,py,R,json}" .
grep -rn "secret\s*[=:]\s*['\"]" --include="*.{js,ts,py,R,json}" .
# Connection strings
grep -rn "postgresql://\|mysql://\|mongodb://" .
# Private keys
grep -rn "BEGIN.*PRIVATE KEY" .
得:無實密—僅占如 YOUR_TOKEN_HERE 或 [email protected]。
敗:實密得→立除、轉露憑、用 git filter-branch 或 git-filter-repo 清史。視諸露密為破。
二:察 .gitignore 覆
驗敏檔排:
git check-ignore .env .Renviron credentials.json node_modules/
git ls-files | grep -i "\.env\|\.renviron\|credentials\|secret"
得:諸敏(.env、.Renviron、credentials.json)列於 .gitignore、git ls-files 無追敏檔返。
敗:敏檔追→git rm --cached <file> 解追、加 .gitignore、提。檔留於盤而不再控版。
三:察依
Node.js:
npm audit
npx audit-ci --moderate
Python:
pip-audit
safety check
R:
renv::status()
得:依無高或關弱。中低弱文錄以察。
敗:關弱得→立更影包以 npm audit fix 或 pip install --upgrade。更引破變→文錄弱、建補計。
四:察注弱
SQL 注:
grep -rn "paste.*SELECT\|paste.*INSERT\|paste.*UPDATE\|paste.*DELETE" --include="*.R" .
grep -rn "query.*\+.*\|query.*\$\{" --include="*.{js,ts}" .
諸庫詢宜參化、非串接。
命注:
grep -rn "system\(.*paste\|exec(\|spawn(" --include="*.{R,js,ts,py}" .
XSS:
grep -rn "innerHTML\|dangerouslySetInnerHTML\|v-html" --include="*.{js,ts,jsx,tsx,vue}" .
得:無 SQL、命、XSS 注向。庫詢用參、命避用控、HTML 出正義。
敗:注弱得→詢串接代以參、殼前淨或義入、用框安繪代 innerHTML 或 dangerouslySetInnerHTML。
五:察認與授
清單:
- 密碼用 bcrypt/argon2 散(非 MD5/SHA1)
- 會令隨且足長
- 認令有期
- API 端察授
- CORS 嚴配
- CSRF 護啟於變態操
得:諸項過:密碼用強散、令隨有期、端強授、CORS 嚴、CSRF 活。
敗:按重排修:弱散與缺授為關、CORS 與 CSRF 為高。文錄諸發現附級。
六:察配安
# Debug mode in production configs
grep -rn "debug\s*[=:]\s*[Tt]rue\|DEBUG\s*=\s*1" --include="*.{json,yml,yaml,toml,cfg}" .
# Permissive CORS
grep -rn "Access-Control-Allow-Origin.*\*\|cors.*origin.*\*" --include="*.{js,ts}" .
# HTTP instead of HTTPS
grep -rn "http://" --include="*.{js,ts,py,R}" . | grep -v "localhost\|127.0.0.1\|http://"
得:產配除錯模禁、CORS 不用通配於產、諸外 URL 用 HTTPS。
敗:產除錯啟→立禁。通 CORS 代以顯許域。http:// 改 https:// 若端支。
七:文錄發現
建察報:
# Security Audit Report
**Date**: YYYY-MM-DD
**Auditor**: [Name]
**Scope**: [Repository/Project]
**Status**: [PASS/FAIL/CONDITIONAL]
## Findings Summary
| Category | Status | Details |
|----------|--------|---------|
| Exposed secrets | PASS | No secrets found |
| Dependencies | WARN | 2 moderate vulnerabilities |
## Detailed Findings
### Finding 1: [Title]
- **Severity**: Low / Medium / High / Critical
- **Location**: `path/to/file:line`
- **Description**: What was found
- **Recommendation**: How to fix
得:完 SECURITY_AUDIT_REPORT.md 存於項根、發現按重分各含具位、述、建。
敗:發現太多→按類組重關/高。無論果生報立基。
驗
- 源無硬碼密
- .gitignore 覆諸敏
- 無高/關依弱
- 無注弱
- 認正行(如適)
- 察報完發現處
忌
- 僅察當檔:git 史內密仍露。
git log -p --all -S 'secret_pattern'察 - 忽開發依:開發依仍生供應鏈險
.gitignore假安:.gitignore僅阻未追。已提之檔需git rm --cached- 忽配檔:
docker-compose.yml、CI 配、釋本常含密 - 不轉破憑:得除密不足。憑必撤再生
參
configure-git-repositorywrite-claude-mdsetup-gxp-r-project
GitHub 저장소
연관 스킬
qmd
개발qmd는 BM25, 벡터 임베딩, 재순위화를 결합한 하이브리드 검색을 통해 로컬 파일을 색인화하고 검색할 수 있는 로컬 검색 및 색인화 CLI 도구입니다. 명령줄 사용과 Claude 통합을 위한 MCP(Model Context Protocol) 모드를 모두 지원합니다. 이 도구는 임베딩에 Ollama를 사용하고 색인을 로컬에 저장하여 터미널에서 직접 문서나 코드베이스를 검색하는 데 이상적입니다.
subagent-driven-development
개발이 스킬은 각 독립적인 작업마다 새로운 하위 에이전트를 배치하고 작업 사이에 코드 리뷰를 진행하여 구현 계획을 실행합니다. 이 리뷰 프로세스를 통해 품질 게이트를 유지하면서 빠른 반복 작업을 가능하게 합니다. 동일한 세션 내에서 대부분 독립적인 작업을 진행할 때 내장된 품질 검증과 함께 지속적인 진행을 보장하기 위해 사용하세요.
mcporter
개발mcporter 스킬은 개발자가 Claude에서 직접 Model Context Protocol(MCP) 서버를 관리하고 호출할 수 있도록 합니다. 이 스킬은 사용 가능한 서버를 나열하고, 인수를 사용해 해당 서버의 도구를 호출하며, 인증 및 데몬 생명주기를 처리하는 명령어를 제공합니다. 개발 워크플로우에서 MCP 서버 기능을 통합하고 테스트할 때 이 스킬을 사용하세요.
adk-deployment-specialist
개발이 스킬은 A2A 프로토콜을 사용하여 Vertex AI ADK 에이전트를 배포하고 오케스트레이션하며, AgentCard 검색, 작업 제출, 코드 실행 샌드박스 및 메모리 뱅크와 같은 지원 도구를 관리합니다. Python, Java 또는 Go 언어로 순차, 병렬 또는 루프 오케스트레이션 패턴을 갖춘 다중 에이전트 시스템 구축을 가능하게 합니다. Google Cloud에서 ADK 에이전트 배포 또는 에이전트 워크플로우 오케스트레이션을 요청받았을 때 사용하세요.
