
애플리케이션 보안 취약점에 대한 개발자 중심 지식 베이스로, 안전하지 않은 코드와 안전한 코드 예제, 예방 지침, 그리고 다양한 언어와 프레임워크에 걸친 OWASP/CWE 매핑을 제공합니다.
VulnVault는 일반적이고 치명적인 애플리케이션 보안 취약점에 대한 실용적이고 개발자 중심의 지식 베이스로, 코드에서 빌드, 인프라, 배포에 이르는 전체 생명주기를 다룹니다.
명확한 설명, 현실적인 취약 코드 대 보안 코드 예제, 그리고 다양한 프로그래밍 언어와 프레임워크에 걸친 실행 가능한 지침을 제공하여 팀이 기본적으로 안전한 애플리케이션을 구축할 수 있도록 돕습니다.
🎯 목표: 보안 코딩을 이해하기 쉽고, 접근 가능하며, 반복 가능하게 만들어 조직의 애플리케이션 보안 수준을 향상시키는 것.
여기에서 확인하세요 - https://viralmaniar.github.io/Vulnvault/site/vulnvault.html
대부분의 보안 지침은 다음 중 하나입니다:
VulnVault는 다음과 같은 방식으로 그 간극을 메웁니다:
이 저장소는 다음 사용자를 위해 설계되었습니다:
VulnVault는 도구나 표준이 아닌 취약점 카테고리별로 구성되어 있습니다.
각 취약점에는 일반적으로 다음이 포함됩니다:
예제는 인위적인 코드 조각이 아닌 현실적인 애플리케이션 패턴을 사용하여 작성되었습니다.
현재 범위는 다음과 같으며 (계속 확장 중):
각 예제는 ❌ 취약한 구현과 ✅ 보안 구현을 나란히 대조합니다.
String query = "SELECT * FROM users WHERE username = '" + username + "'";
중요한 이유: 신뢰할 수 없는 입력이 쿼리에 직접 연결되어 공격자가 SQL 로직을 조작할 수 있습니다.
String query = "SELECT * FROM users WHERE username = ?";
PreparedStatement ps = connection.prepareStatement(query);
ps.setString(1, username);
ResultSet rs = ps.executeQuery();
📚 학습 및 참고 자료 개발 중에 안전한 코딩 핸드북으로 활용하세요.
🔍 코드 리뷰 PR 댓글에 관련 VulnVault 페이지를 직접 링크하세요.
🧪 보안 테스트 SAST, DAST 또는 침투 테스트에서 발견된 사항이 실제로 악용 가능한지 검증하세요.
🎓 교육 및 온보딩 예제를 활용하여 신입 사원과 주니어 개발자의 역량을 향상시키세요.
🛡 AppSec 프로그램 활성화 지침을 내부 표준, 위협 모델 및 위험 허용 범위와 일치시키세요.
기여를 환영하며 권장합니다. 다음과 같은 방법으로 기여할 수 있습니다:
기여를 위한 기본 원칙:
VulnVault는 의도적으로 다음에 초점을 맞춥니다:
이것은 취약점 스캐너가 아니라 보안 활성화 자산입니다.
이 저장소의 예제는 교육 목적으로만 제공됩니다. 안전하지 않은 예제를 프로덕션 시스템에 배포하지 마세요.
이 프로젝트는 MIT 라이선스에 따라 라이선스가 부여됩니다. 자세한 내용은 LICENSE 파일을 참조하세요.
실제 보안 검토, 침투 테스트, 그리고 프로덕션 시스템을 구축하고 보호하면서 얻은 교훈에서 영감을 받았습니다.
🔐 설계 단계부터 안전한 소프트웨어를 구축하세요.