OWASP Top 10 (2013)
IT 위키
더 많은 작업
- Open Web Application Security Project(OWASP) 에서 2013년에 발표한 웹 애플리케이션 보안 위험 Top 10
2010년판을 고친 것으로, 2017년판이 나오기 전까지 웹 취약점 점검과 시험 문제의 기준으로 널리 쓰였다. 2017년판에서 크로스 사이트 요청 변조(CSRF)와 검증되지 않은 리다이렉트가 빠졌기 때문에, CSRF 가 보기에 나오는 OWASP 문제는 대개 2013년판 기준이다.
| 순위 | 항목 | 요지 | 2017년판에서 |
|---|---|---|---|
| A1 | 인젝션 | 신뢰할 수 없는 데이터가 명령·쿼리의 일부로 인터프리터에 전달된다 → SQL 인젝션 | A1 유지 |
| A2 | 취약한 인증과 세션 관리 | 인증·세션 관리가 잘못 구현되어 비밀번호·키·세션 토큰이 노출되고 다른 사용자로 가장할 수 있다 → 인증 및 세션 관리 취약점 | A2 '취약한 인증' |
| A3 | 크로스 사이트 스크립팅(XSS) | 검증하지 않은 입력이 웹 페이지에 그대로 실려 피해자 브라우저에서 스크립트가 실행된다 → 크로스사이트 스크립트 | A7 로 내려감 |
| A4 | 안전하지 않은 직접 객체 참조 | 파일·키 같은 내부 객체를 파라미터로 그대로 노출해 값을 바꾸면 남의 데이터에 접근된다 | A5 '취약한 접근 통제'로 합침 |
| A5 | 잘못된 보안 구성 | 기본 계정·기본 설정, 불필요한 서비스, 패치 누락, 자세한 오류 메시지 | A6 |
| A6 | 민감한 데이터 노출 | 카드번호·인증정보 같은 민감한 데이터를 저장·전송할 때 암호화하지 않거나 약한 알고리즘을 쓴다 | A3 |
| A7 | 기능 수준의 접근 통제 누락 | 화면에서 메뉴만 숨기고 서버에서 권한을 확인하지 않아 URL 을 직접 부르면 관리 기능이 실행된다 | A5 '취약한 접근 통제'로 합침 |
| A8 | 크로스 사이트 요청 변조(CSRF) | 로그인한 피해자의 브라우저가 세션 쿠키 등 인증정보를 실은 위조된 요청을 취약한 사이트로 보내게 해, 사이트가 정당한 요청으로 처리하게 한다 → 크로스사이트 요청위조 | 삭제 |
| A9 | 알려진 취약점이 있는 컴포넌트 사용 | 취약점이 공개된 라이브러리·프레임워크를 그대로 쓴다 | A9 유지 |
| A10 | 검증되지 않은 리다이렉트 및 포워드 | 검증하지 않은 파라미터로 다른 페이지로 보내 피싱·권한 우회에 쓰인다 | 삭제 |
- XSS 와 CSRF — XSS 는 공격 스크립트가 사용자 브라우저에서 실행되어 쿠키 탈취 등을 노린다. CSRF 는 사용자가 의도하지 않은 요청이 서버에서 정당한 요청으로 처리되는 것(게시글 등록·비밀번호 변경·송금)이 피해다.
- A2 와 A8 — 세션 토큰이 URL 에 노출되거나 로그아웃·타임아웃이 없어 세션을 빼앗기는 것은 A2, 세션을 빼앗지 않고 피해자의 살아 있는 세션으로 요청을 보내게 하는 것은 A8 이다.
- A6 와 A9 — 민감한 데이터를 암호화하지 않은 것은 A6, 취약한 버전의 라이브러리를 쓰는 것은 A9 다.
- 새로 들어감 : XML 외부 개체(XXE), 안전하지 않은 역직렬화, 불충분한 로깅 및 모니터링
- 합쳐짐 : A4 + A7 → 취약한 접근 통제
- 빠짐 : CSRF(프레임워크가 기본으로 토큰을 넣게 되면서 발견 빈도가 줄었다), 검증되지 않은 리다이렉트 및 포워드
- 2013·2017년판 대조표는 OWASP Top 10(2017) 문서에 있다.
- 「OWASP Top 10 – 2013: The Ten Most Critical Web Application Security Risks」, OWASP Foundation, 2013.