웹 개발자라면 반드시 알고 있어야 할 보안 지식!
OWASP(Open Web Application Security Project)는 웹 애플리케이션의 보안 취약점을 분석하고, 그중 가장 위험한 10가지를 정리하여 **“OWASP Top 10”**으로 공개합니다.
이 글에서는 2021년 최신 OWASP Top 10 목록과 함께 각 항목에 대한 설명, 실제로 어떤 위험이 있는지 정리해 보겠습니다.
✅ OWASP Top 10 목록 (2021)
| 순위 | 항목 | 설명 |
| A01 | Broken Access Control | 권한이 없는 사용자가 관리자 페이지나 중요한 데이터를 볼 수 있는 취약점 |
| A02 | Cryptographic Failures | 암호화가 없거나 잘못된 방식으로 인해 개인정보가 유출되는 문제 |
| A03 | Injection | SQL, OS 명령어 등 외부 입력이 서버 명령으로 실행되는 취약점 |
| A04 | Insecure Design | 보안을 고려하지 않고 설계된 기능이나 아키텍처 |
| A05 | Security Misconfiguration | 잘못된 서버 설정, 디버그 모드 노출, 기본 계정 사용 등 |
| A06 | Vulnerable and Outdated Components | 오래되거나 취약한 오픈소스/라이브러리 사용 |
| A07 | Identification and Authentication Failures | 인증 우회, 세션 탈취 등 로그인 시스템의 취약점 |
| A08 | Software and Data Integrity Failures | 업데이트 무결성 검증 실패, 서명 확인 없는 코드 배포 등 |
| A09 | Security Logging and Monitoring Failures | 침해 사고 발생 시 로그 누락, 모니터링 부재로 인한 대응 지연 |
| A10 | Server-Side Request Forgery (SSRF) | 서버가 외부나 내부로 잘못된 요청을 보내도록 유도하는 공격 |
🔍 각 항목 요약 설명
1. Broken Access Control
사용자 권한 검증 실패로 민감한 기능이나 데이터에 접근 가능.
예시: 일반 사용자가 관리자 페이지 접속.
2. Cryptographic Failures
암호화가 없거나 잘못 구현되어 중요한 데이터가 노출됨.
예시: HTTPS 미사용, 약한 해시 알고리즘(SHA-1 등).
3. Injection
사용자 입력이 명령어처럼 실행되어 서버 제어 가능.
예시: DROP TABLE users; 과 같은 SQL 인젝션.
4. Insecure Design
애초에 보안을 고려하지 않은 설계.
예시: 비밀번호 변경에 현재 비밀번호를 확인하지 않음.
5. Security Misconfiguration
기본 계정 그대로 사용, 민감 정보 노출, 디버그 정보 활성화 등.
예시: /phpinfo 페이지 외부 노출.
6. Vulnerable and Outdated Components
오래된 라이브러리를 사용해 이미 알려진 취약점에 노출됨.
예시: CVE가 있는 오래된 jQuery 사용.
7. Identification and Authentication Failures
인증 체계 부실로 인해 공격자가 로그인 없이 접근 가능.
예시: 세션 ID 탈취, 비밀번호 무작위 대입.
8. Software and Data Integrity Failures
업데이트나 구성 파일을 무결성 확인 없이 수용.
예시: 서명 확인 없는 소프트웨어 자동 업데이트.
9. Security Logging and Monitoring Failures
침입이 발생해도 탐지하지 못함.
예시: 관리자 로그인 실패 로그가 남지 않음.
10. Server-Side Request Forgery (SSRF)
공격자가 서버로 하여금 외부 시스템에 요청을 보내게 함.
예시: 내부 메타데이터 주소(http://169.254.169.254) 접근 시도.
🛡️ 왜 중요한가?
- 보안 사고 예방: 대부분의 실제 해킹 사례는 OWASP Top 10에 해당하는 취약점에서 발생합니다.
- 보안 점검 기준: 기업, 기관의 보안 감사를 받을 때 이 리스트를 기준으로 점검합니다.
- 보안 인증 준비: ISO 27001, PCI-DSS, ISMS 인증을 준비할 때도 필수입니다.
OWASP Top 10은 단순한 목록이 아닌, 웹 애플리케이션 보안의 기준입니다.
주기적으로 변경되기 때문에 최신 내용을 지속적으로 학습하고, 프로젝트에 반영해야 합니다.
2025년 새로운 버전은 아직 발표되지 않았으며, 발표되면 본 블로그에 업데이트할 예정입니다.
🔖 관련 링크
'서버인프라 > IT 뉴스' 카테고리의 다른 글
| 🤖 OWASP LLM Top 10 – 생성형 AI 보안을 위한 필수 가이드 (0) | 2025.05.30 |
|---|---|
| 🔐 생성형 AI 보안, 이렇게 준비하세요: OWASP LLM 보안 및 거버넌스 체크리스트 (0) | 2025.05.30 |
| 🎉 Gen AI 혁명의 시대를 여는 컨퍼런스 (1) | 2025.05.22 |
| 💡 CPU와 GPU는 뭐가 다를까? – 쉽게 풀어보는 컴퓨터의 두 뇌 이야기 (4) | 2025.05.20 |
| 🛡 WebShell vs BPFdoor – 웹서버 백도어와 커널 백도어의 본질적 차이 (6) | 2025.05.20 |
댓글