Web에서의 Buffer Overflow 문제이다. 일단 임의로 적고 접속해보자.
사용 시간에 따른 요금이 나온다.
그대로 제출했을 때 어떤 파라미터를 전달하는지 보기 위해, Burp suite를 이용했다.
hidden input으로, 아래에 표시된 3개가 함께 전달된다.
room_no를 overflow시켜보자. 너무 길면 Bad request라는 400 응답 에러를 주기 때문에
적당히 5000자 미만으로 생성하자.
Python으로 다음과 같이 쉽게 만들 수 있다.
이렇게 4097자의 1이 들어있는 파일이 생성되었고
room_no에 넣어주자
Forward하면 성공한다.
하지만, 끝내려면 Restart Lesson 하고 실제 VIP로 접속해야 한다고 한다.
Chrome 개발자 도구를 이용하면, 다음과 같은 hidden input이 존재한다.
3개가 한 쌍이며, 이 중 아무거나 골라서
이렇게 넣어주면 된다. 이후 요금나오는 화면에서는 아무거나 선택하고 제출하면 완료된다.
'[Wargame Write-up] > WebGoat' 카테고리의 다른 글
[WebGoat] [Concurrency] Thread Safety Problems (0) | 2016.10.15 |
---|---|
[WebGoat] [Insecure Storage] Encoding Basics (0) | 2016.10.03 |
[WebGoat] [Authentication Flaws] Multi Level Login 2 (0) | 2016.10.02 |
[WebGoat] [Authentication Flaws] Multi Level Login 1 (0) | 2016.10.02 |
[WebGoat] [Authentication Flaws] Forgot Password (0) | 2016.10.02 |