starting point

xss-game-level 2 본문

WarGame_WriteUp/XSS-Game

xss-game-level 2

dundole 2020. 2. 19. 11:17

[사진1]

입력한 문자열을 화면에 출력해주는 것처럼 보인다.

 

[사진2]

1번과 마찬가지로 <script>태그를 이용해서 공격해 보았다.

<script>alert(1);</script>를 입력하였다.

 

[사진3]

하지만 아무것도 출력되지 않았다. 이 부분을 확인하기 위해서 개발자도구를 통해 코드를 살펴보았다.

 

 

[사진4]

정확하게 <script>태그로 감싸진 스크립트 문이 입력되었지만 코드가 실행되지 않는다. 그렇다면 <script>태그가 아닌 html의 on속성을 이용해서 자바스크립트를 실행시키는 방법을 사용해 볼 수 있다.

 

[사진5]

<img src='123' onerror="alert(1);">를 입력했다. <img>태그를 이용하여 이미지 로드 시 에러를 유도하고 그 결과로 경고창을 띄우게 했다.

 

[사진6]

성공적으로 문제를 해결했다.


 

이 문제에서는 1번 문제에서 발생한 xss취약점을 막기 위해 <script>태그를 사용을 막은 것을 확인할 수 있었다. 하지만 위처럼 html on속성을 이용한 자바스크립트를 막는 것에는 역부족임을 확인할 수 있었다. 또한 문자열이 DB에 저장되므로 DB에서 해당 문자열을 가져올 때마다 스크립트문이 실행된다. 이는 지속적인 피해가 발생한다는 것을 의미하므로 1번의 단발적인 피해와는 비교가 되지 않을 것이다. 그러므로 DB를 사용한 웹 애플리케이션의 경우 이러한 xss취약점을 더욱 조심해야 할 것이다

'WarGame_WriteUp > XSS-Game' 카테고리의 다른 글

xss-game-level 6  (1) 2020.02.19
xss-game-level 5  (0) 2020.02.19
xss-game-level 4  (0) 2020.02.19
xss-game-level 3  (0) 2020.02.19
xss-game-level 1  (0) 2020.02.19