티스토리 뷰

반응형

 

해당 페이지는 보안 3대 요소(기밀성/무결성/가용성)에 대한 내용을 다루는 페이지이다.

간단히 내용을 확인하고 퀴즈 부분으로 넘어갔는데.... 뭔가 이상하다.

 

상황을 가정해 퀴즈를 풀라고 하고 있는데... 무슨 퀴즈인지 제대로 알려주지 않는다.

우선 Submit answer를 눌러보니 화면상에서는 보이지 않지만 패킷을 주고받고 있었다.

 

소스코드를 확인해보니 질문의 답을 체크하는 URL이였다.

src/main/java/org/owasp/webgoat/lessons/cia/CIAQuiz.java

 

 

그리고 클라이언트 코드를 확인해보아도 파라미터 변조 등을 하는 것은 아니고 실제 퀴즈가 있는 것 같은데.... 퀴즈가 보이지 않는다.

src/main/resources/lessons/cia/html/CIA.html
src/main/resources/webgoat/static/js/quiz.js

 

 

그래서 우선 해당 이슈에 대해서 검색을 해보았다. OWASP WebGoat Git에 가보니 나와 같은 이슈가 레포트 되어 있었고, 최근에 해당 이슈가 해결되어 코드도 머지된 것으로 보인다.

https://github.com/WebGoat/WebGoat/issues/1703
https://github.com/WebGoat/WebGoat/commit/dd0f135088b6f3e53bd2116121a0384fa58350e1

 

변경 코드 내용을 보고 내가 가지고 있는 코드를 보았더니 역시 내 코드도 같은 이슈가 있는 코드였다.

코드는 다시 다운로드 받았는데, 현재 WebGoat는 WebGoat에서 제공하는 Docker Image를 다운로드 받아서 사용하고 있었는데, 소스코드만 수정되고 Docker 이미지는 아직도 업데이트가 되지 않은 것 같다.

(최신 버전의 이미지이지만 해당 이미지는 3개월 전에 생성된 것이고, 위 이슈의 해결은 1주 전에 해결되었다.)

 

 

Docker Image가 업데이트 될 때 까지는 Json 파일을 읽어서 퀴즈를 내는 방식은 직접 JSON 파일을 확인해야 하나 고민이 된다.

현재 WebGoat에는 이러한 타입의 퀴즈가 5개 밖에 없는 것 같아서, 크게 문제가 되지는 않을 것 같다.

 

 

이번 CIA에 관련한 퀴즈 질문과 보기는 아래와 같다.

 

1번 문제는 기밀성에 대한 질문으로 2번과 3번이 모두 정답같긴 한데, 지문에 보면 개인정보 처리 시스템을 기반으로 답을 하라고 한 것으로 보아 여기서는 3번이 정답이다. 

2번 문제는 무결성에 대한 질문으로 1번이 무결성에 대한 내용으로 보인다. 

3번 문제는 가용성에 대한 질문으로 4번 서비스 거부 공격(DOS)으로 서비스가 정상적으로 이용되지 못하게하는 것으로 정답이다.

4번 문제는 보안 손상에 대한 질문으로 보안 3요소 중 하나라도 위배되면 심각한 결과가 발생하므로 정답은 2번이다.

 

 

반응형
댓글
반응형
최근에 올라온 글
Total
Today
Yesterday