KEEPER31337 / Homepage-Front

키퍼 홈페이지 프론트엔드

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

버그 제보 : 다이스 게임에서 오버플로우 가능성

02ggang9 opened this issue · comments

버그 설명 (필수)

어떤 문제가 있었는지 명확하고 간결하게 알려주세요.
포인트 > 게임 > 주사위 굴리기 기능에서 무조건 승리할 수 있는 방법과 제한없는 음수 값을 넣어 오버플로 발생 가능성이 있음.

버그 재현 방법 (필수)

어떤 순서로 접근했을때 버그가 발생했나요?
전체적으로 Burp Suite 기능을 이용했습니다.

  1. 패킷을 분석해본 결과 주사위 굴리기 게임은 처음 bet 파라미터로 배팅 금액을 입력받고 check와 info 과정을 거치고 배팅 금액에 result 파라미터에 결과 값을 넣는것을 확인했습니다.

image

주사위 게임에서 졌을 경우 result의 값이 -1인 것을 확인할 수 있습니다.

image

성공했을 경우 result의 값이 1인 것을 확인할 수 있습니다.

v1/game/dice/play와 v1/game/dice/save를 repeater에 올립니다.
play 기능에서 bet 파라미터에 음수 값을 넣어도 제한이 걸리지 않는것을 확인할 수 있고 v1/game/dice/save 기능에서 bet 파라미터에 동일한 값과 result의 값을 1로 설정하면 무조건 승리하게 되서 음수 값만큼 포인트가 차감됩니다.


image


image

이 결과로 오버 플로우 발생 가능성이 있다고 생각합니다. (실제 오버플로우가 일어나는지는 게임 횟수때문에 확인하지 못했습니다)

의도한 동작

원래 어떻게 동작되어야 하는 지 간략하게 적어주세요.
마이너스 포인트를 입력하지 못하게 제한해야합니다.

스크린샷

버그가 발생한 화면을 이미지로 남겨주면 버그 파악에 용이합니다.

데스크탑에서 발생한 경우 (아래 정보를 기입해주세요):

  • OS: [예시: Windows - 버전까지 적어주면 더 좋습니다!]
  • Browser: [예시: chrome, safari]

Mac
버프 스위트의 오픈 브라우저 기능

모바일에서 발생한 경우 (아래 정보를 기입해주세요):

  • Device: [예시: iPhone6]
  • OS: [예시: iOS8.1]
  • Browser: [예시: chrome, safari]

추가 정보

버그를 설명하는데 추가적인 정보가 있다면 기입해주세요.