1. 보안 방안

정말 간단하다. 모든 Nginx의 alias 설정되어 있는 디렉터리들의 끝을 /로 마무리지어 정확하게 설정하면 된다.

 

2. 시연

1) 도커 컨테이너 내리기

# 컨테이너 ID 확인
docker ps

# 컨테이너 내림
docker kill [컨테이너 ID]

 

2) 도커 이미지 삭제

# 도커 이미지 확인
docker images

# 도커 이미지 삭제
docker rmi [이미지 ID] -f
 

3) 도커 파일 삭제

vulnerable.conf 파일 내부에 nginx 설정이 들어있으므로 이 부분을 수정한다.

 

기존대로 /static 뒤에 슬래쉬(/)가 빠져 있다.

 

위와 같이 /static을 /static/으로 바꾸고 저장한다.

 

4) 도커 컨테이너 다시 생성

docker build -t nginx-traversal .
docker run -d -p 127.0.0.1:3000:80 nginx-traversal:latest

 

5) 브라우저 테스트

이전과 동일하게 주소창에 입력한 결과 flag.txt가 읽혀지지 않는 것을 확인

 

+ Recent posts