웹 취약점을 이용한 공격 중 대표적인 공격으로 XSS 가 있다
XSS 자체를 모른다면 지난 포스팅을 참고하길 바라며, 해당 글까지 찾아왔다면 당연히 XSS 를 알고있으며 대응책을 찾고있을 것이다
XSS 공격을 방지하는 방법은 여러가지가 있겠지만 오늘은 OWASP 에서 제공하는 ESAPI 를 사용하는 방법을 소개한다
OWASP
오픈소스 웹 애플리케이션 보안 프로젝트
웹 취약점 관련하여 TOP 10 을 발표하며 그에 따른 대응법도 소개한다
웹 취약점 검사툴의 검사 항목 중 거의 필수적으로 OWASP 에서 발표하는 TOP 10 에 대한 취약점 검사를 포함한다
OWASP ESAPI
OWASP Enterprise Security API
아래 설명은 자바 기반의 웹에서 적용하기 위해서는 우선 OWASP ESAPI 라이프러리를 포함시켜한다
이 글을 작성하는 2021.10.10 기준 최신 버전은 2.2.3.1 이다
Maven
<dependency>
<groupId>org.owasp.esapi</groupId>
<artifactId>esapi</artifactId>
<version>2.2.3.1</version>
</dependency>
Gradle
implementation group: 'org.owasp.esapi', name: 'esapi', version: '2.2.3.1'
OWASP ESAPI 자체가 오픈소스이므로 소스는 깃허브에 공개되어 있다
URL : https://github.com/ESAPI/esapi-java-legacy
OWASP ESAPI 자체에 여러 기능이 있지만 그 중 XSS 취약점 방지를 위해서는 필터를 설정 후 수신된 모든 파라메터에 대하여 ESAPI.encoder() 를 통해 인코딩을 수행하면 된다
'봄보라' 카테고리의 다른 글
MariaDB Sequence 사용하기 (0) | 2021.10.24 |
---|---|
Kanban(칸반) 시작을 위한 가이드 (0) | 2021.10.17 |
칸반의 긴급 카드 프로세스 (0) | 2021.10.03 |
웹 취약점 XXE 공격 개요 (XML 외부 엔티티) (0) | 2021.09.26 |
CSRF 공격이란? (0) | 2021.09.19 |