버그 제보 : 다이스 게임에서 오버플로우 가능성
02ggang9 opened this issue · comments
버그 설명 (필수)
어떤 문제가 있었는지 명확하고 간결하게 알려주세요.
포인트 > 게임 > 주사위 굴리기 기능에서 무조건 승리할 수 있는 방법과 제한없는 음수 값을 넣어 오버플로 발생 가능성이 있음.
버그 재현 방법 (필수)
어떤 순서로 접근했을때 버그가 발생했나요?
전체적으로 Burp Suite 기능을 이용했습니다.
- 패킷을 분석해본 결과 주사위 굴리기 게임은 처음 bet 파라미터로 배팅 금액을 입력받고 check와 info 과정을 거치고 배팅 금액에 result 파라미터에 결과 값을 넣는것을 확인했습니다.
주사위 게임에서 졌을 경우 result의 값이 -1인 것을 확인할 수 있습니다.
성공했을 경우 result의 값이 1인 것을 확인할 수 있습니다.
v1/game/dice/play와 v1/game/dice/save를 repeater에 올립니다.
play 기능에서 bet 파라미터에 음수 값을 넣어도 제한이 걸리지 않는것을 확인할 수 있고 v1/game/dice/save 기능에서 bet 파라미터에 동일한 값과 result의 값을 1로 설정하면 무조건 승리하게 되서 음수 값만큼 포인트가 차감됩니다.
이 결과로 오버 플로우 발생 가능성이 있다고 생각합니다. (실제 오버플로우가 일어나는지는 게임 횟수때문에 확인하지 못했습니다)
의도한 동작
원래 어떻게 동작되어야 하는 지 간략하게 적어주세요.
마이너스 포인트를 입력하지 못하게 제한해야합니다.
스크린샷
버그가 발생한 화면을 이미지로 남겨주면 버그 파악에 용이합니다.
데스크탑에서 발생한 경우 (아래 정보를 기입해주세요):
- OS: [예시: Windows - 버전까지 적어주면 더 좋습니다!]
- Browser: [예시: chrome, safari]
Mac
버프 스위트의 오픈 브라우저 기능
모바일에서 발생한 경우 (아래 정보를 기입해주세요):
- Device: [예시: iPhone6]
- OS: [예시: iOS8.1]
- Browser: [예시: chrome, safari]
추가 정보
버그를 설명하는데 추가적인 정보가 있다면 기입해주세요.