OWASP (The Open Web Application Security Project)
OWASP는 오픈 소스 웹 어플리케이션 보안 프로젝트로 소프트웨어 보안을 개선하기 위해 만들어진 미국의 비영리 재단이다. 2001년에 시작된 이 비영리 자선 단체는 수많은 보안 취약점 중에서 빈도가 많고 리스크가 가장 큰 10가지를 2004년부터 주기적으로 발표하고 있다. 가장 최근에 발표된 2021년 버전으로 10가지를 정리해보았다.
OWASP이 선정한 보안 취약점 10
A01. Broken Access Control (접근 권한 취약점)
엑세스 제어는 사용자가 권한을 벗어나 행동할 수 없도록 정책을 시행한다. 엑세스 제어가 취약하면 사용자는 주어진 권한을 벗어나 모든 데이터를 무단으로 열람, 수정 또는 삭제할 수 있다.
A02. Cryptographic Failures (암호화 오류)
최근 데이터의 중요성이 커지면서 데이터 암호화와 관련된 이슈가 많았기 때문에 순위가 상승한 것으로 보인다.
A03. Injection (인젝션)
SQL, OS, XXE, LDAP 인젝션 취약점은 신뢰할 수 없는 데이터가 명령어나 쿼리문의 일부분으로써, 인터프리터로 보내질 때 발생한다. 공격자의 악의적인 데이터는 예기치 않은 명령을 실행하거나 올바른 권한 없이 데이터에 접근하도록 인터프리터를 속일 수 있다.
A04. Insecure Design (안전하지 않은 설계)
기획 단계와 애플리케이션 설계 과정에서 발생하는 보안적인 결함을 의미한다. 설계가 잘못된 애플리케이션은 추후에 진행하는 보안테스트로 발견한 사항을 쉽게 조치할 수 없거나, 위험성을 가지고 운영해야 하는 경우들이 많다.
A05. Security Misconfiguration (보안 설정 오류)
- 애플리케이션 스택의 적절한 보안 강화가 누락되었거나 클라우드 서비스에 대한 권한이 적절하지 않게 구성되었을 때
- 불필요한 기능이 활성화 되거나 설치되었을 때
- 기본 계정 및 암호화가 변경되지 않았을 때
- 지나치게 상세한 오류 메시지를 노출할 때
- 최신 보안 기능이 비활성화 되거나 안전하지 않게 구성되었을 때 발생한다.
A06. Vulnerable and Outdated Components (취약하고 오래된 요소)
오픈 소스를 기반으로 다양한 라이브러리와 컴포넌트들이 연결되는 애플리케이션의 경우 제공되는 라이브러리와 컴포넌트에 알려진 취약점이 존재할 수 있고, 이미 알려진 취약점들이 존재하는 컴포넌트 사용으로 인하여 소프트웨어에 취약점들이 내포될 수 있다.
A07. Identification and Authentication Failures (식별 및 인증 오류)
사용자의 신원 확인, 인증 및 세션 관리가 적절히 되지 않을 때 발생한다. 요즘에는 개발 프레임워크의 가용성이 증가하여 순위가 하락한 것으로 보인다.
A08. Software and Data Integrity Failures (소프트웨어 및 데이터 무결성 오류)
소프트웨어 및 데이터 무결성 오류는 무결성 위반으로부터 보호하지 않는 코드 및 인프라와 관련되어 있다. 예를 들어, 공격자가 보고 수정할 수 있는 구조로 개체 또는 데이터가 인코딩되거나 직렬화되는 경우가 이 취약점에 해당된다. 많은 애플리케이션들이 충분한 무결성 확인 없이 업데이트 되는데, 공격자는 악의적인 파일을 심은 업데이트 파일을 업로드하여 배포하고 실행할 수 있다. 따라서 이와 같은 취약점을 예방하기 위해서는 서명되지 않았거나 암호화되지 않은 직렬화된 데이터가 무결성 검사 또는 디지털 서명 없이 신뢰할 수 없는 클라이언트로 전송되지 않도록 하는 것이 중요하다. 또한 코드의 무결성을 보장하기 위해 CI/CD 파이프라인에 적절한 구성 및 접근 제어가 있는지 확인하는 것도 좋다.
A09. Security Logging and Monitoring Failures (보안 로깅 및 모니터링 실패)
공격을 감지하기 위해서는 로깅과 모니터링이 필수적이다.
A10. Server-Side Request Forgery (SSRF, 서버 측 요청 위조)
SSRF 결함은 웹 애플리케이션이 사용자가 제공한 URL의 유효성을 검사하지 않고 원격 리소스를 가져올 때마다 발생한다. 이를 통해 공격자는 방화벽, VPN 또는 다른 유형의 네트워크 ACL (엑세스 제어 목록)에 의해 보호되는 경우에도 응용 프로그램이 조작된 요청을 예기치 않은 대상으로 보내도록 강제할 수 있다.
OWASP Top 10:2021
OWASP Top 10:2021
Introduction Welcome to the OWASP Top 10 - 2021 Welcome to the latest installment of the OWASP Top 10! The OWASP Top 10 2021 is all-new, with a new graphic design and an available one-page infographic you can print or obtain from our home page. A huge than
owasp.org
'웹_프론트엔드 > 로드맵 챌린지' 카테고리의 다른 글
CSS 구조 - BEM 방법론 (0) | 2022.01.20 |
---|---|
패키지 매니저 - npm vs. yarn (0) | 2022.01.18 |
웹 보안 지식 - CORS (Cross Origin Resource Sharing) (1) | 2022.01.13 |
웹 보안 지식 - 콘텐츠 보안 정책(CSP; Content Security Policy) (0) | 2022.01.12 |
웹 보안 지식 - HTTPS (0) | 2022.01.11 |