소스 정보
- 저장소
- ersinkoc/security-check
- 최근 소스 활동
- 2026년 4월 8일 21:51
- 감지된 SKILL.md 언어
- 영어
- 스타
- 56
- 포크
- 5
설치 방법
기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.
소스 파일 검토
설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.
메뉴
기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.
설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
직접 명령은 검토 Prompt를 거치지 않습니다. 실행하기 전에 소스를 확인하세요.
npx skills add https://github.com/ersinkoc/security-check --skill sc-verifier명령은 한 줄로 유지됩니다. 복사하기 전에 가로로 스크롤해 전체 내용을 확인하세요.
로컬 사본을 원하시나요? SkillsMP에서 현재 제공할 수 있는 파일을 다운로드하세요.
Comprehensive AI-powered security scanning suite with 48 skills covering OWASP Top 10, 7 language-specific deep scanners (Go, TypeScript, Python, PHP, Rust, Java, C#), supply chain analysis, infrastructure-as-code scanning, and 3000+ checklist items. Use when you need to run a security audit, find vulnerabilities, scan a PR for security issues, or perform a penetration test on a codebase.
C#/.NET-specific security deep scan
Go-specific security deep scan
SOC 직업 분류 기준
SKILL.md 표시 중
| name | sc-verifier |
| description | False positive elimination and confidence scoring for all security findings |
| license | MIT |
| metadata | {"author":"ersinkoc","category":"security","version":"1.0.0"} |
The verifier skill processes all raw findings from Phase 2 vulnerability skills, eliminates false positives through multi-criteria analysis, assigns confidence scores, merges duplicate findings, and produces a curated list of verified security issues. This is the quality gate that ensures the final report contains actionable, high-signal findings.
Runs in Phase 3 of the pipeline, after all Phase 2 vulnerability skills have completed.
All files matching security-report/*-results.md
File: security-report/verified-findings.md
*-results.md files from security-report/For each finding, determine if the vulnerable code is actually reachable:
Check if code is in an executable path:
Reachability scoring:
For each finding involving user input, check if input is sanitized:
Sanitization indicators:
Sanitization scoring:
Check if the framework provides automatic protection against the reported vulnerability:
| Vulnerability | Framework Protection |
|---|---|
| XSS | React JSX auto-escaping, Angular sanitization, Django template auto-escaping, Blade {{ }} escaping |
| SQL Injection | ORM parameterized queries (Prisma, GORM, Hibernate, EF), prepared statement wrappers |
| CSRF | Django CSRF middleware, Spring Security CSRF, Laravel VerifyCsrfToken, Express csurf |
| SSTI | Jinja2 sandbox mode, restricted template engines |
| Path Traversal | Framework static file servers with built-in path validation |
| Header Injection | Modern HTTP libraries that reject newlines in headers |
Framework protection scoring:
Check if configuration-level protections mitigate the finding:
Configuration scoring:
Determine the context of the vulnerable code:
Test code:
test/, tests/, __tests__/, spec/, *_test.go, *_test.py, *.test.tstest, spec, mock, fixtureDead code:
Example/Documentation code:
examples/, docs/, demo/, sample/Generated code:
generated/, gen/, __generated__/// Code generated or @Generated annotationVendor/third-party code:
vendor/, node_modules/, third_party/Identify and merge findings that share the same root cause:
Duplicate criteria:
Merge rules:
Calculate final confidence score for each finding:
Base confidence from the reporting skill: 0-100 Apply modifiers from steps 2-6:
final_confidence = base_confidence
+ reachability_modifier (-40 to +30)
+ sanitization_modifier (-40 to +0)
+ framework_modifier (-30 to +0)
+ configuration_modifier (-20 to +0)
+ context_modifier (-50 to +0)
Clamp to 0-100 range.
Confidence classification:
After confidence scoring, recalculate severity:
# Verified Security Findings
## Summary
- Total raw findings from Phase 2: {N}
- After duplicate merging: {N}
- After false positive elimination: {N}
- Final verified findings: {N}
## Confidence Distribution
- Confirmed (90-100): {N}
- High Probability (70-89): {N}
- Probable (50-69): {N}
- Possible (30-49): {N}
- Low Confidence (0-29): {N}
## Verified Findings
### VULN-001: {Title}
- **Severity:** Critical | High | Medium | Low | Info
- **Confidence:** {score}/100 ({classification})
- **Original Skill:** {skill-name}
- **Vulnerability Type:** CWE-XXX
- **File:** file/path:line
- **Reachability:** Direct | Indirect | Unknown
- **Sanitization:** None | Partial | Full
- **Framework Protection:** None | Partial | Active
- **Description:** Verified description
- **Verification Notes:** What was checked, why this is/isn't a false positive
- **Remediation:** How to fix
## Eliminated Findings (False Positives)
Brief list of eliminated findings with reason for elimination.
raw() or RawSQL methods are risky{{ }}, Blade {{ }} auto-escape by defaultos.Getenv("SECRET") reads at runtime, not hardcoded