본문 바로가기

[Wargame Write-up]/WebGoat

[WebGoat] [Denial of Service] ZipBomb

ZipBomb이라는 제목의 문제이다.

 

최대 20MB의 임시 저장소가 주어져 있고, 이 저장소를 대상으로 DoS 공격을 수행하라고 하고 있다.

 

아무래도 내부적으로 압축을 푸는 모양이다.


 



Python으로 간단하게 22MB 크기의 txt 파일을 생성하자.


 

1
2
3
 
with open("zipbomb.txt"'w') as f:
    f.write("A" * 22 * 1024 ** 2)
cs



그리고 그걸 압축하면


 



용량이 엄청나게 줄어든다.


 



압축파일을 업로드하자.


 



Start Upload 버튼을 클릭하면

 



내부적으로 압축을 풀어 20MB 넘는 텍스트를 마주하고, DoS 공격을 당하게 된다는 시나리오로 축하 메시지를 출력한다.