-
[Spring] 웹 어플리케이션 보안 위협 요소Backend/Spring 2022. 8. 30. 17:38728x90
웹 어플리케이션의 주요 보안 위협 요소
인증(Authentication) 절차 마비
인증(Authentication)은 인가(Authorization)와 함께 보안 관련 핵심 개념 중 하나이다.
사용자의 신원을 확인하는 과정은 아이디/패스워드 기반 로그인 방식, OAuth2.0 프로토콜을 통한 Social 인증이 있다.
보통 어플리케이션은 인증영역과 인증되지 않은 영역(익명영역)으로 나눌 수 있다.
- 익명역역 - 사용자의 신원과 무관한 기능들
- 사용자의 민감정보를 노출하지 않아야 한다.
- 시스템의 상태를 변경하거나 데이터를 관리할 수 있는 기능을 제공하지 않아야 한다.
- 인증 영역 - 사용자의 개인정보를 확인하고, 수정할 수 있음
인가(Authorization) 처리의 마비
적절한 권한이 부여된 사용자들만 특정 기능 수행 또는 데이터 접근을 허용한다.
주어진 권한을 넘어서는 기능 수행은 민감 데이터 유출 등 보안사고 발생 가능성이 높다. 만약 E-Commerce 서비스 사용자가 사용자 권한을 넘어서 관리자 권한을 가지게 된다면 다른 고객의 주문 정보를 확인하거나 주문을 취소하고 수정할 수 있게 되기 때문에 문제가 된다.
크리덴셜(Credential) 보안
민감정보(연락처, 결제정보, 비밀번호 등)를 보호하는 것은 항상 최우선 순위를 둬야하는 일이다.
민감 정보를 암호화하지 않고, 일반 텍스트로 저장하는 것은 매우 위험하다. 하지만 생각보다 기본이 지켜지지 않는 서비스가 많다.
전송 레이어 보안
널리 알려진 웹 서비스에서 SSL보호를 적용하지 않는 것은 존재하지 않다. https를 통해서 연결하는 것이다.
728x90'Backend > Spring' 카테고리의 다른 글
[Spring] Spring Security 로그인 계정 추가 및 자동 로그인 기능 설정하기 (0) 2022.09.01 [Spring] Spring Boot Web Mvc에 Spring Security 시작하기 (0) 2022.08.30 [Spring] SpringDataJPA (0) 2022.08.25 [Spring] 프록시와 연관관계 (0) 2022.08.25 [Spring] 고급 매핑(상속관계매핑/@MappedSuperclass/식별자클래스) (1) 2022.08.25 - 익명역역 - 사용자의 신원과 무관한 기능들